GLMパラメータの推論には自由度補正を使用する必要がありますか?


11

この質問は、Martijnのこちらの回答に触発されています

二項モデルやポアソンモデルのような1つのパラメーターファミリーにGLMを当てはめ、それが(たとえば、準ポアソンとは対照的に)完全な尤度手順であると仮定します。次に、分散は平均の関数です。二項式:およびポアソン。var[X]=E[X]E[1X]var[X]=E[X]

残差が正規分布している場合の線形回帰とは異なり、これらの係数の有限の正確なサンプリング分布は不明であり、結果と共変量のおそらく複雑な組み合わせです。また、GLMの平均の推定値を使用します。これは、結果の分散のプラグイン推定値として使用されます。

ただし、線形回帰と同様に、係数には漸近正規分布があるため、有限標本推論では、それらの標本分布を正規曲線で近似できます。

私の質問は、有限サンプル内の係数のサンプリング分布にT分布近似を使用することで何かを得られるかどうかです。一方で、我々は知っている、ブートストラップやジャックナイフ推定が適切にこれらの矛盾を説明することができるとき、T近似は間違った選択のように思えるので、分散をまだ我々は正確な分布を知りません。一方で、T分布のわずかな保守主義は、​​実際には単純に好まれます。


1
良い質問。あなたはバートレットの訂正を見たいかもしれません。
Ben Bolker、2017

1
MLEまたはQMLEを使用する場合、この質問は不適切であると思います。漸近的に正当化された推定と推論しかありません。仮定AまたはBが有限の設定でより優れているかどうかを尋ねることは答えられない場合、それは常に「ありふれたデータと、あなたが喜んで行う仮定に依存する」平凡に沸騰します。個人的には私はブートストラップが好きで、可能な限りそれを使用しますが、標準のzまたはtベースのテストを使用することはもはや間違っていません-小さなデータの問題を回避することはできません。 )
Repmat '29

回答:


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検定の方が優れています(ただし、t検定とz検定の両方が「間違っている」ため、z検定のエラーがこの誤差を補正している可能性があります)。

ここに画像の説明を入力してください

長い答え: ...

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.