Cara menghitung AUC-ROC adalah dengan memplot TPR dan FPR sebagai ambang, diubah dan menghitung area di bawah kurva itu. Tapi, mengapa area ini di bawah kurva sama dengan probabilitas ini? Mari kita asumsikan sebagai berikut:τ
- A adalah distribusi skor yang dihasilkan model untuk titik data yang sebenarnya berada di kelas positif.
- B adalah distribusi skor yang dihasilkan model untuk titik data yang sebenarnya berada di kelas negatif (kami ingin ini berada di sebelah kiri ).A
- τ adalah ambang batas. Jika suatu titik data mendapat skor lebih besar dari ini, itu diprediksi sebagai milik kelas positif. Kalau tidak, itu diprediksi berada di kelas negatif.
Perhatikan bahwa TPR (recall) diberikan oleh: dan FPR (fallout) diberikan menjadi: .P(A>τ)P(B>τ)
Sekarang, kita plot TPR pada sumbu y dan FPR pada sumbu x, menggambar kurva untuk berbagai dan menghitung area di bawah kurva ini ( ).τAUC
Kita mendapatkan:
AUC=∫10TPR(x)dx=∫10P(A>τ(x))dx
mana adalah FPR. Sekarang, salah satu cara untuk menghitung integral ini adalah dengan menganggap sebagai bagian dari distribusi yang seragam. Dalam hal itu, itu hanya menjadi harapan .
xxTPR
AUC=Ex[P(A>τ(x))](1)
jika kita mempertimbangkan .
x∼U[0,1)
Sekarang, sini hanyaxFPR
x=FPR=P(B>τ(x))
Karena kami menganggap berasal dari distribusi yang seragam,
x
P(B>τ(x))∼U
=>P(B<τ(x))∼(1−U)∼U
=>FB(τ(x))∼U(2)
Tapi kita tahu dari invers transformasi hukum bahwa untuk setiap variabel acak , jika maka . Ini mengikuti sejak mengambil variabel acak dan menerapkan CDF sendiri untuk itu mengarah ke seragam.XFX(Y)∼UY∼X
FX(X)=P(FX(x)<X)=P(X<F−1X(X))=FXF−1X(X)=X
dan ini hanya berlaku untuk seragam.
Menggunakan fakta ini dalam persamaan (2) memberi kita:
τ(x)∼B
Mengganti ini menjadi persamaan (1) kita dapatkan:
AUC=Ex(P(A>B))=P(A>B)
Dengan kata lain, area di bawah kurva adalah probabilitas bahwa sampel positif acak akan memiliki skor lebih tinggi daripada sampel negatif acak.