YOLO Vision 2026 :

Améliore ton entraînement YOLO26 : Simplifie ton processus de journalisation avec Comet#

L'enregistrement des détails clés 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 essentiel en machine learning : cela garantit la transparence de ton projet, la mesure de tes progrès et la reproductibilité de tes résultats.



Watch: How to Use Comet for Ultralytics YOLO Model Training Logs and Metrics 🚀

Ultralytics YOLO26 s'intègre de manière transparente avec Comet (anciennement Comet ML), capturant et optimisant efficacement chaque aspect du processus d'entraînement de ton modèle de détection d'objets YOLO26. Dans ce guide, nous aborderons le processus d'installation, la configuration de Comet, les analyses en temps réel, l'enregistrement personnalisé et l'utilisation hors ligne, afin de garantir que ton entraînement YOLO26 soit minutieusement documenté et optimisé pour des résultats exceptionnels.

Comet#

Comet ML experiment tracking dashboard

Comet est une plateforme permettant de suivre, comparer, expliquer et optimiser des modèles et des expériences de machine learning. Elle te permet d'enregistrer des métriques, des paramètres, des médias et bien plus encore lors de l'entraînement de ton modèle, et de surveiller tes expériences via une interface web esthétique. Comet aide les data scientists à itérer plus rapidement, améliore la transparence et la reproductibilité, et contribue au développement de modèles de production.

Exploite la puissance de YOLO26 et de Comet#

En combinant Ultralytics YOLO26 avec Comet, tu débloques une gamme d'avantages. Ceux-ci incluent une gestion simplifiée des expériences, des analyses en temps réel pour des ajustements rapides, des options de journalisation flexibles et personnalisées, ainsi que la possibilité de journaliser les expériences hors ligne lorsque l'accès à Internet est limité. Cette intégration te permet de prendre des décisions basées sur les données, d'analyser les métriques de performance et d'obtenir des résultats exceptionnels.

Installation#

Pour installer les paquets requis, exécute :

Installation
# Install YOLO26 and Comet
pip install ultralytics comet_ml

Configuration de Comet#

Après avoir installé les paquets requis, tu devras t'inscrire, obtenir une clé API Comet et la configurer.

Configuration de Comet
# Set your Comet API Key
export COMET_API_KEY=YOUR_API_KEY

Ensuite, authentifie-toi auprès de Comet. Le callback Ultralytics crée l'expérience et utilise l'argument d'entraînement YOLO project comme nom de projet Comet.

Initialiser le projet Comet
import comet_ml

comet_ml.login()

Si tu utilises un notebook Google Colab, le code ci-dessus te demandera de saisir ta clé API pour l'initialisation.

Utilisation#

Avant de te lancer dans les instructions d'utilisation, assure-toi de découvrir la gamme de YOLO26 models offered by Ultralytics. Cela t'aidera à choisir le modèle le plus adapté aux exigences de ton projet.

Utilisation
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n.pt")

# Train the model
results = model.train(
    data="coco8.yaml",
    project="comet-example-yolo26-coco128",
    batch=32,
    save_period=1,
    save_json=True,
    epochs=3,
)

Après avoir exécuté le code d'entraînement, Comet créera automatiquement une expérience dans ton espace de travail Comet pour suivre l'exécution. Tu recevras ensuite un lien pour consulter l'historique détaillé du processus d'entraînement de ton modèle YOLO26.

Comet enregistre automatiquement les données suivantes sans configuration supplémentaire : des métriques telles que le mAP et la perte, des hyperparamètres, des points de contrôle du modèle, une matrice de confusion interactive et des prédictions de boîtes englobantes d'images.

Comprendre les performances de ton modèle avec les visualisations Comet#

Plongeons dans ce que tu verras sur le tableau de bord Comet une fois que ton modèle YOLO26 commencera l'entraînement. Le tableau de bord est le centre de l'action, présentant une gamme d'informations journalisées automatiquement via des visuels et des statistiques. Voici une visite rapide :

Panneaux d'expérience

La section des panneaux d'expérience du tableau de bord Comet organise et présente les différentes exécutions ainsi que leurs métriques, telles que la perte du masque de segmentation, la perte de classe, la précision et la précision moyenne.

Comet ML experiment tracking dashboard

Metrics

Dans la section des métriques, tu as également la possibilité d'examiner les métriques sous un format tabulaire, qui est affiché dans un volet dédié comme illustré ici.

Comet ML experiment tracking dashboard

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 classification du modèle. Elle détaille les prédictions correctes et incorrectes, te permettant de comprendre les points forts et les faiblesses du modèle.

Comet ML experiment tracking dashboard

Métriques système

Comet journalise les métriques système pour aider à identifier les goulots d'étranglement dans le processus d'entraînement. Cela inclut des métriques telles que l'utilisation du GPU, l'utilisation de la mémoire GPU, l'utilisation du CPU et l'utilisation de la RAM. Celles-ci sont essentielles pour surveiller l'efficacité de l'utilisation des ressources pendant l'entraînement du modèle.

Comet ML experiment tracking dashboard

Personnalisation de la journalisation Comet#

