Klasifikasi: Kurva ROC dan AUC

Kurva ROC

Kurva ROC (kurva karakteristik operasi penerima) adalah grafik yang menunjukkan performa model klasifikasi di semua batas klasifikasi. Kurva ini memetakan dua parameter:

  • Rasio Positif Benar
  • Rasio Positif Palsu

Rasio Positif Benar (TPR) adalah sinonim untuk perolehan dan maka dari itu didefinisikan sebagai berikut:

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

Rasio Positif Palsu (RPP) didefinisikan sebagai berikut:

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

Kurva ROC memetakan TPR vs. FPR pada batas klasifikasi yang berbeda. Menurunkan batas klasifikasi akan mengklasifikasikan lebih banyak item sebagai positif, sehingga meningkatkan Positif Palsu dan Positif Benar. Gambar berikut menunjukkan kurva ROC standar.

Kurva ROC yang menampilkan Rasio TP vs Rasio FP pada batas klasifikasi yang berbeda.

Gambar 4. Rasio TP vs FP pada batas klasifikasi yang berbeda.

Untuk menghitung titik dalam kurva ROC, kita dapat mengevaluasi model regresi logistik berkali-kali dengan batas klasifikasi yang berbeda, namun ini tidak akan efisien. Untungnya, ada algoritme berbasis pengurutan yang efisien yang dapat memberikan informasi ini, yang disebut AUC.

AUC: Area di Bawah Kurva ROC

AUC adalah singkatan dari "Area di bawah ROC Curve." Artinya, AUC mengukur seluruh area dua dimensi di bawah seluruh kurva ROC (pikirkan kalkulus integral) dari (0,0) hingga (1,1).

AUC (Area di bawah Kurva ROC).

Gambar 5. AUC (Area di bawah Kurva ROC).

ABK memberikan ukuran gabungan performa terhadap semua batas klasifikasi yang mungkin. Salah satu cara untuk menafsirkan ABK adalah sebagai probabilitas bahwa model memberikan peringkat yang lebih tinggi pada contoh positif acak daripada contoh negatif acak. Misalnya, dengan contoh berikut, yang disusun dari kiri ke kanan dalam urutan prediksi regresi logistik yang meningkat:

Contoh positif dan negatif diurutkan dalam urutan naik skor regresi logistik

Gambar 6. Prediksi diurutkan berdasarkan kenaikan dari skor regresi logistik.

AUC mewakili probabilitas bahwa contoh positif acak (hijau) diposisikan di sebelah kanan contoh negatif acak (merah).

Nilai AUC berkisar dari 0 hingga 1. Model yang prediksinya 100% salah memiliki ABK 0,0; model yang prediksinya 100% benar memiliki ABK 1,0.

AUC diinginkan karena dua alasan berikut:

  • ABK adalah invariansi skala. Bagian ini mengukur seberapa baik prediksi diberi peringkat, bukan nilai absolutnya.
  • ABK adalah invarian batas klasifikasi. Metrik ini mengukur kualitas prediksi model, terlepas dari batas klasifikasi yang dipilih.

Namun, kedua alasan ini disertai peringatan, yang dapat membatasi kegunaan AUC dalam kasus penggunaan tertentu:

  • Invariansi skala tidak selalu diinginkan. Misalnya, terkadang kami sangat memerlukan output probabilitas yang dikalibrasi dengan baik, dan AUC tidak akan memberi tahu kami tentang hal tersebut.

  • Invariansi batas klasifikasi tidak selalu diinginkan. Jika ada perbedaan yang signifikan dalam biaya negatif palsu vs. positif palsu, sangat penting untuk meminimalkan satu jenis kesalahan klasifikasi. Misalnya, saat melakukan deteksi spam email, Anda mungkin ingin memprioritaskan meminimalkan positif palsu (meskipun hal tersebut menyebabkan peningkatan negatif palsu yang signifikan). AUC bukanlah metrik yang berguna untuk jenis pengoptimalan ini.