Exploration des intégrations d'Ultralytics YOLOv8 pour le suivi des expériences ML

Abirami Vina

4 min lire

30 août 2024

Découvrez les différentes options de suivi et de contrôle de vos expériences d'entraînement au modèle YOLOv8. Comparez les outils et trouvez celui qui répond le mieux à vos besoins.

La collecte de données, leur annotation et l'entraînement de modèles tels que le modèle YOLOv8 d'Ultralytics sont au cœur de tout projet de vision par ordinateur. Souvent, vous devrez entraîner votre modèle personnalisé plusieurs fois avec différents paramètres pour créer le modèle le plus optimal. L'utilisation d'outils de suivi des expériences d'entraînement peut faciliter la gestion de votre projet de vision par ordinateur. Le suivi des expériences consiste à enregistrer les détails de chaque entraînement, tels que les paramètres utilisés, les résultats obtenus et les modifications apportées en cours de route. 

__wf_reserved_inherit
Fig. 1. Une image montrant comment le suivi des expériences s'intègre dans un projet de vision par ordinateur. 

Garder une trace de ces détails vous aide à reproduire vos résultats, à comprendre ce qui fonctionne et ce qui ne fonctionne pas, et à affiner vos modèles plus efficacement. Pour les organisations, cela permet de maintenir la cohérence entre les équipes, de favoriser la collaboration et de fournir une piste d'audit claire. Pour les individus, il s'agit de conserver une documentation claire et organisée de leur travail qui leur permet d'affiner leur approche et d'obtenir de meilleurs résultats au fil du temps. 

Dans cet article, nous allons vous présenter les différentes intégrations de formation disponibles pour la gestion et le suivi de vos expériences YOLOv8. Que vous travailliez seul ou au sein d'une équipe plus importante, la compréhension et l'utilisation des bons outils de suivi peuvent faire une réelle différence dans la réussite de vos projets YOLOv8.

Suivi des expériences d'apprentissage automatique avec MLflow

MLflow est une plateforme open-source développée par Databricks qui facilite la gestion de l'ensemble du cycle de vie de l'apprentissage automatique. MLflow Tracking est un composant essentiel de MLflow qui fournit une API et une interface utilisateur qui aide les data scientists et les ingénieurs à enregistrer et à visualiser leurs expériences d'apprentissage automatique. Il prend en charge plusieurs langages et interfaces, notamment les API Python, REST, Java et R. 

MLflow Tracking s'intègre parfaitement à YOLOv8, et vous pouvez enregistrer des mesures importantes telles que la précision, le rappel et la perte directement à partir de vos modèles. La configuration de MLflow avec YOLOv8 est simple, et il y a des options flexibles : vous pouvez utiliser la configuration locale par défaut, vous connecter à divers magasins de données, ou démarrer un serveur de suivi MLflow à distance pour garder tout organisé.

__wf_reserved_inherit
Fig. 2. Configurations courantes de l'environnement de suivi MLflow. Source de l'image : MLflow tracking.

Voici quelques éléments pour vous aider à décider si MLflow est le bon outil pour votre projet :

  • Évolutivité : MLflow s'adapte bien à vos besoins, que vous travailliez sur une seule machine ou que vous déployiez sur de grands clusters. Si votre projet implique de passer du développement à la production, MLflow peut supporter cette croissance.
  • Complexité du projet: MLflow est idéal pour les projets complexes qui nécessitent un suivi approfondi, une gestion des modèles et des capacités de déploiement. Si votre projet nécessite ces fonctionnalités à grande échelle, MLflow peut rationaliser vos flux de travail.
  • Installation et maintenance : Bien que puissant, MLflow s'accompagne d'une courbe d'apprentissage et de frais d'installation. 

Utilisation de poids et de biais (W&B) pour le suivi de modèles de vision par ordinateur

Weights & Biases est une plateforme MLOps pour le suivi, la visualisation et la gestion des expériences d'apprentissage automatique. En utilisant W&B avec YOLOv8, vous pouvez surveiller les performances de vos modèles au fur et à mesure que vous les entraînez et les affinez. Le tableau de bord interactif de W&B fournit une vue claire et en temps réel de ces mesures et facilite l'identification des tendances, la comparaison des variantes de modèles et la résolution des problèmes au cours du processus de formation.

