Beli Project AI +

Halo Ryan Blog

ROC-AUC: Pengertian, Fungsi, dan Cara Menggunakannya

Tim Halo Ryan, 23 Sep 2024

Dalam pembelajaran mesin (machine learning), penting bagi kita untuk mengukur seberapa baik model mampu membuat prediksi yang benar, terutama ketika berurusan dengan klasifikasi biner (dua kelas). Salah satu metode evaluasi yang sering digunakan adalah ROC-AUC. Artikel ini akan menjelaskan apa itu ROC-AUC, bagaimana cara menghitungnya, serta mengapa ini sangat penting dalam evaluasi model.

Apa itu ROC?

ROC (Receiver Operating Characteristic) adalah grafik yang digunakan untuk mengevaluasi kinerja model klasifikasi biner. Grafik ini menggambarkan kemampuan model dalam membedakan antara kelas positif dan negatif pada berbagai threshold (ambang batas) probabilitas.

ROC membuat diagram plot dari dua metric, yaitu:

  1. True Positive Rate (TPR): Juga dikenal sebagai Recall, TPR menunjukkan berapa banyak data positif yang benar-benar diprediksi sebagai positif. Rumusnya adalah:
  2. False Positive Rate (FPR): FPR menunjukkan seberapa sering model salah memprediksi kelas negatif sebagai positif. Rumusnya adalah:
Note: TP, TN, FP, FN Berasal dari confusion matrix. Pelajari disini

Grafik ROC memplot TPR di sumbu Y dan FPR di sumbu X pada berbagai ambang batas prediksi. Kira-kira contoh dari Plot ROC (ROC Curve) adalah seperti ini:

Note:
Grafik diatas adalah grafik ROC pada model prediksi kematian akibat serangan jantung dengan menggunakan algoritma naive bayes. Kalian juga bisa mempelajarinya secara lengkap beserta 10 proyek machine learning dengan harga promo disini

Apa Itu AUC

AUC adalah singkatan dari Area Under the Curve, yang berarti "luas di bawah kurva". Dalam konteks ROC, AUC adalah angka yang menunjukkan seberapa baik model bisa membedakan antara kelas positif dan negatif. Atau secara grafik, AUC menyatakan persentase luasan area dibawah kurva ROC.

AUC biasanya diukur dalam persen atau desimal dengan memberikan angka antara 0 dan 1, dengan interpretasi sebagai berikut:

  • AUC = 1: Model sempurna, selalu membedakan antara kelas positif dan negatif dengan benar.
  • AUC >= 0,8: Model bekerja dengan sangat baik meski terdapat beberapa kesalahan kecil.
  • AUC >= 0,5: Model bekerja dengan cukup baik meski terdapat beberapa kesalahan.
  • AUC = 0.5: Model tidak lebih baik dari tebak-tebakan acak.
  • AUC < 0.5: Model buruk, memprediksi kelas dengan sangat salah.

Semakin dekat nilai AUC ke 1, semakin baik model dalam membedakan antara kelas positif dan negatif.

Ketika melakukan ploting ROC-AUC curve dengan SK-Learn, biasanya kita sudah langsung mendapatkan nilai AUC. Seperti pada contoh gambar plot ROC diatas, nilai AUC yang didapatkan adalah 0,8 (80%). Artinya model kita sudah bekerja dengan sangat baik meskipun masih terdapat beberapa kesalahan kecil.

Mengapa ROC-AUC Penting?

ROC-AUC adalah metrik penting karena memberikan pandangan yang lebih komprehensif tentang performa model dibandingkan dengan hanya menggunakan akurasi, terutama jika dataset tidak seimbang (jumlah data positif dan negatif tidak seimbang). Dalam situasi seperti ini, model mungkin menunjukkan akurasi tinggi hanya karena memprediksi kelas mayoritas, tetapi ROC-AUC memberikan gambaran yang lebih baik tentang kinerja prediksi kedua kelas.

Kelebihan ROC-AUC

  1. Mengatasi Masalah Data Tidak Seimbang: ROC-AUC tidak bergantung pada distribusi kelas yang tidak seimbang, sehingga lebih adil daripada metrik seperti akurasi.
  2. Memberikan Gambaran Lengkap: ROC-AUC mengevaluasi performa model pada berbagai ambang batas, sehingga memberikan pandangan yang lebih menyeluruh dibandingkan dengan satu nilai akurasi.
  3. Generalisasi yang Baik: AUC adalah metrik yang bisa diaplikasikan pada berbagai jenis model klasifikasi.

Kesimpulan

ROC-AUC adalah salah satu metrik terbaik untuk mengevaluasi model klasifikasi biner. Kurva ROC menunjukkan kemampuan model dalam membedakan kelas positif dan negatif, sementara AUC memberi kita skor yang mewakili performa model secara keseluruhan. Ini adalah alat yang sangat berguna, terutama ketika kita berurusan dengan dataset yang tidak seimbang atau ketika kita ingin mengetahui kinerja model secara lebih detail di berbagai threshold.

Dengan menggunakan Scikit-learn, menghitung dan memvisualisasikan ROC-AUC menjadi mudah, sehingga Anda dapat memanfaatkan metrik ini untuk meningkatkan dan memahami kinerja model klasifikasi Anda dengan lebih baik.

Baca Juga:

001

K-Fold Cross Validation: Teknik Validasi untuk Model...

Artikel Machine Learning

K-Fold Cross Validation (Tabulasi Silang) adalah teknik validasi yang digunakan untuk menguji performa model dengan membagi dataset menjadi beberapa subset atau bagian, yang disebut folds. Teknik ini dirancang...

Selengkapnya arrow_forward

002

Equal Error Rate (EER): Pengertian dan Penggunaannya

Artikel Machine Learning

Equal Error Rate atau EER adalah metrik evaluasi yang digunakan terutama dalam sistem pengenalan atau autentikasi biometrik, seperti pengenalan wajah, sidik jari, atau suara. EER menunjukkan tingkat kesalahan...

Selengkapnya arrow_forward

003

Apa Itu Akurasi, Precision, Recall & F1-Score,...

Artikel Machine Learning

Karena akurasi, precision, recall dan f1-score sangat erat kaitannya dengan confusion matrix, maka saya akan sangat menganjurkan kamu untuk memahami terlebih dahulu apa itu confusion matrix pada artikel...

Selengkapnya arrow_forward

Baca Artikel Lainnya +