Améliorer l'entraînement de YOLO11 : simplifiez votre processus de journalisation avec Comet ML
La journalisation des principaux détails de l'entraînement, tels que les paramètres, les métriques, les prédictions d'images et les points de contrôle du modèle, est essentielle dans l'apprentissage automatique : elle assure la transparence de votre projet, la mesurabilité de vos progrès et la reproductibilité de vos résultats.
Regarder : Comment utiliser Comet ML pour les journaux et les métriques de formation des modèles Ultralytics YOLO 🚀 ?
Ultralytics YOLO11 s'intègre de manière transparente à Comet ML, capturant et optimisant efficacement chaque aspect du processus de formation de votre modèle de détection d'objets YOLO11. Dans ce guide, nous aborderons le processus d'installation, la configuration de Comet ML, les informations en temps réel, la journalisation personnalisée et l'utilisation hors ligne, garantissant que votre formation YOLO11 est entièrement documentée et affinée pour des résultats exceptionnels.
Comet ML
Comet ML est une plateforme permettant de suivre, de comparer, d'expliquer et d'optimiser les modèles et les expériences d'apprentissage automatique. Elle vous permet d'enregistrer des métriques, des paramètres, des médias et bien plus encore pendant l'entraînement de votre modèle et de surveiller vos expériences grâce à une interface web esthétique. Comet ML aide les scientifiques des données à itérer plus rapidement, améliore la transparence et la reproductibilité, et facilite le développement de modèles de production.
Exploiter la puissance de YOLO11 et Comet ML
En combinant Ultralytics YOLO11 avec Comet ML, vous débloquez une série d'avantages. Ceux-ci incluent une gestion simplifiée des expériences, des informations en temps réel pour des ajustements rapides, des options d'enregistrement flexibles et personnalisées, et la possibilité d'enregistrer des expériences hors ligne lorsque l'accès à Internet est limité. Cette intégration vous permet de prendre des décisions fondées sur des données, d'analyser les mesures de performance et d'obtenir des résultats exceptionnels.
Installation
Pour installer les packages requis, exécutez :
Installation
# Install the required packages for YOLO11 and Comet ML
pip install ultralytics comet_ml torch torchvision
Configuration de Comet ML
Après avoir installé les packages requis, vous devrez vous inscrire, obtenir une clé d'API Comet et la configurer.
Configuration de Comet ML
# Set your Comet Api Key
export COMET_API_KEY=YOUR_API_KEY
Ensuite, vous pouvez initialiser votre projet Comet. Comet détectera automatiquement la clé API et procédera à la configuration.
Initialiser le projet Comet
import comet_ml
comet_ml.login(project_name="comet-example-yolo11-coco128")
Si vous utilisez un notebook Google Colab, le code ci-dessus vous invitera à saisir votre clé API pour l'initialisation.
Utilisation
Avant de plonger dans les instructions d'utilisation, assurez-vous de consulter la gamme de modèles YOLO11 proposés par Ultralytics. Cela vous aidera à choisir le modèle le plus approprié pour les exigences de votre projet.
Utilisation
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n.pt")
# Train the model
results = model.train(
data="coco8.yaml",
project="comet-example-yolo11-coco128",
batch=32,
save_period=1,
save_json=True,
epochs=3,
)
Après avoir exécuté le code d'entraînement, Comet ML créera une expérience dans votre espace de travail Comet pour suivre automatiquement l'exécution. Vous recevrez ensuite un lien pour afficher la journalisation détaillée du processus d'entraînement de votre modèle YOLO11.
Comet enregistre automatiquement les données suivantes sans configuration supplémentaire : les métriques telles que mAP et la perte, les hyperparamètres, les points de contrôle du modèle, la matrice de confusion interactive et les prédictions de boîtes englobantes d'images.
Comprendre les performances de votre modèle avec les visualisations Comet ML
Voyons ce que vous verrez sur le tableau de bord Comet ML une fois que votre modèle YOLO11 aura commencé à s'entraîner. Le tableau de bord est l'endroit où toute l'action se déroule, présentant une gamme d'informations automatiquement enregistrées à travers des visuels et des statistiques. Voici une visite rapide :
Panneaux d'expérimentation
La section des panneaux d'expérimentation du tableau de bord Comet ML organise et présente les différentes exécutions et leurs métriques, telles que la perte de masque de segment, la perte de classe, la précision et la précision moyenne.
Métriques
Dans la section des métriques, vous avez également la possibilité d'examiner les métriques sous forme de tableau, qui s'affiche dans un panneau dédié, comme illustré ici.
Matrice de confusion interactive
La matrice de confusion, située dans l'onglet Matrice de confusion, offre un moyen interactif d'évaluer la précision de la classification du modèle. Elle détaille les prédictions correctes et incorrectes, vous permettant de comprendre les forces et les faiblesses du modèle.
Métriques du système
Comet ML enregistre les métriques système pour aider à identifier les goulots d'étranglement dans le processus de formation. Il comprend des métriques telles que l'utilisation du GPU, l'utilisation de la mémoire du GPU, l'utilisation du CPU et l'utilisation de la RAM. Ces éléments sont essentiels pour surveiller l'efficacité de l'utilisation des ressources pendant la formation du modèle.
Personnalisation de la journalisation Comet ML
Comet ML offre la flexibilité de personnaliser son comportement de journalisation en définissant des variables d'environnement. Ces configurations vous permettent d'adapter Comet ML à vos besoins et préférences spécifiques. Voici quelques options de personnalisation utiles :
Journalisation des prédictions d'images
Vous pouvez contrôler le nombre de prédictions d'images que Comet ML enregistre pendant vos expériences. Par défaut, Comet ML enregistre 100 prédictions d'images à partir de l'ensemble de validation. Cependant, vous pouvez modifier ce nombre pour mieux répondre à vos besoins. Par exemple, pour enregistrer 200 prédictions d'images, utilisez le code suivant :
import os
os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"
Intervalle de journalisation des lots
Comet ML vous permet de spécifier la fréquence d'enregistrement des lots de prédictions d'images. Le COMET_EVAL_BATCH_LOGGING_INTERVAL
variable d'environnement contrôle cette fréquence. Le paramètre par défaut est 1, ce qui enregistre les prédictions de chaque lot de validation. Vous pouvez ajuster cette valeur pour enregistrer les prédictions à un intervalle différent. Par exemple, le réglage à 4 enregistrera les prédictions de chaque quatrième lot.
import os
os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"
Désactivation de la journalisation de la matrice de confusion
Dans certains cas, vous ne voudrez peut-être pas enregistrer la matrice de confusion de votre ensemble de validation après chaque époque. Vous pouvez désactiver cette fonctionnalité en définissant le COMET_EVAL_LOG_CONFUSION_MATRIX
variable d'environnement sur "false". La matrice de confusion ne sera enregistrée qu'une seule fois, une fois l'entraînement terminé.
import os
os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"
Journalisation hors ligne
Si vous vous trouvez dans une situation où l'accès à Internet est limité, Comet ML offre une option de journalisation hors ligne. Vous pouvez définir le COMET_MODE
variable d'environnement sur "offline" pour activer cette fonctionnalité. Les données de votre expérience seront enregistrées localement dans un répertoire que vous pourrez ensuite télécharger sur Comet ML lorsque la connectivité Internet sera disponible.
import os
os.environ["COMET_MODE"] = "offline"
Résumé
Ce guide vous a présenté l'intégration de Comet ML avec YOLO11 d'Ultralytics. De l'installation à la personnalisation, vous avez appris à rationaliser la gestion des expériences, à obtenir des informations en temps réel et à adapter la journalisation aux besoins de votre projet.
Explorez la documentation officielle de Comet ML pour obtenir plus d'informations sur l'intégration avec YOLO11.
De plus, si vous cherchez à approfondir les applications pratiques de YOLO11, en particulier pour les tâches de segmentation d'image, ce guide détaillé sur le fine-tuning de YOLO11 avec Comet ML offre des informations précieuses et des instructions étape par étape pour améliorer les performances de votre modèle.
De plus, pour explorer d'autres intégrations intéressantes avec Ultralytics, consultez la page du guide d'intégration, qui offre une multitude de ressources et d'informations.
FAQ
Comment intégrer Comet ML à Ultralytics YOLO11 pour l’entraînement ?
Pour intégrer Comet ML avec Ultralytics YOLO11, suivez ces étapes :
-
Installer les paquets requis :
pip install ultralytics comet_ml torch torchvision
-
Configurer votre clé API Comet :
export COMET_API_KEY=YOUR_API_KEY
-
Initialisez votre projet Comet dans votre code python :
import comet_ml comet_ml.login(project_name="comet-example-yolo11-coco128")
-
Entraînez votre modèle YOLO11 et enregistrez les métriques :
from ultralytics import YOLO model = YOLO("yolo11n.pt") results = model.train( data="coco8.yaml", project="comet-example-yolo11-coco128", batch=32, save_period=1, save_json=True, epochs=3, )
Pour des instructions plus détaillées, consultez la section sur la configuration de Comet ML.
Quels sont les avantages de l'utilisation de Comet ML avec YOLO11 ?
En intégrant Ultralytics YOLO11 à Comet ML, vous pouvez :
- Surveiller les informations en temps réel : Obtenez une rétroaction instantanée sur vos résultats d’entraînement, ce qui permet des ajustements rapides.
- Enregistrer des mesures complètes : Capturez automatiquement les mesures essentielles telles que la mAP, la perte, les hyperparamètres et les points de contrôle du modèle.
- Suivre les expériences hors ligne : Enregistrez vos séries d’entraînements localement lorsque l’accès à Internet n’est pas disponible.
- Comparer différentes exécutions d'entraînement : Utilisez le tableau de bord interactif Comet ML pour analyser et comparer plusieurs expériences.
En tirant parti de ces fonctionnalités, vous pouvez optimiser vos flux de travail d'apprentissage automatique pour améliorer les performances et la reproductibilité. Pour plus d'informations, consultez le guide d'intégration de Comet ML.
Comment personnaliser le comportement de journalisation de Comet ML pendant l'entraînement de YOLO11 ?
Comet ML permet une personnalisation poussée de son comportement de journalisation à l'aide de variables d'environnement :
-
Modifier le nombre de prédictions d'images enregistrées:
import os os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"
-
Ajuster l’intervalle de journalisation des lots :
import os os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"
-
Désactiver la journalisation de la matrice de confusion :
import os os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"
Consultez la section Personnalisation de la journalisation Comet ML pour plus d'options de personnalisation.
Comment puis-je visualiser les métriques détaillées et les visualisations de mon entraînement YOLO11 sur Comet ML ?
Une fois que votre modèle YOLO11 commence à s'entraîner, vous pouvez accéder à un large éventail de métriques et de visualisations sur le tableau de bord Comet ML. Les principales fonctionnalités comprennent :
- Panneaux d'expérimentation : Affichez différentes exécutions et leurs métriques, y compris la perte de masque de segment, la perte de classe et la précision moyenne.
- Métriques: Examinez les métriques sous forme de tableau pour une analyse détaillée.
- Matrice de confusion interactive : Évaluez la précision de la classification avec une matrice de confusion interactive.
- Métriques système : Surveillez l’utilisation du GPU et du CPU, l’utilisation de la mémoire et d’autres métriques système.
Pour une présentation détaillée de ces fonctionnalités, consultez la section Comprendre les performances de votre modèle avec les visualisations Comet ML.
Puis-je utiliser Comet ML pour la journalisation hors ligne lors de la formation des modèles YOLO11 ?
Oui, vous pouvez activer la journalisation hors ligne dans Comet ML en définissant la COMET_MODE
variable d'environnement sur "offline" :
import os
os.environ["COMET_MODE"] = "offline"
Cette fonctionnalité vous permet d'enregistrer localement les données de vos expériences, qui peuvent ensuite être téléchargées vers Comet ML lorsque la connectivité Internet est disponible. Ceci est particulièrement utile lorsque vous travaillez dans des environnements avec un accès limité à Internet. Pour plus de détails, consultez la section Offline Logging.