W&B enregistre automatiquement les mesures d'entraînement et les points de contrôle du modèle, et vous pouvez même l'utiliser pour affiner les hyperparamètres comme le taux d'apprentissage et la taille du lot. La plateforme prend en charge un large éventail d'options de configuration, du suivi des exécutions sur votre machine locale à la gestion de projets à grande échelle avec stockage dans le nuage.

__wf_reserved_inherit
Fig. 3. Exemple de tableau de bord de suivi des expériences de Weights & Biases. Source de l'image : Expériences de suivi de Weights & Biases.

Voici quelques éléments pour vous aider à décider si Pondérations et Biais est l'outil adéquat pour votre projet :

  • Visualisation et suivi améliorés: W&B fournit un tableau de bord intuitif pour visualiser les mesures de formation et la performance des modèles en temps réel.
  • Modèle de tarification: Le prix est basé sur les heures suivies, ce qui peut ne pas être idéal pour les utilisateurs ayant des budgets limités ou des projets impliquant de longues périodes de formation.

Suivi des expériences MLOps avec ClearML

ClearML est une plateforme MLOps open-source conçue pour automatiser, surveiller et orchestrer les workflows d'apprentissage automatique. Elle prend en charge les frameworks d'apprentissage automatique les plus répandus tels que PyTorch, TensorFlow et Keras et peut s'intégrer facilement à vos processus existants. ClearML prend également en charge l'informatique distribuée sur des machines locales ou dans le cloud et peut surveiller l'utilisation du CPU et du GPU.

L'intégration de YOLOv8 avec ClearML fournit des outils pour le suivi des expériences, la gestion des modèles et la surveillance des ressources. L'interface web intuitive de la plateforme vous permet de visualiser les données, de comparer les expériences et de suivre en temps réel les mesures critiques telles que la perte, la précision et les scores de validation. L'intégration prend également en charge des fonctions avancées telles que l'exécution à distance, le réglage des hyperparamètres et le point de contrôle du modèle.

__wf_reserved_inherit
Fig. 4. Un exemple de visualisation du suivi des expériences par ClearML. Source de l'image : Clear ML Tracking Experiments and Visualizing Results (Suivi des expériences et visualisation des résultats).

Voici quelques éléments pour vous aider à décider si ClearML est le bon outil pour votre projet :

  • Besoin d'un suivi avancé des expériences: ClearML offre un suivi robuste des expériences qui comprend une intégration automatique avec Git.
  • Un déploiement flexible: ClearML peut être utilisé sur site, dans le cloud ou sur des clusters Kubernetes, ce qui lui permet de s'adapter à différentes configurations.

Expériences d'entraînement au suivi à l'aide de Comet ML

Comet ML est une plateforme conviviale qui permet de gérer et de suivre les expériences d'apprentissage automatique. L'intégration de YOLOv8 avec Comet ML vous permet d'enregistrer vos expériences et de visualiser vos résultats au fil du temps. L'intégration facilite l'identification des tendances et la comparaison des différentes expériences. 

Comet ML peut être utilisé dans le nuage, sur un nuage privé virtuel (VPC) ou même sur site, ce qui le rend adaptable à différentes configurations et à différents besoins. Cet outil est conçu pour le travail en équipe. Vous pouvez partager des projets, étiqueter des coéquipiers et laisser des commentaires afin que tout le monde reste sur la même longueur d'onde et reproduise les expériences avec précision.

Voici quelques éléments pour vous aider à décider si Comet ML est l'outil adéquat pour votre projet :

  • Prise en charge de plusieurs cadres et langages : Comet ML fonctionne avec Python, JavaScript, Java, R et bien plus encore, ce qui en fait une option polyvalente quels que soient les outils ou les langages utilisés dans votre projet.
  • Tableaux de bord et rapports personnalisables: L'interface de Comet ML est hautement personnalisable, ce qui vous permet de créer les rapports et les tableaux de bord les plus pertinents pour votre projet.
  • Coût: Comet ML est une plateforme commerciale, et certaines de ses fonctions avancées nécessitent un abonnement payant.

TensorBoard peut aider à la visualisation

TensorBoard est une puissante boîte à outils de visualisation spécialement conçue pour les expériences TensorFlow, mais c'est aussi un excellent outil pour le suivi et la visualisation des métriques dans un large éventail de projets d'apprentissage automatique. Connu pour sa simplicité et sa rapidité, TensorBoard permet aux utilisateurs de suivre facilement les métriques clés et de visualiser les graphes des modèles, les embeddings et d'autres types de données.

