Diberikan
- dataset dengan instance bersama dengan kelas mana setiap instance persis milik satu kelasx i y i
- classifier multiclass
Setelah pelatihan dan pengujian saya pada dasarnya memiliki tabel dengan benar kelas dan diprediksi kelas untuk setiap instance dalam tes set. Jadi untuk setiap contoh saya memiliki kecocokan ( ) atau miss ( ).x i y i = a i y i ≠ a i
Bagaimana saya bisa mengevaluasi kualitas pertandingan? Masalahnya adalah bahwa beberapa kelas dapat memiliki banyak anggota, yaitu banyak instance miliknya. Jelas jika 50% dari semua poin data milik satu kelas dan klasifikasi akhir saya adalah 50% benar secara keseluruhan, saya tidak mendapatkan apa-apa. Saya bisa saja membuat classifier sepele yang menghasilkan kelas terbesar tidak peduli apa inputnya.
Apakah ada metode standar untuk memperkirakan kualitas classifier berdasarkan pengujian set hasil pertandingan dan hit yang diketahui untuk setiap kelas? Mungkin bahkan penting untuk membedakan tarif yang cocok untuk setiap kelas tertentu?
Pendekatan paling sederhana yang dapat saya pikirkan adalah dengan mengecualikan pasangan yang benar dari kelas terbesar. Apa lagi?
Jawaban:
Seperti klasifikasi biner, Anda dapat menggunakan tingkat kesalahan empiris untuk memperkirakan kualitas classifier Anda. Biarkan menjadi classifier, dan x i dan y i menjadi contoh dalam basis data Anda dan kelasnya. e r r ( g ) = 1g xi yi
Seperti yang Anda katakan, ketika kelas tidak seimbang, garis dasar tidak 50% tetapi proporsi kelas yang lebih besar. Anda bisa menambahkan bobot pada setiap kelas untuk menyeimbangkan kesalahan. BiarkanWymenjadi bobot kelasy. Atur bobot sedemikian rupa sehingga1
Seperti yang dikatakan Steffen, matriks kebingungan bisa menjadi cara yang baik untuk memperkirakan kualitas classifier. Dalam kasus biner, Anda dapat memperoleh beberapa ukuran dari matriks ini seperti sensitivitas dan spesifisitas, memperkirakan kemampuan classifier untuk mendeteksi kelas tertentu. Sumber kesalahan pengklasifikasi mungkin dengan cara tertentu. Misalnya classifier bisa menjadi terlalu percaya diri ketika memprediksi 1, tetapi tidak pernah mengatakan salah ketika memprediksi 0. Banyak pengklasifikasi dapat ditentukan untuk mengendalikan tingkat ini (false positive vs false negative), dan Anda kemudian tertarik pada kualitas dari seluruh keluarga classifier, bukan hanya satu. Dari sini Anda dapat memplot kurva ROC , dan mengukur area di bawah kurva ROC memberi Anda kualitas pengklasifikasi tersebut.
Kurva ROC dapat diperpanjang untuk masalah multikelas Anda. Saya sarankan Anda untuk membaca jawaban utas ini .
sumber
Untuk mengevaluasi sistem klasifikasi teks multi-arah, saya menggunakan F1 mikro-dan makro-rata-rata (ukuran-F). Ukuran-F pada dasarnya adalah kombinasi dari presisi dan mengingatnya. Untuk klasifikasi biner, pendekatan mikro dan makro adalah sama, tetapi, untuk kasus multi-arah, saya pikir mereka dapat membantu Anda. Anda dapat menganggap Mikro F1 sebagai kombinasi presisi dan daya ingat berbobot yang memberikan bobot sama untuk setiap dokumen, sedangkan Makro F1 memberikan bobot yang sama untuk setiap kelas. Untuk masing-masing, persamaan ukuran-F adalah sama, tetapi Anda menghitung presisi dan mengingat berbeda:
sumber
sumber