Zum Inhalt springen

YOLO-Experimentverfolgung und -Visualisierung mit Weights & Biases

Objekterkennungsmodelle wie Ultralytics YOLO11 sind zu einem integralen Bestandteil vieler Computer Vision-Anwendungen geworden. Das Trainieren, Evaluieren und Bereitstellen dieser komplexen Modelle bringt jedoch einige Herausforderungen mit sich. Das Verfolgen wichtiger Trainingsmetriken, das Vergleichen von Modellvarianten, das Analysieren des Modellverhaltens und das Erkennen von Problemen erfordern eine erhebliche Instrumentierung und ein umfassendes Experimentmanagement.



Ansehen: Wie man Ultralytics YOLO11 mit Weights and Biases verwendet

Dieser Leitfaden zeigt die Ultralytics YOLO11-Integration mit Weights & Biases zur verbesserten Experimentverfolgung, Modell-Checkpointing und Visualisierung der Modellleistung. Er enthält auch Anweisungen zum Einrichten der Integration, zum Trainieren, Feinabstimmen und Visualisieren von Ergebnissen mithilfe der interaktiven Funktionen von Weights & Biases.

Weights & Biases

Weights & Biases – Übersicht

Weights & Biases ist eine hochmoderne MLOps-Plattform, die für die Verfolgung, Visualisierung und Verwaltung von Machine-Learning-Experimenten entwickelt wurde. Sie bietet eine automatische Protokollierung der Trainingsmetriken für vollständige Experimentierreproduzierbarkeit, eine interaktive Benutzeroberfläche für eine optimierte Datenanalyse und effiziente Modellverwaltungstools für die Bereitstellung in verschiedenen Umgebungen.

YOLO11-Training mit Weights & Biases

Sie können Weights & Biases verwenden, um Effizienz und Automatisierung in Ihren YOLO11-Trainingsprozess zu bringen. Die Integration ermöglicht es Ihnen, Experimente zu verfolgen, Modelle zu vergleichen und datengesteuerte Entscheidungen zu treffen, um Ihre Computer Vision-Projekte zu verbessern.

Installation

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

Installation

# Install the required packages for Ultralytics YOLO and Weights & Biases
pip install -U ultralytics wandb

# Enable W&B logging for Ultralytics
yolo settings wandb=True

Für detaillierte Anweisungen und Best Practices im Zusammenhang mit dem Installationsprozess sollten Sie unbedingt unseren YOLO11-Installationsleitfaden lesen. Wenn Sie bei der Installation der erforderlichen Pakete für YOLO11 auf Schwierigkeiten stoßen, konsultieren Sie unseren Leitfaden zu häufigen Problemen für Lösungen und Tipps.

Konfigurieren von Weights & Biases

Nach der Installation der erforderlichen Pakete besteht der nächste Schritt darin, Ihre Weights & Biases-Umgebung einzurichten. Dazu gehört das Erstellen eines Weights & Biases-Kontos und das Beschaffen des erforderlichen API-Schlüssels für eine reibungslose Verbindung zwischen Ihrer Entwicklungsumgebung und der W&B-Plattform.

Initialisieren Sie zunächst die Weights & Biases-Umgebung in Ihrem Arbeitsbereich. Sie können dies tun, indem Sie den folgenden Befehl ausführen und den Anweisungen folgen.

Erste SDK-Einrichtung

import wandb

# Initialize your Weights & Biases environment
wandb.login(key="YOUR_API_KEY")
# Initialize your Weights & Biases environment
wandb login YOUR_API_KEY

Navigieren Sie zur Weights & Biases-Autorisierungsseite, um Ihren API-Schlüssel zu erstellen und abzurufen. Verwenden Sie diesen Schlüssel, um Ihre Umgebung bei W&B zu authentifizieren.

Verwendung: Trainieren von YOLO11 mit Weights & Biases

Bevor Sie sich mit den Anweisungen zur Verwendung des YOLO11-Modelltrainings mit Weights & Biases befassen, sollten Sie sich unbedingt die Bandbreite der von Ultralytics angebotenen YOLO11-Modelle ansehen. Dies wird Ihnen helfen, das am besten geeignete Modell für Ihre Projektanforderungen auszuwählen.

Verwendung: Trainieren von YOLO11 mit Weights & Biases

from ultralytics import YOLO

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

# Train and Fine-Tune the Model
model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo11n")
# Train a YOLO11 model with Weights & Biases
yolo train data=coco8.yaml epochs=5 project=ultralytics name=yolo11n

W&B-Argumente