Comet offre la flexibilité de personnaliser son comportement de journalisation en définissant des variables d'environnement. Ces configurations te permettent d'adapter Comet à tes besoins et préférences spécifiques. Le rappel Ultralytics lit les variables d'environnement suivantes (définis-les avant le début de l'entraînement) :

Variable d'environnementDéfautDescription
COMET_START_ONLINE1Exécute l'expérience en mode en ligne (1) ou hors ligne (0).
COMET_PROJECT_NAMEargs.projectProjet de l'espace de travail Comet. Revient à l'argument d'entraînement YOLO project lorsqu'il n'est pas défini.
COMET_MODEL_NAMEUltralyticsNom enregistré pour l'artefact de modèle journalisé.
COMET_MAX_IMAGE_PREDICTIONS100Nombre total de prédictions d'images de validation à journaliser par exécution.
COMET_EVAL_BATCH_LOGGING_INTERVAL1Journalise les prédictions d'images tous les N lots de validation.
COMET_EVAL_LOG_IMAGE_PREDICTIONStrueActive (true) ou désactive (false) l'enregistrement des prédictions d'images.
COMET_EVAL_LOG_CONFUSION_MATRIXfalseJournalise une matrice de confusion à chaque époque de validation. Une matrice finale est toujours journalisée à la fin de l'entraînement.
COMET_MAX_CONFIDENCE_SCORE100.0Multiplicateur appliqué aux scores de confiance de détection avant la journalisation (l'interface utilisateur de Comet attend une échelle de pourcentage).
COMET_MODE (obsolète)onlineAncien alias de COMET_START_ONLINE ("online"1, "offline"0). Émet un avertissement d'obsolescence.

Pour les commutateurs booléens (COMET_EVAL_LOG_IMAGE_PREDICTIONS et COMET_EVAL_LOG_CONFUSION_MATRIX), les valeurs 1, true, yes, on, y et t sont analysées comme True (insensible à la casse). Toute autre valeur est False.

Journalisation des prédictions d'images#

Tu peux contrôler le nombre de prédictions d'images que Comet journalise pendant tes expériences. Par défaut, Comet journalise 100 prédictions d'images de l'ensemble de validation. Cependant, tu peux changer ce nombre pour mieux répondre à tes besoins. Par exemple, pour journaliser 200 prédictions d'images, utilise le code suivant :

import os

os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"

Pour désactiver complètement l'enregistrement des prédictions d'images (par exemple, pour réduire le volume de téléchargement sur des connexions lentes), définis COMET_EVAL_LOG_IMAGE_PREDICTIONS sur "false" :

import os

os.environ["COMET_EVAL_LOG_IMAGE_PREDICTIONS"] = "false"

Intervalle de journalisation par lot#

Comet te permet de spécifier la fréquence d'enregistrement des lots de prédictions d'images. La variable d'environnement COMET_EVAL_BATCH_LOGGING_INTERVAL contrôle cette fréquence. Le paramètre par défaut est 1, ce qui enregistre les prédictions de chaque lot de validation. Tu peux ajuster cette valeur pour enregistrer les prédictions à un intervalle différent. Par exemple, la définir sur 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, tu ne souhaites peut-être pas enregistrer la matrice de confusion de ton jeu de validation après chaque époque. Tu peux désactiver cette fonctionnalité en définissant la variable d'environnement COMET_EVAL_LOG_CONFUSION_MATRIX sur "false". La matrice de confusion ne sera alors enregistrée qu'une seule fois, une fois l'entraînement terminé.

import os

os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"

Mode en ligne et hors ligne#

Par défaut, Comet s'exécute en mode en ligne et diffuse les données d'expérience vers les serveurs Comet. Si tu dois t'entraîner sans accès Internet, définis COMET_START_ONLINE=0 avant le début de l'entraînement. Les données d'expérience sont enregistrées localement et peuvent être téléchargées ultérieurement à l'aide de la CLI comet upload.

import os

os.environ["COMET_START_ONLINE"] = "0"  # 1 (default) = online, 0 = offline
`COMET_MODE` est obsolète

Les versions précédentes utilisaient COMET_MODE="offline" à cette fin. La variable est toujours prise en charge pour des raisons de rétrocompatibilité, mais elle émet un avertissement d'obsolescence. Utilise COMET_START_ONLINE à l'avenir.

Nom du projet#

Par défaut, le rappel Comet transmet l'argument d'entraînement YOLO project à Comet (ou None lorsque l'argument n'est pas défini, auquel cas Comet utilise la valeur par défaut de ton espace de travail). Remplace ceci par COMET_PROJECT_NAME pour envoyer toutes les expériences vers un projet d'espace de travail Comet spécifique, quel que soit l'argument d'entraînement YOLO :

import os

os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments"

Nom de l'artefact de modèle#

COMET_MODEL_NAME définit le nom que Comet enregistre pour l'artefact de modèle journalisé (par défaut Ultralytics). Utilise-le pour différencier les variantes de modèles dans un espace de travail partagé :

import os

os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"

Mise à l'échelle du score de confiance#

Les scores de confiance de détection sont émis dans la plage [0, 1], mais l'interface utilisateur Comet les affiche par défaut sur une échelle en pourcentage. Le rappel multiplie chaque score par COMET_MAX_CONFIDENCE_SCORE (par défaut 100.0) avant l'enregistrement. Ajuste ce paramètre si tu préfères des probabilités brutes ou une échelle différente :

import os

os.environ["COMET_MAX_CONFIDENCE_SCORE"] = "1.0"  # log raw [0, 1] scores

Résumé#

Ce guide t'a accompagné tout au long de l'intégration de Comet avec YOLO26 d'Ultralytics. De l'installation à la personnalisation, tu as appris à rationaliser la gestion des expériences, à obtenir des informations en temps réel et à adapter la journalisation aux besoins de ton projet.

Consulte la documentation officielle de l'intégration YOLOv8 de Comet, qui s'applique également aux projets YOLO26.

De plus, si tu cherches à approfondir les applications pratiques de YOLO26, en particulier pour les tâches de segmentation d'images, ce guide détaillé sur l'affinage de YOLO26 avec Comet offre des informations précieuses et des instructions étape par étape pour améliorer les performances de ton modèle.

En outre, pour explorer d'autres intégrations passionnantes avec Ultralytics, consulte la page du guide d'intégration, qui offre une multitude de ressources et d'informations.

FAQ#

  • Pour intégrer Comet avec Ultralytics YOLO26, suis ces étapes :

    1. Installe les paquets requis :

      pip install ultralytics comet_ml
    2. Configure ta clé API Comet :

      export COMET_API_KEY=YOUR_API_KEY
    3. Authentifie-toi auprès de Comet dans ton code Python :

      import comet_ml
      
      comet_ml.login()
    4. Entraîne ton modèle YOLO26 et journalise les métriques :

      from ultralytics import YOLO
      
      model = YOLO("yolo26n.pt")
      results = model.train(
          data="coco8.yaml",
          project="comet-example-yolo26-coco128",
          batch=32,
          save_period=1,
          save_json=True,
          epochs=3,
      )

    Pour des instructions plus détaillées, réfère-toi à la section Configuration de Comet.

  • En intégrant Ultralytics YOLO26 avec Comet, tu peux :

    • Surveiller des informations en temps réel : Obtiens un retour instantané sur tes résultats d'entraînement, permettant des ajustements rapides.
    • Journaliser des métriques étendues : Capture automatiquement les métriques essentielles telles que le mAP, la perte, les hyperparamètres et les points de contrôle du modèle.
    • Suivre les expériences hors ligne : Journalise tes exécutions d'entraînement localement lorsqu'un accès à Internet est indisponible.
    • Comparer différentes exécutions d'entraînement : Utilise le tableau de bord interactif de Comet pour analyser et comparer plusieurs expériences.

    En tirant parti de ces fonctionnalités, tu peux optimiser tes flux de travail de machine learning pour de meilleures performances et une meilleure reproductibilité. Pour plus d'informations, visite le guide d'intégration de Comet.

  • Comet permet une personnalisation étendue de son comportement de journalisation à l'aide de variables d'environnement :

    • Change le nombre de prédictions d'images journalisées :

      import os
      
      os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"
    • Ajuste l'intervalle de journalisation par lot :

      import os
      
      os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"
    • Désactive la journalisation de la matrice de confusion :

      import os
      
      os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"
    • Définis le nom du projet Comet :

      import os
      
      os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments"
    • Définis le nom de l'artefact de modèle journalisé :

      import os
      
      os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"

    Consulte la section Personnalisation de la journalisation Comet pour obtenir la liste complète, comprenant les commutateurs de prédiction d'images, la mise à l'échelle des scores de confiance et le mode en ligne/hors ligne.

  • Une fois que ton modèle YOLO26 commence l'entraînement, tu peux accéder à un large éventail de métriques et de visualisations sur le tableau de bord Comet. Les fonctionnalités clés incluent :

    • Panneaux d'expérience : Affiche les différentes exécutions et leurs métriques, y compris la perte du masque de segmentation, la perte de classe et la précision moyenne.
    • Métriques : Examine les métriques dans un format tabulaire pour une analyse détaillée.
    • Matrice de confusion interactive : Évalue la précision de classification avec une matrice de confusion interactive.
    • Métriques système : Surveille l'utilisation du GPU et du CPU, l'utilisation de la mémoire et d'autres métriques système.

    Pour un aperçu détaillé de ces fonctionnalités, visite la section Comprendre les performances de ton modèle grâce aux visualisations Comet.

  • Oui. Définis COMET_START_ONLINE=0 avant le début de l'entraînement pour enregistrer localement :

    import os
    
    os.environ["COMET_START_ONLINE"] = "0"

    Les données d'expérience sont enregistrées sur le disque et peuvent être téléchargées ultérieurement sur Comet à l'aide de la CLI comet upload lorsque la connectivité est disponible. L'ancienne variable COMET_MODE="offline" fonctionne toujours mais émet un avertissement d'obsolescence. Pour plus de détails, consulte la section Mode en ligne et hors ligne.

Commentaires