Area Under the Curve (AUC)
Impara come l'Area sotto la curva (AUC) misura le prestazioni del modello. Scopri il suo ruolo nella classificazione, nella sanità e nella finanza usando Ultralytics YOLO26.
L'Area Under the Curve (AUC) è una metrica di prestazione completa utilizzata nel machine learning (ML) per valutare il potere discriminatorio di un modello di classificazione. Nello specifico, misura l'area bidimensionale sottostante la Receiver Operating Characteristic (ROC) curve, fornendo un singolo valore scalare compreso tra 0 e 1. Un AUC di 1.0 indica un classificatore perfetto, mentre un AUC di 0.5 suggerisce che il modello non offre prestazioni migliori del caso casuale. Poiché aggrega le prestazioni su tutte le soglie di classificazione possibili, l'AUC è particolarmente efficace per valutare le capacità di predictive modeling in scenari in cui il confine decisionale ottimale è sconosciuto o variabile.
La relazione tra ROC e AUC#
Per comprendere appieno l'AUC, bisogna capire la curva ROC sottostante. Questo grafico traccia il True Positive Rate (Recall) rispetto al False Positive Rate a varie impostazioni di soglia. L'AUC quantifica essenzialmente la probabilità che il modello classifichi un'istanza positiva scelta casualmente più in alto rispetto a una negativa scelta casualmente.
- Separabilità: L'AUC misura quanto bene il modello distingue tra le classi (ad esempio, "cane" vs "gatto"). Una maggiore separabilità significa previsioni migliori.
- Invarianza di soglia: A differenza del F1-score, che dipende da un punto di cutoff specifico, l'AUC fornisce un'ampia panoramica della qualità del modello.
- Invarianza di scala: Misura quanto bene le previsioni sono classificate, piuttosto che i loro valori di probabilità assoluti.
Applicazioni nel mondo reale#
L'AUC è una metrica preferita nei settori che affrontano decisioni critiche e imbalanced datasets, in cui una classe è significativamente più rara dell'altra.
-
Diagnostica medica: Nel campo dell'AI in healthcare, i modelli vengono addestrati per identificare patologie dall'medical image analysis. Ad esempio, un modello che rileva tumori rari deve dare priorità alla sensitivity. Un AUC elevato garantisce che il sistema assegni in modo affidabile punteggi di rischio più elevati ai pazienti effettivi rispetto agli individui sani, riducendo i falsi negativi pericolosi.
-
Rilevamento delle frodi finanziarie: Le istituzioni finanziarie utilizzano l'AI in finance per individuare transazioni fraudolente. Poiché le transazioni legittime superano di gran lunga quelle fraudolente, un modello potrebbe raggiungere un'accuratezza del 99% semplicemente definendo tutto come "legittimo". L'AUC impedisce ciò valutando quanto bene il modello separi i tentativi di frode reali dal comportamento normale, indipendentemente dalla distribuzione delle classi.
Distinguere l'AUC da metriche correlate#
È fondamentale differenziare l'AUC da altri model evaluation insights per scegliere lo strumento giusto per il tuo progetto.
- AUC vs. Accuracy: L'Accuracy è semplicemente il rapporto tra le predizioni corrette e le predizioni totali. Su dataset altamente sbilanciati, l'accuratezza può risultare fuorviantemente alta. L'AUC è robusta rispetto allo squilibrio delle classi, fornendo una valutazione più onesta delle prestazioni del classificatore.
- AUC vs. Precision-Recall: Mentre la ROC-AUC è lo standard per risultati bilanciati, l'Area Under the Precision-Recall Curve (AUPRC) è spesso preferita quando la classe "positiva" è estremamente rara e i falsi positivi rappresentano una preoccupazione principale.
- AUC vs. mAP: Nelle attività di object detection che utilizzano modelli come YOLO26, la metrica standard è il Mean Average Precision (mAP). Sebbene l'mAP sia concettualmente simile — calcolando l'area sotto la curva Precision-Recall attraverso diverse soglie di Intersection over Union (IoU) — l'AUC si riferisce rigorosamente alla curva ROC nella classificazione binaria o multiclasse.
Esempio di codice#
Il seguente esempio dimostra come caricare un modello di classificazione YOLO26 pre-addestrato ed eseguire la validazione. Mentre i modelli YOLO riportano principalmente l'accuratezza top-1 e top-5, il processo di validazione genera i dati di previsione necessari per analizzare le metriche basate su curve.
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Validate the model on a standard dataset (e.g., imagenet10)
# This generates precision, recall, and accuracy metrics
results = model.val(data="imagenet10")
# Access top-1 accuracy, a key point on the ROC curve
print(f"Top-1 Accuracy: {results.top1:.4f}")
print(f"Top-5 Accuracy: {results.top5:.4f}")Per una gestione completa del ciclo di vita, inclusa l'annotazione dei dataset e l'addestramento sul cloud in cui queste metriche vengono visualizzate automaticamente, gli sviluppatori possono utilizzare la Ultralytics Platform. Questo semplifica il processo di interpretazione di metriche complesse come l'AUC senza calcoli manuali.






