Ultralytics YOLO27:

Analisi approfondita delle metriche di prestazione#

Introduzione#

Le metriche di prestazione sono strumenti fondamentali per valutare l'accuratezza e l'efficienza dei modelli di rilevamento degli oggetti. Forniscono informazioni su quanto efficacemente un modello riesca a identificare e localizzare gli oggetti nelle immagini. Inoltre, aiutano a comprendere come il modello gestisce i falsi positivi e i falsi negativi. Queste informazioni sono fondamentali per valutare e migliorare le prestazioni del modello. In questa guida analizzeremo diverse metriche di prestazione associate a YOLO26, la loro importanza e come interpretarle.



Watch: Ultralytics YOLO26 Performance Metrics | MAP, F1 Score, Precision, IoU & Accuracy

Metriche del rilevamento degli oggetti#

Iniziamo discutendo alcune metriche importanti non solo per YOLO26, ma ampiamente applicabili a diversi modelli di rilevamento degli oggetti.

  • Intersezione sull'unione (IoU): IoU è una misura che quantifica la sovrapposizione tra una [bounding box](https://ultralytics-translation-1.invalid predetta e una bounding box di riferimento. Svolge un ruolo fondamentale nella valutazione dell'accuratezza della localizzazione degli oggetti.

  • Precisione media (AP): AP calcola l'area sotto la curva precisione-richiamo, fornendo un singolo valore che riassume le prestazioni del modello in termini di precisione e richiamo.

  • Precisione media (mAP): mAP estende il concetto di AP calcolando la media dei valori AP su più classi di oggetti. È utile negli scenari di rilevamento di oggetti con più classi, poiché fornisce una valutazione completa delle prestazioni del modello.

  • Precisione e richiamo: la precisione quantifica la proporzione di veri positivi tra tutte le predizioni positive, valutando la capacità del modello di evitare i falsi positivi. Il richiamo, invece, calcola la proporzione di veri positivi tra tutti i positivi effettivi, misurando la capacità del modello di rilevare tutte le istanze di una classe.

  • Punteggio F1: il punteggio F1 è la media armonica di precisione e richiamo e fornisce una valutazione equilibrata delle prestazioni del modello, considerando sia i falsi positivi sia i falsi negativi.

Come calcolare le metriche per il modello YOLO26#

Ora possiamo esplorare la modalità di validazione di YOLO26, che può essere utilizzata per calcolare le metriche di valutazione sopra descritte.

Utilizzare la modalità di validazione è semplice. Dopo aver addestrato un modello, puoi richiamare la funzione model.val(). Questa funzione elaborerà il dataset di validazione e restituirà diverse metriche di prestazione. Ma cosa significano queste metriche? E come dovresti interpretarle?

Interpretazione dell'output#

Analizziamo l'output della funzione model.val() e comprendiamo ogni sezione dell'output.

Metriche per classe#

Una delle sezioni dell'output contiene la suddivisione delle metriche di prestazione per classe. Queste informazioni dettagliate sono utili quando vuoi capire quanto bene si comporta il modello per ogni classe specifica, soprattutto nei dataset con un'ampia varietà di categorie di oggetti. Per ogni classe del dataset vengono forniti i seguenti dati:

  • Class: indica il nome della classe di oggetti, ad esempio "person", "car" o "dog".

  • Images: questa metrica indica il numero di immagini nel set di validazione che contengono la classe di oggetti.

  • Instances: indica quante volte compare la classe in tutte le immagini del set di validazione.

  • Box(P, R, mAP50, mAP50-95): questa metrica fornisce informazioni sulle prestazioni del modello nel rilevamento degli oggetti:

    • P (Precision): l'accuratezza degli oggetti rilevati, indicando quante rilevazioni erano corrette.

    • R (Recall): la capacità del modello di identificare tutte le istanze degli oggetti nelle immagini.

    • mAP50: precisione media calcolata con una soglia di intersezione sull'unione (IoU) pari a 0.50. È una misura dell'accuratezza del modello considerando solo le rilevazioni "semplici".

    • mAP50-95: la media della precisione media calcolata con soglie IoU variabili, comprese tra 0.50 e 0.95. Fornisce una visione completa delle prestazioni del modello ai diversi livelli di difficoltà del rilevamento.

