Contrôle vert
Lien copié dans le presse-papiers

Journal Ultralytics YOLO expériences utilisant l'intégration MLflow

Explore comment l'intégration et l'enregistrement MLflow peuvent améliorer tes expériences Ultralytics YOLO , permettant un suivi supérieur pour les applications de vision par ordinateur.

Tu peux considérer un projet de vision par ordinateur comme un puzzle. Essentiellement, tu enseignes aux machines à comprendre les données visuelles en assemblant les pièces du puzzle, comme la collecte d'un ensemble de données, l'entraînement d'un modèle et son déploiement. Lorsque tout s'emboîte, tu obtiens un système capable d'analyser efficacement les images et les vidéos et de leur donner un sens.

Mais, tout comme un vrai puzzle, toutes les parties d'un projet de vision par ordinateur ne sont pas simples. Les tâches telles que le suivi des expériences (enregistrement des paramètres, des configurations et des données) et la journalisation (saisie des résultats et des mesures de performance) peuvent prendre beaucoup de temps et d'efforts. Bien que ces étapes soient essentielles pour améliorer et affiner tes modèles de vision par ordinateur, elles peuvent parfois ressembler à un goulot d'étranglement.

C'est là que les modèles Ultralytics YOLO et leur intégration à MLflow entrent en jeu. Les modèles comme Ultralytics YOLO11 prennent en charge un large éventail de tâches de vision par ordinateur, y compris la détection d'objets, la segmentation d'instances et la classification d'images. Ces capacités permettent de créer des applications de vision artificielle passionnantes. Le fait de pouvoir compter sur des intégrations comme celle de MLflow permet aux ingénieurs en vision de se concentrer sur le modèle lui-même, plutôt que de se perdre dans les détails. 

En particulier, l'intégration MLflow simplifie le processus en enregistrant diverses métriques, paramètres et artefacts tout au long du processus de formation. Dans cet article, nous allons explorer le fonctionnement de l'intégration MLflow, ses avantages et la façon dont tu peux l'utiliser pour rationaliser tes flux de travail Ultralytics YOLO .

Qu'est-ce que MLflow ?

MLflow est une plateforme open-source (développée par Databricks) conçue pour rationaliser et gérer l'ensemble du cycle de vie de l'apprentissage automatique. Elle englobe le processus de développement, de déploiement et de maintenance des modèles d'apprentissage automatique. 

MLflow comprend les éléments clés suivants :

  • Suivi des expériences: Ce composant se concentre sur l'enregistrement de détails importants tels que les paramètres du modèle, les résultats et les fichiers pour chaque cycle d'entraînement du modèle. Il t'aide à comparer les modèles, à voir comment les changements affectent les performances et à trouver le meilleur.
  • Registre des modèles: C'est comme un système de stockage pour tes modèles, où tu peux garder une trace des différentes versions et les organiser par étapes comme les tests, la mise en scène et la production.
  • Emballage de projet: MLflow facilite le regroupement de tes projets d'apprentissage automatique, y compris le code, les paramètres et les outils requis, afin qu'ils puissent être partagés et utilisés de manière cohérente au sein des équipes et des environnements.
  • Déploiement de modèles: MLflow fournit des outils pour déployer rapidement tes modèles entraînés à des endroits tels que des postes de travail ou des plateformes cloud comme AWS et Azure, ce qui les rend prêts à être utilisés dans le monde réel.
Fig 1. Composants de MLflow.

Les composants de MLflow rendent le processus d'apprentissage automatique plus facile et plus efficace à gérer. Grâce à cette intégration, Ultralytics permet d'utiliser la fonction de suivi des expériences de MLflow pour enregistrer les paramètres, les mesures et les artefacts pendant la formation des modèles YOLO . Cela facilite le suivi et la comparaison des différentes versions du modèle YOLO .

L'intégration de MLflow simplifie la formation

Maintenant que nous avons abordé ce qu'est MLflow, plongeons dans les détails de l'intégration MLflow et des fonctionnalités qu'elle offre. 

L'intégration MLflow est conçue pour rendre le processus de formation plus efficace et mieux organisé en suivant et en enregistrant automatiquement les aspects importants de tes expériences de vision par ordinateur. Elle facilite trois types principaux de journalisation : les métriques, les paramètres et les artefacts.

