Ricerca…


Area Under the Curve of the Receiver Operating Characteristic (AUROC)

L' AUROC è una delle metriche più comunemente utilizzate per valutare le prestazioni di un classificatore. Questa sezione spiega come calcolarlo.

L'AUC (Area Under the Curve) è usata per la maggior parte del tempo per indicare AUROC, che è una cattiva pratica in quanto l'AUC è ambigua (potrebbe essere qualsiasi curva) mentre AUROC non lo è.

Panoramica - Abbreviazioni

Abbreviazione Senso
AUROC Area Under the Curve of Receiver Operating Characteristic
AUC Area sotto il Curce
ROC Caratteristica operativa del ricevitore
TP Veri positivi
TN Veri negativi
FP Falsi positivi
FN Falsi negativi
TPR True Positive Rate
FPR False Positive Rate

Interpretazione di AUROC

L'AUROC ha diverse interpretazioni equivalenti :

  • L'aspettativa che un positivo casuale estratto in modo uniforme sia classificato prima di un negativo casuale disegnato in modo uniforme.
  • La proporzione prevista di positivi è stata classificata prima di un negativo casuale uniformemente tracciato.
  • L'aspettativa vero tasso positivo se la classifica è divisa appena prima di un negativo casuale disegnato in modo uniforme.
  • La proporzione attesa di negativi si è classificata dopo un positivo casuale uniformemente tracciato.
  • Il tasso falso positivo atteso se la classifica viene divisa subito dopo un positivo casuale tracciato uniformemente.

Calcolare l'AUROC

Supponiamo di avere un classificatore probabilistico, binario come la regressione logistica.

Prima di presentare la curva ROC (= curva caratteristica operativa del ricevitore), deve essere compreso il concetto di matrice di confusione . Quando facciamo una previsione binaria, ci possono essere 4 tipi di risultati:

  • Prevediamo 0 mentre la classe è in realtà 0 : questo è chiamato True Negative , ovvero prevediamo correttamente che la classe sia negativa (0). Ad esempio, un antivirus non ha rilevato un file innocuo come un virus.
  • Prevediamo 0 mentre la classe è in realtà 1 : questo è chiamato False Negative , ovvero prevediamo erroneamente che la classe sia negativa (0). Ad esempio, un antivirus non è riuscito a rilevare un virus.
  • Prevediamo 1 mentre la classe è in realtà 0 : questo è chiamato False Positive , ovvero prevediamo erroneamente che la classe sia positiva (1). Ad esempio, un antivirus considera un file innocuo come un virus.
  • Prevediamo 1 mentre la classe è in realtà 1 : questo è chiamato True Positive , ovvero prevediamo correttamente che la classe sia positiva (1). Ad esempio, un antivirus ha rilevato correttamente un virus.

Per ottenere la matrice di confusione, esaminiamo tutte le previsioni fatte dal modello e contiamo quante volte si verificano ciascuno di questi 4 tipi di risultati:

inserisci la descrizione dell'immagine qui

In questo esempio di una matrice di confusione, tra i 50 punti dati classificati, 45 sono classificati correttamente e 5 sono classificati in modo errato.

Dal momento che per confrontare due diversi modelli è spesso più conveniente avere una singola metrica piuttosto che più, calcoliamo due parametri dalla matrice di confusione, che successivamente combineremo in uno:

  • Vero tasso positivo ( TPR ), alias. sensibilità, hit rate e recall , che è definito come formula . Intuitivamente, questa metrica corrisponde alla proporzione di punti dati positivi che sono correttamente considerati positivi, rispetto a tutti i punti dati positivi. In altre parole, più alto TPR, meno punti dati positivi ci mancheranno.
  • False positive rate ( FPR ), aka. fall-out , che è definito come un altro . Intuitivamente, questa metrica corrisponde alla proporzione di punti di dati negativi erroneamente considerati positivi rispetto a tutti i punti di dati negativi. In altre parole, il più alto FPR, più punti di dati negativi ci mancheranno.

Per combinare FPR e TPR in una singola metrica, calcoliamo prima le due precedenti metriche con molte soglie diverse (ad esempio ) per la regressione logistica, quindi tracciarli su un singolo grafico, con i valori FPR sull'asse delle ascisse e i valori TPR sull'ordinata. La curva risultante è chiamata curva ROC e la metrica che consideriamo è l'AUC di questa curva, che chiamiamo AUROC.

La figura seguente mostra graficamente AUROC:

inserisci la descrizione dell'immagine qui

In questa figura, l'area blu corrisponde all'Area sotto la curva del Receiver Operating Characteristic (AUROC). La linea tratteggiata nella diagonale presenta la curva ROC di un predittore casuale: ha un AUROC di 0,5. Il predittore casuale è comunemente usato come base per vedere se il modello è utile.

Matrice di confusione

Una matrice di confusione può essere utilizzata per valutare un classificatore, in base a una serie di dati di test per i quali sono noti i valori reali. È uno strumento semplice, che aiuta a fornire una buona panoramica visiva delle prestazioni dell'algoritmo in uso.

Una matrice di confusione è rappresentata come una tabella. In questo esempio vedremo una matrice di confusione per un classificatore binario .

Un esempio di una matrice di confusione

Sul lato sinistro, si può vedere la classe Actual (che viene etichettata come YES o NO ), mentre la parte superiore indica la classe che viene predetta e emessa (di nuovo YES o NO ).

Ciò significa che 50 istanze di test, che in realtà NON sono istanze, sono state correttamente etichettate dal classificatore come NO . Questi sono chiamati True Negatives (TN) . Al contrario, 100 istanze YES effettive, sono state correttamente etichettate dal classificatore come istanze YES . Questi sono chiamati i veri positivi (TP) .

5 istanze YES effettive, sono state indicate erroneamente dal classificatore. Questi sono chiamati i falsi negativi (FN) . Inoltre 10 istanze NO , sono state considerate istanze dal classificatore, quindi questi sono falsi positivi (FP) .

Sulla base di questi FP , TP , FN e TN , possiamo trarre ulteriori conclusioni.

  • True Positive Rate :

    • Cerca di rispondere: quando un'istanza è effettivamente , quanto spesso il classificatore prevede ?
    • Può essere calcolato come segue: TP / # istanze YES effettive = 100/105 = 0,95
  • False Positive Rate :

    • Cerca di rispondere: quando un'istanza è effettivamente NO , quanto spesso il classificatore prevede ?
    • Può essere calcolato come segue: FP / # effettivi NO istanze = 10/60 = 0,17

Curve ROC

Una curva ROC (Receiver Operating Characteristic) traccia la velocità TP rispetto alla frequenza FP come una soglia sulla sicurezza di un'istanza che è positiva. Esempio ROC

Algoritmo per la creazione di una curva ROC

  1. ordina le previsioni del test in base alla certezza che ogni istanza è positiva

  2. scorrere l'elenco ordinato da alta a bassa confidenza

    io. individuare una soglia tra istanze con classi opposte (mantenendo le istanze con lo stesso valore di confidenza sullo stesso lato della soglia)

    ii. calcolare TPR, FPR per le istanze al di sopra della soglia

    iii. uscita (FPR, TPR) coordinata



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow