Ultralytics YOLO27:
Get Started

Approfondimento sulle metriche di prestazione#

Introduzione#

Le metriche di prestazione sono strumenti fondamentali per valutare l'accuratezza e l'efficienza dei modelli di rilevamento degli oggetti. Indicano quanto efficacemente un modello riesce 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 essenziali per valutare e migliorare le prestazioni del modello. In questa guida esamineremo diverse metriche di prestazione associate a YOLO26, la loro importanza e come interpretarle.



Guarda: Metriche di prestazione di Ultralytics YOLO26 | MAP, punteggio F1, precisione, IoU e accuratezza

Metriche di rilevamento degli oggetti#

Cominciamo con 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 un riquadro di delimitazione predetto e un riquadro di delimitazione 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-recall, fornendo un singolo valore che riassume le prestazioni di precisione e recall del modello.

  • Precisione media (mAP): mAP estende il concetto di AP calcolando la media dei valori di AP su più classi di oggetti. È utile negli scenari di rilevamento degli oggetti multi-classe, perché consente di valutare complessivamente le prestazioni del modello.

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

  • Punteggio F1: il punteggio F1 è la media armonica di precisione e recall e fornisce una valutazione bilanciata delle prestazioni del modello, tenendo conto sia dei falsi positivi sia dei falsi negativi.

Come calcolare le metriche per un modello YOLO26#

Ora possiamo esaminare la modalità di convalida di YOLO26, che consente di calcolare le metriche di valutazione descritte sopra.

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

Interpretazione dell'output#

Esaminiamo nel dettaglio l'output della funzione model.val() e analizziamo ciascuna delle sue parti.

Metriche per classe#

Una delle sezioni dell'output presenta le metriche di prestazione suddivise per classe. Queste informazioni dettagliate sono utili per capire quanto bene si comporta il modello per ciascuna classe specifica, soprattutto nei dataset con una grande varietà di categorie di oggetti. Per ogni classe del dataset vengono forniti i seguenti dati:

  • Classe: indica il nome della classe di oggetti, ad esempio "persona", "auto" o "cane".

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

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

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

    • P (Precisione): l'accuratezza degli oggetti rilevati, che indica 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. Misura l'accuratezza del modello considerando solo le rilevazioni più semplici.

    • mAP50-95: media della precisione media calcolata con soglie IoU variabili, da 0.50 a 0.95. Offre una panoramica completa delle prestazioni del modello a diversi livelli di difficoltà di 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 suddivide il tempo impiegato nelle diverse fasi del processo di convalida, dal pre-processing al post-processing.

Valutazione delle metriche COCO#

Per chi convalida i modelli sul dataset COCO, vengono calcolate metriche aggiuntive usando lo script di valutazione COCO. Queste metriche forniscono informazioni su precisione e recall a diverse soglie IoU e per oggetti di dimensioni diverse.

Output visivi#

Oltre a produrre metriche numeriche, la funzione model.val() genera anche output visivi che permettono di comprendere in modo più intuitivo le prestazioni del modello. Ecco una panoramica degli output visivi previsti:

  • Curva del punteggio F1 (BoxF1_curve.png): Questa curva rappresenta il punteggio F1 alle diverse soglie. Interpretarla può offrire indicazioni sull'equilibrio del modello tra falsi positivi e falsi negativi alle varie soglie.

  • Curva precisione-recall (BoxPR_curve.png): Visualizzazione fondamentale per qualsiasi problema di classificazione, questa curva mostra i compromessi tra precisione e recall alle diverse soglie. È particolarmente importante quando si ha a che fare con classi sbilanciate.

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

  • Curva del recall (BoxR_curve.png): Analogamente, questo grafico illustra come cambiano i valori di recall alle diverse soglie.

  • Matrice di confusione (confusion_matrix.png): La matrice di confusione offre una vista dettagliata dei risultati, mostrando il numero 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 in proporzioni anziché in conteggi assoluti. Questo formato semplifica il confronto delle prestazioni tra le classi.

  • Etichette dei batch di validazione (val_batchX_labels.jpg): Queste immagini rappresentano le etichette di ground truth di batch distinti del dataset di validazione. Offrono 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 gli oggetti a livello visivo.

Per le attività di rilevamento, segmentazione e stima della posa, i grafici delle curve hanno un prefisso che indica il tipo di metrica: il rilevamento genera curve Box*, la segmentazione genera sia curve Box* sia curve Mask*, mentre la stima della posa genera sia curve Box* sia curve Pose*.

Archiviazione dei risultati#

Per poterli consultare in futuro, i risultati vengono salvati in una directory, in genere denominata runs/detect/val.

Scegliere le metriche giuste#

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

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

  • IoU: Essenziale quando è fondamentale individuare con precisione la posizione degli oggetti.

  • Precisione: Importante quando la priorità è ridurre al minimo i falsi rilevamenti.

  • Recall: Fondamentale quando è importante rilevare ogni istanza di un oggetto.

  • Punteggio F1: Utile quando serve un equilibrio tra precisione e recall.

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 potrebbero indicare alcuni dei punteggi bassi più comuni:

  • mAP basso: Indica che il modello potrebbe aver bisogno di perfezionamenti generali.

  • IoU basso: Il modello potrebbe avere difficoltà a individuare gli oggetti con precisione. Potrebbero essere utili metodi diversi per i riquadri di delimitazione.

  • Precisione bassa: Il modello potrebbe rilevare troppi oggetti inesistenti. Modificare le soglie di confidenza potrebbe ridurne il numero.

  • Recall basso: Il modello potrebbe non rilevare oggetti reali. Migliorare l'estrazione delle caratteristiche o usare più dati potrebbe essere utile.

  • Punteggio F1 sbilanciato: C'è una disparità tra precisione e recall.

  • AP per classe: I punteggi bassi possono evidenziare le classi che mettono in difficoltà il modello.

Casi di studio#

Gli esempi reali possono aiutare a chiarire come funzionano queste metriche nella pratica.

Caso 1#

  • Situazione: mAP e punteggio F1 sono subottimali: il recall è buono, ma la precisione no.

  • Interpretazione e azione: Potrebbero esserci troppi rilevamenti errati. Aumentare la severità delle soglie di confidenza potrebbe ridurne il numero, anche se potrebbe diminuire leggermente il recall.

Caso 2#

  • Situazione: mAP e recall sono accettabili, ma l'IoU è insufficiente.

  • Interpretazione e azione: Il modello rileva bene gli oggetti, ma potrebbe non localizzarli con precisione. Perfezionare le predizioni dei riquadri di delimitazione potrebbe essere utile.

Caso 3#

  • Situazione: Alcune classi hanno un AP molto più basso rispetto ad altre, anche se il mAP complessivo è discreto.

  • Interpretazione e azione: Queste classi potrebbero essere più difficili da gestire per il modello. Potrebbe essere utile usare più dati per queste classi o modificare i pesi delle classi durante l'addestramento.

Connettiti e collabora#

Entrare in contatto con una community di appassionati ed esperti può arricchire il tuo percorso con YOLO26. Ecco alcuni modi per imparare, risolvere problemi e creare connessioni.

Partecipa alla community più ampia#

  • Segnalazioni su GitHub: Il repository di Ultralytics su GitHub ha una scheda Issues in cui puoi porre domande, segnalare bug e proporre nuove funzionalità. La community e i maintainer sono attivi e questo è un ottimo posto per ricevere aiuto su problemi specifici.

  • Server Discord di Ultralytics: Ultralytics ha un server Discord in cui 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, oltre a guide sull'installazione, l'uso e la risoluzione dei problemi.

Queste risorse non solo ti guideranno nell'affrontare le difficoltà, ma ti terranno anche aggiornato sulle ultime tendenze e sulle migliori pratiche della community YOLO26.

Conclusione#

In questa guida abbiamo esaminato da vicino le metriche di prestazione essenziali per YOLO26. Queste metriche sono fondamentali per capire come si comporta un modello e sono indispensabili per chiunque voglia perfezionare i propri modelli. Forniscono le informazioni necessarie per apportare miglioramenti e assicurarsi che il modello funzioni efficacemente in situazioni reali.

Ricorda che la community YOLO26 e Ultralytics è una risorsa preziosa. Interagire con altri sviluppatori ed esperti può aprirti le porte a informazioni e soluzioni che non si trovano nella documentazione standard. Nel tuo percorso nel rilevamento degli oggetti, continua a coltivare la voglia di imparare, sperimenta nuove strategie e condividi i tuoi risultati. Così facendo, contribuirai alla conoscenza collettiva della community e ne favorirai la crescita.

Domande frequenti#

  • La precisione media media (mAP) è fondamentale per valutare i modelli YOLO26, perché fornisce un'unica metrica che riassume precisione e recall su più classi. mAP@0.50 misura la precisione a 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 recall, un aspetto essenziale per applicazioni come la guida autonoma e i sistemi di sorveglianza, in cui sono fondamentali sia rilevamenti accurati sia un numero minimo di falsi allarmi.

  • Intersection over Union (IoU) misura la sovrapposizione tra i riquadri di delimitazione predetti e quelli di ground truth. I valori IoU variano da 0 a 1: valori più alti indicano una maggiore accuratezza di localizzazione. Un IoU pari a 1.0 indica un allineamento perfetto. In genere, si usa una soglia IoU di 0.50 per definire i veri positivi in metriche come mAP. Valori IoU più bassi suggeriscono che il modello ha difficoltà a localizzare gli oggetti con precisione; puoi migliorare questo aspetto perfezionando la regressione dei riquadri di delimitazione o aumentando l'accuratezza delle annotazioni nel tuo dataset di addestramento.

  • Il punteggio F1 è importante per valutare i modelli YOLO26 perché è la media armonica di precisione e recall e bilancia falsi positivi e falsi negativi. È particolarmente utile con dataset sbilanciati o in applicazioni in cui precisione o recall, considerate singolarmente, non sono sufficienti. Un punteggio F1 elevato indica che il modello rileva efficacemente gli oggetti riducendo al minimo sia i rilevamenti mancati 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 di oggetti in tempo reale:

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

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

    • Precisione: Aiuta a individuare e ridurre al minimo i falsi positivi.
    • Recall: Garantisce che vengano rilevati tutti gli oggetti pertinenti.
    • mAP: Offre una panoramica delle prestazioni complessive e orienta i miglioramenti generali.
    • IoU: Aiuta a perfezionare l'accuratezza della localizzazione degli oggetti.

    Analizzando queste metriche, puoi intervenire su punti deboli specifici, ad esempio modificando le soglie di confidenza per migliorare la precisione o raccogliendo dati più diversificati per aumentare il recall. Per spiegazioni dettagliate di queste metriche e di come interpretarle, consulta Metriche di rilevamento degli oggetti e valuta l'implementazione dell'ottimizzazione degli iperparametri per ottimizzare il tuo modello.

Commenti