Metriche di velocità#

La velocità di inferenza può essere importante quanto l'accuratezza, soprattutto negli scenari di rilevamento degli oggetti in tempo reale. Questa sezione analizza il tempo impiegato dalle varie fasi del processo di validazione, dalla pre-elaborazione alla post-elaborazione.

Valutazione delle metriche COCO#

Per gli utenti che eseguono la validazione sul dataset COCO, vengono calcolate metriche aggiuntive utilizzando lo script di valutazione COCO. Queste metriche forniscono informazioni su precisione e richiamo a diverse soglie IoU e per oggetti di dimensioni differenti.

Output visivi#

La funzione model.val(), oltre a produrre metriche numeriche, genera anche output visivi che possono fornire una comprensione più intuitiva delle prestazioni del modello. Ecco una panoramica degli output visivi previsti:

  • Curva del punteggio F1 (BoxF1_curve.png): questa curva rappresenta il punteggio F1 a diverse soglie. Interpretarla può fornire informazioni sull'equilibrio del modello tra falsi positivi e falsi negativi alle diverse soglie.

  • Curva precisione-richiamo (BoxPR_curve.png): una visualizzazione fondamentale per qualsiasi problema di classificazione; questa curva mostra i compromessi tra precisione e richiamo a soglie variabili. È particolarmente significativa quando si lavora con classi sbilanciate.

  • Curva della precisione (BoxP_curve.png): una rappresentazione grafica dei valori di precisione a soglie diverse. Questa curva aiuta a comprendere come varia la precisione al variare della soglia.

  • Curva del richiamo (BoxR_curve.png): analogamente, questo grafico mostra come cambiano i valori del richiamo alle diverse soglie.

  • Matrice di confusione (confusion_matrix.png): la matrice di confusione fornisce una visione dettagliata dei risultati, mostrando i conteggi di veri positivi, veri negativi, falsi positivi e falsi negativi per ogni classe.

  • Matrice di confusione normalizzata (confusion_matrix_normalized.png): questa visualizzazione è una versione normalizzata della matrice di confusione. Rappresenta i dati come proporzioni anziché come conteggi grezzi. Questo formato semplifica il confronto delle prestazioni tra le classi.

  • Etichette dei batch di validazione (val_batchX_labels.jpg): queste immagini mostrano le etichette di riferimento per batch distinti del dataset di validazione. Forniscono un quadro chiaro degli oggetti e delle rispettive posizioni secondo il dataset.

  • Predizioni dei batch di validazione (val_batchX_pred.jpg): a differenza delle immagini delle etichette, queste visualizzazioni mostrano le predizioni effettuate dal modello YOLO26 per i batch corrispondenti. Confrontandole con le immagini delle etichette, puoi valutare facilmente quanto bene il modello rileva e classifica visivamente gli oggetti.

Per le attività di rilevamento, segmentazione e stima della posa, i grafici delle curve sono preceduti dal tipo di metrica: il rilevamento scrive le curve Box*, la segmentazione scrive entrambe le curve Box* e Mask*, mentre la posa scrive entrambe le curve Box* e Pose*.

Archiviazione dei risultati#

Per riferimento futuro, i risultati vengono salvati in una directory, generalmente denominata runs/detect/val.

Scelta delle metriche appropriate#

