Untuk menghitung data yang telah saya kumpulkan, saya menggunakan regresi Poisson untuk membangun model. Saya melakukan ini menggunakan glm
fungsi di R, di mana saya menggunakan family = "poisson"
. Untuk mengevaluasi kemungkinan model (saya punya beberapa prediktor) saya menggunakan AIC. Sejauh ini bagus. Sekarang saya ingin melakukan validasi silang. Saya sudah berhasil melakukan ini menggunakan cv.glm
fungsi dari boot
paket. Dari dokumentasi dari cv.glm
saya melihat bahwa misalnya untuk data binomial Anda perlu menggunakan fungsi biaya tertentu untuk mendapatkan kesalahan prediksi yang bermakna. Namun, saya belum tahu apa fungsi biaya yang sesuai family = poisson
, dan pencarian Google yang luas tidak menghasilkan hasil yang spesifik. Pertanyaan saya adalah siapa pun memiliki cahaya untuk menjelaskan fungsi biaya yang sesuai untuk cv.glm
dalam kasus poisson glm.
sumber
cv.glmnet
dalam paketglmnet
menggunakantype.measure="deviance"
untuk keluarga Poisson.Jawaban:
Dengan asumsi tidak ada yang istimewa dalam kasus khusus Anda, saya pikir ada argumen yang baik untuk menggunakan default (Mean Square Error) atau menggunakan rata-rata kesalahan log, atau bahkan kesalahan chi-squared.
Tujuan dari fungsi biaya adalah untuk menyatakan betapa "kesal" Anda terhadap prediksi yang salah, khususnya apa yang "paling salah" paling mengganggu Anda. Ini sangat penting untuk respons biner, tetapi dapat berarti dalam situasi apa pun.
Mean Square Error (dari tanggapan)
Menggunakan MSE Anda sama-sama sensitif terhadap kesalahan dari atas dan bawah dan sama-sama sensitif untuk prediksi besar dan kecil. Ini adalah hal yang cukup standar untuk dilakukan, dan jadi saya tidak berpikir akan disukai dalam kebanyakan situasi.
Mean Square Error (dari respons log)
Karena Anda bekerja dengan data jumlah, dapat dikatakan bahwa Anda tidak simetris atau ukuran acuh tak acuh. Keluar dengan 10 hitungan untuk prediksi 10 sangat berbeda dari prediksi 1000. Ini adalah fungsi biaya yang agak "kanonik", karena Anda telah mencocokkan biaya hingga fungsi tautan. Ini memastikan bahwa biaya sesuai dengan distribusi varian yang diasumsikan dalam model.
Kesalahan Chi-Squared
Cara ketiga adalah dengan menggunakan kesalahan chi-squared. Ini bisa sangat menarik jika Anda membandingkan GLM Anda dengan model berbasis hitungan lainnya - terutama jika ada faktor-faktor dalam GLM Anda. Mirip dengan respons log kesalahan, ini akan skala dengan ukuran, tetapi simetris di sekitar jumlah yang diprediksi. Anda sekarang mengevaluasi goodness of fit berdasarkan persentase kesalahan.
Tentang Diskrititas
Pertanyaan tersebut mengutip contoh dokumentasi di mana mereka memiliki variabel respon biner, jadi gunakan fungsi biaya yang berbeda. Masalah untuk respons biner adalah bahwa GLM akan meramalkan bilangan real antara 0 dan 1, meskipun responsnya selalu tepat 0 atau 1. Sangatlah valid untuk mengatakan bahwa semakin dekat angka itu dengan respons yang benar semakin baik ramalan, tetapi seringkali orang tidak menginginkan ini. Alasannya adalah bahwa seseorang harus sering bertindak seolah-olah itu adalah 0 atau 1, dan dengan demikian akan mengambil kurang dari 0,5 sebagai perkiraan untuk 0. Dalam hal itu, masuk akal hanya untuk menghitung jumlah perkiraan "salah". Argumen di sini adalah bahwa untuk pertanyaan Benar / Salah Anda hanya bisa benar atau salah - tidak ada gradasi kesalahan.
sumber