Hazy Ideas

日々の勉強の気づきを書き出しています

R: 階層ベイズモデル

*個人勉強用メモです。

 

一般化線形混合モデルGLMMを、階層事前分布を使ってベイズ化する。

個体差だけでなく複数の考慮が必要なモデルを扱える、より複雑なモデルのパラメータを推定することができる。

 

GLMMのリンク関数と線形予測子をlogit(q) = ß + r とし、

rは個体差、平均0で正規分布sに従うとすると、

データが得られる確率 p(Y |ß, {r}) = Π( , y) q(1-q)

(メモだとうまく書けないが、ただの確率の方程式)

ßの事前分布を無情報として指定する。p(ß)

rの事前分布はsに基づき仮定する。p(r | s)

ばらつきsについても事前分布を無情報(連続一様分布)とする。p(s)

未知のsによって決まるrの事前分布p(r |s)を、階層事前分布と呼ぶ。

 

事後分布p(ß, s, {r} |Y)からMCMCサンプリングを行う。(コードは省略)

 

客観的(主観的ではない)事前分布とは。

rの事前分布p(r | s)を、sによって変わる階層事前分布とする。

ßはデータ全体を説明するので大域的なパラメーター。

rはデータの一部を説明するので局所的なパラメーター。

これは個々のrに適当な無情報分布を与えるのではなく、rの分布はある程度似ていると仮定した上で、r全体のばらつきを変えられるパラメータを設定する。(階層事前分布)

とりまとめてパラメータの自由度を減らすイメージ。

 

個体差ri以外にも地域差rjがある場合を考える。

logλ = ß1 + ß2X + ri + rj

rjも局所的パラメータとして階層事前分布を指定する。

 

階層ベイズによる、説明変数と応答変数を対応づける回帰は、今の統計モデルとしては、データ解析の標準的なやり方。