Saya baru-baru ini menyelesaikan kompetisi Kaggle di mana skor roc auc digunakan sesuai persyaratan kompetisi. Sebelum proyek ini, saya biasanya menggunakan skor f1 sebagai metrik untuk mengukur kinerja model. Ke depan, saya bertanya-tanya bagaimana saya harus memilih antara dua metrik ini? Kapan menggunakan yang mana, dan apa pro dan kontra masing-masing?
Btw, saya membaca artikel di sini Apa perbedaan antara AUC dan skor F1? , tetapi tidak memberi tahu saya kapan harus menggunakan yang mana.
Terima kasih sebelumnya atas bantuannya!
sumber
Rumus perhitungan :
ROC / AUC adalah kriteria yang sama dan kurva PR (Precision-Recall) (skor-F1, Precision, Recall) juga kriteria yang sama.
Data nyata akan cenderung memiliki ketidakseimbangan antara sampel positif dan negatif. Ketidakseimbangan ini memiliki efek besar pada PR tetapi tidak pada ROC / AUC.
Jadi di dunia nyata, kurva PR lebih banyak digunakan karena sampel positif dan negatif sangat tidak merata. Kurva ROC / AUC tidak mencerminkan kinerja classifier, tetapi kurva PR dapat.
Jika Anda hanya melakukan percobaan di makalah penelitian, Anda dapat menggunakan ROC, hasil eksperimen akan lebih indah. Di sisi lain, kurva PR digunakan dalam masalah nyata, dan memiliki interpretasi yang lebih baik.
sumber
Jawaban di atas sama-sama baik.
Dengan data yang tidak seimbang, AUC masih memberi Anda nilai khusus sekitar 0,8. Namun, itu tinggi karena FP besar, daripada TP besar (Benar positif).
Seperti contoh di bawah ini,
Jadi ketika Anda menggunakan AUC untuk mengukur kinerja classifier, masalahnya adalah peningkatan AUC tidak benar-benar mencerminkan classifier yang lebih baik. Ini hanyalah efek samping dari terlalu banyak contoh negatif. Anda cukup mencoba di dataset Anda.
Kemudian, saran saya untuk data yang tidak seimbang mirip dengan posting ini . Anda juga dapat mencoba tabel decile, yang dapat dikonstruksikan dengan mencari "Dua-per-Dua Klasifikasi dan Tabel Decile". Sementara itu, saya juga mempelajari masalah ini dan akan memberikan ukuran yang lebih baik.
sumber
Untuk memasukkan kata-kata yang sangat sederhana ketika Anda memiliki ketidakseimbangan data yaitu, perbedaan antara jumlah contoh yang Anda miliki untuk kelas positif dan negatif adalah besar, Anda harus selalu menggunakan skor-F1. Kalau tidak, Anda bisa menggunakan kurva ROC / AUC.
sumber
Untuk beberapa masalah klasifikasi multi-kelas, menganalisis dan memvisualisasikan ROC / AUC tidak mudah. Anda mungkin melihat pertanyaan ini, Bagaimana cara merencanakan kurva ROC dalam klasifikasi multi-kelas? . Dalam situasi seperti itu, menggunakan skor F1 bisa menjadi metrik yang lebih baik.
Dan skor F1 adalah pilihan umum untuk masalah pencarian informasi dan populer di pengaturan industri. Berikut adalah contoh yang dijelaskan dengan baik, Membangun model ML sulit. Menyebarkan mereka di lingkungan bisnis nyata lebih sulit .
sumber
Jika tujuan klasifikasi adalah penilaian berdasarkan probabilitas, lebih baik menggunakan AUC yang rata-rata di atas semua ambang batas yang mungkin. Namun, jika tujuan klasifikasi hanya perlu mengklasifikasikan antara dua kelas yang mungkin dan tidak memerlukan seberapa besar kemungkinan masing-masing kelas diprediksi oleh model, lebih tepat untuk mengandalkan skor-F menggunakan ambang batas tertentu.
sumber