YOLO Vision 2026:

YOLO26-Training verbessern: Vereinfache deinen Logging-Prozess mit Comet#

Das Protokollieren wichtiger Trainingsdetails wie Parametern, Metriken, Bildvorhersagen und Modell-Checkpoints ist im Bereich machine learning unerlässlich – es sorgt für Transparenz in deinem Projekt, macht deinen Fortschritt messbar und deine Ergebnisse reproduzierbar.



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

Ultralytics YOLO26 lässt sich nahtlos in Comet (früher Comet ML) integrieren, um jeden Aspekt des Trainingsprozesses deines YOLO26-object detection-Modells effizient zu erfassen und zu optimieren. In diesem Leitfaden gehen wir auf den Installationsprozess, die Comet-Einrichtung, Einblicke in Echtzeit, benutzerdefiniertes Logging und die Offline-Nutzung ein, damit dein YOLO26-Training gründlich dokumentiert und für hervorragende Ergebnisse optimiert wird.

Comet#

Comet ML experiment tracking dashboard

Comet ist eine Plattform zum Verfolgen, Vergleichen, Erklären und Optimieren von Machine-Learning-Modellen und -Experimenten. Damit kannst du während des Modelltrainings Metriken, Parameter, Medien und mehr protokollieren und deine Experimente über eine ästhetisch ansprechende Weboberfläche überwachen. Comet hilft Data Scientists dabei, schneller zu iterieren, erhöht Transparenz sowie Reproduzierbarkeit und unterstützt die Entwicklung von Produktionsmodellen.

Die Leistungsfähigkeit von YOLO26 und Comet nutzen#

Durch die Kombination von Ultralytics YOLO26 mit Comet erschließt du dir eine Reihe von Vorteilen. Dazu gehören ein vereinfachtes Experiment-Management, Echtzeit-Einblicke für schnelle Anpassungen, flexible und maßgeschneiderte Logging-Optionen sowie die Möglichkeit, Experimente offline zu protokollieren, wenn der Internetzugang eingeschränkt ist. Diese Integration befähigt dich, datengestützte Entscheidungen zu treffen, Leistungsmetriken zu analysieren und außergewöhnliche Ergebnisse zu erzielen.

Installation#

Um die erforderlichen Pakete zu installieren, führe aus:

Installation
# Install the required packages for YOLO26 and Comet
pip install ultralytics comet_ml torch torchvision

Comet konfigurieren#

Nach der Installation der erforderlichen Pakete musst du dich registrieren, einen Comet API Key abrufen und diesen konfigurieren.

Comet konfigurieren
# Set your Comet API Key
export COMET_API_KEY=YOUR_API_KEY

Anschließend kannst du dein Comet-Projekt initialisieren. Comet erkennt den API Key automatisch und fährt mit der Einrichtung fort.

Comet-Projekt initialisieren
import comet_ml

comet_ml.login(project_name="comet-example-yolo26-coco128")

Wenn du ein Google Colab-Notebook verwendest, fordert dich der obige Code zur Eingabe deines API-Keys für die Initialisierung auf.

Verwendung#

Bevor du in die Nutzungshinweise eintauchst, solltest du dir unbedingt die Reihe der von Ultralytics angebotenen YOLO26-Modelle ansehen. Dies hilft dir dabei, das am besten geeignete Modell für deine Projektanforderungen auszuwählen.

Verwendung
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,
)

Nach dem Ausführen des Trainingscodes erstellt Comet automatisch ein Experiment in deinem Comet-Workspace, um den Durchlauf zu verfolgen. Du erhältst daraufhin einen Link, um das detaillierte Logging des YOLO26 model's training-Prozesses anzusehen.

Comet protokolliert automatisch die folgenden Daten ohne zusätzliche Konfiguration: Metriken wie mAP und Loss, Hyperparameter, Modell-Checkpoints, die interaktive Konfusionsmatrix und Bild-bounding box-Vorhersagen.

Die Modellleistung mit Comet-Visualisierungen verstehen#

