Il modo per calcolare AUC-ROC è tracciare il TPR e FPR come soglia, viene modificato e calcolare l'area sotto quella curva. Ma perché quest'area sotto la curva è uguale a questa probabilità? Supponiamo che:τ
- A è la distribuzione dei punteggi prodotti dal modello per i punti dati che sono effettivamente nella classe positiva.
- B è la distribuzione dei punteggi prodotti dal modello per i punti dati che sono effettivamente nella classe negativa (vogliamo che questo sia alla sinistra di ).A
- τ è la soglia di soglia. Se un punto dati ottiene un punteggio maggiore di questo, si prevede che appartenga alla classe positiva. Altrimenti, si prevede che sia nella classe negativa.
Si noti che il TPR (richiamo) è dato da: e il FPR (fallout) è dato da: .P(A>τ)P(B>τ)
Ora, tracciamo il TPR sull'asse y e FPR sull'asse x, disegniamo la curva per vari e calcoliamo l'area sotto questa curva ( ).τAUC
Noi abbiamo:
AUC=∫10TPR(x)dx=∫10P(A>τ(x))dx
dove è l'FPR. Ora, un modo per calcolare questo integrale è considerare come appartenente a una distribuzione uniforme. In tal caso, diventa semplicemente l'aspettativa del .
xxTPR
AUC=Ex[P(A>τ(x))](1)
se consideriamo .
x∼U[0,1)
Ora, qui era solo l'xFPR
x=FPR=P(B>τ(x))
Poiché abbiamo considerato come da una distribuzione uniforme,
x
P(B>τ(x))∼U
=>P(B<τ(x))∼(1−U)∼U
=>FB(τ(x))∼U(2)
Ma sappiamo dalla antitrasformata legge che per ogni variabile casuale , se allora . Questo segue dal momento che prendere qualsiasi variabile casuale e applicare il proprio CDF ad essa porta all'uniforme.XFX(Y)∼UY∼X
FX(X)=P(FX(x)<X)=P(X<F−1X(X))=FXF−1X(X)=X
e questo vale solo per l'uniforme.
L'uso di questo fatto nell'equazione (2) ci dà:
τ(x)∼B
Sostituendo questo nell'equazione (1) otteniamo:
AUC=Ex(P(A>B))=P(A>B)
In altre parole, l'area sotto la curva è la probabilità che un campione positivo casuale abbia un punteggio più alto rispetto a un campione negativo casuale.