Migliorare l'addestramento di YOLO11: semplifica il processo di registrazione con Comet ML
La registrazione dei dettagli chiave dell'addestramento, come parametri, metriche, previsioni delle immagini e checkpoint del modello, è essenziale nel machine learning: mantiene il tuo progetto trasparente, i tuoi progressi misurabili e i tuoi risultati ripetibili.
Guarda: Come utilizzare Comet ML per i log e le metriche di addestramento del modello Ultralytics YOLO 🚀
Ultralytics YOLO11 si integra perfettamente con Comet ML, acquisendo e ottimizzando in modo efficiente ogni aspetto del processo di training del modello di object detection YOLO11. In questa guida, tratteremo il processo di installazione, la configurazione di Comet ML, le informazioni in tempo reale, la registrazione personalizzata e l'utilizzo offline, assicurandoci che il tuo training YOLO11 sia completamente documentato e ottimizzato per risultati eccezionali.
Comet ML
Comet ML è una piattaforma per tracciare, confrontare, spiegare e ottimizzare modelli ed esperimenti di machine learning. Ti consente di registrare metriche, parametri, media e altro durante l'addestramento del tuo modello e monitorare i tuoi esperimenti attraverso un'interfaccia web esteticamente gradevole. Comet ML aiuta i data scientist a iterare più rapidamente, migliora la trasparenza e la riproducibilità e aiuta nello sviluppo di modelli di produzione.
Sfruttare la potenza di YOLO11 e Comet ML
Combinando Ultralytics YOLO11 con Comet ML, si sblocano una serie di vantaggi, tra cui la gestione semplificata degli esperimenti, approfondimenti in tempo reale per regolazioni rapide, opzioni di logging flessibili e personalizzate e la possibilità di registrare esperimenti offline quando l'accesso a Internet è limitato. Questa integrazione consente di prendere decisioni basate sui dati, analizzare le metriche di performance e ottenere risultati eccezionali.
Installazione
Per installare i pacchetti richiesti, esegui:
Installazione
# Install the required packages for YOLO11 and Comet ML
pip install ultralytics comet_ml torch torchvision
Configurazione di Comet ML
Dopo aver installato i pacchetti richiesti, dovrai registrarti, ottenere una Comet API Key e configurarla.
Configurazione di Comet ML
# Set your Comet Api Key
export COMET_API_KEY=YOUR_API_KEY
Quindi, puoi inizializzare il tuo progetto Comet. Comet rileverà automaticamente la chiave API e procederà con la configurazione.
Inizializza il progetto Comet
import comet_ml
comet_ml.login(project_name="comet-example-yolo11-coco128")
Se si utilizza un notebook di Google Colab, il codice qui sopra richiederà di inserire la chiave API per l'inizializzazione.
Utilizzo
Prima di immergerti nelle istruzioni per l'uso, assicurati di controllare la gamma di modelli YOLO11 offerti da Ultralytics. Questo ti aiuterà a scegliere il modello più appropriato per le esigenze del tuo progetto.
Utilizzo
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,
)
Dopo aver eseguito il codice di addestramento, Comet ML creerà un esperimento nel tuo spazio di lavoro Comet per tracciare automaticamente l'esecuzione. Ti verrà quindi fornito un link per visualizzare il logging dettagliato del processo di addestramento del tuo modello YOLO11.
Comet registra automaticamente i seguenti dati senza configurazione aggiuntiva: metriche come mAP e perdita, iperparametri, checkpoint del modello, matrice di confusione interattiva e previsioni di bounding box delle immagini.
Comprensione delle prestazioni del tuo modello con le visualizzazioni Comet ML
Analizziamo cosa vedrai nella dashboard di Comet ML una volta che il tuo modello YOLO11 inizia l'addestramento. La dashboard è il luogo in cui si svolge tutta l'azione, presentando una serie di informazioni registrate automaticamente attraverso elementi visivi e statistiche. Ecco un breve tour:
Pannelli degli esperimenti
La sezione dei pannelli degli esperimenti della dashboard di Comet ML organizza e presenta le diverse esecuzioni e le relative metriche, come la perdita della maschera di segmento, la perdita di classe, la precisione e la precisione media media.
Metriche
Nella sezione delle metriche, hai anche la possibilità di esaminare le metriche in formato tabellare, visualizzate in un pannello dedicato come illustrato qui.
Matrice di Confusione interattiva
La matrice di confusione, che si trova nella scheda Matrice di confusione, offre un modo interattivo per valutare l'accuratezza della classificazione del modello. Fornisce dettagli sulle previsioni corrette e errate, consentendo di comprendere i punti di forza e di debolezza del modello.
Metriche di sistema
Comet ML registra le metriche di sistema per aiutare a identificare eventuali colli di bottiglia nel processo di training. Include metriche come l'utilizzo della GPU, l'utilizzo della memoria della GPU, l'utilizzo della CPU e l'utilizzo della RAM. Questi sono essenziali per monitorare l'efficienza dell'utilizzo delle risorse durante il training del modello.
Personalizzazione della registrazione Comet ML
Comet ML offre la flessibilità di personalizzare il suo comportamento di registrazione impostando variabili d'ambiente. Queste configurazioni consentono di adattare Comet ML alle proprie esigenze e preferenze specifiche. Ecco alcune utili opzioni di personalizzazione:
Registrazione delle previsioni delle immagini
Puoi controllare il numero di predizioni di immagini che Comet ML registra durante i tuoi esperimenti. Di default, Comet ML registra 100 predizioni di immagini dal set di validazione. Tuttavia, puoi modificare questo numero per adattarlo meglio alle tue esigenze. Ad esempio, per registrare 200 predizioni di immagini, usa il seguente codice:
import os
os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"
Intervallo di logging del batch
Comet ML consente di specificare la frequenza con cui vengono registrati i batch di previsioni delle immagini. Il COMET_EVAL_BATCH_LOGGING_INTERVAL
variabile d'ambiente controlla questa frequenza. L'impostazione predefinita è 1, che registra le previsioni da ogni batch di convalida. Puoi modificare questo valore per registrare le previsioni a un intervallo diverso. Ad esempio, impostandolo su 4 verranno registrate le previsioni da ogni quarto batch.
import os
os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"
Disabilitazione della registrazione della matrice di confusione
In alcuni casi, potresti non voler registrare la matrice di confusione dal tuo set di validazione dopo ogni epoca. Puoi disabilitare questa funzionalità impostando il COMET_EVAL_LOG_CONFUSION_MATRIX
variabile d'ambiente su "false"." La matrice di confusione verrà registrata solo una volta, al termine del training.
import os
os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"
Registrazione offline
Se ti trovi in una situazione in cui l'accesso a Internet è limitato, Comet ML offre un'opzione di registrazione offline. Puoi impostare il COMET_MODE
variabile d'ambiente su "offline" per abilitare questa funzionalità. I dati del tuo esperimento verranno salvati localmente in una directory che potrai successivamente caricare su Comet ML quando sarà disponibile la connettività Internet.
import os
os.environ["COMET_MODE"] = "offline"
Riepilogo
Questa guida ti ha accompagnato nell'integrazione di Comet ML con YOLO11 di Ultralytics. Dall'installazione alla personalizzazione, hai imparato a ottimizzare la gestione degli esperimenti, ottenere informazioni in tempo reale e adattare la registrazione alle esigenze del tuo progetto.
Esplora la documentazione ufficiale di Comet ML per maggiori informazioni sull'integrazione con YOLO11.
Inoltre, se desideri approfondire le applicazioni pratiche di YOLO11, in particolare per le attività di segmentazione delle immagini, questa guida dettagliata sul fine-tuning di YOLO11 con Comet ML offre preziose informazioni e istruzioni dettagliate per migliorare le prestazioni del tuo modello.
Inoltre, per esplorare altre entusiasmanti integrazioni con Ultralytics, consulta la pagina della guida all'integrazione, che offre una vasta gamma di risorse e informazioni.
FAQ
Come posso integrare Comet ML con Ultralytics YOLO11 per l'addestramento?
Per integrare Comet ML con Ultralytics YOLO11, segui questi passaggi:
-
Installa i pacchetti necessari:
pip install ultralytics comet_ml torch torchvision
-
Configura la tua chiave API Comet:
export COMET_API_KEY=YOUR_API_KEY
-
Inizializza il tuo progetto Comet nel tuo codice Python:
import comet_ml comet_ml.login(project_name="comet-example-yolo11-coco128")
-
Addestra il tuo modello YOLO11 e registra le metriche:
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, )
Per istruzioni più dettagliate, consulta la sezione sulla configurazione di Comet ML.
Quali sono i vantaggi dell'utilizzo di Comet ML con YOLO11?
Integrando Ultralytics YOLO11 con Comet ML, puoi:
- Monitorare gli insight in tempo reale: Ottieni feedback immediato sui risultati del tuo addestramento, consentendo rapidi aggiustamenti.
- Registra metriche estese: acquisisci automaticamente metriche essenziali come mAP, perdita, iperparametri e checkpoint del modello.
- Traccia gli esperimenti offline: Registra le tue esecuzioni di addestramento localmente quando l'accesso a Internet non è disponibile.
- Confronta diverse esecuzioni di training: Utilizza la dashboard interattiva di Comet ML per analizzare e confrontare più esperimenti.
Sfruttando queste funzionalità, puoi ottimizzare i tuoi flussi di lavoro di machine learning per ottenere prestazioni e riproducibilità migliori. Per ulteriori informazioni, consulta la guida all'integrazione di Comet ML.
Come posso personalizzare il comportamento di logging di Comet ML durante l'addestramento di YOLO11?
Comet ML consente un'ampia personalizzazione del suo comportamento di registrazione utilizzando variabili d'ambiente:
-
Modifica il numero di previsioni di immagini registrate:
import os os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"
-
Regola l'intervallo di registrazione batch:
import os os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"
-
Disabilita la registrazione della matrice di confusione:
import os os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"
Consulta la sezione Personalizzazione del logging Comet ML per ulteriori opzioni di personalizzazione.
Come posso visualizzare metriche dettagliate e visualizzazioni del mio addestramento YOLO11 su Comet ML?
Una volta che il tuo modello YOLO11 inizia il training, puoi accedere a una vasta gamma di metriche e visualizzazioni sulla dashboard di Comet ML. Le caratteristiche principali includono:
- Pannelli degli esperimenti: Visualizza diverse esecuzioni e le loro metriche, tra cui la perdita della maschera di segmento, la perdita di classe e la precisione media media.
- Metriche: Esamina le metriche in formato tabellare per un'analisi dettagliata.
- Matrice di Confusione Interattiva: Valuta l'accuratezza della classificazione con una matrice di confusione interattiva.
- Metriche di sistema: Monitora l'utilizzo di GPU e CPU, l'utilizzo della memoria e altre metriche di sistema.
Per una panoramica dettagliata di queste funzionalità, visitare la sezione Comprendere le prestazioni del tuo modello con le visualizzazioni di Comet ML.
Posso utilizzare Comet ML per la registrazione offline durante l'addestramento dei modelli YOLO11?
Sì, puoi abilitare la registrazione offline in Comet ML impostando la COMET_MODE
variabile d'ambiente su "offline":
import os
os.environ["COMET_MODE"] = "offline"
Questa funzionalità consente di registrare i dati degli esperimenti localmente, che possono essere successivamente caricati su Comet ML quando è disponibile la connettività Internet. Ciò è particolarmente utile quando si lavora in ambienti con accesso a Internet limitato. Per maggiori dettagli, consultare la sezione Offline Logging.