Jaka jest różnica między regresją liniową transformowaną logitem, regresją logistyczną i logistycznym modelem mieszanym?

10

Załóżmy, że mam 10 uczniów, z których każdy próbuje rozwiązać 20 problemów matematycznych. Problemy są oceniane poprawnie lub niepoprawnie (w longdata), a wyniki każdego ucznia można podsumować za pomocą miary dokładności (w subjdata). Modele 1, 2 i 4 poniżej wydają się dawać różne wyniki, ale rozumiem, że robią to samo. Dlaczego dają różne wyniki? (Dołączyłem model 3).

library(lme4)

set.seed(1)
nsubjs=10
nprobs=20
subjdata = data.frame('subj'=rep(1:nsubjs),'iq'=rep(seq(80,120,10),nsubjs/5))
longdata = subjdata[rep(seq_len(nrow(subjdata)), each=nprobs), ]
longdata$correct = runif(nsubjs*nprobs)<pnorm(longdata$iq/50-1.4)
subjdata$acc = by(longdata$correct,longdata$subj,mean)
model1 = lm(logit(acc)~iq,subjdata)
model2 = glm(acc~iq,subjdata,family=gaussian(link='logit'))
model3 = glm(acc~iq,subjdata,family=binomial(link='logit'))
model4 = lmer(correct~iq+(1|subj),longdata,family=binomial(link='logit'))
użytkownik20061
źródło
Próbowałem też regresji beta, ale wystąpił błąd ... library(betareg) model5 = betareg(acc~scale(iq),subjdata)
user20061,
library(car)jest konieczne dla funkcji logowania.
user20061,
1
Może pomóc ci przeczytać dwie moje odpowiedzi na powiązane pytania: Różnica między modelami logit i probit (która ogólnie omawia funkcje łącza i GLiM - komentarz na końcu odnosi się w szczególności do twoich 1 i 3) oraz Różnica między uogólnionymi modelami liniowymi i uogólnione liniowe modele mieszane (które omawiają, w jaki sposób twoje 4 różni się od 1 i 3).
gung - Przywróć Monikę

Odpowiedzi:

15

Modele 1 i 2 są różne, ponieważ pierwsza przekształca odpowiedź, a druga przekształca jej oczekiwaną wartość.

W przypadku modelu 1 logit każdej odpowiedzi jest Normalnie dystrybuowany ze średnią będący funkcją liniową wektorów predykcyjnych i współczynników. zatem W przypadku modelu 2 sama odpowiedź jest zwykle dystrybuowana nazwa , a logarytm jego średniej jest funkcją liniową predyktora i wektorów współczynników zatem

logitYiN(μi,σ2)
μi=xiβ
Yi=logit1(xiβ+εi)
YiN(μi,σ2)
logitμi=xiβ
Yi=logit1(xiβ)+εi

Więc struktura wariancji będzie inna. Wyobraź sobie symulację z Modelu 2: wariancja będzie niezależna od wartości oczekiwanej; i chociaż oczekiwane wartości odpowiedzi będą pomiędzy 0 a 1, odpowiedzi nie będą wszystkie.

Uogólnione liniowe modele mieszane, takie jak model 4, znów się różnią, ponieważ zawierają losowe efekty: patrz tutaj i tutaj .

Scortchi - Przywróć Monikę
źródło
Dziękuję bardzo - to bardzo wyraźnie odróżnia model 1 i model 2. Twoje rozumowanie, że model 2 przewiduje, że niektóre wyniki dokładności (choć nie ich oczekiwane wartości) są poza [0,1], jest szczególnie pomocne (i dyskwalifikuje to dla moich celów ). Uważam, że podobną intuicję można zastosować w stosunku do modelu 1: jego zakres możliwych przewidywanych wyników dokładności mieści się w (0,1), a nie [0,1]. Przy ograniczonej liczbie pytań model powinien przewidywać niektóre wyniki dokładności na 0 lub 1, a rozkład dwumianowy może to zrobić.
user20061
2
Pamiętaj, że zwykle powinieneś dopasowywać dwumianowy GLM z linkiem logit do surowych danych (twoich longdata), a nie proporcji jak w twoim Modelu 3.
Scortchi - Przywróć Monikę
7

+1 do @Scortchi, który udzielił bardzo jasnej i zwięzłej odpowiedzi. Chcę zrobić kilka uzupełniających się uwag. Po pierwsze, dla drugiego modelu określasz, że rozkład odpowiedzi jest gaussowski (inaczej normalny). To musi być fałsz, ponieważ każda odpowiedź jest oceniana jako poprawna lub niepoprawna. Oznacza to, że każda odpowiedź jest próbą Bernoulliego. Zatem rozkład odpowiedzi jest dwumianowy. Ten pomysł znajduje również odzwierciedlenie w kodzie. Następnie prawdopodobieństwo rządzące rozkładem odpowiedzi jest zwykle rozkładane, więc łącze powinno być probit, a nie logit. Wreszcie, gdyby to była prawdziwa sytuacja, należy wziąć pod uwagę losowe efekty zarówno dla badanych, jak i pytań, ponieważ jest bardzo mało prawdopodobne, aby były identyczne. Sposób, w jaki generowałeś te dane, jedynym istotnym aspektem każdej osoby jest jej IQ, które zostały wyraźnie rozliczone. Dlatego nie ma już nic, co należałoby uwzględnić w modelu przypadkowym efektem. Odnosi się to również do pytań, ponieważ losowe odmiany trudności pytań nie są częścią procesu generowania danych w kodzie.

Nie mam zamiaru tu głupieć. Rozumiem, że twoja konfiguracja jest po prostu zaprojektowana, aby ułatwić twoje pytanie i spełniła swój cel; @Scortchi był w stanie odpowiedzieć na twoje pytania bardzo bezpośrednio, przy minimalnym zamieszaniu. Zwracam jednak na to uwagę, ponieważ oferują one dodatkowe możliwości zrozumienia sytuacji, z którą się zmagasz, i ponieważ możesz nie zdawać sobie sprawy, że Twój kod pasuje do niektórych części twojej historii, ale nie do innych.

gung - Przywróć Monikę
źródło
Dziękuję za tak dokładne przemyślenia na temat mojego kodu. Jako ktoś, kto pracuje z danymi empirycznymi, z dumą mogę powiedzieć, że nie mam specjalistycznej wiedzy w zakresie generowania fałszywych danych, co pokazuje tutaj zidentyfikowane niedociągnięcia. Chociaż mój poziom zrozumienia dla początkujących może się również ujawniać.
user20061
Dzięki Gung, ta dodatkowa informacja była przydatna i pomaga innym (przynajmniej mnie) lepiej zrozumieć całą sytuację. Opanowanie podejścia GLM jest trudne.
Christopher Poile