Mengapa Ordinary Least Squares berkinerja lebih baik daripada regresi Poisson?

18

Saya mencoba menyesuaikan regresi untuk menjelaskan jumlah pembunuhan di setiap distrik di kota. Meskipun saya tahu bahwa data saya mengikuti distribusi Poisson, saya mencoba menyesuaikan OLS seperti ini:

log(y+1)=α+βX+ϵ

Kemudian, saya juga mencoba (tentu saja!) Regresi Poisson. Masalahnya adalah bahwa saya memiliki hasil yang lebih baik dalam regresi OLS: pseudo- lebih tinggi (0,71 vs 0,57) dan RMSE juga (3,8 vs 8,88. Standar untuk memiliki unit yang sama).R2

Mengapa? Apakah ini normal? Apa salahnya menggunakan OLS tidak peduli apa pun distribusi datanya?

sunting Mengikuti saran dari kjetil b halvorsen dan lainnya, saya memasangkan data melalui dua model: OLS dan Negative Binomial GLM (NB). Saya mulai dengan semua fitur yang saya miliki, lalu saya secara rekursif menghapus satu per satu fitur yang tidak signifikan. OLS adalah

crimearea=α+βX+ϵ

dengan bobot = .area

summary(w <- lm(sqrt(num/area) ~  RNR_nres_non_daily + RNR_nres_daily + hType_mix_std + area_filtr + num_community_places+ num_intersect + pop_rat_num + employed + emp_rat_pop + nden_daily + nden_non_daily+ bld_rat_area + bor_rat_area + mdist_highways+ mdist_parks, data=p, weights=area))

error2 <- p$num - (predict(w, newdata=p[,-1:-2], type="response")**2)*p$area

rmse(error2)
[1] 80.64783

NB memprediksikan jumlah kejahatan, dengan area distrik sebagai kompensasi.

summary(m3 <- glm.nb(num ~  LUM5_single  + RNR_nres + mdist_daily + mdist_non_daily+ hType_mix_std + ratio_daily_nondaily_area + area_filtr + num_community_places  + employed  + nden_daily + nden_non_daily+ bld_rat_area + bor_rat_area + mdist_smallparks + mdist_highways+ mdist_parks + offset(log(area)), data=p, maxit = 1000))

error <- p$num - predict(m3, newdata=p[,-1:-2], type="response")

rmse(error)
[1] 121.8714

Sisa OLS:

masukkan deskripsi gambar di sini

Residu NB

masukkan deskripsi gambar di sini

Jadi RMSE lebih rendah di OLS tetapi tampaknya bahwa residualnya tidak begitu normal ....

marcodena
sumber
Bisakah Anda memposting lebih detail? Apa sifat data? yaitu, apa penghitungan variabel respon? apa variabel penjelasnya?
kjetil b halvorsen
@kjetilbhalvorsen variabel dependen adalah jumlah pembunuhan per distrik (112 distrik). Yang independen adalah karakteristik struktural kota (persimpangan jalan, POI dll)
marcodena
2
Jika saya cocok dengan model ini menggunakan regresi Poisson saya akan memasukkan log (ukuran kabupaten) sebagai offset ke akun untuk kabupaten tidak semua menjadi ukuran ame. Kecuali mereka.
mdewey
1
R2pseudoR2RMSER2pseudoR2
1
R2z=log(y+1)R2y

Jawaban:

16

Saya menduga bahwa sebagian dari masalahnya mungkin terletak pada pilihan metrik kinerja Anda. Jika Anda mengukur kinerja tes menggunakan RMSE kemudian melatih model untuk meminimalkan MSE cocok dengan kriteria tes, memberikan petunjuk tentang apa yang dianggap penting. Anda mungkin menemukan bahwa jika Anda mengukur kinerja tes menggunakan log-kemungkinan negatif dari set tes menggunakan kemungkinan Poisson bahwa model Poisson bekerja lebih baik (seperti yang diharapkan). Ini mungkin masalah kecil dibandingkan dengan masalah lain yang diangkat, tetapi mungkin itu pemeriksaan kewarasan yang bermanfaat.

