Journalise tes expériences Ultralytics YOLO en utilisant l'intégration MLflow
Explore comment l'intégration et la journalisation avec 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. En substance, tu apprends aux machines à comprendre des données visuelles en assemblant les pièces du puzzle, comme la collecte d'un jeu de données, l'entraînement d'un modèle et son déploiement. Quand tout s'emboîte, tu obtiens un système capable d'analyser et d'interpréter efficacement des images et des vidéos.
Mais, tout comme un vrai puzzle, chaque partie d'un projet de vision par ordinateur n'est pas simple. Des tâches telles que le suivi des expériences (garder une trace de tes paramètres, configurations et données) et la journalisation (capture des résultats et des mesures de performance) peuvent demander 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 sembler être un goulot d'étranglement.
C'est là que les modèles Ultralytics YOLO et leur intégration avec MLflow entrent en jeu. Des 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 par ordinateur passionnantes. Avoir la possibilité de s'appuyer sur des intégrations comme l'intégration MLflow permet aux ingénieurs en vision de se concentrer sur le modèle lui-même, plutôt que de se laisser distraire par les détails.
En particulier, l'intégration MLflow simplifie le processus en enregistrant divers paramètres, métriques et artefacts tout au long du processus d'entraînement. Dans cet article, nous explorerons le fonctionnement de l'intégration MLflow, ses avantages et comment tu peux l'utiliser pour rationaliser tes flux de travail Ultralytics YOLO.
Link to this sectionQu'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 composants clés suivants :
- Suivi des expériences : Ce composant se concentre sur l'enregistrement des détails importants tels que les paramètres du modèle, les résultats et les fichiers pour chaque cycle d'entraînement de modèle. Il t'aide à comparer les modèles, à voir comment les changements affectent les performances et à trouver le meilleur.
- Registre de modèles : C'est comme un système de stockage pour tes modèles, où tu peux suivre différentes versions et les organiser par étapes comme les tests, la pré-production et la production.
- Packaging de projets : MLflow facilite le regroupement de tes projets d'apprentissage automatique, incluant le code, les paramètres et les outils requis, afin qu'ils puissent être partagés et utilisés de manière cohérente entre les équipes et les environnements.
- Déploiement de modèles : MLflow fournit des outils pour déployer rapidement tes modèles entraînés vers des emplacements tels que des stations de travail ou des plateformes cloud comme AWS et Azure, les rendant prêts pour une utilisation réelle.

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 fonctionnalité de suivi des expériences de MLflow pour enregistrer des paramètres, des métriques et des artefacts lors de l'entraînement de modèles YOLO. Cela simplifie le suivi et la comparaison des différentes versions de modèles YOLO.
Link to this sectionL'intégration MLflow rationalise l'entraînement#
Maintenant que nous avons couvert ce qu'est MLflow, plongeons dans les détails de l'intégration MLflow et les fonctionnalités qu'elle offre.
L'intégration MLflow est conçue pour rendre le processus d'entraînement plus efficace et 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 aperçu plus détaillé de chaque type de journalisation :
- Journalisation des métriques : Les métriques sont des valeurs quantitatives qui mesurent les performances de ton modèle pendant l'entraînement. Par exemple, des métriques comme l'accuracy, la précision, le rappel ou la perte sont suivies à la fin de chaque époque (un passage complet à travers ton jeu de données).
- Journalisation des paramètres : Les paramètres sont les réglages que tu définis avant le début de l'entraînement du modèle, tels que le taux d'apprentissage, la taille du batch (le nombre d'échantillons traités en une étape d'entraînement) et le nombre d'époques. Ces paramètres affectent de manière significative le comportement et les performances de ton modèle.
- Journalisation des artefacts : Les artefacts sont les sorties ou fichiers générés pendant l'entraînement. Cela inclut 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 réglages d'entraînement) et d'autres données pertinentes.

Fig 2. Fonctionnalités clés de journalisation de l'intégration MLflow. Image de l'auteur.
Link to this sectionComment fonctionne l'intégration MLflow#
Tu peux explorer la documentation 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 discuté ci-dessus. Cela élimine le besoin de suivi manuel et t'aide à rester concentré sur l'affinement de tes modèles.
Avec l'intégration MLflow, tous tes cycles d'entraînement sont stockés au même endroit, ce qui facilite la comparaison des résultats et l'évaluation de 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. Cela garantit que ton flux de travail est plus efficace, bien documenté et reproductible.
Plus précisément, chaque session d'entraînement est organisée en une expérience, qui agit comme un conteneur pour plusieurs exécutions. Au sein d'une expérience, tu peux voir 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 batch avec Ultralytics YOLOv8, toutes les exécutions associées sont regroupées sous la même expérience pour faciliter la comparaison et l'analyse, comme illustré ci-dessous.

