OLS vs. Poisson GLM dengan tautan identitas

11

Pertanyaan saya mengungkapkan pemahaman saya yang buruk tentang regresi Poisson dan GLM secara umum. Berikut beberapa data palsu untuk mengilustrasikan pertanyaan saya:

### some fake data
x=c(1:14)
y=c(0,  1,  2,  3,  1,  4,  9, 18, 23, 31, 20, 25, 37, 45)

Beberapa fungsi khusus untuk mengembalikan psuedo-R2:

### functions of pseudo-R2

psuR2 <- function(null.dev, model.dev) { 1 - (model.dev / null.dev)}

predR2 <- function(actuals, predicted) { 1 - (sum((actuals - predicted)^2)) / sum((actuals - mean(actuals))^2)}

Sesuai empat model: OLS, Gaussian GLM dengan tautan identitas, Poisson GLM dengan tautan log, Poisson GLM dengan tautan identitas

#### OLS MODEL
mdl.ols=lm(y~x)
summary(mdl.ols)
pred.ols = predict(mdl.ols)

summary(mdl.ols)$r.squared
predR2(y, pred.ols)

#### GLM MODEL, family=gaussian(link="identity")
mdl.guass <- glm(y~x, family=gaussian(link="identity"), maxit=500)
summary(mdl.guass)
pred.guass = predict(mdl.guass)

psuR2(mdl.guass$null.deviance, mdl.guass$deviance)
predR2(y, pred.guass)

#### GLM MODEL, family=possion (canonical link)
mdl.poi_log <- glm(y~x, family=poisson(link="log"), maxit=500)
summary(mdl.poi_log)
pred.poi_log= exp(predict(mdl.poi_log))  #transform

psuR2(mdl.poi_log$null.deviance, mdl.poi_log$deviance)
predR2(y, pred.poi_log)

#### GLM MODEL, family=poisson((link="identity")
mdl.poi_id <- glm(y~x, family=poisson(link="identity"), start=c(0.5,0.5), maxit=500)
summary(mdl.poi_id)
pred.poi_id = predict(mdl.poi_id)

psuR2(mdl.poi_id$null.deviance, mdl.poi_id$deviance)
predR2(y, pred.poi_id)

Terakhir, buat prediksi:

#### Plot the Fit
plot(x, y) 
lines(x, pred.ols)
lines(x, pred.guass, col="green")
lines(x,pred.poi_log, col="red")
lines(x,pred.poi_id, col="blue")

Saya punya 2 pertanyaan:

  1. Tampaknya koefisien dan prediksi yang keluar dari OLS dan Gaussian GLM dengan tautan identitas persis sama. Apakah ini selalu benar?

  2. Saya sangat terkejut bahwa perkiraan dan prediksi OLS sangat berbeda dari Poisson GLM dengan tautan identitas . Saya pikir kedua metode akan mencoba memperkirakan E (Y | X). Seperti apakah fungsi likelihood ketika saya menggunakan tautan identitas untuk Poisson?

William Chiu
sumber
1
Jika Anda ingin melakukan kuadrat terkecil untuk mendekati model Poisson dengan tautan identitas, Anda juga bisa memasukkan model kuadrat terkecil, mdl.wols = lm (y ~ x, bobot = 1 / log (y + 1,00000000001)) di mana log (y + 1,00000000001) kemudian diambil sebagai taksiran varians pertama (sqrt (y + 1E-10)) juga berfungsi - perkiraan model semacam itu akan sangat dekat dengan Poisson GLM dengan tautan identitas ...
Tom Wenseleers

Jawaban:

14
  1. Ya, mereka adalah hal yang sama. MLE untuk Gaussian adalah kuadrat terkecil, jadi ketika Anda melakukan Gaussian GLM dengan tautan identitas, Anda melakukan OLS.

  2. a) " Saya pikir kedua metode akan mencoba memperkirakan E (Y | X) "

    Memang benar, tetapi cara bahwa ekspektasi bersyarat diestimasi sebagai fungsi data tidak sama. Bahkan jika kita mengabaikan distribusi (dan karenanya bagaimana data masuk kemungkinan) dan berpikir tentang GLM hanya dalam hal rata-rata dan varians (seolah-olah itu hanya regresi tertimbang), varian Poisson meningkat dengan rata-rata, jadi bobot relatif pada pengamatan akan berbeda.

    b) " Seperti apa fungsi kemungkinan ketika saya menggunakan tautan identitas untuk Poisson? "

    L(β0,β1)=ieλiλiyi/yi!

    =exp(iλi+yilog(λi)log(yi!)) manaλi=β0+β1xi

    =exp(i(β0+β1xi)+yilog(β0+β1xi)log(yi!))

Glen_b -Reinstate Monica
sumber
4
Elaborasi pada poin kedua Glen_b. Satu cerita yang saya katakan pada diri saya sendiri, yang saya temukan cukup mengklarifikasi, adalah bahwa ketika rata-rata bersyarat yang diperkirakan semakin besar dalam model poisson, model tersebut menjadi lebih toleran terhadap nilai data yang jauh dari rata-rata bersyarat. Bandingkan ini dengan model linier lurus, yang toleran secara seragam, tidak peduli apa yang diperkirakan bersyarat dari rata-rata.
Matthew Drury
@ Glen_b, dapatkah saya meminta Anda untuk mengklarifikasi apa yang Anda katakan: "maka bagaimana data memasukkan kemungkinan". Apakah Anda mengatakan bahwa kemungkinan kesesuaian model berbeda antara OLS dan POisson (tautan = identitas), saat dipasang menggunakan MLE ?. Yaitu, Jika menggunakan OLS menggunakan MLE, apakah Anda menggunakan fungsi likelihood untuk distribusi normal untuk menghitung kemungkinan fit, versus fungsi likelihood dari distribusi poisson dalam kasus terakhir?
Alex
1
@Alex Right; OLS adalah ML di Gaussian dan Gaussian kemungkinan bukan Poisson likelihood
Glen_b -Reinstate Monica