Classificazione: curva ROC e AUC

Curva ROC

Una curva della ROAS (curva caratteristica operativa del ricevitore) è un grafico che mostra le prestazioni di un modello di classificazione in tutte le soglie di classificazione. Questa curva traccia due parametri:

  • Percentuale di veri positivi
  • Percentuale di falsi positivi

Tasso di positività reale (TPR) è un sinonimo di ricordo, pertanto è definito come segue:

$$TPR = \frac{TP} {TP + FN}$$

Il tasso di falsi positivi (FPR) è definito come segue:

$$FPR = \frac{FP} {FP + TN}$$

Una curva ROC traccia TPR rispetto a FPR a soglie di classificazione diverse. Abbassando la soglia di classificazione, vengono classificati più elementi positivi, aumentando così i falsi positivi e i veri positivi. La figura seguente mostra una curva ROC tipica.

Curva ROC che mostra il tasso di TP e il tasso di FP a soglie di classificazione diverse.

Figura 4. Tasso TP/FP a diverse soglie di classificazione.

Per calcolare i punti in una curva ROC, abbiamo potuto valutare molte volte un modello di regressione logistica con diverse soglie di classificazione, ma ciò sarebbe inefficiente. Fortunatamente esiste un algoritmo efficiente e basato sull'ordinamento che può fornire queste informazioni, chiamato AUC.

AUC: area sotto la curva ROC

AUC è l'acronimo di "Area under the ROC Curve". In altre parole, AUC misura l'intera area bidimensionale sotto l'intera curva ROC (pensa al calcolo integrale) da (0,0) a (1,1).

AUC (area sotto la curva ROC).

Figura 5. AUC (Area under the ROC Curve).

AUC fornisce una misurazione aggregata del rendimento in tutte le possibili soglie di classificazione. Un modo per interpretare AUC è la probabilità che il modello classifica un esempio positivo casuale in modo più elevato rispetto a un esempio negativo casuale. Ad esempio, dati i seguenti esempi, che sono disposti da sinistra a destra in ordine crescente delle previsioni di regressione logistica:

Esempi positivi e negativi classificati in ordine crescente di punteggio di regressione logistica

Figura 6. Le previsioni sono classificate in ordine crescente del punteggio di regressione logistica.

L'AUC rappresenta la probabilità che un esempio positivo casuale (verde) venga posizionato a destra di un esempio casuale negativo (rosso).

Il valore dell'AUC è compreso tra 0 e 1. Un modello le cui previsioni sono errate al 100% ha un AUC di 0,0; uno le cui previsioni sono corrette al 100% ha un AUC di 1,0.

AUC è desiderabile per i seguenti due motivi:

  • AUC è scale-invariant. Misura il ranking delle previsioni, anziché i valori assoluti.
  • L'AUC è classificazione-soglia-invariante. Misura la qualità delle previsioni del modello, indipendentemente dalla soglia di classificazione scelta.

Tuttavia, entrambi questi motivi sono accompagnati da avvertenze che potrebbero limitare l'utilità dell'AUC in alcuni casi d'uso:

  • L'varietà della scala non è sempre desiderabile. Ad esempio, a volte abbiamo davvero bisogno di output di probabilità ben calibrati e l'AUC non ce lo comunica.

  • L'varietà della soglia di classificazione non è sempre desiderabile. Nei casi in cui ci siano ampie disparità nel costo dei falsi negativi rispetto ai falsi positivi, può essere fondamentale ridurre al minimo un tipo di errore di classificazione. Ad esempio, quando effettui il rilevamento di spam via email, ti consigliamo di dare la priorità alla riduzione al minimo dei falsi positivi (anche se questo comporta un aumento significativo dei falsi negativi). AUC non è una metrica utile per questo tipo di ottimizzazione.