Fig 3. Tu peux visualiser les expériences utilisant l'intégration MLflow.
Pendant ce temps, au niveau de l'exécution individuelle, MLflow fournit des informations détaillées sur la session d'entraînement spécifique. Tu peux voir des métriques comme l'accuracy, la perte et la précision sur les époques, vérifier les paramètres d'entraînement utilisés (ex: taille du batch et taux d'apprentissage), et accéder aux artefacts générés comme les poids du modèle et les fichiers de configuration. Ces détails sont stockés dans un format organisé, rendant simple la consultation ou la reproduction de n'importe quelle exécution.
Link to this sectionChoisir l'intégration MLflow : pourquoi elle se démarque#
En parcourant la documentation Ultralytics et en explorant les intégrations disponibles, tu pourrais te demander : 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 pour le suivi des métriques et la visualisation des résultats, il est important de comprendre les qualités uniques qui font que l'intégration MLflow se distingue.
Voici pourquoi MLflow pourrait être le choix idéal pour tes projets YOLO :
- Interface conviviale : Le tableau de bord MLflow facilite la visualisation des expériences, la comparaison des exécutions et l'analyse des résultats, t'aidant à identifier rapidement les configurations les plus performantes.
- Journalisation de métriques personnalisées : Les ingénieurs en vision peuvent enregistrer des métriques personnalisées en plus des métriques standards, permettant une analyse plus approfondie spécifique aux besoins de leur projet.
- Prise en charge des flux de travail multi-langages : MLflow est compatible avec plusieurs langages de programmation, dont Python, R et Java, facilitant l'intégration dans divers pipelines d'apprentissage automatique.
Link to this sectionApplications pratiques de YOLO11 et de l'intégration MLflow#
Pour mieux comprendre quand tu peux utiliser l'intégration MLflow, considérons une application d'IA dans le secteur de la santé où tu dois entraîner YOLO11 pour détecter des tumeurs dans des images de radiographie ou de scanner CT.
Dans un tel scénario, le jeu de données consisterait en des images médicales annotées. Tu devrais expérimenter avec diverses configurations, comme l'ajustement des taux d'apprentissage, des tailles de batch et des techniques de prétraitement d'image, pour atteindre une précision optimale. Comme les enjeux sont importants dans le secteur de la santé et que la précision et la fiabilité sont critiques, le suivi manuel de chaque expérience peut rapidement devenir ingérable.

Fig 4. Détection de tumeurs utilisant Ultralytics YOLO11.
L'intégration MLflow résout 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 appliques une nouvelle stratégie d'augmentation, MLflow enregistre ces changements aux côtés des métriques de performance. De plus, MLflow sauvegarde les poids des modèles entraînés et les configurations, garantissant que les modèles performants peuvent être facilement reproduits et déployés.
Ce n'est qu'un exemple de la manière dont l'intégration MLflow améliore la gestion des expériences dans les applications de vision par IA. 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 de vente au détail : Les modèles de détection d'objets peuvent surveiller le comportement des clients, suivre les placements de produits et optimiser les stocks en analysant l'activité en magasin via des flux vidéo.
- Sécurité et surveillance : Les modèles peuvent être entraînés pour détecter des anomalies ou surveiller l'activité en temps réel dans des zones sensibles pour une sécurité accrue.
Link to this sectionAvantages de l'intégration MLflow#
L'intégration de MLflow avec les modèles YOLO 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 :
- Évolutivité pour les grands projets : La plateforme gère efficacement plusieurs expériences et modèles, ce qui la rend adaptée aux grandes équipes et aux flux de travail complexes.
- Historique détaillé des expériences : La plateforme maintient un historique complet des expériences, te permettant de revisiter les exécutions passées, d'analyser les configurations précédentes et d'apprendre des résultats antérieurs.
- Options de désactivation et de réinitialisation : La journalisation MLflow peut être facilement désactivée lorsque ce n'est pas nécessaire, et les paramètres peuvent être réinitialisés aux valeurs par défaut, offrant une flexibilité pour s'adapter aux différentes exigences de flux de travail.
Link to this sectionPoints clés#
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 comme 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 de tumeurs, l'amélioration des systèmes de conduite autonome ou le renforcement de l'analyse de vente au détail, cette intégration aide à garder tout organisé et reproductible. Avec son interface intuitive et sa flexibilité, MLflow permet aux développeurs de se concentrer sur la création de meilleurs modèles et de stimuler l'innovation dans les applications de vision par IA.
Rejoins notre communauté et consulte notre référentiel GitHub pour en apprendre davantage sur l'IA. Tu peux également explorer davantage d'applications de la vision par ordinateur dans la fabrication ou de l'IA dans les voitures autonomes sur nos pages de solutions.






