Vai al contenuto

Elevating YOLOv8 Training: Semplificare il processo di registrazione con Comet ML

Registrare i dettagli chiave dell'addestramento, come i parametri, le metriche, le previsioni delle immagini e i checkpoint del modello, è essenziale nell'apprendimento automatico: mantiene il progetto trasparente, i progressi misurabili e i risultati ripetibili.

Ultralytics YOLOv8 si integra perfettamente con Comet ML, catturando e ottimizzando in modo efficiente ogni aspetto del processo di formazione del tuo YOLOv8 modello di rilevamento degli oggetti. In questa guida tratteremo il processo di installazione, la configurazione di Comet ML, gli approfondimenti in tempo reale, la registrazione personalizzata e l'utilizzo offline, assicurandoti che la tua formazione YOLOv8 sia accuratamente documentata e messa a punto per ottenere risultati eccezionali.

Comet ML

Comet Panoramica di ML

Comet ML è una piattaforma per monitorare, confrontare, spiegare e ottimizzare i modelli e gli esperimenti di apprendimento automatico. Ti permette di registrare metriche, parametri, media e altro ancora durante l'addestramento del modello e di monitorare gli 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 lo sviluppo di modelli di produzione.

Sfruttare la potenza di YOLOv8 e Comet ML

Combinando Ultralytics YOLOv8 con Comet ML, puoi ottenere una serie di vantaggi. Questi includono una gestione semplificata degli esperimenti, approfondimenti in tempo reale per aggiustamenti rapidi, opzioni di registrazione flessibili e personalizzate e la possibilità di registrare gli esperimenti offline quando l'accesso a internet è limitato. Questa integrazione ti permette di prendere decisioni basate sui dati, di analizzare le metriche delle prestazioni e di ottenere risultati eccezionali.

Installazione

Per installare i pacchetti necessari, esegui:

Installazione

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

Configurazione di Comet ML

Dopo aver installato i pacchetti necessari, dovrai registrarti, ottenere una chiave APIComet e configurarla.

Configurazione di Comet ML

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

Poi, puoi inizializzare il tuo progetto Comet . Comet rileverà automaticamente la chiave API e procederà con la configurazione.

import comet_ml

comet_ml.init(project_name="comet-example-yolov8-coco128")

Se stai usando un notebook Google Colab, il codice qui sopra ti chiederà di inserire la tua chiave API per l'inizializzazione.

Utilizzo

Prima di immergerti nelle istruzioni per l'uso, assicurati di dare un'occhiata alla gamma di modelli diYOLOv8 offerti da Ultralytics. Questo ti aiuterà a scegliere il modello più adatto alle esigenze del tuo progetto.

Utilizzo

from ultralytics import YOLO

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

# train the model
results = model.train(
data="coco128.yaml",
project="comet-example-yolov8-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 la registrazione dettagliata del processo di addestramento del tuo modelloYOLOv8 .

Comet registra automaticamente i seguenti dati senza alcuna configurazione aggiuntiva: metriche come mAP e perdita, iperparametri, punti di controllo del modello, matrice di confusione interattiva e previsioni del rettangolo di selezione dell'immagine.

Comprendi le prestazioni del tuo modello con le visualizzazioni di Comet ML

Scopriamo cosa vedrai nella dashboard di Comet ML una volta che il tuo modello YOLOv8 avrà iniziato l'addestramento. La dashboard è il luogo in cui avviene tutta l'azione, presentando una serie di informazioni registrate automaticamente attraverso immagini e statistiche. Ecco un rapido tour:

Pannelli per 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 del segmento, la perdita della classe, la precisione e la precisione media.

Comet Panoramica di ML

Metriche

Nella sezione delle metriche, hai la possibilità di esaminare le metriche anche in formato tabellare, visualizzate in un riquadro dedicato come illustrato qui.

Comet Panoramica di ML

Matrice di confusione interattiva

La matrice di confusione, che si trova nella scheda Matrice di confusione, fornisce un modo interattivo per valutare l'accuratezza della classificazione del modello. Essa riporta in dettaglio le previsioni corrette e quelle errate, permettendoti di capire i punti di forza e di debolezza del modello.

Comet Panoramica di ML

Metriche del sistema

Comet ML registra le metriche del sistema per aiutare a identificare eventuali colli di bottiglia nel processo di formazione. Include metriche come l'utilizzo della GPU, l'utilizzo della memoria della GPU, l'utilizzo della CPU e l'utilizzo della RAM. Queste sono essenziali per monitorare l'efficienza dell'uso delle risorse durante l'addestramento del modello.

Comet Panoramica di ML

Personalizzare la registrazione di Comet ML

Comet ML offre la flessibilità di personalizzare il suo comportamento di registrazione impostando delle variabili d'ambiente. Queste configurazioni ti permettono di adattare Comet ML alle tue specifiche esigenze e preferenze. Ecco alcune utili opzioni di personalizzazione:

Previsioni dell'immagine di registrazione

Puoi controllare il numero di previsioni di immagini che Comet ML registra durante i tuoi esperimenti. Per impostazione predefinita, Comet ML registra 100 previsioni di immagini dal set di validazione. Tuttavia, puoi modificare questo numero per adattarlo alle tue esigenze. Ad esempio, per registrare 200 previsioni di immagini, usa il seguente codice:

import os

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

Intervallo di registrazione del batch

Comet ML ti permette di specificare la frequenza con cui vengono registrati i batch di predizioni delle immagini. Il COMET_EVAL_BATCH_LOGGING_INTERVAL controlla questa frequenza. L'impostazione predefinita è 1, che registra le previsioni di ogni lotto di convalida. Puoi regolare questo valore per registrare le previsioni a un intervallo diverso. Ad esempio, impostando 4 si registreranno le previsioni di ogni quarto lotto.

import os

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

Disabilitare la registrazione della matrice di confusione

In alcuni casi, potresti non voler registrare la matrice di confusione del tuo set di validazione dopo ogni epoca. Puoi disabilitare questa funzione impostando il parametro COMET_EVAL_LOG_CONFUSION_MATRIX a "false". La matrice di confusione verrà registrata solo una volta, al termine dell'addestramento.

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 l'opzione COMET_MODE per abilitare questa funzione. I dati dell'esperimento verranno salvati localmente in una directory che potrai caricare successivamente su Comet ML quando sarà disponibile la connessione a internet.

import os

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

Sommario

Questa guida ti ha guidato nell'integrazione di Comet ML con Ultralytics e YOLOv8. Dall'installazione alla personalizzazione, hai imparato a semplificare la gestione degli esperimenti, a ottenere informazioni in tempo reale e ad adattare la registrazione alle esigenze del tuo progetto.

Esplora la documentazione ufficiale diComet ML per ulteriori informazioni sull'integrazione con YOLOv8.

Inoltre, se vuoi approfondire le applicazioni pratiche di YOLOv8, in particolare per le attività di segmentazione delle immagini, questa guida dettagliata sulla messa a punto di YOLOv8 con Comet ML offre preziosi spunti e istruzioni passo-passo per migliorare le prestazioni del tuo modello.

Inoltre, per esplorare altre interessanti integrazioni con Ultralytics, consulta la pagina della guida all'integrazione, che offre una grande quantità di risorse e informazioni.



Creato 2023-11-16, Aggiornato 2024-01-14
Autori: glenn-jocher (5), AyushExel (1), abirami-vina (1)

Commenti