Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Get Started

Monitoraggio e visualizzazione degli esperimenti YOLO con Weights & Biases#

I modelli di rilevamento degli oggetti, come Ultralytics YOLO26, sono diventati essenziali per molte applicazioni di visione artificiale. Tuttavia, l'addestramento, la valutazione e la distribuzione di questi modelli complessi comportano diverse sfide. Monitorare le metriche di addestramento principali, confrontare le varianti dei modelli, analizzarne il comportamento e rilevare eventuali problemi richiede un'attività significativa di strumentazione e gestione degli esperimenti.



Guarda: Come usare Ultralytics YOLO con Weights and Biases

Questa guida illustra l’integrazione di Ultralytics YOLO26 con Weights & Biases per migliorare il monitoraggio degli esperimenti, la gestione degli artefatti dei modelli migliori e la visualizzazione delle prestazioni dei modelli. Include anche istruzioni per configurare l’integrazione, addestrare i modelli e visualizzare i risultati usando le funzionalità interattive di Weights & Biases.

Weights & Biases#

Weights & Biases è una piattaforma MLOps all'avanguardia, progettata per monitorare, visualizzare e gestire gli esperimenti di apprendimento automatico. Offre la registrazione automatica delle metriche di addestramento per garantire la piena riproducibilità degli esperimenti, un'interfaccia utente interattiva per semplificare l'analisi dei dati e strumenti efficienti di gestione dei modelli per la distribuzione in vari ambienti.

Addestramento di YOLO26 con Weights & Biases#

Puoi usare Weights & Biases per rendere più efficiente e automatizzare il processo di addestramento di YOLO26. L'integrazione ti consente di monitorare gli esperimenti, confrontare i modelli e prendere decisioni basate sui dati per migliorare i tuoi progetti di visione artificiale.

Installazione#

Per installare i pacchetti necessari, esegui:

Installazione
# 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

Per istruzioni dettagliate e procedure consigliate per l'installazione, consulta la guida all'installazione di YOLO26. Se durante l'installazione dei pacchetti necessari per YOLO26 riscontri difficoltà, consulta la guida ai problemi comuni per trovare soluzioni e suggerimenti.

Configurazione di Weights & Biases#

Dopo aver installato i pacchetti necessari, il passo successivo è configurare l'ambiente Weights & Biases. Questo include la creazione di un account Weights & Biases e l'ottenimento della chiave API necessaria per stabilire una connessione senza problemi tra l'ambiente di sviluppo e la piattaforma W&B.

Inizia inizializzando l'ambiente Weights & Biases nel tuo spazio di lavoro. Puoi farlo eseguendo il comando seguente e seguendo le istruzioni visualizzate.

Configurazione iniziale dell'SDK
import wandb

# Inizializza l’ambiente Weights & Biases (richiede la chiave API oppure legge WANDB_API_KEY)
wandb.login()

Vai alla pagina di autorizzazione di Weights & Biases per creare e recuperare la tua chiave API. Quando richiesto, usa questa chiave per autenticare il tuo ambiente con W&B.

Utilizzo: addestramento di YOLO26 con Weights & Biases#

Prima di passare alle istruzioni per l'addestramento dei modelli YOLO26 con Weights & Biases, assicurati di consultare la gamma di modelli YOLO26 offerti da Ultralytics. Questo ti aiuterà a scegliere il modello più adatto ai requisiti del tuo progetto.

Utilizzo: addestramento di YOLO26 con Weights & Biases
from ultralytics import YOLO

# Carica un modello YOLO
model = YOLO("yolo26n.pt")

# Addestra e ottimizza il modello
model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo26n")

Le esecuzioni create da Ultralytics tracciano le metriche di addestramento rispetto a epoch. Se avvii un'esecuzione con wandb.init() prima dell'addestramento, Ultralytics registra i dati in quell'esecuzione, inserendo un valore epoch in ogni riga, e la lascia aperta così puoi continuare a registrare dati e chiamare wandb.finish() tu stesso. Gli argomenti di addestramento vengono aggiunti alla configurazione di quell'esecuzione e qualsiasi chiave a cui tu o una sweep W&B abbiate già assegnato un valore lo mantiene.

Argomenti W&B#

ArgomentoPredefinitoDescrizione
projectNoneSpecifica il nome del progetto registrato localmente e in W&B, raggruppando più esecuzioni. Se non viene impostato, le esecuzioni di W&B vengono registrate nel progetto Ultralytics.
nameNoneIl nome dell'esecuzione di addestramento. Determina il nome usato per creare le sottocartelle e quello usato per la registrazione in W&B.
saveTrueDetermina se caricare il miglior checkpoint come artefatto del modello W&B.
Attiva o disattiva Weights & Biases

Se vuoi attivare o disattivare la registrazione di Weights & Biases in Ultralytics, puoi usare il comando yolo settings. Per impostazione predefinita, la registrazione di Weights & Biases è disattivata.

# Enable Weights & Biases logging
yolo settings wandb=True

# Disable Weights & Biases logging
yolo settings wandb=False
Modalità offline e ripresa

Imposta WANDB_MODE=offline per registrare senza una connessione di rete, quindi carica l'esecuzione con wandb sync <save_dir>/wandb/offline-run-*. Riprendendo l'addestramento con resume=True, continuerai la stessa esecuzione W\&B, online o offline e su qualsiasi sistema operativo, leggendo l'ID dell'esecuzione dalla cartella dell'esecuzione più recente nella directory wandb/ della directory di salvataggio originale; quindi, mantieni questa directory al suo posto.

Comprendere l'output#

Dopo aver eseguito lo snippet di codice d'esempio qui sopra, puoi aspettarti i seguenti risultati principali:

  • La configurazione di una nuova esecuzione con il suo ID univoco, che indica l'inizio del processo di addestramento.
  • Un riepilogo conciso della struttura del modello, compreso il numero di livelli e parametri.
  • Aggiornamenti regolari su metriche importanti, come le perdite di addestramento, la precisione, il richiamo e i punteggi mAP, durante ogni epoca di addestramento.
  • Al termine dell'addestramento vengono mostrate metriche dettagliate, tra cui la velocità di inferenza del modello e le metriche complessive di accuratezza.
  • Link alla dashboard di Weights & Biases per un'analisi e una visualizzazione approfondite del processo di addestramento, insieme alle informazioni sui percorsi dei file di log locali.

Visualizzazione della dashboard di Weights & Biases#

Dopo aver eseguito lo snippet di codice d'esempio, puoi accedere alla dashboard di Weights & Biases (W&B) tramite il link fornito nell'output. La dashboard offre una panoramica completa del processo di addestramento del tuo modello con YOLO26.

Funzionalità principali della dashboard di Weights & Biases#

  • Monitoraggio delle metriche in tempo reale: osserva l'evoluzione di metriche come loss, accuratezza e punteggi di convalida durante l'addestramento, per ottenere indicazioni immediate sull'ottimizzazione del modello. Scopri come monitorare gli esperimenti con Weights & Biases.

  • Confronto degli iperparametri: ogni esecuzione registra gli argomenti di addestramento, come il tasso di apprendimento e la dimensione del batch, così puoi confrontare le configurazioni tra diverse esecuzioni. Per la ricerca automatizzata con la registrazione W&B, usa Ray Tune.

  • Analisi comparativa: la piattaforma consente di confrontare affiancate diverse esecuzioni di addestramento, un'operazione essenziale per valutare l'impatto delle varie configurazioni del modello e capire quali modifiche migliorano le prestazioni.

  • Visualizzazione dei progressi dell'addestramento: le rappresentazioni grafiche delle metriche principali offrono una comprensione intuitiva delle prestazioni del modello nelle diverse epoche. Scopri come Weights & Biases ti aiuta a visualizzare i risultati della convalida.

  • Monitoraggio delle risorse: tieni sotto controllo l'utilizzo di CPU, GPU e memoria per ottimizzare l'efficienza del processo di addestramento e individuare potenziali colli di bottiglia nel tuo flusso di lavoro.

  • Gestione degli artefatti del modello: accedi al checkpoint del modello migliore e condividilo; viene caricato come artefatto W&B al termine dell’addestramento, facilitando la distribuzione e la collaborazione con i membri del team su progetti complessi.

