로짓 변환 선형 회귀, 로지스틱 회귀 및 로지스틱 혼합 모형의 차이점은 무엇입니까?


10

각각 20 개의 수학 문제를 해결하려고 시도하는 10 명의 학생이 있다고 가정합니다. 문제는 정확하거나 부정확 한 점수를 매 깁니다 (longdata). 각 학생의 성과는 정확도 측정 값 (subjdata)으로 요약 할 수 있습니다. 아래 모델 1, 2 및 4는 다른 결과를 생성하는 것으로 보이지만 동일한 결과를 얻는 것으로 알고 있습니다. 왜 다른 결과를 내고 있습니까? (참고로 모델 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'))

나는 또한 베타 회귀를 시도했지만 오류가 발생했습니다 ... library(betareg) model5 = betareg(acc~scale(iq),subjdata)
user20061

library(car)로짓 기능에 필요합니다.
user20061

1
관련 질문에 대한 두 가지 대답을 읽는 데 도움이 될 수 있습니다. 로짓과 프로 빗 모델의 차이점 (일반적으로 링크 기능과 GLiM에 대해 설명합니다-마지막에는 1과 3을 언급합니다) 및 일반 선형 모델의 차이점 & 일반화 선형 혼합 모형 (4와 1과 3의 차이점에 대해 설명)
gung-복직 모니카

답변:


15

첫 번째는 응답을 변환하고 두 번째는 예상 값을 변환하므로 모델 1과 2는 다릅니다.

모델 1의 경우 각 응답의로 으로 분포 된 입니다. 예측 변수 및 계수 벡터의 선형 함수입니다. & 모델 2의 경우 응답 자체는 일반적으로 와 그 평균의로 짓은 예측 변수와 계수 벡터의 선형 함수 & 따라서

로짓와이나는(μ나는,σ2)
μ나는=엑스나는'β
와이나는=로짓1(엑스나는'β+ε나는)
와이나는(μ나는,σ2)
로짓μ나는=엑스나는β
와이나는=로짓1(엑스나는'β)+ε나는

따라서 분산 구조가 달라집니다. 모델 2에서 시뮬레이션을 상상해보십시오. 분산은 예상 값과 무관합니다. & 응답의 예상 값이 0과 1 사이이지만 응답이 모두 같지는 않습니다.

모델 4와 같은 일반화 선형 혼합 모델은 임의의 효과가 포함되어 있기 때문에 다시 다릅니다 . 여기여기를 참조 하십시오 .


대단히 감사합니다. 이것은 모델 1과 모델 2를 매우 명확하게 구별합니다. 모델 2가 정확도 점수 (예상 값은 아니지만)가 [0,1] 밖에있을 것으로 예상한다는 추론은 특히 도움이됩니다 (그리고 내 목적으로 실격합니다) ). 모델 1에 대해서도 유사한 직관을 사용할 수 있다고 생각합니다. 가능한 예측 정확도 점수의 범위는 [0,1]이 아닌 (0,1)에 속합니다. 제한된 수의 질문으로 모델은 일부 정확도 점수가 0 또는 1로 예측해야하며 이항 분포가 그렇게 할 수 있습니다.
user20061

2
일반적으로 longdata모델 3과 같은 비율이 아닌 원시 데이터에 대한 로짓 링크가있는 이항 GLM을 적합해야합니다.
Scortchi-복원 모니카

7

@Scortchi에게 +1하여 매우 명확하고 간결한 답변을 제공했습니다. 보완적인 몇 가지 요점을 만들고 싶습니다. 먼저, 두 번째 모형의 경우 반응 분포가 가우스 (일명 정상)임을 지정합니다. 각 답변은 정답 또는 오답으로 표시되므로 거짓이어야합니다. 즉, 각 답변은 Bernoulli 재판입니다. 따라서 반응 분포는 이항입니다. 이 아이디어는 코드에도 정확하게 반영됩니다. 다음으로 응답 분포를 결정하는 확률은 정규 분포이므로 링크는 로짓이 아닌 프로 빗이어야합니다. 마지막으로, 이것이 실제 상황이라면, 주제와 질문 모두에 대한 무작위 효과가 극도로 같지 않기 때문에 설명해야합니다. 이러한 데이터를 생성 한 방식은 각 개인의 유일한 측면 인 IQ입니다. 명시 적으로 설명했습니다. 따라서 모델의 임의 효과로 설명 할 필요가 없습니다. 질문 난이도의 무작위 변형이 코드에서 데이터 생성 프로세스의 일부가 아니기 때문에 이는 질문에도 적용됩니다.

나는 여기서 nitpicking을 의미하지 않습니다. 귀하의 설정이 귀하의 질문을 용이하게하기 위해 설계된 것임을 알고 있습니다. @Scortchi는 최소한의 소란으로 귀하의 질문을 매우 직접적으로 해결할 수있었습니다. 그러나 나는 이것들이 당신이 처한 상황을 이해할 수있는 추가 기회를 제공하고 코드가 줄거리의 일부와 일치하지만 다른 코드와 일치하지 않는다는 것을 깨닫지 못했기 때문에 지적합니다.


내 코드에 대한 신중한 생각에 감사드립니다. 경험적 데이터를 다루는 누군가로서, 나는 가짜 데이터 생성에 대한 전문 지식이 없다고 말하고 자랑스럽게 생각합니다. 그럼에도 불구하고 저의 초보자 수준의 이해도 드러날 수 있습니다.
user20061

고마워요, 추가 정보가 유용했고 다른 사람들 (적어도 저)이 전체 상황을 조금 더 잘 이해하도록 도와줍니다. GLM 접근 방식을 다루기가 어렵습니다.
Christopher Poile 2016 년
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.