Saya ingin membuat prediksi untuk hasil pemilihan parlemen. Output saya akan menjadi% yang diterima masing-masing pihak. Ada lebih dari 2 pihak sehingga regresi logistik bukan pilihan yang layak. Saya bisa membuat regresi terpisah untuk masing-masing pihak tetapi dalam hal ini hasilnya akan dalam beberapa cara independen satu sama lain. Itu tidak akan memastikan bahwa jumlah hasil akan 100%.
Apa regresi (atau metode lain) yang harus saya gunakan? Apakah mungkin untuk menggunakan metode ini dalam R atau Python melalui perpustakaan tertentu?
Jawaban:
Robert benar, regresi logistik multinomial adalah alat terbaik untuk digunakan. Meskipun Anda harus memiliki nilai integer yang mewakili partai sebagai variabel dependen, misalnya:
1 = Mayoritas konservatif, 2 = Mayoritas buruh, 3 = Mayoritas liberal .... (dan seterusnya)
Anda dapat melakukan ini di R menggunakan paket nnet. Berikut adalah tempat yang baik untuk menjalankan dengan cepat bagaimana menggunakannya.
sumber
Atas dasar apa Anda ingin mendasarkan prediksi Anda? Saya sudah mencoba untuk memprediksi hasil pemilihan multi partai untuk tesis saya berdasarkan tahun-tahun sebelumnya dan kemudian menggunakan hasil untuk beberapa TPS dari tahun ini memprediksi hasil di semua TPS lain. Untuk ini model linier yang saya gunakan membandingkan perkiraan jumlah suara yang akan diperoleh masing-masing pihak dengan melakukan regresi terhadap suara-suara dari tahun-tahun sebelumnya. Jika Anda memiliki perkiraan jumlah suara untuk semua pihak, Anda dapat menghitung persentase dari itu. Lihat Forecasts From Nonrandom Samples untuk makalah yang relevan, yang memperluas model linier.
sumber
Ini bukan regresi tetapi masalah klasifikasi multi-kelas. Keluaran biasanya probabilitas semua kelas untuk setiap contoh uji yang diberikan (baris uji). Jadi dalam kasus Anda, output untuk setiap baris uji yang diberikan dari model yang dilatih akan berupa:
di mana prob_i menunjukkan probabilitas kelas ke-i (dalam kasus Anda, pihak ke-i), dengan asumsi ada kelas k dalam variabel respons. Perhatikan bahwa jumlah probabilitas k ini akan menjadi 1. Prediksi kelas dalam kasus ini akan menjadi kelas yang memiliki probabilitas maksimum.
Ada banyak pengklasifikasi di R yang melakukan klasifikasi multi-kelas. Anda bisa menggunakan regresi logistik dengan dukungan multi-kelas melalui paket nnet di R dan menjalankan
multinom
perintah.Sebagai alternatif, Anda juga bisa menggunakan paket gbm di R dan menjalankan
gbm
perintah. Untuk membuat classifier multi-kelas, cukup gunakandistribution="multinomial" while using the
fungsi gbm`.sumber