L'un des principaux avantages de l'utilisation de TensorBoard avec YOLOv8 est qu'il est commodément préinstallé, ce qui élimine le besoin d'une installation supplémentaire. Un autre avantage est la capacité de TensorBoard à fonctionner entièrement sur site. C'est particulièrement important pour les projets soumis à des exigences strictes en matière de confidentialité des données ou dans des environnements où les téléchargements sur le cloud ne sont pas envisageables.

__wf_reserved_inherit
Fig. 5. Suivi de l'entraînement du modèle YOLOv8 à l'aide de TensorBoard.

Voici quelques éléments pour vous aider à décider si TensorBoard est le bon outil pour votre projet :

  • Explicabilité avec l'outil What-If (WIT): TensorBoard comprend l'outil What-If, qui offre une interface facile à utiliser pour explorer et comprendre les modèles ML. Il est précieux pour ceux qui cherchent à mieux comprendre les modèles à boîte noire et à améliorer l'explicabilité.
  • Suivi simple des expériences: TensorBoard est idéal pour les besoins de suivi de base avec des comparaisons d'expériences limitées et manque de fonctions robustes de collaboration d'équipe, de contrôle de version et de gestion de la confidentialité.

Utilisation de DVCLive (Data Version Control Live) pour suivre les expériences de ML

L'intégration de YOLOv8 avec DVCLive offre un moyen rationalisé de suivre et de gérer les expériences en versionnant vos ensembles de données, vos modèles et votre code ensemble sans stocker de gros fichiers dans Git. Il utilise des commandes similaires à celles de Git et stocke les mesures suivies dans des fichiers texte pour faciliter le contrôle des versions. DVCLive enregistre les métriques clés, visualise les résultats et gère les expériences proprement sans encombrer votre référentiel. Il prend en charge un large éventail de fournisseurs de stockage et peut fonctionner localement ou dans le nuage. DVCLive est parfait pour les équipes qui cherchent à rationaliser le suivi des expériences sans infrastructure supplémentaire ou dépendance au cloud.

Gérer les modèles et les flux de travail Ultralytics à l'aide d'Ultralytics HUB

Ultralytics HUB est une plateforme interne tout-en-un conçue pour simplifier la formation, le déploiement et la gestion des modèles YOLO d'Ultralytics tels que YOLOv5 et YOLOv8. Contrairement aux intégrations externes, Ultralytics HUB offre une expérience transparente et native créée spécifiquement pour les utilisateurs de YOLO. Il simplifie l'ensemble du processus, vous permettant de télécharger facilement des ensembles de données, de choisir des modèles pré-entraînés et de commencer l'entraînement en quelques clics en utilisant les ressources du cloud - le tout dans l'interface conviviale du HUB. UltralyticsHUB prend également en charge le suivi des expériences, ce qui facilite le contrôle de la progression de l'entraînement, la comparaison des résultats et l'ajustement des modèles.

__wf_reserved_inherit
Fig. 7. Suivi de l'entraînement du modèle YOLOv8 à l'aide d'Ultralytics HUB.

Principaux enseignements

Choisir le bon outil pour suivre vos expériences d'apprentissage automatique peut faire une grande différence. Tous les outils dont nous avons parlé peuvent vous aider à suivre les expériences de formation YOLOv8, mais il est important de peser le pour et le contre de chacun d'entre eux pour trouver celui qui convient le mieux à votre projet. Le bon outil vous permettra de rester organisé et d'améliorer les performances de votre modèle YOLOv8 ! 

Les intégrations peuvent simplifier l'utilisation de YOLOv8 dans vos projets innovants et accélérer vos progrès. Pour découvrir d'autres intégrations passionnantes de YOLOv8, consultez notre documentation.

Apprenez-en plus sur l'IA en explorant notre dépôt GitHub et en rejoignant notre communauté. Consultez nos pages sur les solutions pour obtenir des informations détaillées sur l'IA dans les secteurs de la fabrication et de la santé. 🚀

Construisons ensemble le futur
de l'IA !

Commencez votre voyage avec l'avenir de l'apprentissage automatique

Commencer gratuitement
Lien copié dans le presse-papiers