Saya mencoba membangun model prediksi dengan SVM pada data yang cukup tidak seimbang. Label / output saya memiliki tiga kelas, positif, netral dan negatif. Saya akan mengatakan contoh positif membuat sekitar 10 - 20% dari data saya, netral sekitar 50 - 60%, dan negatif sekitar 30 - 40%. Saya mencoba menyeimbangkan kelas karena biaya yang terkait dengan prediksi yang salah di antara kelas tidak sama. Salah satu metode adalah resampling data pelatihan dan menghasilkan dataset yang seimbang, yang lebih besar dari aslinya. Menariknya, ketika saya melakukan itu, saya cenderung mendapatkan prediksi yang lebih baik untuk kelas lain (misalnya ketika saya menyeimbangkan data, saya meningkatkan jumlah contoh untuk kelas positif, tetapi di luar dari sampel prediksi, kelas negatif melakukan lebih baik). Adakah yang bisa menjelaskan mengapa ini terjadi secara umum? Jika saya menambah jumlah contoh untuk kelas negatif, apakah saya akan mendapatkan sesuatu yang serupa dengan kelas positif di luar prediksi sampel (misalnya, prediksi yang lebih baik)?
Juga sangat terbuka untuk pemikiran lain tentang bagaimana saya dapat mengatasi data yang tidak seimbang baik dengan mengenakan biaya yang berbeda pada kesalahan klasifikasi atau menggunakan bobot kelas di LibSVM (tidak yakin bagaimana memilih / menyetel yang benar meskipun).