Zum Inhalt springen

Erhöhen Sie YOLO11 Training: Vereinfachen Sie Ihren Protokollierungsprozess mit Comet ML

Die Protokollierung wichtiger Trainingsdetails wie Parameter, Metriken, Bildvorhersagen und Modellprüfpunkte ist beim maschinellen Lernenunerlässlich - sobleibt Ihr Projekt transparent, Ihr Fortschritt messbar und Ihre Ergebnisse wiederholbar.

Ultralytics YOLO11 lässt sich nahtlos in Comet ML integrieren, um jeden Aspekt des Trainingsprozesses Ihres YOLO11 Objekterkennungsmodells effizient zu erfassen und zu optimieren. In diesem Leitfaden werden der Installationsprozess, die Einrichtung von Comet ML, Echtzeit-Einsichten, die benutzerdefinierte Protokollierung und die Offline-Nutzung behandelt, um sicherzustellen, dass Ihr YOLO11 Training gründlich dokumentiert und für herausragende Ergebnisse feinabgestimmt ist.

Comet ML

Comet ML Überblick

Comet ML ist eine Plattform zum Verfolgen, Vergleichen, Erklären und Optimieren von Modellen und Experimenten für maschinelles Lernen. Sie ermöglicht es Ihnen, Metriken, Parameter, Medien und mehr während des Modelltrainings zu protokollieren und Ihre Experimente über eine ästhetisch ansprechende Weboberfläche zu überwachen. Comet ML unterstützt Datenwissenschaftler bei der schnelleren Iteration, verbessert die Transparenz und Reproduzierbarkeit und hilft bei der Entwicklung von Produktionsmodellen.

Nutzung der Leistungsfähigkeit von YOLO11 und Comet ML

Durch die Kombination von Ultralytics YOLO11 mit Comet ML können Sie eine Reihe von Vorteilen nutzen. Dazu gehören eine vereinfachte Versuchsverwaltung, Echtzeit-Einsichten für schnelle Anpassungen, flexible und maßgeschneiderte Protokollierungsoptionen und die Möglichkeit, Experimente offline zu protokollieren, wenn der Internetzugang eingeschränkt ist. Diese Integration ermöglicht es Ihnen, datengesteuerte Entscheidungen zu treffen, Leistungskennzahlen zu analysieren und außergewöhnliche Ergebnisse zu erzielen.

Einrichtung

Um die erforderlichen Pakete zu installieren, führen Sie aus:

Einrichtung

# Install the required packages for YOLO11 and Comet ML
pip install ultralytics comet_ml torch torchvision

Konfigurieren von Comet ML

Nachdem Sie die erforderlichen Pakete installiert haben, müssen Sie sich anmelden, einen Comet API-Schlüssel erhalten und diesen konfigurieren.

Konfigurieren von Comet ML

# Set your Comet Api Key
export COMET_API_KEY=<Your API Key>

Anschließend können Sie Ihr Comet Projekt initialisieren. Comet erkennt den API-Schlüssel automatisch und fährt mit der Einrichtung fort.

Initialisieren Sie das Projekt Comet

import comet_ml

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

Wenn Sie ein Google Colab-Notebook verwenden, werden Sie im obigen Code aufgefordert, Ihren API-Schlüssel zur Initialisierung einzugeben.

Verwendung

Bevor Sie sich mit der Gebrauchsanweisung befassen, sollten Sie sich über die verschiedenen Modelle vonYOLO11 informieren, die von Ultralytics angeboten werden. Dies wird Ihnen helfen, das am besten geeignete Modell für Ihre Projektanforderungen auszuwählen.

Verwendung

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

Nachdem der Trainingscode ausgeführt wurde, erstellt Comet ML ein Experiment in Ihrem Comet Arbeitsbereich, um den Lauf automatisch zu verfolgen. Sie erhalten dann einen Link, über den Sie die detaillierte Protokollierung des Trainingsprozesses Ihres YOLO11 Modells einsehen können.

Comet protokolliert automatisch und ohne zusätzliche Konfiguration die folgenden Daten: Metriken wie mAP und Verlust, Hyperparameter, Modellprüfpunkte, interaktive Konfusionsmatrix und Vorhersagen für Bildbegrenzungsrahmen.

Verstehen Sie die Leistung Ihres Modells mit Comet ML Visualisierungen

Schauen wir uns an, was Sie auf dem Comet ML Dashboard sehen, sobald Ihr YOLO11 Modell mit dem Training beginnt. Das Dashboard ist der Ort, an dem sich alles abspielt. Es zeigt eine Reihe von automatisch protokollierten Informationen in Form von Grafiken und Statistiken. Hier ist ein kurzer Überblick:

Experimentierkästen

Im Bereich der Experimentierfelder des Comet ML-Dashboards werden die verschiedenen Läufe und ihre Metriken, wie Segmentmaskenverlust, Klassenverlust, Präzision und durchschnittliche Präzision, organisiert und dargestellt.

Comet ML Überblick

Metriken

Im Abschnitt "Metriken" haben Sie die Möglichkeit, die Metriken auch in einem Tabellenformat zu betrachten, das in einem speziellen Bereich angezeigt wird, wie hier dargestellt.

Comet ML Überblick

Interaktive Verwirrungsmatrix

Die Konfusionsmatrix auf der Registerkarte Konfusionsmatrix bietet eine interaktive Möglichkeit zur Bewertung der Klassifizierungsgenauigkeit des Modells. Sie enthält Details zu den richtigen und falschen Vorhersagen und ermöglicht es Ihnen, die Stärken und Schwächen des Modells zu verstehen.

Comet ML Überblick

System-Metriken

Comet ML protokolliert Systemmetriken, um etwaige Engpässe im Trainingsprozess zu identifizieren. Dazu gehören Metriken wie GPU Nutzung, GPU Speichernutzung, CPU Nutzung und RAM-Nutzung. Diese sind wichtig für die Überwachung der Effizienz der Ressourcennutzung während des Modelltrainings.

Comet ML Überblick

Anpassen von Comet ML Logging

Comet ML bietet die Möglichkeit, das Protokollierungsverhalten durch das Setzen von Umgebungsvariablen flexibel anzupassen. Diese Konfigurationen ermöglichen es Ihnen, Comet ML an Ihre speziellen Bedürfnisse und Vorlieben anzupassen. Hier sind einige hilfreiche Anpassungsoptionen:

Bildvorhersagen protokollieren

Sie können die Anzahl der Bildvorhersagen festlegen, die Comet ML während Ihrer Experimente protokolliert. Standardmäßig protokolliert Comet ML 100 Bildvorhersagen aus dem Validierungssatz. Sie können diese Zahl jedoch ändern, um Ihren Anforderungen besser gerecht zu werden. Um zum Beispiel 200 Bildvorhersagen zu protokollieren, verwenden Sie den folgenden Code:

import os

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

Intervall der Chargenprotokollierung

Comet Mit ML können Sie festlegen, wie oft Stapel von Bildvorhersagen protokolliert werden. Die Seite COMET_EVAL_BATCH_LOGGING_INTERVAL Umgebungsvariable steuert diese Häufigkeit. Die Standardeinstellung ist 1, womit Vorhersagen aus jedem Validierungsstapel protokolliert werden. Sie können diesen Wert anpassen, um Vorhersagen in einem anderen Intervall zu protokollieren. Wenn Sie beispielsweise 4 einstellen, werden die Vorhersagen von jedem vierten Stapel protokolliert.

import os

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

Deaktivieren der Verwirrungsmatrix-Protokollierung

In manchen Fällen möchten Sie die Konfusionsmatrix aus Ihrem Validierungssatz nicht nach jeder Epoche. Sie können diese Funktion deaktivieren, indem Sie die Option COMET_EVAL_LOG_CONFUSION_MATRIX Umgebungsvariable auf "false" setzen. Die Verwirrungsmatrix wird nur einmal protokolliert, nachdem das Training abgeschlossen ist.

import os

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

Offline-Protokollierung

Wenn Sie sich in einer Situation befinden, in der der Internetzugang eingeschränkt ist, bietet Comet ML eine Offline-Protokollierungsoption. Sie können die COMET_MODE Umgebungsvariable auf "offline" setzen, um diese Funktion zu aktivieren. Ihre Experimentdaten werden lokal in einem Verzeichnis gespeichert, das Sie später auf Comet ML hochladen können, wenn eine Internetverbindung verfügbar ist.

import os

os.environ["COMET_MODE"] = "offline"

Zusammenfassung

Dieser Leitfaden hat Sie durch die Integration von Comet ML mit Ultralytics' YOLO11 geführt. Von der Installation bis zur Anpassung haben Sie gelernt, wie Sie die Verwaltung von Experimenten rationalisieren, Einblicke in Echtzeit gewinnen und die Protokollierung an die Anforderungen Ihres Projekts anpassen können.

In der offiziellen Dokumentation vonComet ML finden Sie weitere Informationen zur Integration mit YOLO11.

Wenn Sie darüber hinaus tiefer in die praktischen Anwendungen von YOLO11 eintauchen möchten, insbesondere für Bildsegmentierungsaufgaben, bietet dieser detaillierte Leitfaden zur Feinabstimmung von YOLO11 mit Comet ML wertvolle Einblicke und schrittweise Anleitungen zur Verbesserung der Leistung Ihres Modells.

