Découvrez l'importance des poids des modèles dans l'apprentissage automatique, leur rôle dans les prédictions, et comment Ultralytics YOLO simplifie leur utilisation pour les tâches d'IA.
Les poids du modèle sont les paramètres numériques d'un réseau neuronal qui sont ajustés au cours du processus de formation. Ces valeurs représentent essentiellement les connaissances acquises par un modèle. En ajustant ces coefficients, le modèle apprend à mettre en correspondance des données d'entrée, telles qu'une image, avec une sortie souhaitée, telle qu'une boîte englobante autour d'un objet. La qualité des poids d'un modèle détermine directement ses performances pour une tâche donnée, telle que la classification d'images ou la détection d'objets.
L'apprentissage d'un modèle de pointe à partir de zéro nécessite d'immenses ressources informatiques et d'énormes ensembles de données. Pour y remédier, la communauté de la vision par ordinateur utilise largement des poids pré-entraînés. Il s'agit de prendre un modèle, comme le modèle YOLO d'Ultralytics, qui a déjà été entraîné sur un grand ensemble de données à usage général comme COCO. Ces poids constituent un excellent point de départ pour une nouvelle tâche spécifique grâce à un processus appelé apprentissage par transfert. En commençant par des poids pré-entraînés, vous pouvez obtenir une plus grande précision avec moins de données et des temps de formation plus courts grâce à un processus connu sous le nom de réglage fin.
Il est important de différencier les poids des modèles des autres termes liés à l'apprentissage automatique :
À mesure que les modèles deviennent plus complexes, la gestion de leurs poids et des expériences qui les produisent devient cruciale pour la reproductibilité et la collaboration. Des outils tels que Weights & Biases (W&B) fournissent une plateforme spécifique aux MLOps, permettant aux équipes de suivre les hyperparamètres, les métriques, les versions du code et les poids des modèles qui en résultent pour chaque expérience. Il est important de noter que la plateforme "Weights & Biases" est distincte des concepts de "poids" et de "biais" en tant que paramètres au sein d'un réseau neuronal ; la plateforme aide à gérer le processus de recherche des poids et des biais optimaux. Vous pouvez en savoir plus sur l'intégration d'Ultralytics avec W&B dans la documentation. Une gestion efficace est essentielle pour les tâches allant de l'ajustement des hyperparamètres au déploiement de modèles à l'aide de cadres tels que PyTorch ou TensorFlow. Des plateformes comme Ultralytics HUB fournissent également des solutions intégrées pour gérer l'ensemble du cycle de vie du modèle.
Comment les poids sont-ils déterminés ?
Les poids du modèle ne sont pas définis manuellement mais sont "appris" à partir des données. Le processus commence par l'initialisation des poids avec de petits nombres aléatoires. Au cours de l'apprentissage, le modèle fait des prédictions sur les données d'apprentissage et une fonction de perte calcule le degré d'erreur de ces prédictions. Ce signal d'erreur est ensuite utilisé dans un processus appelé rétropropagation pour calculer le gradient de la perte par rapport à chaque poids. Un algorithme d'optimisation, tel que la descente stochastique de gradient (SGD), ajuste ensuite les poids dans la direction opposée au gradient afin de minimiser l'erreur. Ce cycle est répété pendant de nombreuses époques jusqu'à ce que les performances du modèle sur un ensemble de données de validation distinct cessent de s'améliorer, signe qu'il a appris les modèles dans les données.