Bagaimana mungkin Poisson GLM menerima angka yang bukan bilangan bulat?

17

Saya benar-benar terpana oleh kenyataan bahwa GLM Poisson menerima angka-angka non-integer! Lihat:

Data (isi data.txt):

1   2001    0.25  1
1   2002    0.5   1
1   2003    1     1
2   2001    0.25  1
2   2002    0.5   1
2   2003    1     1

R script:

t        <- read.table("data.txt")
names(t) <- c('site', 'year', 'count', 'weight')
tm       <- glm(count ~ 0 + as.factor(site) + as.factor(year), data = t, 
                family = "quasipoisson")  # also works with family="poisson"
years    <- 2001:2003
plot(years, exp(c(0, tail(coef(tm), length(years)-1))), type = "l")

Indeks tahun yang dihasilkan adalah sebagai "diharapkan", yaitu 1-2-4dalam tahun 2001-2003.

Tetapi bagaimana mungkin Poisson GLM mengambil angka yang bukan bilangan bulat? Distribusi Poisson selalu hanya bilangan bulat!

Ingin tahu
sumber
2
Bisakah Anda mengklarifikasi apa yang sebenarnya ingin Anda ketahui? Bagaimana algoritma pemasangan berhubungan dengan non-integer? Atau mengapa R tidak memeriksa apakah responsnya bilangan bulat? Atau apakah ada yang salah dalam hasil ketika non-integer disediakan?
Momo
@Momo, ya, semua pertanyaan ini menarik!
Penasaran
2
Harap edit pertanyaan Anda untuk mencerminkan hal itu. Anda akan cenderung mendapatkan jawaban yang baik dengan cara ini.
Momo
8
Bukannya ini benar-benar penting, karena memang benar untuk itu family="poisson"juga, tetapi perhatikan bahwa contoh Anda bukan Poisson GLM, karena Anda menggunakan quasipoissonkeluarga, yang hanya bergantung pada hubungan antara mean dan varians, jadi dalam hal itu kasus, seharusnya tidak ada kejutan tentang mengambil nomor non-integer.
Aaron - Reinstate Monica
1
Berikut adalah beberapa referensi mengapa ini masuk akal.
Dimitriy V. Masterov

Jawaban:

17

Tentu saja Anda benar bahwa distribusi Poisson secara teknis hanya ditentukan untuk bilangan bulat. Namun, pemodelan statistik adalah seni pendekatan yang baik (" semua model salah "), dan ada kalanya masuk akal untuk memperlakukan data non-integer seolah-olah [kira-kira] Poisson.

Misalnya, jika Anda mengirim dua pengamat untuk mencatat data penghitungan yang sama, mungkin terjadi bahwa dua pengamat tidak selalu menyetujui penghitungan tersebut - orang mungkin mengatakan bahwa sesuatu terjadi 3 kali sementara yang lain mengatakan itu terjadi 4 kali. Sangat menyenangkan kemudian memiliki opsi untuk menggunakan 3.5 ketika menyesuaikan koefisien Poisson Anda, daripada harus memilih antara 3 dan 4.

Secara komputasional, faktorial dalam Poisson dapat membuatnya tampak sulit untuk bekerja dengan non-bilangan bulat, tetapi generalisasi berkelanjutan faktorial ada. Selain itu, melakukan estimasi kemungkinan maksimum untuk Poisson bahkan tidak melibatkan fungsi faktorial, setelah Anda menyederhanakan ekspresi .

zkurtz
sumber
15

Untuk respons , jika Anda menganggap logaritma ekspektasinya adalah kombinasi linear dari prediktor x E Y i = exp β T x i & variansnya sama dengan ekspektasinya Var Y i = E Y i maka estimasi konsisten untuk regresi koefisien β dapat diperoleh dengan menyelesaikan persamaan skor untuk model Poisson: yx

EYi=expβTxi
VarYi=EYi
β
inxi(yiexpβTxi)=0
Tentu saja konsistensi tidak menyiratkan validitas dari setiap tes atau interval kepercayaan; kemungkinan belum ditentukan.

Ini mengikuti dari pendekatan metode momen yang kita pelajari di sekolah, & mengarah pada persamaan estimasi umum .

@ Aaron menunjukkan Anda benar-benar menggunakan quasi-Poisson fit dalam kode Anda. Itu berarti varians sebanding dengan rata-rata

VarYi=ϕEYi

ϕ

Scortchi - Reinstate Monica
sumber