Saat ini saya sedang melihat bentuk primitif satu-vs-semua yang tidak dibatasi
dimana
adalah jumlah instance,
adalah jumlah kelas,
adalah jumlah fitur,
adalah matriks data,
adalah vektor label kelas,
adalah matriks di mana masing-masing sesuai dengan bobot untuk hyperplane yang memisahkan satu kelas dari yang lain,
adalah beberapa fungsi kerugian yang berubah-ubah.
Pemahaman saya adalah bahwa fungsional di atas mencoba untuk menemukan hyperplane untuk setiap kelas yang memaksimalkan jarak antara sampel dalam kelas terkait dengan semua sampel lainnya. Jika hyperplanes diposisikan dengan benar maka harus selalu negatif, harus selalu positif dan fungsi kerugian kita harus kembali cukup rendah.
Saya mencoba menerapkan ini dengan menggunakan engsel yang saya percaya pada kasus ini akan berakhir
).
Namun, di atas tidak bisa kita berakhir dengan situasi di mana pesawat terbang mengklasifikasikan semua sampel sebagai milik setiap kelas. Sebagai contoh, jika kita melihat hyperplane yang memisahkan kelas 1 dari semua kelas lain, asalkan maka kerugian yang terjadi akan menjadi 0 meskipun \ mathbf {x_i} diklasifikasikan sebagai kelas yang salah.
Di mana saya salah? Atau apakah tidak masalah apakah negatif atau positif asalkan berakhir dengan skor yang lebih tinggi? Saya merasa bahwa penggunaan fungsi engsel seperti yang saya jelaskan di sini tidak benar, tetapi penggunaan Google hari ini hanya menimbulkan lebih banyak kebingungan.
Pada catatan terkait, mengapa ada 1 di fungsional di atas? Saya akan berpikir bahwa itu akan berdampak kecil.
\cdot
bukan\dot
. Jika demikian, silakan lanjutkan dan lakukan pengeditan tersebut. Bersulang. :)Anda kehilangan hasil / label biner (yang dapat mengambil nilai +1 dan -1 untuk kelas yang diberikan) dalam fungsi kerugian: maks (0, 1 - y * (w * x)) (lihat detail di bawah).
Secara keseluruhan, saya pikir spesifikasi di atas (baik notasi dan fungsi kerugian) terlalu rumit satu-vs-semua - alih-alih orang hanya bisa mengambil kelas tertentu, membangun + 1 / -1 hasil y serta matriks data yang sesuai X (dengan kolom Nf dan baris Ni) dan vektor parameter w untuk kelas itu, dan tulis fungsi kehilangan engsel terkait untuk classifier biner klasik untuk kelas itu: jumlah (maks (0, 1 - y * (w * x))) di mana jumlahnya lebih dari semua instance data, x adalah deretan X yang sesuai dengan instance tertentu. Orang memang membutuhkan "1" dalam fungsi kehilangan engsel (karena y * (w * x)> = 1 sesuai dengan prediksi model yang benar sejauh menyangkut fungsi kerugian).
sumber