Saya berurusan dengan masalah deteksi penipuan (seperti penilaian kredit). Dengan demikian ada hubungan yang sangat tidak seimbang antara pengamatan yang curang dan yang tidak curang.
http://blog.revolutionanalytics.com/2016/03/com_class_eval_metrics_r.html memberikan gambaran yang bagus tentang berbagai metrik klasifikasi. Precision and Recall
atau kappa
keduanya tampaknya menjadi pilihan yang baik:
Salah satu cara untuk membenarkan hasil pengklasifikasi tersebut adalah dengan membandingkannya dengan pengklasifikasi awal dan menunjukkan bahwa mereka memang lebih baik daripada prediksi peluang acak.
Sejauh yang saya mengerti, kappa
bisa menjadi pilihan yang sedikit lebih baik di sini, karena kesempatan acak diperhitungkan. Dari Cohen kappa dalam bahasa Inggris, saya mengerti bahwa kappa
berkaitan dengan konsep perolehan informasi:
[...] Akurasi Teramati sebesar 80% jauh lebih mengesankan dengan Akurasi yang Diharapkan 75% versus Akurasi yang Diharapkan 50% [...]
Karena itu, pertanyaan saya adalah:
- Apakah benar menganggap
kappa
sebagai metrik klasifikasi yang lebih cocok untuk masalah ini? - Apakah hanya menggunakan
kappa
mencegah efek negatif dari ketidakseimbangan pada algoritma klasifikasi? Apakah belajar ulang (turun / naik) berbasis sampel atau berbasis biaya (lihat http://www.icmc.usp.br/~mcmonard/public/laptec2002.pdf ) masih diperlukan?
sumber
Jawaban:
Ya, asumsi Anda tentang Kappa sepertinya benar. Kappa sebagai metrik skalar tunggal, sebagian besar dan lebih unggul daripada metrik skalar tunggal seperti akurasi, yang tidak akan mencerminkan kinerja prediksi kelas yang lebih kecil (dibayangi oleh kinerja kelas yang jauh lebih besar). Kappa memecahkan masalah ini dengan lebih elegan, seperti yang Anda tunjukkan.
Menggunakan metrik seperti Kappa untuk mengukur kinerja Anda tidak serta merta meningkatkan kesesuaian model Anda dengan data. Anda bisa mengukur kinerja model apa pun menggunakan sejumlah metrik, tetapi bagaimana model tersebut cocok dengan data ditentukan menggunakan parameter lain (misalnya, hiperparameter). Jadi, Anda dapat menggunakan mis. Kappa untuk memilih jenis model yang paling cocok dan hiperparametriasi di antara banyak pilihan untuk masalah Anda yang sangat tidak seimbang - tetapi hanya menghitung Kappa sendiri tidak akan mengubah bagaimana model Anda cocok dengan data yang tidak seimbang Anda.
Untuk metrik yang berbeda: selain Kappa dan ketepatan / daya ingat, lihat juga tingkat TPR / TNR negatif positif dan negatif sejati, dan kurva ROC dan area di bawah kurva AUC. Manakah dari mereka yang berguna untuk masalah Anda sebagian besar akan tergantung pada detail tujuan Anda. Sebagai contoh, berbagai informasi yang tercermin dalam TPR / TNR dan presisi / penarikan: adalah tujuan Anda untuk memiliki sejumlah besar penipuan yang benar-benar terdeteksi, dan sebagian besar transaksi yang sah dideteksi seperti itu, dan / atau meminimalkan bagian tersebut alarm palsu (yang secara alami Anda akan "en massa" dengan masalah seperti itu) di semua alarm?
Untuk ups / downsampling: Saya pikir tidak ada jawaban kanonik untuk "jika itu diperlukan". Mereka lebih merupakan satu cara mengadaptasi masalah Anda. Secara teknis: ya, Anda bisa menggunakannya, tetapi gunakan dengan hati-hati, terutama upampling (Anda mungkin akhirnya menciptakan sampel yang tidak realistis tanpa menyadarinya) - dan sadarilah bahwa mengubah frekuensi sampel kedua kelas menjadi sesuatu yang tidak realistis "di alam liar "Mungkin memiliki efek negatif pada kinerja prediksi juga. Setidaknya set terakhir, tes bertahan harus mencerminkan frekuensi kehidupan nyata sampel lagi. Intinya: Saya telah melihat kedua kasus di mana melakukan dan tidak melakukan up- / atau downsampling menghasilkan hasil akhir yang lebih baik, jadi ini adalah sesuatu yang mungkin perlu Anda coba (tapi jangan memanipulasi set tes Anda!) .
sumber
Catatan: Untuk kumpulan data yang tidak seimbang, sebaiknya metrik Anda dirata-rata secara makro .
sumber
Untuk kumpulan data yang tidak seimbang, metrik Precision Average kadang-kadang merupakan alternatif yang lebih baik untuk AUROC. Skor AP adalah area di bawah kurva presisi-recall.
Inilah diskusi dengan beberapa kode (Python)
Ini sebuah kertas .
Juga lihat kurva Precision-Recall-Gain Peter Flach , bersama dengan diskusi tentang kekurangan kurva AP.
sumber