Beberapa kemungkinan muncul di benak saya.
Melihat hit rate keseluruhan biasanya bukan ide yang sangat baik karena akan tergantung pada komposisi set tes jika kinerja untuk kelas yang berbeda berbeda. Jadi paling tidak, Anda harus menentukan (dan membenarkan) frekuensi relatif dari kelas-kelas dalam data pengujian Anda untuk mendapatkan nilai yang bermakna.
Kedua, seperti yang dikatakan @Shorack, tentukan jenis kesalahan mana yang paling penting. Seringkali, pengklasifikasi perlu memenuhi kriteria kinerja tertentu agar berguna (dan akurasi keseluruhan jarang menjadi ukuran yang memadai). Ada langkah-langkah seperti sensitivitas, spesifisitas, nilai prakiraan positif dan negatif yang memperhitungkan kelas yang berbeda dan berbagai jenis kesalahan klasifikasi. Anda dapat mengatakan bahwa tindakan ini menjawab berbagai pertanyaan tentang pengklasifikasi:
- sensitivitas: Apa fraksi kasus yang benar-benar milik kelas C yang diakui?
- spesifisitas: Fraksi apa yang benar - benar bukan milik kelas C diakui?
- nilai prediksi positif: Mengingat classifier memprediksi kelas C, berapa probabilitas bahwa prediksi ini benar?
- nilai prediktif negatif: Mengingat classifier memperkirakan bahwa case bukan bentuk kelas C, berapa probabilitas bahwa prediksi ini benar?
Pertanyaan-pertanyaan ini sering memungkinkan untuk merumuskan spesifikasi yang diperlukan oleh pengklasifikasi agar bermanfaat.
Nilai-nilai prediktif seringkali lebih penting dari sudut pandang penerapan praktis pengklasifikasi: mereka dikondisikan pada prediksi, yang merupakan situasi Anda saat menerapkan pengklasifikasi (pasien biasanya tidak tertarik mengetahui seberapa besar kemungkinannya). Tes ini untuk mengenali kasus yang sakit, tetapi lebih tepatnya seberapa besar diagnosis yang dinyatakan benar). Namun, untuk menghitungnya dengan benar, Anda perlu mengetahui frekuensi relatif dari berbagai kelas dalam populasi yang digunakan untuk pengklasifikasi (sepertinya Anda memiliki informasi ini - jadi tidak ada yang menghalangi Anda untuk melihatnya).
Anda juga dapat melihat perolehan informasi yang diberikan prediksi positif atau negatif. Ini diukur dengan rasio kemungkinan positif dan negatif, LR⁺ dan LR⁻. Secara singkat, mereka memberi tahu Anda seberapa besar prediksi mengubah peluang terhadap kelas yang dimaksud. (lihat jawaban saya di sini untuk penjelasan lebih rinci)
Untuk classifier sepele Anda, hal-hal terlihat seperti ini: Saya akan menggunakan kelas "0" sebagai kelas yang dimaksud, jadi "positif" berarti kelas "0". Dari 100 kasus, 100 diperkirakan positif (termasuk kelas 0). 97 dari mereka benar-benar melakukannya, 3 tidak. Sensitivitas untuk kelas 0 adalah 100% (semua 97 kasus yang benar-benar milik kelas 0 diakui), spesifisitasnya adalah 0 (tidak ada kasus lain yang dikenali). nilai prediktif positif (dengan asumsi frekuensi relatif 97: 3 mewakili) adalah 97%, nilai prediktif negatif tidak dapat dihitung karena tidak ada prediksi negatif yang terjadi.
LR-=1-sensitivitasL R+= sensitivitas1 - spesifisitas= 1
L R-= 1 - sensitivitaskekhususan= 00
Sekarang LR⁺ dan LR⁻ adalah faktor-faktor yang dengannya Anda mengalikan peluang untuk kasus tersebut menjadi kelas positif ("0"). Memiliki LR⁺ of 1 berarti bahwa prediksi positif tidak memberi Anda informasi apa pun: itu tidak akan mengubah peluang. Jadi di sini Anda memiliki ukuran yang dengan jelas mengungkapkan fakta bahwa classifier sepele Anda tidak menambahkan informasi apa pun .
Arah pemikiran yang sangat berbeda: Anda menyebutkan bahwa Anda ingin mengevaluasi berbagai pengklasifikasi. Kedengarannya seperti perbandingan atau seleksi klasifikasi. Peringatan dengan langkah-langkah yang saya diskusikan di atas adalah bahwa mereka tunduk pada ketidakpastian acak yang sangat tinggi (artinya Anda perlu banyak kasus uji) jika Anda mengevaluasi mereka pada label kelas "keras". Jika prediksi Anda sebagian besar berkelanjutan (metrik, mis. Probabilitas posterior), Anda dapat menggunakan tindakan terkait yang melihat jenis pertanyaan yang sama tetapi tidak menggunakan pecahan kasus, tetapi tindakan terus menerus, lihat di sini . Ini juga akan lebih cocok untuk mendeteksi perbedaan kecil dalam prediksi.
(@FrankHarrell akan memberi tahu Anda bahwa Anda memerlukan "aturan penilaian yang tepat", sehingga itu adalah istilah pencarian lain yang perlu diingat.)
Saya senang bahwa @cbeleites membuka pintu ... Probabilitas konkordansi atau -index, yang kebetulan menyamai area ROC dalam kasus khusus biner , adalah ringkasan yang bagus dari diskriminasi prediksi. Kurva ROC sendiri memiliki rasio tinta: informasi yang tinggi, tetapi area di bawah kurva, karena sama dengan probabilitas konkordansi, memiliki banyak fitur yang bagus, salah satunya adalah bahwa ia tidak tergantung pada prevalensi karena kondisi pada . Ini tidak cukup tepat (gunakan ukuran umum atau rasio kemungkinan untuk mencapai itu) dan tidak cukup sensitif untuk digunakan untuk membandingkan dua model, ini adalah ringkasan yang bagus dari model tunggal.Y Y = 1 Y R 2 χ 2c Y Y= 1 Y R2 χ2
sumber
Receiver Operating Characteristic (ROC) http://en.wikipedia.org/wiki/Receiver_operating_characteristic curve dan perhitungan yang terkait (yaitu Area Under Curve-AUC) biasa digunakan. pada dasarnya Anda membayangkan classifier Anda memberikan respons berkelanjutan (misalnya antara 0 dan 1) dan Anda merencanakan sensitivitas vs tingkat alarm palsu (1- spesifisitas) karena ambang keputusan bervariasi antara 0 dan 1. Ini dirancang khusus untuk peristiwa langka (melihat musuh pesawat?).
sumber
Saat Anda berurusan dengan data yang sangat tidak seimbang, kurva Precision-Recall adalah alat yang sangat bagus, lebih baik daripada sepupunya yang lebih umum di kurva ROC .
Davis et. Al. telah menunjukkan bahwa suatu algoritma yang mengoptimalkan area di bawah kurva ROC tidak dijamin untuk mengoptimalkan area di bawah kurva PR.
sumber