ギブス・サンプラー

Bayesian Biostatistics by E Lesaffre & AB Lawson, Chapter 6 学習ノート
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
2週間ばかし、別件にトラップされたので、また一からギブス・サンプリングをチェックする。

6.2 ギブス・サンプラー

6.2.1 2変量ギブス・サンプラー

例V.I血清アルカリフォスファターゼ研究:ギブス・サンプリングによる事後分布ー無情報事前分布ー
250名の健常人の血清アルカリフォスファターゼの測定にもとづく正規尤度の事後分布からサンプリングを行う。

ふたつの条件付き分布p(μ|σ^2,y)とp(σ^2|μ,y)を設定する。

N((μ|y_bar, σ^2/n)
pp(σ^2|μ,y)は、Inv-χ^2(σ^2|n,s_μ^2)分布である。ただしs_μ^2 = 1/nΣ(yi-μ)^2

ギブス・サンプラー
1.N((μ|y_bar, (σ^2)k/n)からμ(k+1)をサンプリングする。
2. Inv-χ^2(σ^2|n,s_μ(k+1)^2)から(σ^2)(k+1)をサンプリングする。

サンプリングの初期値をμ=6.5、σ^2=2としてスタート:

次にθ1=μと、θ2=σ^2の1500サンプリング要素を収める配列、その倍の要素を持ったplot.1、plot.2配列を生成する。

set.seed()は乱数種を指定する関数で、常に同じ乱数を発生させられる。

カウンタichainとiplotに初期値1を挿入。初期値(6.5, 2)をtheta.1とtheta.2、plot.1とplot.2に挿入する。

500回分繰り返してみると、

burn-inとして捨て去る500回分のデータは、

最終的な1000回のパラメータの分布は、

ギブス・サンプリングは、
http://d.hatena.ne.jp/hoxo_m/20140911/p1
で以下のようにじょうずに?明されている。
y の値を固定した条件付き分布から x の次候補をサンプリングする
x の値を固定した条件付き分布から y の次候補をサンプリングする
ということを交互に行うシンプルな手法。

「やはりこのアルゴリズムも、次の状態が前の状態によって決まる(マルコフ連鎖)、確率を使ったアルゴリズム(モンテカルロ法)であることが分かる。ギブス・サンプラーは、メトロポリス法を一般化した「メトロポリス・ヘイスティングス法」の一種で、必ず r = 1 となるため、得られた候補を棄却しなくて済む。これは非常に強力な手法なのだが、アルゴリズムの性質上、条件付き分布からのサンプリングが容易にできる場合にしか適用できない。運の良いことに、階層ベイズモデルではこれが容易にできるので、ベイズ統計ではよく使われている。」

今回の例も、μとσ^2が未知の正規分布に従うデータで、無情報事前分布に正規尤度で、μは正規分布で、σを固定した場合、tn-1(μ,s^2/n)の分布、σ^2はスケール化逆カイ二乗分布に従うというように、事後分布が解析的に解っている場合、事後分布の要約(今回の例のように、正規分布の場合は、平均値と分散の分布)を求めるのに有効な手法となると言うことで理解。

例VI.2: 離散分布 x 連続分布からのサンプリング
離散分布の代表であるベータ二項分布BB(n, α, β)の例だと、n回のトライアルで確率yでもって成功する事象がx回起こる確率分布
f(x,y) ∝ (n x)* y^(x+α-1) * (1-y)^(n-x+β-1)

これをf(x|y)とf(y|x) と順番にyとxを固定して、ギブスサンプリングする。

f(x,y) ∝ (n x) * y^x * (1-y)^(n-x) * y^(α-1) * y^(β-1)

とすれば、f(x|y)を得るには、xに依存しないy^(α-1) * y^(β-1)を取り除き、Bin(n,y) = y^x * (1-y)^(n-x)、同様にf(y|x)はBeta(x+α, n-x+β)。

従って、(k+1)回目のギブス・サンプリングの反復手順は、
1. Bin(n, y^k)からx(k+1)をサンプリングする
2. Beta(x^(k+1)+α, n-x^'(k+1) + β)からy^(k+1)をサンプリングする。

ちなみに、300回繰り返したら、

例VI.3 血清アルカリフォスファターゼ研究:ギブス・サンプリングによる事後分布ー準共役事前分布
今度は、情報のある事前分布をパラメータに与える場合。

μの事前分布として正規分布N(μ0,σ0)、σ^2の事前分布としてInv-χ^2(v0, τ^2)

μとσ^2の事後分布は、、2つの独立した事前分布と尤度の積

p(μ, σ^2|y) α 正規分布 * 尤度の積Π =複雑な式

事前分布が条件付き共益分布ー>積は準共役分布:なんのことか、もう忘れている!