Voici un examen plus approfondi de chaque type d'exploitation forestière :

  • Enregistrement des métriques : Les métriques sont des valeurs quantitatives qui mesurent les performances de ton modèle pendant la formation. Par exemple, des mesures telles que l'exactitude, la précision, le rappel ou la perte sont suivies à la fin de chaque époque (un passage complet dans ton ensemble de données). 
  • Enregistrement des paramètres : Les paramètres sont les réglages que tu définis avant le début de la formation du modèle, tels que le taux d'apprentissage, la taille du lot (le nombre d'échantillons traités lors d'une étape de formation) et le nombre d'époques. Ces paramètres affectent de manière significative le comportement et les performances de ton modèle.
  • Enregistrement des artefacts : Les artefacts sont les sorties ou les fichiers générés pendant la formation. Cela comprend des fichiers essentiels comme les poids du modèle (les valeurs numériques que ton modèle apprend pendant l'entraînement), les fichiers de configuration (qui stockent les paramètres d'entraînement) et d'autres données pertinentes. 
Fig 2. Principales caractéristiques d'enregistrement de l'intégration de MLflow. Image par l'auteur.

Comment fonctionne l'intégration MLflow

Tu peux explorer la documentation de Ultralytics pour obtenir des instructions étape par étape sur l'activation de l'intégration MLflow. Une fois configurée, l'intégration suit et enregistre automatiquement les détails clés de tes expériences d'entraînement, comme nous l'avons vu plus haut. Cela élimine le besoin d'un suivi manuel et t'aide à rester concentré sur l'amélioration de tes modèles.

Avec l'intégration MLflow, tous tes entraînements sont stockés en un seul endroit, ce qui facilite la comparaison des résultats et l'évaluation des différentes configurations. En comparant les résultats enregistrés, tu peux identifier les configurations les plus performantes et utiliser ces informations pour améliorer tes modèles. Ainsi, ton flux de travail est plus efficace, bien documenté et reproductible.

Plus précisément, chaque session de formation est organisée en une expérience, qui agit comme un conteneur pour plusieurs exécutions. Au sein d'une expérience, tu peux visualiser toutes les exécutions associées, comparer leurs performances côte à côte et analyser les tendances à travers différentes configurations. 

Par exemple, si tu testes différents taux d'apprentissage ou tailles de lots avec Ultralytics YOLOv8 , toutes les exécutions liées sont regroupées sous la même expérience pour faciliter la comparaison et l'analyse, comme le montre l'illustration ci-dessous.

Fig 3. Tu peux visualiser les expériences à l'aide de l'intégration MLflow.