Um weitere interessante Integrationen mit Ultralytics zu entdecken, besuchen Sie die Seite Integrationsleitfaden, die eine Fülle von Ressourcen und Informationen bietet.

FAQ

Wie integriere ich Comet ML mit Ultralytics YOLO11 für das Training?

Um Comet ML in Ultralytics YOLO11 zu integrieren, gehen Sie wie folgt vor:

  1. Installieren Sie die erforderlichen Pakete:

    pip install ultralytics comet_ml torch torchvision
    
  2. Richten Sie Ihren Comet API-Schlüssel ein:

    export COMET_API_KEY=<Your API Key>
    
  3. Initialisieren Sie Ihr Comet Projekt in Ihrem Python Code:

    import comet_ml
    
    comet_ml.login(project_name="comet-example-yolo11-coco128")
    
  4. Trainieren Sie Ihr YOLO11 Modell und protokollieren Sie Metriken:

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

Ausführlichere Anweisungen finden Sie im AbschnittComet ML Konfiguration.

Was sind die Vorteile der Verwendung von Comet ML mit YOLO11?

Durch die Integration von Ultralytics YOLO11 mit Comet ML, können Sie:

  • Echtzeit-Einsichten überwachen: Erhalten Sie sofortiges Feedback zu Ihren Trainingsergebnissen, so dass Sie schnell Anpassungen vornehmen können.
  • Protokollieren Sie umfangreiche Metriken: Erfassen Sie automatisch wichtige Metriken wie mAP, Verlust, Hyperparameter und Modellprüfpunkte.
  • Verfolgen Sie Experimente offline: Protokollieren Sie Ihre Trainingsläufe lokal, wenn kein Internetzugang verfügbar ist.
  • Vergleichen Sie verschiedene Trainingsläufe: Verwenden Sie das interaktive Dashboard Comet ML, um mehrere Experimente zu analysieren und zu vergleichen.

Durch die Nutzung dieser Funktionen können Sie Ihre Workflows für maschinelles Lernen optimieren, um eine bessere Leistung und Reproduzierbarkeit zu erzielen. Weitere Informationen finden Sie im Comet ML-Integrationsleitfaden.

Wie kann ich das Protokollierungsverhalten von Comet ML während des YOLO11 Trainings anpassen?

Comet ML ermöglicht eine umfassende Anpassung des Protokollierungsverhaltens mithilfe von Umgebungsvariablen:

  • Ändern Sie die Anzahl der protokollierten Bildvorhersagen:

    import os
    
    os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"
    
  • Intervall für die Chargenprotokollierung einstellen:

    import os
    
    os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"
    
  • Deaktivieren Sie die Protokollierung der Konfusionsmatrix:

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

Weitere Anpassungsmöglichkeiten finden Sie im Abschnitt Customizing Comet ML Logging.

Wie kann ich detaillierte Metriken und Visualisierungen meines YOLO11 Trainings auf Comet ML anzeigen?

Sobald Ihr YOLO11 Modell mit dem Training begonnen hat, können Sie über das Comet ML-Dashboard auf eine Vielzahl von Metriken und Visualisierungen zugreifen. Zu den wichtigsten Funktionen gehören:

  • Experiment-Panels: Betrachten Sie verschiedene Läufe und ihre Metriken, einschließlich Segmentmaskenverlust, Klassenverlust und durchschnittliche Genauigkeit.
  • Metriken: Untersuchen Sie Metriken in Tabellenform für eine detaillierte Analyse.
  • Interaktive Konfusionsmatrix: Bewerten Sie die Klassifizierungsgenauigkeit mit einer interaktiven Konfusionsmatrix.
  • Systemmetriken: Überwachen Sie die Auslastung von GPU und CPU , die Speichernutzung und andere Systemmetriken.

Einen detaillierten Überblick über diese Funktionen finden Sie im Abschnitt Verstehen Sie die Leistung Ihres Modells mit Comet ML Visualisierungen.

Kann ich Comet ML für die Offline-Protokollierung beim Training von YOLO11 Modellen verwenden?

Ja, Sie können die Offline-Protokollierung in Comet ML aktivieren, indem Sie die Option COMET_MODE Umgebungsvariable auf "offline" setzen:

import os

os.environ["COMET_MODE"] = "offline"

Mit dieser Funktion können Sie Ihre Experimentdaten lokal protokollieren und sie später auf Comet ML hochladen, sobald eine Internetverbindung verfügbar ist. Dies ist besonders nützlich, wenn Sie in Umgebungen mit begrenztem Internetzugang arbeiten. Weitere Einzelheiten finden Sie im Abschnitt Offline-Protokollierung.

📅 Erstellt vor 1 Jahr ✏️ Aktualisiert vor 1 Monat

Kommentare