Argument Standard Beschreibung
Projekt None Gibt den Namen des Projekts an, das lokal und in W&B protokolliert wird. Auf diese Weise können Sie mehrere Läufe zusammen gruppieren.
Name None Der Name des Trainingslaufs. Dieser bestimmt den Namen, der zum Erstellen von Unterordnern verwendet wird, und den Namen, der für die W&B-Protokollierung verwendet wird.

Weights & Biases aktivieren oder deaktivieren

Wenn Sie die Weights & Biases-Protokollierung in Ultralytics aktivieren oder deaktivieren möchten, können Sie die folgenden Optionen verwenden: yolo settings Befehl. Standardmäßig ist die Weights & Biases-Protokollierung deaktiviert.

# Enable Weights & Biases logging
yolo settings wandb=True

# Disable Weights & Biases logging
yolo settings wandb=False

Die Ausgabe verstehen

Nach dem Ausführen des obigen Code-Snippets zur Nutzung können Sie folgende wichtige Ausgaben erwarten:

  • Die Einrichtung eines neuen Laufs mit seiner eindeutigen ID, die den Start des Trainingsprozesses anzeigt.
  • Eine prägnante Zusammenfassung der Modellstruktur, einschließlich der Anzahl der Schichten und Parameter.
  • Regelmäßige Aktualisierungen wichtiger Metriken wie Box Loss, Cls Loss, Dfl Loss, Precision (Genauigkeit), Recall (Trefferrate) und mAP-Werte während jeder Trainings-Epoche.
  • Am Ende des Trainings werden detaillierte Metriken angezeigt, einschließlich der Inferenzgeschwindigkeit des Modells und der gesamten Genauigkeits-Metriken.
  • Links zum Weights & Biases-Dashboard für eine detaillierte Analyse und Visualisierung des Trainingsprozesses sowie Informationen zu lokalen Protokolldateispeicherorten.

Das Weights & Biases Dashboard anzeigen

Nach dem Ausführen des Code-Snippets zur Nutzung können Sie über den bereitgestellten Link in der Ausgabe auf das Weights & Biases (W&B)-Dashboard zugreifen. Dieses Dashboard bietet eine umfassende Ansicht des Trainingsprozesses Ihres Modells mit YOLO11.

Hauptfunktionen des Weights & Biases Dashboards

  • Echtzeit-Metrik-Tracking: Beobachten Sie Metriken wie Verlust, Genauigkeit und Validierungs-Scores, während sie sich während des Trainings entwickeln, und bieten Sie sofortige Einblicke für die Modellabstimmung. Sehen Sie, wie Experimente mit Weights & Biases verfolgt werden.

  • Hyperparameter-Optimierung: Weights & Biases hilft bei der Feinabstimmung kritischer Parameter wie Lernrate, Batch-Größe und mehr, wodurch die Leistung von YOLO11 verbessert wird. Dies hilft Ihnen, die optimale Konfiguration für Ihren spezifischen Datensatz und Ihre Aufgabe zu finden.

  • Vergleichende Analyse: Die Plattform ermöglicht Side-by-Side-Vergleiche verschiedener Trainingsläufe, die für die Bewertung der Auswirkungen verschiedener Modellkonfigurationen und das Verständnis, welche Änderungen die Leistung verbessern, unerlässlich sind.

  • Visualisierung des Trainingsfortschritts: Grafische Darstellungen wichtiger Metriken ermöglichen ein intuitives Verständnis der Leistung des Modells über Epochen hinweg. Sehen Sie, wie Weights & Biases Ihnen hilft, Validierungsergebnisse zu visualisieren.

  • Ressourcenüberwachung: Verfolgen Sie die CPU-, GPU- und Speichernutzung, um die Effizienz des Trainingsprozesses zu optimieren und potenzielle Engpässe in Ihrem Workflow zu identifizieren.

  • Verwaltung von Modellartefakten: Zugriff auf und Austausch von Modell-Checkpoints, was die einfache Bereitstellung und Zusammenarbeit mit Teammitgliedern bei komplexen Projekten erleichtert.

  • Anzeigen von Inferenz-Ergebnissen mit Bildüberlagerung: Visualisieren Sie die Vorhersageergebnisse auf Bildern mithilfe interaktiver Überlagerungen in Weights & Biases, um eine klare und detaillierte Ansicht der Modellleistung auf realen Daten zu erhalten. Weitere Informationen finden Sie unter Image Overlay Capabilities von Weights & Biases.

Durch die Verwendung dieser Funktionen können Sie das Training Ihres YOLO11-Modells effektiv verfolgen, analysieren und optimieren, um die bestmögliche Leistung und Effizienz für Ihre Objekterkennungsaufgaben sicherzustellen.