La scelta delle metriche appropriate per la valutazione dipende spesso dall'applicazione specifica.

  • mAP: adatta per una valutazione generale delle prestazioni del modello.

  • IoU: essenziale quando è fondamentale localizzare con precisione gli oggetti.

  • Precisione: importante quando la priorità è ridurre al minimo le rilevazioni errate.

  • Richiamo: fondamentale quando è importante rilevare ogni istanza di un oggetto.

  • Punteggio F1: utile quando è necessario un equilibrio tra precisione e richiamo.

Per le applicazioni in tempo reale, le metriche di velocità come FPS (fotogrammi al secondo) e la latenza sono fondamentali per garantire risultati tempestivi.

Interpretazione dei risultati#

È importante comprendere le metriche. Ecco cosa possono indicare alcuni dei punteggi bassi osservati più comunemente:

  • mAP bassa: indica che il modello potrebbe richiedere miglioramenti generali.

  • IoU bassa: il modello potrebbe avere difficoltà a individuare gli oggetti con precisione. Metodi diversi per le bounding box potrebbero essere d'aiuto.

  • Precisione bassa: il modello potrebbe rilevare troppi oggetti inesistenti. La regolazione delle soglie di confidenza potrebbe ridurre questo problema.

  • Richiamo basso: il modello potrebbe non rilevare oggetti reali. Migliorare l'estrazione delle caratteristiche o utilizzare più dati potrebbe essere d'aiuto.

  • Punteggio F1 sbilanciato: esiste una disparità tra precisione e richiamo.

  • AP specifica per classe: punteggi bassi in questo caso possono evidenziare le classi con cui il modello ha difficoltà.

Casi di studio#

Gli esempi del mondo reale possono aiutare a chiarire come funzionano queste metriche nella pratica.

Caso 1#

  • Situazione: mAP e punteggio F1 sono subottimali, ma il richiamo è buono mentre la precisione non lo è.

  • Interpretazione e azione: potrebbero esserci troppe rilevazioni errate. Inasprire le soglie di confidenza potrebbe ridurle, anche se potrebbe diminuire leggermente anche il richiamo.

Caso 2#

  • Situazione: mAP e richiamo sono accettabili, ma IoU è insufficiente.

  • Interpretazione e azione: il modello rileva bene gli oggetti, ma potrebbe non localizzarli con precisione. Perfezionare le predizioni delle bounding box potrebbe essere d'aiuto.

Caso 3#

  • Situazione: alcune classi hanno un AP molto più basso rispetto alle altre, nonostante un mAP complessivo discreto.

  • Interpretazione e azione: queste classi potrebbero essere più difficili per il modello. Utilizzare più dati per queste classi o regolare i pesi delle classi durante l'addestramento potrebbe essere utile.

Connettersi e collaborare#

Attingere a una community di appassionati ed esperti può dare impulso al tuo percorso con YOLO26. Ecco alcuni canali che possono facilitare l'apprendimento, la risoluzione dei problemi e il networking.

Partecipa alla community in senso ampio#

  • Problemi su GitHub: Il repository di Ultralytics su GitHub ha una scheda Problemi in cui puoi fare domande, segnalare bug e suggerire nuove funzionalità. La community e i maintainer sono attivi qui, ed è un ottimo posto per ricevere aiuto con problemi specifici.

  • Server Discord di Ultralytics: Ultralytics ha un server Discord dove puoi interagire con altri utenti e con gli sviluppatori.

Documentazione e risorse ufficiali#

  • Documentazione di Ultralytics YOLO26: la documentazione ufficiale offre una panoramica completa di YOLO26, insieme a guide all'installazione, all'utilizzo e alla risoluzione dei problemi.

L'utilizzo di queste risorse non solo ti guiderà nelle eventuali difficoltà, ma ti terrà anche aggiornato sulle ultime tendenze e sulle best practice della community di YOLO26.

Conclusioni#

In questa guida abbiamo esaminato da vicino le metriche di prestazione essenziali per YOLO26. Queste metriche sono fondamentali per comprendere le prestazioni di un modello e sono indispensabili per chiunque voglia ottimizzare i propri modelli. Forniscono le informazioni necessarie per apportare miglioramenti e assicurarsi che il modello funzioni efficacemente nelle situazioni reali.