Lass uns einen Blick darauf werfen, was du auf dem Comet-Dashboard siehst, sobald dein YOLO26-Modell mit dem Training beginnt. Das Dashboard ist der zentrale Ort, an dem alle Aktionen stattfinden und eine Reihe automatisch protokollierter Informationen durch Visualisierungen und Statistiken präsentiert werden. Hier ist ein kurzer Rundgang:

Experiment-Panels

Der Bereich für die Experiment-Panels im Comet-Dashboard organisiert und präsentiert die verschiedenen Durchläufe und deren Metriken wie Segmentmaskenverlust, Klassenverlust, Precision und mean average precision.

Comet ML experiment tracking dashboard

Metriken

Im Metriken-Bereich hast du zudem die Option, die Metriken in einem tabellarischen Format zu untersuchen, was wie hier dargestellt in einem eigenen Bereich angezeigt wird.

Comet ML experiment tracking dashboard

Interaktive Confusion Matrix

Die Konfusionsmatrix, die du im Reiter „Confusion Matrix“ findest, bietet eine interaktive Möglichkeit, die Klassifikations-accuracy des Modells zu bewerten. Sie führt korrekte und inkorrekte Vorhersagen im Detail auf, sodass du die Stärken und Schwächen des Modells nachvollziehen kannst.

Comet ML experiment tracking dashboard

Systemmetriken

Comet protokolliert Systemmetriken, um Engpässe im Trainingsprozess zu identifizieren. Dies umfasst Metriken wie GPU-Auslastung, GPU-Speichernutzung, CPU-Auslastung und RAM-Nutzung. Diese sind essentiell, um die Effizienz der Ressourcennutzung während des Modelltrainings zu überwachen.

Comet ML experiment tracking dashboard

Comet-Logging anpassen#

Comet bietet die Flexibilität, das Logging-Verhalten durch das Setzen von Umgebungsvariablen anzupassen. Diese Konfigurationen ermöglichen es dir, Comet auf deine spezifischen Bedürfnisse und Vorlieben zuzuschneiden. Der Ultralytics-Callback liest die folgenden Umgebungsvariablen (setze diese, bevor das Training beginnt):

UmgebungsvariableStandardBeschreibung
COMET_START_ONLINE1Führe das Experiment im Online- (1) oder Offline-Modus (0) aus.
COMET_PROJECT_NAMEargs.projectComet-Workspace-Projekt. Fällt auf das YOLO-Trainingargument project zurück, wenn es nicht gesetzt ist.
COMET_MODEL_NAMEUltralyticsRegistrierter Name für das protokollierte Modell-Artefakt.
COMET_MAX_IMAGE_PREDICTIONS100Gesamtzahl der zu protokollierenden Validierungsbildvorhersagen pro Lauf.
COMET_EVAL_BATCH_LOGGING_INTERVAL1Protokolliere Bildvorhersagen bei jedem N-ten Validierungs-Batch.
COMET_EVAL_LOG_IMAGE_PREDICTIONStrueSchaltet das Logging von Bildvorhersagen ein (true) oder aus (false).
COMET_EVAL_LOG_CONFUSION_MATRIXfalseProtokolliere eine Konfusionsmatrix bei jeder Validierungsepoche. Eine finale Matrix wird immer am Ende des Trainings protokolliert.
COMET_MAX_CONFIDENCE_SCORE100.0Multiplikator, der auf die Konfidenzwerte der Erkennung angewendet wird, bevor sie protokolliert werden (die Benutzeroberfläche von Comet erwartet eine prozentuale Skala).
COMET_MODE (veraltet)onlineLegacy-Alias von COMET_START_ONLINE ("online"1, "offline"0). Gibt eine Warnung zur Verdepretiation aus.

Bei den booleschen Schaltern (COMET_EVAL_LOG_IMAGE_PREDICTIONS und COMET_EVAL_LOG_CONFUSION_MATRIX) werden die Werte 1, true, yes, on, y und t als True interpretiert (Groß-/Kleinschreibung wird nicht berücksichtigt). Jeder andere Wert entspricht False.

Bildvorhersagen protokollieren#

Du kannst die Anzahl der Bildvorhersagen steuern, die Comet während deiner Experimente protokolliert. Standardmäßig protokolliert Comet 100 Bildvorhersagen aus dem Validierungsset. Du kannst diese Zahl jedoch an deine Anforderungen anpassen. Um beispielsweise 200 Bildvorhersagen zu protokollieren, verwende den folgenden Code:

import os

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

Um das Logging von Bildvorhersagen vollständig zu deaktivieren (z. B. um das Upload-Volumen bei langsamen Verbindungen zu reduzieren), setze COMET_EVAL_LOG_IMAGE_PREDICTIONS auf "false":

import os

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

Batch-Logging-Intervall#

Comet ermöglicht es dir festzulegen, wie oft Batches von Bildvorhersagen protokolliert werden. Die Umgebungsvariable COMET_EVAL_BATCH_LOGGING_INTERVAL steuert diese Häufigkeit. Die Standardeinstellung ist 1, wodurch Vorhersagen von jedem Validierungsbatch protokolliert werden. Du kannst diesen Wert anpassen, um Vorhersagen in einem anderen Intervall zu protokollieren. Wenn du ihn beispielsweise auf 4 setzt, werden Vorhersagen von jedem vierten Batch protokolliert.

import os

os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"

Logging der Konfusionsmatrix deaktivieren#

In einigen Fällen möchtest du die Konfusionsmatrix aus deinem Validierungsset vielleicht nicht nach jeder epoch protokollieren. Du kannst diese Funktion deaktivieren, indem du die Umgebungsvariable COMET_EVAL_LOG_CONFUSION_MATRIX auf „false“ setzt. Die Konfusionsmatrix wird dann nur einmal nach Abschluss des Trainings protokolliert.

import os

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

Online- und Offline-Modus#

Standardmäßig läuft Comet im Online-Modus und streamt Experimentdaten an die Comet-Server. Wenn du ohne Internetzugang trainieren musst, setze COMET_START_ONLINE=0, bevor das Training beginnt. Experimentdaten werden lokal gespeichert und können später mit dem comet upload-CLI hochgeladen werden.

import os

os.environ["COMET_START_ONLINE"] = "0"  # 1 (default) = online, 0 = offline
`COMET_MODE` ist veraltet

Frühere Versionen verwendeten für diesen Zweck COMET_MODE="offline". Die Variable wird aus Gründen der Abwärtskompatibilität weiterhin unterstützt, gibt jedoch eine Warnung zur Depretiation aus. Verwende in Zukunft COMET_START_ONLINE.

Projektname#

Standardmäßig übergibt der Comet-Callback das YOLO-Trainingargument project an Comet (oder None, wenn das Argument nicht gesetzt ist, in welchem Fall Comet den Standardwert deines Workspaces verwendet). Überschreibe dies mit COMET_PROJECT_NAME, um alle Experimente unabhängig vom YOLO-Trainingargument an ein spezifisches Comet-Workspace-Projekt zu senden:

import os

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

Modell-Artefaktname#

COMET_MODEL_NAME legt den Namen fest, unter dem Comet das protokollierte Modell-Artefakt registriert (Standard ist Ultralytics). Verwende ihn, um Modellvarianten in einem geteilten Workspace zu unterscheiden:

import os

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

Skalierung von Konfidenzwerten#

Erkennungswahrscheinlichkeitswerte (Confidence Scores) werden im Bereich [0, 1] ausgegeben, aber die Comet-Benutzeroberfläche zeigt sie standardmäßig auf einer Prozent skala an. Der Callback multipliziert jeden Score vor dem Protokollieren mit COMET_MAX_CONFIDENCE_SCORE (Standard 100.0). Passe dies an, wenn du rohe Wahrscheinlichkeiten oder eine andere Skala bevorzugst:

import os

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

Zusammenfassung#

Dieser Leitfaden hat dich durch die Integration von Comet mit Ultralytics' YOLO26 geführt. Von der Installation bis zur Anpassung hast du gelernt, das Experiment-Management zu optimieren, Echtzeit-Einblicke zu gewinnen und das Logging an die Bedürfnisse deines Projekts anzupassen.

Entdecke die Comet's official YOLOv8 integration documentation, die auch für YOLO26-Projekte gilt.