Zusammenfassung

Dieser Leitfaden hat Ihnen geholfen, die Ultralytics YOLO Integration mit Weights & Biases zu erkunden. Er veranschaulicht die Fähigkeit dieser Integration, Modelltraining und Vorhersageergebnisse effizient zu verfolgen und zu visualisieren. Durch die Nutzung der leistungsstarken Funktionen von W&B können Sie Ihren Machine-Learning-Workflow optimieren, datengestützte Entscheidungen treffen und die Leistung Ihres Modells verbessern.

Für weitere Details zur Verwendung besuchen Sie die offizielle Dokumentation von Weights & Biases oder sehen Sie sich die Präsentation von Soumik Rakshit von der YOLO VISION 2023 über diese Integration an.

Schauen Sie sich auch die Ultralytics Integrationsleitfaden-Seite an, um mehr über verschiedene spannende Integrationen wie MLflow und Comet ML zu erfahren.

FAQ

Wie integriere ich Weights & Biases in Ultralytics YOLO11?

So integrieren Sie Weights & Biases in Ultralytics YOLO11:

  1. Installieren Sie die erforderlichen Pakete:

    pip install -U ultralytics wandb
    yolo settings wandb=True
    
  2. Melden Sie sich bei Ihrem Weights & Biases-Konto an:

    import wandb
    
    wandb.login(key="YOUR_API_KEY")
    
  3. Trainieren Sie Ihr YOLO11-Modell mit aktivierter W&B-Protokollierung:

    from ultralytics import YOLO
    
    model = YOLO("yolo11n.pt")
    model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo11n")
    

Dadurch werden Metriken, Hyperparameter und Modellartefakte automatisch in Ihrem W&B-Projekt protokolliert.

Was sind die Hauptfunktionen der Weights & Biases-Integration mit YOLO11?

Zu den wichtigsten Funktionen gehören:

  • Echtzeit-Metrik-Tracking während des Trainings
  • Tools zur Hyperparameter-Optimierung
  • Vergleichende Analyse verschiedener Trainingsläufe
  • Visualisierung des Trainingsfortschritts durch Grafiken
  • Ressourcenüberwachung (CPU, GPU, Speichernutzung)
  • Verwaltung und Freigabe von Modellartefakten
  • Anzeigen von Inferenz-Ergebnissen mit Bildüberlagerungen

Diese Funktionen helfen beim Verfolgen von Experimenten, Optimieren von Modellen und effektiveren Zusammenarbeiten an YOLO11-Projekten.

Wie kann ich das Weights & Biases Dashboard für mein YOLO11-Training anzeigen?

Nachdem Sie Ihr Trainingsskript mit W&B-Integration ausgeführt haben:

  1. Ein Link zu Ihrem W&B-Dashboard wird in der Konsolenausgabe bereitgestellt.
  2. Klicken Sie auf den Link oder gehen Sie zu wandb.ai und melden Sie sich bei Ihrem Konto an.
  3. Navigieren Sie zu Ihrem Projekt, um detaillierte Metriken, Visualisierungen und Modelldaten zur Performance anzuzeigen.

Das Dashboard bietet Einblicke in den Trainingsprozess Ihres Modells, sodass Sie Ihre YOLO11-Modelle effektiv analysieren und verbessern können.

Kann ich die Weights & Biases-Protokollierung für das YOLO11-Training deaktivieren?

Ja, Sie können die W&B-Protokollierung mit dem folgenden Befehl deaktivieren:

yolo settings wandb=False

Um die Protokollierung wieder zu aktivieren, verwenden Sie:

yolo settings wandb=True

Dadurch können Sie steuern, wann Sie die W&B-Protokollierung verwenden möchten, ohne Ihre Trainingsskripte zu ändern.

Wie hilft Weights & Biases bei der Optimierung von YOLO11-Modellen?

Weights & Biases hilft bei der Optimierung von YOLO11-Modellen durch:

  1. Bereitstellung detaillierter Visualisierungen von Trainingsmetriken
  2. Ermöglichung eines einfachen Vergleichs zwischen verschiedenen Modellversionen
  3. Anbieten von Tools für Hyperparameter-Optimierung
  4. Ermöglichung der kollaborativen Analyse der Modell-Performance
  5. Ermöglichung der einfachen Freigabe von Modellartefakten und -ergebnissen

Diese Funktionen helfen Forschern und Entwicklern, schneller zu iterieren und datengesteuerte Entscheidungen zu treffen, um ihre YOLO11-Modelle zu verbessern.



📅 Erstellt vor 1 Jahr ✏️ Aktualisiert vor 4 Monaten

Kommentare