Usando queste funzionalità, puoi monitorare, analizzare e ottimizzare efficacemente l'addestramento del tuo modello YOLO26, garantendo le migliori prestazioni ed efficienza possibili nelle tue attività di rilevamento degli oggetti.

Riepilogo#

Questa guida ti ha aiutato a esplorare l’integrazione di Ultralytics YOLO con Weights & Biases. Illustra la capacità di questa integrazione di monitorare e visualizzare in modo efficiente i risultati dell’addestramento dei modelli. Sfruttando le potenti funzionalità di W&B, puoi ottimizzare il tuo flusso di lavoro di apprendimento automatico, prendere decisioni basate sui dati e migliorare le prestazioni dei tuoi modelli.

Per ulteriori dettagli, guarda la presentazione di Soumik Rakshit su questa integrazione, tenuta a YOLO VISION 2023.

Inoltre, consulta la pagina della guida alle integrazioni di Ultralytics per saperne di più su altre interessanti integrazioni, come MLflow e Comet ML.

Domande frequenti#

  • Per integrare Weights & Biases con Ultralytics YOLO26:

    1. Installa i pacchetti richiesti:

      pip install -U ultralytics wandb
      yolo settings wandb=True
    2. Accedi al tuo account Weights & Biases:

      wandb login
    3. Addestra il tuo modello YOLO26 con la registrazione W&B attivata:

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

    Le metriche, gli iperparametri e gli artefatti del modello verranno registrati automaticamente nel tuo progetto W&B.

  • Le funzionalità principali includono:

    • Monitoraggio delle metriche in tempo reale durante l'addestramento
    • Confronto degli iperparametri tra diverse esecuzioni
    • Analisi comparativa delle diverse esecuzioni di addestramento
    • Visualizzazione dei progressi dell'addestramento tramite grafici
    • Monitoraggio delle risorse (utilizzo di CPU, GPU e memoria)
    • Gestione e condivisione degli artefatti del modello

    Queste funzionalità aiutano a monitorare gli esperimenti, ottimizzare i modelli e collaborare in modo più efficace ai progetti YOLO26.

  • Dopo aver eseguito lo script di addestramento con l'integrazione W&B:

    1. Nell'output della console verrà fornito un link alla tua dashboard W&B.
    2. Fai clic sul link oppure vai su wandb.ai e accedi al tuo account.
    3. Vai al tuo progetto per visualizzare metriche dettagliate, visualizzazioni e dati sulle prestazioni del modello.

    La dashboard offre informazioni sul processo di addestramento del tuo modello, consentendoti di analizzare e migliorare efficacemente i tuoi modelli YOLO26.

  • Sì, puoi disattivare la registrazione W&B con il comando seguente:

    yolo settings wandb=False

    Per riattivare la registrazione, usa:

    yolo settings wandb=True

    In questo modo puoi controllare quando usare la registrazione W&B senza modificare gli script di addestramento.

  • Weights & Biases aiuta a ottimizzare i modelli YOLO26:

    1. Fornendo visualizzazioni dettagliate delle metriche di addestramento
    2. Consentendo di confrontare facilmente diverse versioni del modello
    3. Registrazione degli argomenti di addestramento di ogni esecuzione per confrontare il tuning degli iperparametri
    4. Consentendo l'analisi collaborativa delle prestazioni del modello
    5. Facilitando la condivisione di artefatti e risultati del modello

    Queste funzionalità aiutano ricercatori e sviluppatori a iterare più rapidamente e a prendere decisioni basate sui dati per migliorare i modelli YOLO26.

Commenti