Wenn du außerdem tiefer in die praktischen Anwendungen von YOLO26 einsteigen möchtest, insbesondere für image segmentation-Aufgaben, bietet dieser detaillierte Leitfaden zu fine-tuning YOLO26 with Comet wertvolle Einblicke und Schritt-für-Schritt-Anleitungen zur Verbesserung der Leistung deines Modells.

Schau dir außerdem die integration guide page an, die eine Fülle von Ressourcen und Informationen bietet, um weitere spannende Integrationen mit Ultralytics zu erkunden.

FAQ#

  • Um Comet mit Ultralytics YOLO26 zu integrieren, befolge diese Schritte:

    1. Installiere die erforderlichen Pakete:

      pip install ultralytics comet_ml torch torchvision
    2. Richte deinen Comet API Key ein:

      export COMET_API_KEY=YOUR_API_KEY
    3. Initialisiere dein Comet-Projekt in deinem Python-Code:

      import comet_ml
      
      comet_ml.login(project_name="comet-example-yolo26-coco128")
    4. Trainiere dein YOLO26-Modell und protokolliere Metriken:

      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,
      )

    Ausführlichere Anweisungen findest du im Abschnitt zur Comet configuration section.

  • Durch die Integration von Ultralytics YOLO26 mit Comet kannst du:

    • Echtzeit-Einblicke überwachen: Erhalte sofortiges Feedback zu deinen Trainingsergebnissen, was schnelle Anpassungen ermöglicht.
    • Umfassende Metriken protokollieren: Erfasse automatisch essentielle Metriken wie mAP, Loss, Hyperparameter und Modell-Checkpoints.
    • Experimente offline verfolgen: Protokolliere deine Trainingsläufe lokal, wenn kein Internetzugang verfügbar ist.
    • Verschiedene Trainingsläufe vergleichen: Nutze das interaktive Comet-Dashboard, um mehrere Experimente zu analysieren und zu vergleichen.

    Durch die Nutzung dieser Funktionen kannst du deine Machine-Learning-Workflows im Hinblick auf eine bessere Leistung und Reproduzierbarkeit optimieren. Weitere Informationen findest du im Comet integration guide.

  • Comet ermöglicht eine umfangreiche Anpassung seines Logging-Verhaltens mithilfe von Umgebungsvariablen:

    • Ändere die Anzahl der protokollierten Bildvorhersagen:

      import os
      
      os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"
    • Passe das Batch-Logging-Intervall an:

      import os
      
      os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"
    • Deaktiviere das Logging der Konfusionsmatrix:

      import os
      
      os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"
    • Setze den Comet-Projekt-Namen:

      import os
      
      os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments"
    • Setze den Namen des protokollierten Modell-Artefakts:

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

    Im Abschnitt Customizing Comet Logging findest du die vollständige Liste, einschließlich Schaltern für Bildvorhersagen, Skalierung der Konfidenzwerte und Online-/Offline-Modus.

  • Sobald dein YOLO26-Modell mit dem Training beginnt, kannst du auf eine Vielzahl von Metriken und Visualisierungen auf dem Comet-Dashboard zugreifen. Zu den wichtigsten Funktionen gehören:

    • Experiment Panels: Zeige verschiedene Durchläufe und deren Metriken an, einschließlich Segmentmaskenverlust, Klassenverlust und mean average precision.
    • Metriken: Untersuche Metriken zur detaillierten Analyse im tabellarischen Format.
    • Interaktive Konfusionsmatrix: Bewerte die Klassifizierungsgenauigkeit mit einer interaktiven Konfusionsmatrix.
    • Systemmetriken: Überwache GPU- und CPU-Auslastung, Speichernutzung und andere Systemmetriken.

    Eine detaillierte Übersicht dieser Funktionen findest du im Abschnitt Understanding Your Model's Performance with Comet Visualizations.

  • Ja. Setze COMET_START_ONLINE=0, bevor das Training beginnt, um lokal zu protokollieren:

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

    Experimentdaten werden auf der Festplatte gespeichert und können später mit dem comet upload-CLI zu Comet hochgeladen werden, sobald eine Verbindung besteht. Die ältere Variable COMET_MODE="offline" funktioniert weiterhin, gibt jedoch eine Warnung zur Depretiation aus. Weitere Details findest du im Abschnitt Online and Offline Mode.

Kommentare