Migliora l'addestramento di YOLO26: semplifica il processo di registrazione con Comet#
Registrare dettagli chiave dell'addestramento, come parametri, metriche, predizioni sulle immagini e checkpoint del modello, è essenziale nel machine learning: mantiene il tuo progetto trasparente, i progressi misurabili e i risultati riproducibili.
Guarda: Come usare Comet per registrare log e metriche dell'addestramento dei modelli Ultralytics YOLO 🚀
Ultralytics YOLO26 si integra perfettamente con Comet (precedentemente Comet ML), acquisendo e ottimizzando in modo efficiente ogni aspetto del processo di addestramento del tuo modello YOLO26 di rilevamento degli oggetti. In questa guida illustreremo il processo di installazione, la configurazione di Comet, gli approfondimenti in tempo reale, la registrazione personalizzata e l'utilizzo offline, per garantire che l'addestramento di YOLO26 sia documentato a fondo e ottimizzato per ottenere risultati eccellenti.
Comet#
Comet è una piattaforma per monitorare, confrontare, spiegare e ottimizzare modelli ed esperimenti di machine learning. Ti consente di registrare metriche, parametri, contenuti multimediali e altro durante l'addestramento del modello, nonché di monitorare gli esperimenti attraverso un'interfaccia web curata. Comet aiuta i data scientist a iterare più rapidamente, migliora la trasparenza e la riproducibilità e supporta lo sviluppo di modelli per la produzione.
Sfruttare la potenza di YOLO26 e Comet#
Combinando Ultralytics YOLO26 con Comet, puoi accedere a numerosi vantaggi. Tra questi, una gestione semplificata degli esperimenti, approfondimenti in tempo reale per apportare modifiche rapidamente, opzioni di registrazione flessibili e personalizzate e la possibilità di registrare gli esperimenti offline quando l'accesso a Internet è limitato. Questa integrazione ti consente di prendere decisioni basate sui dati, analizzare le metriche delle prestazioni e ottenere risultati eccezionali.
Installazione#
Per installare i pacchetti necessari, esegui:
# Install YOLO26 and Comet
pip install ultralytics comet_mlConfigurazione di Comet#
Dopo aver installato i pacchetti necessari, dovrai registrarti, ottenere una chiave API di Comet e configurarla.
# Set your Comet API Key
export COMET_API_KEY=YOUR_API_KEYQuindi, autentica Comet. Il callback di Ultralytics crea l'esperimento e usa l'argomento di addestramento YOLO project come nome del progetto Comet.
import comet_ml
comet_ml.login()Se usi un notebook Google Colab, il codice qui sopra ti chiederà di inserire la chiave API per l'inizializzazione.
Utilizzo#
Prima di approfondire le istruzioni per l'uso, dai un'occhiata alla gamma di modelli YOLO26 offerti da Ultralytics. Ti aiuterà a scegliere il modello più adatto ai requisiti del tuo progetto.
from ultralytics import YOLO
# Carica un modello
model = YOLO("yolo26n.pt")
# Addestra il modello
results = model.train(
data="coco8.yaml",
project="comet-example-yolo26-coco128",
batch=32,
save_period=1,
save_json=True,
epochs=3,
)Dopo aver eseguito il codice di addestramento, Comet creerà automaticamente un esperimento nel tuo spazio di lavoro Comet per monitorare l'esecuzione. Ti verrà quindi fornito un link per visualizzare la registrazione dettagliata del processo di addestramento del tuo modello YOLO26.
Comet registra automaticamente i seguenti dati senza bisogno di configurazioni aggiuntive: metriche come mAP e loss, iperparametri, checkpoint del modello, matrice di confusione interattiva e predizioni delle bounding box sulle immagini.
Comprendere le prestazioni del tuo modello con le visualizzazioni di Comet#
Vediamo cosa troverai nella dashboard di Comet quando il tuo modello YOLO26 inizierà l'addestramento. La dashboard è il centro di tutte le attività: presenta una serie di informazioni registrate automaticamente sotto forma di grafici e statistiche. Ecco una breve panoramica:
Pannelli degli esperimenti
La sezione dei pannelli degli esperimenti nella dashboard di Comet organizza e presenta le diverse esecuzioni e le relative metriche, come la loss delle maschere di segmentazione, la loss di classe, la precisione e la precisione media media.
Metriche
Nella sezione delle metriche puoi anche esaminare le metriche in formato tabellare, visualizzate in un riquadro dedicato come illustrato qui.
Matrice di confusione interattiva
La matrice di confusione, disponibile nella scheda Matrice di confusione, offre un modo interattivo per valutare l'accuratezza di classificazione del modello. Mostra le predizioni corrette e quelle errate, consentendoti di comprendere i punti di forza e di debolezza del modello.
Metriche di sistema
Comet registra le metriche di sistema per aiutarti a individuare eventuali colli di bottiglia nel processo di addestramento. Include metriche come l'utilizzo della GPU, l'uso della memoria GPU, l'utilizzo della CPU e l'uso della RAM. Sono essenziali per monitorare l'efficienza nell'utilizzo delle risorse durante l'addestramento del modello.
Personalizzazione della registrazione di Comet#
Comet offre la flessibilità di personalizzare il comportamento di registrazione impostando variabili d'ambiente. Queste configurazioni ti consentono di adattare Comet alle tue esigenze e preferenze specifiche. Il callback di Ultralytics legge le seguenti variabili d'ambiente (impostale prima dell'inizio dell'addestramento):
| Variabile d'ambiente | Predefinito | Descrizione |
|---|---|---|
COMET_START_ONLINE | 1 | Esegui l'esperimento in modalità online (1) oppure offline (0). |
COMET_PROJECT_NAME | args.project | Progetto dello spazio di lavoro Comet. Se non è impostato, viene usato l'argomento di addestramento YOLO project. |
COMET_MODEL_NAME | Ultralytics | Nome registrato per l'artefatto del modello registrato. |
COMET_MAX_IMAGE_PREDICTIONS | 100 | Numero totale di predizioni sulle immagini di convalida da registrare per esecuzione. |
COMET_EVAL_BATCH_LOGGING_INTERVAL | 1 | Registra le predizioni sulle immagini ogni N batch di convalida. |
COMET_EVAL_LOG_IMAGE_PREDICTIONS | true | Attiva (true) o disattiva (false) la registrazione delle predizioni sulle immagini. |
COMET_EVAL_LOG_CONFUSION_MATRIX | false | Registra una matrice di confusione a ogni epoca di convalida. Al termine dell'addestramento viene sempre registrata una matrice finale. |
COMET_MAX_CONFIDENCE_SCORE | 100.0 | Moltiplicatore applicato ai punteggi di confidenza del rilevamento prima della registrazione (l'interfaccia utente di Comet si aspetta una scala percentuale). |
COMET_MODE (deprecata) | online | Alias legacy di COMET_START_ONLINE ("online" ↔ 1, "offline" ↔ 0). Genera un avviso di deprecazione. |
Per le opzioni booleane (COMET_EVAL_LOG_IMAGE_PREDICTIONS e COMET_EVAL_LOG_CONFUSION_MATRIX), i valori 1, true, yes, on, y e t vengono interpretati come True (senza distinzione tra maiuscole e minuscole). Qualsiasi altro valore viene interpretato come False.
Registrazione delle predizioni sulle immagini#
Puoi controllare il numero di predizioni sulle immagini che Comet registra durante gli esperimenti. Per impostazione predefinita, Comet registra 100 predizioni sulle immagini dal set di convalida. Tuttavia, puoi modificare questo numero in base alle tue esigenze. Ad esempio, per registrare 200 predizioni sulle immagini, usa il codice seguente:
import os
os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"Per disattivare del tutto la registrazione delle predizioni sulle immagini (ad esempio, per ridurre il volume dei caricamenti sulle connessioni lente), imposta COMET_EVAL_LOG_IMAGE_PREDICTIONS su "false":
import os
os.environ["COMET_EVAL_LOG_IMAGE_PREDICTIONS"] = "false"Intervallo di registrazione dei batch#
Comet ti consente di specificare la frequenza con cui vengono registrati i batch di predizioni sulle immagini. La variabile d'ambiente COMET_EVAL_BATCH_LOGGING_INTERVAL controlla questa frequenza. L'impostazione predefinita è 1, che registra le predizioni di ogni batch di convalida. Puoi modificare questo valore per registrare le predizioni a intervalli diversi. Ad esempio, impostandolo su 4, verranno registrate le predizioni di un batch ogni quattro.
import os
os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"Disattivazione della registrazione della matrice di confusione#
In alcuni casi, potresti non voler registrare la matrice di confusione del set di convalida dopo ogni epoca. Puoi disattivare questa funzionalità impostando la variabile d'ambiente COMET_EVAL_LOG_CONFUSION_MATRIX su "false". La matrice di confusione verrà registrata una sola volta, al termine dell'addestramento.
import os
os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"Modalità online e offline#
Per impostazione predefinita, Comet opera in modalità online e trasmette i dati degli esperimenti ai server Comet. Se devi addestrare senza accesso a Internet, imposta COMET_START_ONLINE=0 prima di avviare l'addestramento. I dati degli esperimenti vengono salvati localmente e possono essere caricati in seguito con la CLI comet upload.
import os
os.environ["COMET_START_ONLINE"] = "0" # 1 (predefinito) = online, 0 = offlineLe versioni precedenti usavano COMET_MODE="offline" per questo scopo. La variabile è ancora supportata per garantire la compatibilità con le versioni precedenti, ma genera un avviso di deprecazione. D'ora in poi, usa COMET_START_ONLINE.
Nome del progetto#
Per impostazione predefinita, il callback di Comet passa a Comet l'argomento di addestramento YOLO project (oppure None se l'argomento non è impostato, nel qual caso Comet usa il valore predefinito del tuo spazio di lavoro). Sovrascrivi questo comportamento con COMET_PROJECT_NAME per inviare tutti gli esperimenti a un progetto specifico dello spazio di lavoro Comet, indipendentemente dall'argomento di addestramento YOLO:
import os
os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments"Nome dell'artefatto del modello#
COMET_MODEL_NAME imposta il nome che Comet registra per l'artefatto del modello registrato (il valore predefinito è Ultralytics). Usalo per distinguere le varianti del modello in uno spazio di lavoro condiviso:
import os
os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"Scalatura del punteggio di confidenza#
I punteggi di confidenza del rilevamento vengono emessi nell'intervallo [0, 1], ma per impostazione predefinita l'interfaccia utente di Comet li visualizza su una scala percentuale. Prima della registrazione, il callback moltiplica ogni punteggio per COMET_MAX_CONFIDENCE_SCORE (valore predefinito 100.0). Modifica questo valore se preferisci probabilità grezze o una scala diversa:
import os
os.environ["COMET_MAX_CONFIDENCE_SCORE"] = "1.0" # registra i punteggi grezzi [0, 1]Riepilogo#
Questa guida ti ha illustrato l'integrazione di Comet con YOLO26 di Ultralytics. Dall'installazione alla personalizzazione, hai imparato a semplificare la gestione degli esperimenti, ottenere approfondimenti in tempo reale e adattare la registrazione alle esigenze del tuo progetto.
Consulta la documentazione ufficiale sull'integrazione di YOLOv8 con Comet, applicabile anche ai progetti YOLO26.
Inoltre, se vuoi approfondire le applicazioni pratiche di YOLO26, in particolare per le attività di segmentazione delle immagini, questa guida dettagliata sulla messa a punto di YOLO26 con Comet offre preziosi approfondimenti e istruzioni dettagliate per migliorare le prestazioni del tuo modello.
Inoltre, per scoprire altre interessanti integrazioni con Ultralytics, consulta la pagina della guida alle integrazioni, ricca di risorse e informazioni.
Domande frequenti#
Per integrare Comet con Ultralytics YOLO26, segui questi passaggi:
-
Installa i pacchetti necessari:
pip install ultralytics comet_ml -
Configura la tua chiave API di Comet:
export COMET_API_KEY=YOUR_API_KEY -
Autenticati con Comet nel tuo codice Python:
import comet_ml comet_ml.login() -
Addestra il tuo modello YOLO26 e registra le metriche:
from ultralytics import YOLO model = YOLO("yolo26n.pt") results = model.train( data="coco8.yaml", project="comet-example-yolo26-coco128", batch=32, save_period=1, save_json=True, epochs=3, )
Per istruzioni più dettagliate, consulta la sezione sulla configurazione di Comet.
-
Integrando Ultralytics YOLO26 con Comet, puoi:
- Monitorare informazioni in tempo reale: ricevi feedback immediato sui risultati dell'addestramento, così puoi apportare rapidamente modifiche.
- Registrare metriche dettagliate: acquisisci automaticamente metriche essenziali come mAP, loss, iperparametri e checkpoint del modello.
- Tenere traccia degli esperimenti offline: registra localmente le esecuzioni di addestramento quando non è disponibile una connessione Internet.
- Confrontare diverse esecuzioni di addestramento: usa la dashboard interattiva di Comet per analizzare e confrontare più esperimenti.
Sfruttando queste funzionalità, puoi ottimizzare i flussi di lavoro di machine learning per ottenere prestazioni e riproducibilità migliori. Per ulteriori informazioni, visita la guida all'integrazione di Comet.
Comet consente di personalizzare ampiamente il comportamento di registrazione tramite variabili d'ambiente:
-
Modificare il numero di predizioni delle immagini registrate:
import os os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200" -
Modificare l'intervallo di registrazione dei batch:
import os os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4" -
Disattivare la registrazione della matrice di confusione:
import os os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false" -
Impostare il nome del progetto Comet:
import os os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments" -
Impostare il nome dell'artefatto del modello registrato:
import os os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"
Consulta la sezione Personalizzazione della registrazione di Comet per l'elenco completo, che include le opzioni per attivare o disattivare le predizioni delle immagini, la scalatura dei punteggi di confidenza e la modalità online/offline.
-
Quando l'addestramento del modello YOLO26 è avviato, puoi accedere a un'ampia gamma di metriche e visualizzazioni nella dashboard di Comet. Le funzionalità principali includono:
- Pannelli degli esperimenti: visualizza le diverse esecuzioni e le relative metriche, tra cui la loss della maschera di segmentazione, la loss della classe e la precisione 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'uso della memoria e altre metriche di sistema.
Per una panoramica dettagliata di queste funzionalità, visita la sezione Comprendere le prestazioni del tuo modello con le visualizzazioni di Comet.
Sì. Imposta
COMET_START_ONLINE=0prima di avviare l'addestramento per registrare i dati localmente:import os os.environ["COMET_START_ONLINE"] = "0"I dati degli esperimenti vengono salvati su disco e possono essere caricati su Comet in un secondo momento con la CLI
comet upload, quando la connessione è disponibile. La variabileCOMET_MODE="offline"precedente continua a funzionare, ma genera un avviso di deprecazione. Per ulteriori dettagli, consulta la sezione Modalità online e offline.