Pendant ce temps, au niveau de l'exécution individuelle, MLflow fournit des informations détaillées sur la session de formation spécifique. Tu peux visualiser des mesures telles que l'exactitude, la perte et la précision au cours des époques, vérifier les paramètres de formation utilisés (par exemple, la taille du lot et le taux d'apprentissage) et accéder aux artefacts générés tels que les poids du modèle et les fichiers de configuration. Ces détails sont stockés dans un format organisé, ce qui facilite la révision ou la reproduction de n'importe quelle exécution.

Choisir l'intégration MLflow : pourquoi se démarquer ?

En parcourant la documentation du siteUltralytics et en explorant les intégrations disponibles, tu te poseras peut-être des questions : Qu'est-ce qui distingue l'intégration MLflow et pourquoi devrais-je la choisir pour mon flux de travail ?

Avec des intégrations comme TensorBoard qui fournissent également des outils de suivi des métriques et de visualisation des résultats, il est important de comprendre les qualités uniques qui font que l'intégration MLflow se démarque. 

Voici pourquoi MLflow pourrait être le choix idéal pour tes projetsYOLO :

  • Interface conviviale : Le tableau de bord MLflow facilite la visualisation des expériences, la comparaison des exécutions et l'analyse des résultats, ce qui t'aide à identifier rapidement les configurations les plus performantes.
  • Enregistrement de mesures personnalisées : Les ingénieurs de la vision peuvent enregistrer des mesures personnalisées en plus des mesures standard, ce qui permet une analyse plus approfondie spécifique aux besoins de leur projet.
  • Prise en charge des flux de travail multilingues: MLflow est compatible avec plusieurs langages de programmation, notamment Python, R et Java, ce qui facilite l'intégration dans divers pipelines d'apprentissage automatique.

Applications pratiques de YOLO11 et de l'intégration de MLflow

Pour mieux comprendre quand tu peux utiliser l'intégration MLflow, considérons une application d'IA dans le domaine de la santé où tu dois entraîner YOLO11 à détecter des tumeurs sur des images de radiographie ou de tomodensitométrie. 

Dans un tel scénario, l'ensemble de données serait constitué d'images médicales annotées. Tu devrais expérimenter diverses configurations, comme ajuster les taux d'apprentissage, la taille des lots et les techniques de prétraitement des images, afin d'obtenir une précision optimale. Comme les enjeux sont élevés dans le domaine de la santé et que la précision et la fiabilité sont essentielles, le suivi manuel de chaque expérience peut rapidement devenir ingérable.

Fig 4. Détection des tumeurs à l'aide de Ultralytics YOLO11 .

L'intégration de MLflow relève ce défi en enregistrant automatiquement les paramètres, les métriques et les artefacts de chaque expérience. Par exemple, si tu modifies le taux d'apprentissage ou si tu appliques une nouvelle stratégie d'augmentation, MLflow enregistre ces changements en même temps que les mesures de performance. MLflow enregistre également les poids et les configurations des modèles entraînés, ce qui permet de reproduire et de déployer facilement les modèles réussis. 

Ce n'est qu'un exemple de la façon dont l'intégration de MLflow améliore la gestion des expériences dans les applications de vision artificielle. Les mêmes fonctionnalités s'appliquent à d'autres applications de vision par ordinateur, notamment :

  • Conduite autonome: YOLO11 peut être utilisé pour détecter et classer les piétons, les véhicules et les panneaux de signalisation en temps réel afin d'améliorer la sécurité et l'efficacité des systèmes de conduite autonome.
  • Analyse du commerce de détail: Les modèles de détection d'objets peuvent surveiller le comportement des clients, suivre le placement des produits et optimiser les stocks en analysant l'activité en magasin grâce aux flux vidéo.
  • Sécurité et surveillance: Les modèles peuvent être entraînés à détecter les anomalies ou à surveiller l'activité en temps réel dans les zones sensibles pour une sécurité renforcée.

Avantages de l'intégration de MLflow

L'intégration de MLflow avec les modèlesYOLO rend la gestion des expériences d'apprentissage automatique plus facile et plus efficace. En automatisant les tâches clés et en gardant tout organisé, elle te permet de te concentrer sur la construction et l'amélioration de tes modèles. Voici un aperçu des principaux avantages :

  • S'adapte aux projets de grande envergure: La plateforme gère efficacement plusieurs expériences et modèles, ce qui la rend adaptée aux équipes plus importantes et aux flux de travail complexes.
  • Historique détaillé des expériences: La plateforme conserve un historique complet des expériences, ce qui te permet de revoir les exécutions passées, d'analyser les configurations précédentes et de tirer des leçons des résultats antérieurs.
  • Options de désactivation et de réinitialisation : L'enregistrement MLflow peut être facilement désactivé lorsqu'il n'est pas nécessaire, et les paramètres peuvent être réinitialisés aux valeurs par défaut, ce qui offre une certaine souplesse pour s'adapter aux exigences variables du flux de travail.

Principaux enseignements

L'intégration MLflow rend la gestion et l'optimisation des expériences Ultralytics YOLO plus faciles et plus efficaces. En suivant automatiquement les détails clés tels que les paramètres, les métriques et les artefacts, elle simplifie le processus et élimine les tracas de la gestion manuelle des expériences. 

Que tu travailles sur des solutions de santé comme la détection des tumeurs, que tu améliores les systèmes de conduite autonome ou les analyses de vente au détail, cette intégration permet de tout organiser et de tout reproduire. Grâce à son interface intuitive et à sa flexibilité, MLflow permet aux développeurs de se concentrer sur la construction de meilleurs modèles et de favoriser l'innovation dans les applications Vision AI.

Rejoins notre communauté et consulte notre dépôt GitHub pour en savoir plus sur l'IA. Tu peux aussi explorer plus d'applications de la vision par ordinateur dans la fabrication ou de l 'IA dans les voitures autonomes sur nos pages de solutions.

Logo FacebookLogo de TwitterLogo LinkedInSymbole du lien de copie

Lire la suite dans cette catégorie

Construisons ensemble le futur
de l'IA !

Commence ton voyage avec le futur de l'apprentissage automatique.