Ricorda: la community di YOLO26 e Ultralytics è una risorsa inestimabile. Interagire con altri sviluppatori ed esperti può aprire l'accesso a informazioni e soluzioni che non si trovano nella documentazione standard. Mentre prosegui il tuo percorso nel rilevamento degli oggetti, mantieni vivo lo spirito di apprendimento, sperimenta nuove strategie e condividi i tuoi risultati. In questo modo contribuirai alla conoscenza collettiva della community e ne favorirai la crescita.

FAQ#

  • La precisione media (mAP) è fondamentale per valutare i modelli YOLO26, poiché fornisce una singola metrica che riassume precisione e richiamo su più classi. mAP@0.50 misura la precisione con una soglia IoU di 0.50, concentrandosi sulla capacità del modello di rilevare correttamente gli oggetti. mAP@0.50:0.95 calcola la media della precisione su un intervallo di soglie IoU, offrendo una valutazione completa delle prestazioni di rilevamento. Punteggi mAP elevati indicano che il modello bilancia efficacemente precisione e richiamo, aspetto essenziale per applicazioni come la guida autonoma e i sistemi di sorveglianza, dove sono fondamentali sia rilevazioni accurate sia un numero minimo di falsi allarmi.

  • L'intersezione sull'unione (IoU) misura la sovrapposizione tra le bounding box predette e quelle di riferimento. I valori IoU vanno da 0 a 1, dove i valori più alti indicano una maggiore accuratezza di localizzazione. Un IoU pari a 1.0 indica un allineamento perfetto. In genere, una soglia IoU di 0.50 viene utilizzata per definire i veri positivi in metriche come mAP. Valori IoU più bassi suggeriscono che il modello ha difficoltà a localizzare con precisione gli oggetti; questo problema può essere migliorato perfezionando la regressione delle bounding box o aumentando l'accuratezza delle annotazioni nel tuo dataset di addestramento.

  • Il punteggio F1 è importante per valutare i modelli YOLO26 perché fornisce la media armonica di precisione e richiamo, bilanciando falsi positivi e falsi negativi. È particolarmente utile con dataset sbilanciati o in applicazioni in cui la sola precisione o il solo richiamo non sono sufficienti. Un punteggio F1 elevato indica che il modello rileva efficacemente gli oggetti riducendo al minimo sia le rilevazioni mancate sia i falsi allarmi, rendendolo adatto ad applicazioni critiche come i sistemi di sicurezza e l'imaging medico.

  • Ultralytics YOLO26 offre diversi vantaggi per il rilevamento degli oggetti in tempo reale:

    Questo rende YOLO26 ideale per applicazioni diverse, dai veicoli autonomi alle soluzioni per smart city.

  • Le metriche di validazione di YOLO26, come precisione, richiamo, mAP e IoU, aiutano a diagnosticare e migliorare le prestazioni del modello fornendo informazioni su diversi aspetti del rilevamento:

    • Precisione: aiuta a identificare e ridurre al minimo i falsi positivi.
    • Richiamo: garantisce che vengano rilevati tutti gli oggetti pertinenti.
    • mAP: offre una panoramica generale delle prestazioni e orienta i miglioramenti complessivi.
    • IoU: aiuta a perfezionare l'accuratezza della localizzazione degli oggetti.

    Analizzando queste metriche, puoi intervenire su debolezze specifiche, ad esempio regolando le soglie di confidenza per migliorare la precisione o raccogliendo dati più diversificati per aumentare il richiamo. Per spiegazioni dettagliate di queste metriche e della loro interpretazione, consulta Metriche del rilevamento degli oggetti e valuta l'implementazione dell'ottimizzazione degli iperparametri per ottimizzare il modello.

Commenti