Yolo Vision Shenzhen
Shenzhen
Iscriviti ora
Glossario

Curva Receiver Operating Characteristic (ROC)

Scopri come le curve ROC e l'AUC valutano le prestazioni dei classificatori in AI/ML, ottimizzando il rapporto tra veri positivi (TPR) e falsi positivi (FPR) per attività come il rilevamento di frodi e la diagnosi medica.

La curva ROC (Receiver Operating Characteristic) è una rappresentazione grafica utilizzata per valutare le prestazioni di un modello di classificazione binaria. modello di classificazione binaria. Visualizza il compromesso tra il tasso di veri positivi (TPR) e il tasso di falsi positivi (FPR) in base a diverse soglie di classificazione. positivo (TPR) e il tasso di falsi positivi (FPR) in base a diverse soglie di classificazione. Nell'apprendimento apprendimento automatico (ML), questa curva è fondamentale per valutare la capacità di un modello di distinguere tra due classi, come "spam" e "non spam" o "malato". "non spam" o "malato" contro "sano". Tracciando queste percentuali, la curva ROC fornisce una visione completa della capacità diagnostica di un modello, andando oltre le metriche a singolo numero come la l 'accuratezza, che possono essere fuorvianti in modo isolato.

Comprendere gli assi

Per interpretare correttamente una curva ROC, è essenziale comprendere le due metriche tracciate sui suoi assi:

  • Tasso di positività reale (TPR): Spesso indicato come Richiamo o sensibilità, questa metrica misura la proporzione di istanze di istanze effettivamente positive che il modello identifica correttamente. Per esempio, in un sistema di sicurezza, questo sarebbe la percentuale di intrusi rilevati correttamente.
  • Tasso di falsi positivi (FPR): Questa metrica calcola la proporzione di istanze negative effettive che vengono che vengono erroneamente identificate come positive (falsi allarmi). Un FPR più basso indica un minor numero di falsi allarmi, il che è fondamentale per la fiducia degli utenti in sistemi come il per la fiducia degli utenti in sistemi come l'autenticazione biometrica.

La curva viene generata variando la soglia di confidenza del classificatore da 0 a 1. Ogni punto della punto della curva ROC rappresenta una coppia sensibilità/specificità corrispondente a una particolare soglia di decisione. A linea diagonale dal basso a sinistra all'alto a destra rappresenta un classificatore casuale senza capacità predittiva (lancio di una moneta). lancio di una moneta), mentre una curva che si inarca bruscamente verso l'angolo in alto a sinistra indica un modello ad alte prestazioni.

Applicazioni nel mondo reale

Le curve ROC sono ampiamente utilizzate in vari settori per ottimizzare le soglie decisionali per l'impiego di modelli. l'impiego di modelli.

  1. Diagnostica medica: Nell'analisi delle immagini mediche analisi delle immagini mediche, i ricercatori utilizzano curve ROC per mettere a punto modelli per il rilevamento di condizioni come polmonite o tumori. Un TPR elevato viene considerato prioritario per garantire che nessun casi positivi, anche se ciò significa accettare un FPR leggermente più alto. Questo equilibrio è fondamentale per rispettare standard di sicurezza di organizzazioni come la FDA.
  2. Rilevamento delle frodi finanziarie: Le istituzioni finanziarie impiegano AI nella finanza per identificare transazioni fraudolente. In questo caso, la curva ROC aiuta gli analisti a selezionare una soglia che catturi la maggior parte dei tentativi di frode (alto Recall) senza segnalare troppe transazioni legittime. tentativi di frode (alto Recall) senza segnalare troppe transazioni legittime, che avrebbero un impatto negativo sull'esperienza del cliente. esperienza dei clienti.

Calcolo delle probabilità per la ROC

Per tracciare una curva ROC, sono necessarie le probabilità previste per la classe positiva e non solo le etichette finali della classe. finale. L'esempio che segue mostra come estrarre queste probabilità utilizzando un metodo YOLO11 modello di classificazione dal ultralytics pacchetto.

from ultralytics import YOLO

# Load a pretrained YOLO11 classification model
model = YOLO("yolo11n-cls.pt")

# Run inference on an image to get prediction results
results = model("path/to/image.jpg")

# Access the probability distribution for all classes
# These scores are necessary inputs for calculating ROC and AUC
probs = results[0].probs.data
print(f"Class probabilities: {probs}")

Una volta ottenute queste probabilità per un set di dati di prova, librerie come Scikit-learn possono essere per calcolare i valori di FPR e TPR necessari per tracciare la curva.

ROC rispetto ad altre metriche di valutazione

Sebbene la curva ROC sia uno strumento potente, è utile distinguerla dai concetti di valutazione correlati:

  • Area sotto la curva (AUC): L'area della curva Area Sotto la Curva (AUC) è un valore scalare valore scalare derivato dalla curva ROC. Mentre la ROC è un grafico visivo, l'AUC quantifica le prestazioni complessive in un singolo numero compreso tra 0 e 1, facilitando il confronto tra i diversi metodi. un singolo numero compreso tra 0 e 1, facilitando il confronto tra diversi modelli di apprendimento modelli di apprendimento supervisionato.
  • Curva di precisione-richiamo: Quando si tratta di insiemi di dati altamente sbilanciati (ad esempio, una malattia rara che colpisce l'1% della popolazione), la curva ROC può talvolta presentare una visione troppo ottimistica. che colpisce l'1% della popolazione), la curva ROC può talvolta presentare una visione eccessivamente ottimistica. In questi casi, una curva di precisione-richiamo è spesso più informativa perché si concentra direttamente sulle prestazioni della classe di minoranza, senza tenere conto dei veri negativi. Negativi.
  • Matrice di confusione: A matrice di confusione fornisce un'istantanea delle prestazioni a una singola soglia specifica, mostrando il conteggio esatto dei veri positivi, dei falsi positivi, dei veri negativi e dei falsi negativi, negativi e falsi negativi. La curva ROC sintetizza in modo efficace le informazioni delle matrici di confusione generate a ogni possibile soglia.

Per le attività di rilevamento degli oggetti, metriche come precisione media (mAP) sono Anche se le curve ROC rimangono importanti per la componente di classificazione sottostante a questi modelli. La comprensione di queste distinzioni assicura che gli sviluppatori scelgano la metrica giusta per le loro specifiche sfide di computer vision (CV). sfide della computer vision (CV).

Unitevi alla comunità di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora