Vantaggi dell'AUC rispetto alla precisione standard


64

Stavo iniziando a esaminare l'area sotto la curva (AUC) e sono un po 'confuso per la sua utilità. Quando mi è stato spiegato per la prima volta, l'AUC sembrava essere una grande misura delle prestazioni, ma nella mia ricerca ho scoperto che alcuni sostengono che il suo vantaggio è per lo più marginale in quanto è meglio per catturare modelli "fortunati" con misurazioni di precisione standard elevate e AUC basso .

Quindi dovrei evitare di fare affidamento sull'AUC per la validazione dei modelli o una combinazione sarebbe la migliore? Grazie per tutto il vostro aiuto.


5
Considera un problema fortemente squilibrato. È qui che ROC AUC è molto popolare, perché la curva bilancia le dimensioni della classe. È facile ottenere una precisione del 99% su un set di dati in cui il 99% degli oggetti appartiene alla stessa classe.
Anony-Mousse,

3
"L'obiettivo implicito dell'AUC è quello di affrontare situazioni in cui si ha una distribuzione del campione molto distorta e non si desidera adattarsi a una singola classe." Ho pensato che queste situazioni erano in cui l'AUC ha funzionato male e sono stati utilizzati grafici / aree di richiamo di precisione sotto di loro.
JenSCDC,

@JenSCDC, Dalla mia esperienza in queste situazioni l'AUC si comporta bene e, come indicato di seguito, è dalla curva ROC che si ottiene quell'area. Anche il grafico PR è utile (si noti che il richiamo è lo stesso di TPR, uno degli assi in ROC) ma la precisione non è esattamente la stessa di FPR, quindi il diagramma PR è correlato a ROC ma non è lo stesso. Fonti: stats.stackexchange.com/questions/132777/… e stats.stackexchange.com/questions/7207/…
alexey

Risposte:


60

Davvero un'ottima domanda, e trovo che la maggior parte delle persone non capisca davvero a livello intuitivo. AUCè infatti spesso preferito rispetto alla precisione per la classificazione binaria per una serie di ragioni diverse. Prima però parliamo esattamente di cosa si AUCtratta. Onestamente, per essere una delle metriche di efficacia più utilizzate, è sorprendentemente ottuso capire esattamente come AUCfunziona.

AUCsta per Area Under the Curvequale curva chiedi? Bene, quella sarebbe la ROCcurva. ROCè l'acronimo di Receiver Operating Characteristic , che in realtà è leggermente non intuitivo. L'obiettivo implicito AUCè quello di affrontare situazioni in cui si ha una distribuzione del campione molto distorta e non si desidera adattarsi a una singola classe.

Un ottimo esempio è nel rilevamento dello spam. Generalmente, i set di dati spam sono fortemente distorti verso ham o non spam. Se il tuo set di dati è ham al 90%, puoi ottenere una precisione dannatamente buona semplicemente dicendo che ogni singola email è ham, che è ovviamente qualcosa che indica un classificatore non ideale. Cominciamo con un paio di metriche che sono un po 'più utili per noi, in particolare il tasso positivo reale ( TPR) e il tasso falso positivo ( FPR):

Assi ROC

Ora in questo grafico, TPRè specificamente il rapporto tra veri positivi e tutti i positivi, ed FPRè il rapporto tra falsi positivi e tutti i negativi. (Ricorda, questo è solo per la classificazione binaria.) Su un grafico come questo, dovrebbe essere abbastanza semplice capire che una previsione di tutti gli 0 o tutti gli 1 comporterà i punti di (0,0)e (1,1)rispettivamente. Se si traccia una linea attraverso queste linee si ottiene qualcosa del genere:

Un po 'come un triangolo

