Ultralytics YOLO27: Trag dich auf die Warteliste ein.
Get Started

YOLO-Experimentverfolgung und -Visualisierung mit Weights & Biases#

Modelle zur Objekterkennung wie Ultralytics YOLO26 sind aus vielen Anwendungen der Computervision nicht mehr wegzudenken. Das Training, die Evaluierung und der Einsatz dieser komplexen Modelle bringen jedoch einige Herausforderungen mit sich. Die Verfolgung wichtiger Trainingsmetriken, der Vergleich von Modellvarianten, die Analyse des Modellverhaltens und das Erkennen von Problemen erfordern eine umfangreiche Instrumentierung und ein gutes Experimentmanagement.



Ansehen: So verwendest du Ultralytics YOLO26 mit Weights & Biases

Dieser Leitfaden zeigt die Integration von Ultralytics YOLO26 mit Weights & Biases, um Experimente besser nachzuverfolgen, Artefakte des besten Modells zu verwalten und die Modellleistung zu visualisieren. Außerdem enthält er Anleitungen zum Einrichten der Integration, zum Training und zur Visualisierung der Ergebnisse mithilfe der interaktiven Funktionen von Weights & Biases.

Weights & Biases#

Weights & Biases ist eine hochmoderne MLOps-Plattform zur Verfolgung, Visualisierung und Verwaltung von Machine-Learning-Experimenten. Sie protokolliert Trainingsmetriken automatisch, um Experimente vollständig reproduzierbar zu machen, bietet eine interaktive Benutzeroberfläche für eine vereinfachte Datenanalyse und stellt effiziente Werkzeuge zur Modellverwaltung für den Einsatz in verschiedenen Umgebungen bereit.

YOLO26-Training mit Weights & Biases#

Mit Weights & Biases kannst du deinen YOLO26-Trainingsprozess effizienter und stärker automatisiert gestalten. Die Integration ermöglicht es dir, Experimente zu verfolgen, Modelle zu vergleichen und datengestützte Entscheidungen zur Verbesserung deiner Computervision-Projekte zu treffen.

Installation#

Führe zum Installieren der erforderlichen Pakete 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

Ausführliche Anweisungen und bewährte Vorgehensweisen zur Installation findest du in unserer YOLO26-Installationsanleitung. Falls bei der Installation der für YOLO26 erforderlichen Pakete Probleme auftreten, findest du Lösungen und Tipps in unserer Anleitung zu häufigen Problemen.

Weights & Biases konfigurieren#

Nachdem du die erforderlichen Pakete installiert hast, richtest du als Nächstes deine Weights-&-Biases-Umgebung ein. Dazu musst du ein Weights-&-Biases-Konto erstellen und den erforderlichen API-Schlüssel abrufen, damit deine Entwicklungsumgebung reibungslos mit der W&B-Plattform verbunden werden kann.

Richte zunächst die Weights-&-Biases-Umgebung in deinem Arbeitsbereich ein. Führe dazu den folgenden Befehl aus und folge den angezeigten Anweisungen.

Erste SDK-Einrichtung
import wandb

# Initialisiere deine Weights & Biases-Umgebung (fragt nach dem API-Schlüssel oder liest WANDB_API_KEY)
wandb.login()

Rufe die Autorisierungsseite von Weights & Biases auf, um deinen API-Schlüssel zu erstellen und abzurufen. Verwende diesen Schlüssel, wenn du dazu aufgefordert wirst, um deine Umgebung bei W&B zu authentifizieren.

Verwendung: YOLO26 mit Weights & Biases trainieren#

Bevor du mit den Anweisungen zum Trainieren von YOLO26-Modellen mit Weights & Biases beginnst, sieh dir unbedingt die Auswahl an YOLO26-Modellen von Ultralytics an. So findest du das passende Modell für die Anforderungen deines Projekts.

Verwendung: YOLO26 mit Weights & Biases trainieren
from ultralytics import YOLO

# Ein YOLO-Modell laden
model = YOLO("yolo26n.pt")

# Modell trainieren und feinabstimmen
model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo26n")

W&B-Argumente#

