GLM 매개 변수에 대한 추론을 위해 자유도 보정을 사용해야합니까?


11

이 질문은 Martijn의 답변 에서 영감을 얻었습니다 .

이항 또는 포아송 모델과 같은 하나의 매개 변수 패밀리에 대해 GLM을 적합하고 그것이 완전 유사성 절차라고 가정합니다 (quasipoisson과 반대). 그런 다음 분산은 평균의 함수입니다. 이항식 : 및 Poisson var [ X ] = E [ X ] .var[X]=E[X]E[1X]var[X]=E[X]

잔차가 정규 분포를 따르는 선형 회귀와 달리,이 계수의 유한하고 정확한 샘플링 분포는 알려져 있지 않으며 결과와 공변량의 복잡한 조합 일 수 있습니다. 또한 평균 의 GLM 추정치를 사용하여 결과 분산에 대한 플러그인 추정치로 사용합니다.

그러나 선형 회귀와 마찬가지로 계수는 점근 적 정규 분포를 가지므로 유한 표본 추론에서는 정규 곡선을 사용하여 샘플링 분포를 근사화 할 수 있습니다.

내 질문은 : 유한 샘플에서 계수의 샘플링 분포에 T 분포 근사를 사용하여 아무것도 얻습니까? 한편, 우리는 알고 부트 스트랩 또는 잭나이프 추정 제대로 이러한 불일치를 설명 할 수 때 T 근사는 잘못된 선택처럼 보인다 있도록 분산을 아직 우리는 정확한 분포를 알지 못한다. 다른 한편으로, 아마도 T- 분포의 약간의 보수주의는 실제로 실제로 선호된다.


1
좋은 질문. Bartlett 보정 을보고 싶을 수도 있습니다 .
벤 볼커

1
나는 MLE 또는 QMLE을 사용할 때 무의식적으로 추정하고 추론하는 것만 으로이 질문이 잘못되었다고 생각합니다. 유한 설정에서 가정 A 또는 B가 더 나은지에 대한 질문에 대답 할 수없는 경우, 항상 "데이터에 의존하고 어떤 가정을 기꺼이 하느냐"라는 평범한 결과를 가져옵니다. 개인적으로 나는 부트 스트랩을 좋아하고 가능할 때마다 사용하지만 표준 z 또는 t 기반 테스트를 사용하는 것은 더 이상 잘못이 아닙니다. 작은 데이터 문제를 피할 수 없으므로 여전히 가정하고 있습니다 (단지 다른 것) )
Repmat

답변:


3

짧은 대답 : 아직 정답은 아니지만 링크 된 질문과 관련된 다음 분포에 관심이있을 수 있습니다. z-test (glm에서도 사용됨)와 t-test를 비교합니다.

    layout(matrix(1:2,1,byrow=TRUE))

    # trying all 100 possible outcomes if the true value is p=0.7
    px <- dbinom(0:100,100,0.7)
    p_model = rep(0,101)
    p_model2 = rep(0,101)
    for (i in 0:100) {
      xi = c(rep(1,i),rep(0,100-i))
      model = glm(xi ~ 1, offset=rep(qlogis(0.7),100), family="binomial")
      p_model[i+1] = 1-summary(model)$coefficients[4]
      model2 <- glm(xi ~ 1, family = "binomial")
      coef <- summary(model2)$coefficients
      p_model2[i+1] = 1-2*pt(-abs((qlogis(0.7)-coef[1])/coef[2]),99,ncp=0)
    }


    # plotting cumulative distribution of outcomes z-test
    outcomes <- p_model[order(p_model)]
    cdf <- cumsum(px[order(p_model)])
    plot(1-outcomes,1-cdf, 
         ylab="cumulative probability", 
         xlab= "calculated glm p-value",
         xlim=c(10^-4,1),ylim=c(10^-4,1),col=2,cex=0.5,log="xy")
    lines(c(0.00001,1),c(0.00001,1))
    for (i in 1:100) {
      lines(1-c(outcomes[i],outcomes[i+1]),1-c(cdf[i+1],cdf[i+1]),col=2)
    #  lines(1-c(outcomes[i],outcomes[i]),1-c(cdf[i],cdf[i+1]),col=2)
    }

    title("probability for rejection with z-test \n as function of set alpha level")


    # plotting cumulative distribution of outcomes t-test
    outcomes <- p_model2[order(p_model2)]
    cdf <- cumsum(px[order(p_model2)])
    plot(1-outcomes,1-cdf, 
         ylab="cumulative probability", 
         xlab= "calculated glm p-value",
         xlim=c(10^-4,1),ylim=c(10^-4,1),col=2,cex=0.5,log="xy")
    lines(c(0.00001,1),c(0.00001,1))
    for (i in 1:100) {
      lines(1-c(outcomes[i],outcomes[i+1]),1-c(cdf[i+1],cdf[i+1]),col=2)
      #  lines(1-c(outcomes[i],outcomes[i]),1-c(cdf[i],cdf[i+1]),col=2)
    }

    title("probability for rejection with t-test \n as function of set alpha level")
    [![p-test vs t-test][1]][1]

그리고 작은 차이가 있습니다. 또한 z-test가 실제로 더 낫습니다 (그러나 이것은 t-test와 z-test가 모두 "잘못된"이고 z-test의 오류가이 오류를 보상하기 때문일 수 있습니다).

여기에 이미지 설명을 입력하십시오

긴 답변 : ...

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.