« [香椎・千早]桜 | トップページ | [その他]桜の葉も・・・ »

2008.04.11

[統計][R]Rによる混合効果ロジスティック回帰(その4)

 (その3)では、「glmmML()のAICの計算に使われている対数尤度は、residual devianceを計算する基準となっているモデルの対数尤度を0として出したものらしい」という内容のことを書いた。では、この「residual devianceを計算する基準となっているモデル」とはどんなものということになるが、普通に考えると一番ありそうなのは、飽和モデル、つまり、ここでは、各”容器”に異なる生存確率というパラメーターをそれぞれ割り当てた場合である。

 (その2)の数値例では、こんな風になる

ID alive dead x1 パラメーター
1 2 8 1 0.2
2 5 5 2 0.5
3 6 4 3 0.6
4 9 1 4 0.9
5 3 7 3 0.3

このときの対数尤度は、二項係数の部分を入れないと、-28.025(ちなみにいれると-6.25)となる。

 glmmML()が返してきた推定結果、つまり回帰係数、切片、ランダム効果の項の標準偏差を使って、実際に数値的に積分してみると、対数尤度は、二項係数の部分を入れないで、-30.585であった。上の飽和モデルとの差は2.56で、2倍すると5.12と、glmmML()でのResidual devianceの値と同じである。どうやら、このような飽和モデルの対数尤度を0として、glmmML()ではAICを計算しているらしい。
 AICは相対的な大小が問題になり、1つだけであれこれ言うことはまずないから、基準をここにとるのに何の問題もないが、別のところに基準をとっている結果を返してくる関数などと比べるときには注意が必要である。基準を合わせてやらないといけないわけである。
 もっともランダム効果の項がない(ただの)ロジスティック回帰と比べるなら、glm()でランダム効果の項がない場合を計算して(これは普通はそうするかもしれないが)対数尤度計算の基準を合わせてもいいが、(その2)で述べたようにglmmML()に同じ基準を使ったときのdevianceを変えさせたほうが簡単だろう。cluster.null.devianceを使えばいいわけである。この例では、devianceで(対数尤度だとその半分になる)0.014ほどしか変わらない。パラメーターが1つ(ランダム効果の項の標準偏差)ちがうから、ランダム効果の項がない(ただの)ロジスティック回帰のモデルのAICは、glmmML()で言えば、9.135となる。

 ここまでで(その1)に書いた疑問「glmmML()のAICの値は小さすぎないか(対数尤度の値は大きすぎないか)」
は一応解け、glm()などの返す結果と比較可能にはなったと思う。[この疑問とそれ以降調べたことは、何か変だと漠然と感じていたところをEast_Scrofaさんの日記に触発されたものです]さて、まだ余談はある。

|

« [香椎・千早]桜 | トップページ | [その他]桜の葉も・・・ »

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: [統計][R]Rによる混合効果ロジスティック回帰(その4):

« [香椎・千早]桜 | トップページ | [その他]桜の葉も・・・ »