ArgumentStandardBeschreibung
ProjektNoneLegt den Namen des Projekts fest, der lokal und in W&B protokolliert wird und mehrere Läufe gruppiert. Wenn kein Name angegeben ist, werden W&B-Läufe im Projekt Ultralytics protokolliert.
NameNoneDer Name des Trainingslaufs. Er bestimmt den Namen der erstellten Unterordner sowie den für die W&B-Protokollierung verwendeten Namen.
SpeichernTrueLegt fest, ob der beste Checkpoint als W&B-Modellartefakt hochgeladen wird.
Weights & Biases aktivieren oder deaktivieren

Wenn du die Weights-&-Biases-Protokollierung in Ultralytics aktivieren oder deaktivieren möchtest, kannst du den Befehl yolo settings verwenden. Standardmäßig ist die Weights-&-Biases-Protokollierung deaktiviert.

# Enable Weights & Biases logging
yolo settings wandb=True

# Disable Weights & Biases logging
yolo settings wandb=False
Offline-Modus und Fortsetzen

Setze WANDB_MODE=offline, um ohne Netzwerkverbindung zu protokollieren, und lade den Lauf anschließend mit wandb sync <save_dir>/wandb/offline-run-* hoch. Wenn du das Training mit resume=True fortsetzt, wird derselbe W&B-Lauf fortgeführt, online oder offline, solange das ursprüngliche Speicherverzeichnis noch wandb/latest-run enthält.

Die Ausgabe verstehen#

Nach dem Ausführen des obigen Code-Snippets kannst du mit den folgenden wichtigen Ausgaben rechnen:

  • Ein neuer Lauf wird mit einer eindeutigen ID eingerichtet, was den Beginn des Trainingsprozesses anzeigt.
  • Eine kompakte Zusammenfassung der Modellstruktur, einschließlich der Anzahl der Schichten und Parameter.
  • Regelmäßige Aktualisierungen wichtiger Kennzahlen, etwa der Trainingsverluste, der Präzision, des Recall und der mAP-Werte in jeder Trainingsepoche.
  • Am Ende des Trainings werden detaillierte Metriken zur Inferenzgeschwindigkeit des Modells sowie allgemeine Metriken zur Genauigkeit angezeigt.
  • Links zum Weights-&-Biases-Dashboard für eine eingehende Analyse und Visualisierung des Trainingsprozesses sowie Informationen zu den Speicherorten der lokalen Protokolldateien.

Das Weights-&-Biases-Dashboard aufrufen#

Nach dem Ausführen des Code-Snippets kannst du über den Link in der Ausgabe auf das Weights-&-Biases-Dashboard (W&B) zugreifen. Dieses Dashboard bietet einen umfassenden Überblick über den Trainingsprozess deines Modells mit YOLO26.

Wichtige Funktionen des Weights-&-Biases-Dashboards#

  • Metriken in Echtzeit verfolgen: Beobachte, wie sich Metriken wie Verlust, Genauigkeit und Validierungswerte während des Trainings entwickeln. So erhältst du sofortige Einblicke zur Anpassung des Modells. Erfahre, wie Experimente mit Weights & Biases verfolgt werden.

  • Hyperparametervergleich: Jeder Lauf protokolliert seine Trainingsargumente, etwa die Lernrate und die Batchgröße, sodass du die Konfigurationen verschiedener Läufe vergleichen kannst. Für eine automatisierte Suche mit W&B-Protokollierung verwende Ray Tune.

  • Vergleichende Analyse: Die Plattform ermöglicht den direkten Vergleich verschiedener Trainingsläufe. Das ist wichtig, um die Auswirkungen unterschiedlicher Modellkonfigurationen zu beurteilen und zu verstehen, welche Änderungen die Leistung verbessern.

  • Trainingsfortschritt visualisieren: Grafische Darstellungen wichtiger Metriken vermitteln anschaulich, wie sich die Leistung des Modells über die Epochen hinweg entwickelt. Erfahre, wie Weights & Biases dich bei der Visualisierung von Validierungsergebnissen unterstützt.

  • Ressourcen überwachen: Behalte die Auslastung von CPU, GPU und Arbeitsspeicher im Blick, um den Trainingsprozess effizienter zu gestalten und mögliche Engpässe in deinem Arbeitsablauf zu erkennen.

  • Verwaltung von Modellartefakten: Greife auf den besten Modellprüfpunkt zu und teile ihn mit anderen. Er wird am Ende des Trainings als W&B-Artefakt hochgeladen und erleichtert so die Bereitstellung sowie die Zusammenarbeit mit Teammitgliedern an komplexen Projekten.

Mit diesen Funktionen kannst du das Training deines YOLO26-Modells effektiv verfolgen, analysieren und optimieren und so die bestmögliche Leistung und Effizienz für deine Aufgaben zur Objekterkennung sicherstellen.

Zusammenfassung#

Dieser Leitfaden hat dir geholfen, die Integration von Ultralytics YOLO mit Weights & Biases kennenzulernen. Er veranschaulicht, wie diese Integration Trainingsergebnisse effizient nachverfolgt und visualisiert. Mit den leistungsstarken Funktionen von W&B kannst du deinen Workflow für maschinelles Lernen optimieren, datengestützte Entscheidungen treffen und die Leistung deines Modells verbessern.

Weitere Einzelheiten zu dieser Integration findest du in Soumik Rakshits Präsentation von YOLO VISION 2023.

Sieh dir auch die Integrationsleitfäden von Ultralytics an, um mehr über weitere spannende Integrationen wie MLflow und Comet ML zu erfahren.

Häufig gestellte Fragen#

  • So integrierst du Weights & Biases mit Ultralytics YOLO26:

    1. Installiere die erforderlichen Pakete:

      pip install -U ultralytics wandb
      yolo settings wandb=True
    2. Melde dich bei deinem Weights-&-Biases-Konto an:

      wandb login
    3. Trainiere dein YOLO26-Modell mit aktivierter W&B-Protokollierung:

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

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

  • Zu den wichtigsten Funktionen gehören:

    • Metriken während des Trainings in Echtzeit verfolgen
    • Hyperparametervergleich über mehrere Läufe hinweg
    • Verschiedene Trainingsläufe miteinander vergleichen
    • Den Trainingsfortschritt mithilfe von Diagrammen visualisieren
    • Ressourcen überwachen (CPU-, GPU- und Arbeitsspeicherauslastung)
    • Modellartefakte verwalten und teilen

    Diese Funktionen helfen dir dabei, Experimente zu verfolgen, Modelle zu optimieren und effektiver an YOLO26-Projekten zusammenzuarbeiten.

  • Nachdem du dein Trainingsskript mit W&B-Integration ausgeführt hast:

    1. In der Konsolenausgabe wird ein Link zu deinem W&B-Dashboard angezeigt.
    2. Klicke auf den Link oder rufe wandb.ai auf und melde dich bei deinem Konto an.
    3. Rufe dein Projekt auf, um detaillierte Metriken, Visualisierungen und Leistungsdaten des Modells anzuzeigen.

    Das Dashboard bietet Einblicke in den Trainingsprozess deines Modells und ermöglicht dir, deine YOLO26-Modelle effektiv zu analysieren und zu verbessern.

  • Ja, du kannst die W&B-Protokollierung mit dem folgenden Befehl deaktivieren:

    yolo settings wandb=False

    Verwende zum erneuten Aktivieren der Protokollierung folgenden Befehl:

    yolo settings wandb=True

    So kannst du steuern, wann du die W&B-Protokollierung verwenden möchtest, ohne deine Trainingsskripte ändern zu müssen.

  • Weights & Biases hilft dir bei der Optimierung von YOLO26-Modellen durch:

    1. Detaillierte Visualisierungen der Trainingsmetriken
    2. Einfache Vergleiche verschiedener Modellversionen
    3. Protokollierung der Trainingsargumente jedes Laufs zum Vergleich beim Abstimmen der Hyperparameter
    4. Gemeinsame Analyse der Modellleistung
    5. Einfaches Teilen von Modellartefakten und Ergebnissen

    Diese Funktionen helfen Forschenden und Entwicklern, schneller zu iterieren und datengestützte Entscheidungen zur Verbesserung ihrer YOLO26-Modelle zu treffen.

Kommentare