Che assomiglia sostanzialmente a una linea diagonale (lo è), e con una semplice geometria, puoi vedere che il AUCmodello sarebbe 0.5(l'altezza e la base sono entrambe 1). Allo stesso modo, se prevedi un assortimento casuale di 0 e 1, diciamo il 90% di 1, potresti ottenere il punto (0.9, 0.9), che ricade di nuovo lungo quella linea diagonale.

Ora arriva la parte interessante. E se non avessimo previsto solo 0 e 1? E se invece volessimo dire che, in teoria, avremmo impostato un limite, al di sopra del quale ogni risultato era un 1 e al di sotto del quale ogni risultato era uno 0. Ciò significherebbe che agli estremi si ottiene la situazione originale in cui si hanno tutti gli 0 e tutti gli 1 (rispettivamente con un taglio di 0 e 1), ma anche una serie di stati intermedi che rientrano nel 1x1grafico che contiene il tuo ROC. In pratica ottieni qualcosa del genere: Per gentile concessione di Wikipedia

Quindi, fondamentalmente, quello che stai effettivamente ottenendo quando fai AUCun'accuratezza eccessiva è qualcosa che scoraggia fortemente le persone che cercano modelli rappresentativi, ma non discriminatori, in quanto selezioneranno solo modelli che ottengono tassi di falsi positivi e veri positivi che sono significativamente al di sopra della possibilità casuale, che non è garantita per la precisione.


Potresti aggiungere come l'AUC si confronta con un punteggio di F1?
Dan

7
@ Dan- La differenza più grande è che non devi impostare una soglia di decisione con AUC (essenzialmente sta misurando la probabilità che lo spam sia classificato al di sopra del non spam). Il punteggio F1 richiede una soglia decisionale. Ovviamente, puoi sempre impostare la soglia di decisione come parametro operativo e tracciare i punteggi F1.
DSea,

17

L'AUC e la precisione sono cose abbastanza diverse. L'AUC si applica ai classificatori binari che hanno una nozione di soglia di decisione internamente. Ad esempio la regressione logistica restituisce positivo / negativo a seconda che la funzione logistica sia maggiore / minore di una soglia, generalmente 0,5 per impostazione predefinita. Quando scegli la soglia, hai un classificatore. Devi sceglierne uno.

Per una determinata scelta di soglia, è possibile calcolare l'accuratezza, che è la proporzione di veri positivi e negativi nell'intero set di dati.

L'AUC misura come il vero tasso positivo (richiamo) e il tasso falso positivo si scambiano, quindi in questo senso sta già misurando qualcos'altro. Ancora più importante, l'AUC non è una funzione di soglia. È una valutazione del classificatore poiché la soglia varia su tutti i valori possibili. È in un certo senso una metrica più ampia, che verifica la qualità del valore interno che il classificatore genera e quindi confronta con una soglia. Non sta testando la qualità di una particolare scelta di soglia.

L'AUC ha un'interpretazione diversa, e cioè che è anche la probabilità che un esempio positivo scelto casualmente sia classificato sopra un esempio negativo scelto casualmente, secondo il valore interno del classificatore per gli esempi.

L'AUC è calcolabile anche se si dispone di un algoritmo che produce solo una classifica su esempi. L'AUC non è calcolabile se in realtà hai solo un classificatore black-box e non uno con una soglia interna. Questi di solito dettano quale dei due è persino disponibile per un problema attuale.

L'AUC è, credo, una misura più completa, sebbene applicabile in un minor numero di situazioni. Non è strettamente migliore della precisione; è diverso. Dipende in parte dal fatto che ti interessi di più ai veri positivi, ai falsi negativi, ecc.

La misura F è più simile alla precisione, nel senso che è una funzione di un classificatore e la sua impostazione della soglia. Ma misura la precisione rispetto al richiamo (vero tasso positivo), che non è la stessa delle precedenti.


Pertanto, se voglio prevedere un risultato binario per una serie di osservazioni per le quali le dimensioni del gruppo sono uguali (vale a dire uno studio caso-controllo), ottengo qualcosa usando l'AUC sulla precisione? O l'uso tipico dell'AUC in tali studi è solo dovuto alla convenzione?
Joe,

L'AUC misura il grado in cui il classificatore classifica le istanze positive più alte dell'istanza negativa, mentre l'accuratezza misura i valori positivi e falsi positivi per una determinata soglia di decisione. Suppongo che dipenda da quali corrispondenze si desidera valutare. L'AUC è probabilmente una misura più completa del classificatore indipendente dalla scelta della soglia, ma qualsiasi uso effettivo del classificatore dipenderà dalla scelta di una soglia per classificarla
Sean Owen

4

Vorrei fare riferimento a come dovresti scegliere una misura della performance. Prima di allora mi riferirò alla domanda specifica di accuratezza e AUC.

Come già detto in precedenza, il set di dati sbilanciato che utilizza la maggior parte eseguita come classificatore porterà a un'elevata precisione che lo renderà una misura fuorviante. AUC aggregato oltre la soglia di confidenza, nel bene e nel male. Per sempre, ottieni un risultato ponderale per tutti i livelli di confidenza. Il cattivo è che di solito ti preoccupi solo del livello di confidenza che userai effettivamente e il resto è irrilevante.

Tuttavia, voglio sottolineare la scelta di una misura di prestazione adeguata per un modello. Dovresti confrontare un modello in base al suo obiettivo. L'obiettivo di un modello non è una questione di apprendimento automatico o statistica, è la questione del dominio aziendale e delle sue esigenze.

Se stai cercando l'oro (uno scenario in cui hai un enorme beneficio da un vero positivo, non troppo alto costo di un falso positivo), il richiamo è una buona misura.

Se stai cercando di decidere se eseguire una complessa procedura medica sulle persone (alto costo di falsi positivi, si spera un basso costo di falsi negativi), la precisione è la misura che dovresti usare.

Ci sono molte misure che puoi usare. Puoi anche combinarli in vari modi.

Tuttavia, non esiste una misura "migliore" universale. Esiste il modello migliore per le tue esigenze, quello che massimizzandolo massimizzerà il tuo vantaggio.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.