Dikran Marsupial
sumber
1
+1. Jika tujuan OP adalah prediksi, mungkin sebenarnya ada alasan untuk menggunakan model OLS! Meskipun demikian, inferensi berbasis kesalahan klasik yang timbul dari OLS tidak dapat / tidak boleh diterapkan dalam GLM. Seseorang dapat memeriksa residu yang telah dipersonalisasi, atau pilihan yang lebih baik adalah membandingkan model dengan AIC.
AdamO
11

Pertama, dengan data seperti itu saya harapkan penayangan berlebih (jika Anda tidak tahu apa itu, lihat /stats//search?q=what+is+overdispersion%3F ).

log(DistrictSize)Nr. homicidesDistrict Size

Masalah lain adalah transformasi yang Anda gunakan dengan regresi linier. Transformasi penstabil varian biasa yang digunakan dengan data hitungan adalah akar kuadrat, bukan logaritma.

Yi/xiYiPoisson(λxi)

EYixiλVYixixi1
xiYi/xilog(Yi/xi+1)
    EDIT

Adapun analisis tambahan Anda di posting, perhatikan bahwa rmse's tidak dapat dibandingkan secara langsung antara kedua model, karena respons yang berbeda digunakan! Untuk membuat perbandingan langsung, Anda harus mengubah nilai prediksi ke skala asli. Kemudian Anda dapat menghitung sendiri, dan lihat. Tetapi perhatikan bahwa prediksi yang diperoleh setelah backtransformation dapat menjadi bias, karena nonlinier. Jadi beberapa penyesuaian pada prediksi backtransformed bisa membuatnya lebih berguna. Dalam beberapa kasus, hal tersebut dapat dihitung secara teoritis, atau Anda hanya dapat menggunakan bootstrap.

kjetil b halvorsen
sumber
Saya memasang model seperti yang Anda sarankan, meskipun saya tidak benar-benar memahami resonansi di balik OLS tertimbang. Bagaimana menurut anda?
marcodena
6

R2R2R2R2

Cliff AB
sumber
2

Memang benar bahwa data Anda tidak terdistribusi secara normal (yang saya duga adalah mengapa Anda juga menjalankan regresi Poisson) tetapi data Anda kemungkinan juga bukan distribusi Poisson. Distribusi Poisson mengasumsikan bahwa mean dan variansnya sama, yang kemungkinan tidak demikian (seperti yang disebutkan dalam jawaban lain - Anda dapat menangkap perbedaan ini dan memasukkannya ke dalam model). Karena data Anda tidak benar-benar cocok untuk kedua model, masuk akal bahwa OLS dapat bekerja lebih baik.

Satu hal yang perlu diperhatikan adalah bahwa estimasi kuadrat terkecil yang biasa untuk non-Normalitas yang mungkin mengapa Anda mendapatkan model yang masuk akal. Teorema Gauss-Markov memberi tahu kita bahwa estimasi koefisien OLS adalah yang terbaik (dalam hal kesalahan kuadrat rata-rata) estimator tidak bias linear (BLUE) dengan asumsi berikut,

  • Kesalahan memiliki rata-rata nol
  • Pengamatan tidak berkorelasi
  • Kesalahan memiliki varians konstan

Tidak ada asumsi Normalitas di sini sehingga data Anda bisa masuk akal untuk model ini! Dengan itu, saya akan melihat ke dalam model Poisson dengan parameter over-dispersi yang dipanggang di sana dan Anda akan mendapatkan hasil yang lebih baik.

TrynnaDoStat
sumber
@TynnaDoStat terima kasih! Saya memasang dua model sekarang, satu dengan parameter dispersi. Bagaimana menurut anda?
marcodena
2
Varians = rata-rata untuk distribusi Poisson sering digunakan sebagai asumsi bermasalah untuk regresi Poisson , tetapi intinya tidak sesulit seperti yang tersirat di sini. Terlepas dari namanya, ide utama regresi Poisson adalah fungsi log link; asumsi tentang distribusi kondisional tidak begitu penting. Apa yang mungkin terjadi jika asumsi tidak semuanya bertahan adalah bahwa kesalahan standar tidak aktif kecuali jika Anda menyesuaikan, tetapi kecocokan akan sering masuk akal.
Nick Cox
2
Memang regresi Poisson masuk akal untuk respons terukur non-negatif di mana varians dan rata-rata bahkan tidak memiliki dimensi yang sama. Lihat misalnya blog.stata.com/2011/08/22/...
Nick Cox