60
2016524日@統計モデリング 担当:田中冬彦 統計モデリング 第六回 配布資料 文献: a) C. P. Robert and G. Casella: Monte Carlo Statistical Methods. 2nd ed., Springer, 2004. 配布資料の一部は以下からもDLできます. 短縮URL http://tinyurl.com/lxb7kb8 b) C. P. Robert and G. Casella: Introducing Monte Carlo Methods with R. Springer, 2010. c) J. Albert: Bayesian Computation with R. 2nd ed. Springer, 2009 b,c は日本語訳 (ともに石田基広, 石田和枝訳, 丸善出版) あり

統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

2016年5月24日@統計モデリング

担当:田中冬彦

統計モデリング 第六回 配布資料

文献: a) C. P. Robert and G. Casella: Monte Carlo Statistical Methods. 2nd ed., Springer, 2004.

配布資料の一部は以下からもDLできます. 短縮URL http://tinyurl.com/lxb7kb8

b) C. P. Robert and G. Casella: Introducing Monte Carlo Methods with R. Springer, 2010.

c) J. Albert: Bayesian Computation with R. 2nd ed. Springer, 2009

b,c は日本語訳 (ともに石田基広, 石田和枝訳, 丸善出版) あり

Page 2: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

出典:東京電力HP

今後の予定

第七回 グループ発表1 -3 -2 -1 0 1 2

0.0

0.1

0.2

0.3

0.4

posterior distribution

theta

dist

ribut

ion

sample histogram

x

Freq

uenc

y

-2 -1 0 1 2

05

1015

∞→M

)()2()1( ,,, Mθθθ のヒストグラム )|( xθπ の関数形

第六回 数値技法(MCMC)

第八回 線形モデルのベイズ解析

第九回 一般化線形モデルのベイズ解析

Page 3: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

今日の内容

1.モンテカルロ法 2.マルコフ核 3.マルコフ連鎖と定常分布 4.マルコフ連鎖モンテカルロ法 ~Metropolis-Hastings Method 5.マルコフ連鎖モンテカルロ法 ~Gibbs Sampler 6.WinBUGS

Page 4: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

1. モンテカルロ法

Page 5: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

続・冬のカナタ (以下は架空のものです)

・村上冬樹さんは「泣けるシナリオ大賞」を目指して「続・冬のカナタ」というシナリオを書き上げました.

・目標としては国民の8割以上が泣くシナリオを目指しています.

・ 周囲の友人に「続・冬のカナタ」を読んでもらい, 泣いたかどうかを聞きました.

Introduction

Page 6: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

続・冬のカナタを読んで泣く人の割合(確率)を q とし設定は事前分布以

外, 前回と同じ. q の事後分布は以下のようになったという

考えてみよう

( ) ),1tanh(3| 3 qCqxq −==π

冬樹さんは q に関する以下の確率を評価したいが, どうすればいいか途方に暮れている・・・・

10 ≤≤ q

( )dqxqxq ∫ ===≥1

8.03|)3|8.0Pr( π

ここでCは積分定数.

統計の素養を身につけたあなたから冬樹さんへのアドバイス

Page 7: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

の関数形が簡単な形でない場合、以下の積分は困難 )|( xθπ

モンテカルロ法(1/2)

∫∫ ==∈ θθθπθθθπθ dxxEdxxAA

)|(]|[,)|()|Pr(

ベイズ統計の難点 (~1980年)

→ 今回紹介するモンテカルロ法、特にマルコフ連鎖モンテカルロ法の導入で、高次元の積分計算も個人PCなどでできるようになった

高次元のパラメータ θ

Page 8: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

モンテカルロサンプリング

うまいプログラムをつくると, あたかも事後分布(確率分布)から値が発生したかのように見える. このように値を抽出する方法をモンテカルロサンプリングという

)()2()1( ,,, Mθθθ

モンテカルロ法(2/2)

プログラムを実行して, のようなM個の値が出てきたとする.

-3 -2 -1 0 1 2

0.0

0.1

0.2

0.3

0.4

posterior distribution

theta

dist

ribut

ion

sample histogram

x

Freq

uenc

y

-2 -1 0 1 2

05

1015

∞→M

)()2()1( ,,, Mθθθ のヒストグラム )|( xθπ の関数形

ベイズ統計におけるモンテカルロ法

事後分布(確率分布)に関する様々な量を近似的に計算する方法.

)()2()1( ,,, Mθθθ モンテカルロサンプル を用いて

Page 9: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

∫∑ ≈=

θθθπθ d)|(11

)( xM

M

j

j

)|( xθπ≈

)}|(,),|(),|(max{ )()2()1( xxx Mθπθπθπ

のモード(最頻値)

モンテカルロサンプルを用いた計算例

モンテカルロ法は確率分布に関する量の近似計算法

→ 事後分布でなく一般の確率分布として以下では説明

∫≈1

8.0d)|( θθπ x

0.8 から1の間に入る の数

M

)( jθ

)()2()1( ,,, Mθθθ )|( xθπ のモンテカルロサンプル

(a) ∫∑ ≈=

θθπθθ d)|()()(11

)( xhhM

M

j

j

(b)

(c)

Page 10: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

モンテカルロサンプルは組み込み関数などから独立に発生

独立同一分布でのモンテカルロ法

∫∑ →=

θθθθ d)()()(11

)( fhhM

M

j

j

・1,2次元の場合は棄却法で任意の確率分布から発生できる(数値積分でもよい)

・サンプリング数 で収束するが効率の面から工夫が必要

・変数変換やImportance Sampling

∞→M

注意点

↑ 数値積分法と対比して, モンテカルロ積分法などという

∞→M

)(~,,,...

)()2()1( θθθθ fdii

M

基本的な確率分布の場合

Page 11: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

Importance Sampling 工夫が必要な例

)1,0(~ NX ]1[)20Pr( }20{ ≥=≥ XEX

Importance Sampling (重点サンプリング)

Q2. Q1 の例で正規分布の代りにコーシー分布をつかってモンテカルロ積分をすることができる. h, f, g から被積分関数を具体的に書き下せ.

次の恒等式を用いた変数変換が有効

∫∫ −+∞ − ==≥t u

t

v dueu

dvetX/1

0

2/12

2/ 22 121

21)Pr(

ππ

∑∫∫=

≈=M

jj

jj

gfh

Mg

gfhfh

1)(

)()(

)()()(1d)(

)()()(d)()(

θθθθθ

θθθθθθ

ただし, うまい変数変換を見つける必要がある

Q1. モンテカルロ積分で計算する方法を説明せよ. また, その問題点を述べよ

Page 12: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

2. マルコフ核

Page 13: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

マルコフ核

以下を満たす条件付き分布の族をマルコフ核 (Markov kernel)という.

X: 有限集合

XyXx ∈∀∈∀ ,1)|( =∑

∈XxyxK

,0)|( ≥yxKXy∈∀

マルコフ核はX上の分布をX上の分布へ写す

∑∈

=Xy

ypyxKxp )()|()(~ .)()(~ constxpxpXxXx

== ∑∑∈∈

Kpp =~)|(][ yxKKxy =← 行列表記

Page 14: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

*実在のWebサイトとは一切関係ありません。

無料ブログサイトJC2には10万人程度のブロガー(ほぼ初心者)が登録している. JC2ではブロガーをゴールド(G)、シルバー(S)、ブロンズ(B)にクラス分けすることにした. すなわち, 下記の称号を付与し, 称号に応じて様々な特典を与えることにした.

ゴールドブロガー, シルバーブロガー, ブロンズブロガー ただし, 毎週、前の週の閲覧実績や更新頻度などから以下のルールでクラス間の遷移が発生する.

例題:黄金のブロガー

ゴールド: 70%が残留;30%がシルバーに降格 シルバー: 80%が残留;10%がブロンズに降格、10%がゴールドに昇格 ブロンズ: 80%が残留:20%がシルバーに昇格

Page 15: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

注: 登録ブロガーは一定数とし, 第 n 週目の各比率を

とあらわす.(称号はG,S,B).

第一週は, 全員, S からスタート.

例題:黄金のブロガー

)()2( Bp

G S B G S B G S B

1)()1( =Sp

)(),(),( )()()( BpSpGp nnn

)()2( Gp

)()2( Sp

ゴールド 目指すズラ!

{ }BSGX ,,= 上の分布が毎週、変化していく

K K

Page 16: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

計算してみよう 1. )(),( )3()2( SpSp を求めなさい.

2.

8.0)()2( =Sp 69.0)()3( =Sp

),,(),()( BSGxxp n = から,

),,(),()1( BSGxxp n =+を計算する漸化式を書きなさい

)(1.0)(7.0)( )()()1( SpGpGp nnn +=+

)(8.0)(1.0)( )()()1( BpSpBp nnn +=+

)(2.0)(8.0)(3.0)( )()()()1( BpSpGpSp nnnn ++=+

Page 17: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

挑戦してみよう 3. (a) 2を行列Kとベクトルで書き, Kがマルコフ核になっていることを確認せよ.

qp n =+ )1((b) 今, の時は, となり全体の比率は不変であるという. このようなq を求めなさい. (線形代数の問題!)

qp n =)(

=

=

11/311/611/2

)()()(

BqSqGq

q

Page 18: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

3. マルコフ連鎖と定常分布

Page 19: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

マルコフ連鎖

初期値を としてマルコフ核から次のように乱数(確率変数)の列が得られる

(その意味で をマルコフ連鎖とよぶことも)

Xx ∈0

,,,, 21 txxxこのように生成する確率変数の列がマルコフ連鎖 (Markov Chain)

)|(~| 11 tttt xxKxx ++

XyxyxK ∈,)}|({

マルコフ連鎖が与えられた時, 以下を満たす確率分布を定常分布という

XxxpypyxKXy

∈∀=∑∈

),()()|(

XyxyxK ∈,)}|({ X上のマルコフ核

Page 20: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

例題:黄金のブロガー

JC2サイトでは先の行列Kを用いてランダムにブロガーの昇格・降格を決めていた。

事情はさておき・・・

nX

*実在のWebサイトとは一切関係ありません。

あるブロガーの n 週目の称号(クラス)

BSGyyX n ,,);Pr( == から, n+1 週目に各クラスにいる確率 の計算式は以下のようになる.

∑=

==BSGy

n yXyxK,,

)Pr()|(

∑=

++ =====BSGy

nnnn yXyXxXxX,,

11 )Pr()|Pr()Pr(

私の苦労は 何だったの?

Page 21: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

計算してみよう 1. 第一週目にシルバーからスタートしたブロガーが

第二、三週目にブロンズクラスにいる確率を求めよ.

69.0)Pr( 3 == BX10.0)Pr( 2 == BX

2. という毎週のクラスはマルコフ連鎖となっている. このマルコフ連鎖に関する定常分布を求めよ.(実はすでに求めている.)

,,,, 21 txxx

=

=

11/311/611/2

)()()(

BqSqGq

q

Page 22: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

基本的な事実 以下では定常分布が唯一存在するケースのみを考える

0x

)Pr()()( xXxp tt ==

XyxyxK ∈,)}|({ マルコフ連鎖

基本的な事実 1(厳密なStatementは文献参照)

とおくと

∞→t

定常分布 )(xp∞

したがって, 初期値 に依存しなくなる

∞→ pp t )(

Page 23: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

考えてみよう

2. マルコフ核K から, 定常分布を数値的にシミュレーションする方法としてどのようなものが考えられるだろうか。

Q1. 2つ以上定常分布が存在する例をつくれ Q2. |X| = ∞ の場合は定常分布が存在しないケースがありえる. 具体的に構成せよ

ここでは定常分布が唯一存在することを仮定するが, そのための条件に関して以下の問に答えよ

1*.

Page 24: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

基本的な事実その2

0x

XyxyxK ∈,)}|({ マルコフ連鎖

基本的な事実 2(厳密なStatementは文献参照)

定常分布 )(xp∞

特に初期値 に依存しなくなる ,,,, 21 txxx実現値 の経験分布は ∞→t で定常分布

)(xp∞ に収束.

MCMC法の核心 )(xp確率分布 を与えたとき、 その確率分布を定常分布にもつような

マルコフ連鎖 を具体的に構成 XyxyxK ∈,)}|({(定常分布が唯一存在するから, もともとの確率分布に収束してくれる)

-3 -2 -1 0 1 2

0.0

0.1

0.2

0.3

0.4

posterior distribution

theta

dist

ribut

ion

sample histogram

x

Freq

uenc

y

-2 -1 0 1 2

05

1015 ∞→t

のヒストグラム の関数形 ,,,, 21 txxx )(xp∞

Page 25: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

4. マルコフ連鎖モンテカルロ法 ~ Metropolis-Hastings Method

Page 26: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

マルコフ連鎖モンテカルロ法(MCMC法)

モンテカルロサンプル を発生させるアルゴリズム (マルコフ核は実は煩雑)

,,,, 21 txxx

理論

を満たすマルコフ核 を与え

発生させたい分布 (Target distribution)

0)(,1)(),( ≥=∑ xxxx

πππ

XxxyyxKXy

∈∀=∑∈

),()()|( ππ

XyxyxK ∈,)}|({

)|(~| 11 tttt xxKxx ++

,,,, 21 txxx を以下、順次発生

実際には(ほとんどのテキスト)

資料ではアルゴリズムとマルコフ核の両方を紹介(時間の都合でとばすかも)

Page 27: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

紹介するアルゴリズム

代表的な2つ

MH法

- MH法 (Metropolis-Hastings Method) - Gibbs Sampler (Gibbs Sampling)

- 詳細つり合い条件 (detailed balance condition) を満たすマルコフ核

Gibbs Sampler

- 定常条件を直接満たすマルコフ核(詳細つり合い条件は満たさないかも)

独立MH法, 一般MH法

二段階GS, 多段階GS

Page 28: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

詳細つり合い条件

詳細つりあい条件 (Detailed Balance Condition)

)()|()()|( yyxKxxyK ππ = yx∀∀

MCMC法の基本原理

任意の初期値 から生成するマルコフ連鎖

π について詳細つりあい条件を満たすマルコフ核を とする. )|( yxK

0x ,,,, 21 txxxの経験分布 (ヒストグラム)は, ∞→t で, に収束 π

詳細つりあい条件を満たす分布 は, 実は定常分布 π

Q.詳細つりあい条件を満たす分布が定常分布になっていることを示せ

Q.「基本的な事実その2」を用いて, 上を示しなさい.

Page 29: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

参考:詳細つり合い条件

=

5/210/310/3

)(xπ

=

2/13/204/103/24/13/13/1

)|( yxK

1.定常分布は唯一であり以下で与えられる(DBCをみたさない)

状態数が2(Kが2×2行列) の場合、DBCと定常条件は同値 状態数が3以上の場合, DBCを満たさない場合がある。

例:

2.DBCを満たす分布は存在しない

Page 30: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

2点間のMH法 (1/2) 2点間のMH法

y x

)(xπ)(yπ

)()( xy ππ >

今,

(a) 行き先候補 を の中からランダムに選ぶ

tz (=x, y) が所与の下

1+tz

propz { }yx,

2/1)()( ==== yzPxzP propprop

次の行き先 を確率的に定める.

(b) バランスを崩さないように本当に移動するか, 踏みとどまるか決める

1)(

)(≥

t

prop

zz

ππ

propt zz =+1

1)(

)(<

t

prop

zz

ππ

propt zz =+1)()(

t

prop

zz

ππ

確率 で

確率 )()(

1t

prop

zz

ππ

− で tt zz =+1

←覚え方: 転職先の給与額が高ければ迷わず移動

Page 31: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

Rでの実装例(1/2) 2点間のMH法の実装例

y x

)(xπ)(yπ

3/2)2(,3/1)1( == ππz=1,2 をMH法に基づいてランダムに動き回る シミュレーション

プログラム例

f_prior <- function(x){ if(x==1){ return(1/3) }; if(x==2){ return(2/3) }; return(0); } Nsim <- 10^3;z <- array(0, Nsim); # z= 1, 2 をうろうろする. z[1] <- 1; # initial value for(t in 1:(Nsim-1)){ z_prop <- sample(1:2, 1); if ( f_prior(z_prop)/f_prior(z[t]) >= runif(1) ){ z[t+1] <- z_prop ; }else{z[t+1] <- z[t];} }

Page 32: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

2点間MH法の実行結果をプロット

プログラム例

par(mfrow=c(2,1)); plot(1:50, z[1:50], type="b",xlab="time", main="Two-point MH algorithm"); plot(950:1000, z[950:1000], type="b",xlab="time", main="Two-point MH algorithm");

1 0 10 20 30 40 501.

01.

41.

8

Two-point MH algorithm

time

z[1:5

0]

950 960 970 980 990 1000

1.0

1.4

1.8

Two-point MH algorithm

time

z[950

:100

0]

2

3/1)1( =π

3/2)2( =π

Rでの実装例(2/2)

Page 33: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

−+

=∑

<1)()(:

)()(1

21

21

)()(,1min

21

)|(

wuu

wu

wv

wvK

ππ π

πππ

Q1.

wv ≠

{ }yxwv ,, ∈ として以下のマルコフ核に相当

wv =

∑ =v

wvK 1)|(

Q2. )()|()()|( vvwKwwvK ππ =

を示せ

(詳細つりあい条件)を示せ

先に紹介したアルゴリズムは

2点間のMH法 (2/2) マルコフ核

Q2’. 3/1)1( =π 3/2)2( =π のとき,マルコフ核を行列であらわせ.

Page 34: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

独立MH法 (1/2) 簡単のため有限集合 上の分布を考える

今,

(a) 行き先候補

Θ∈tz が所与の下 1+tz

)(~ zqz prop

次の行き先 を確率的に定める.

(b) 本当に移動するか踏みとどまるか決める

propt zz =+1確率 で

確率 で tt zz =+1

← 一般のMH法は詳細つりあい条件を満たすようにここが複雑になる

1≥ρ

1<ρ ρρ−1

)()()()(

tprop

propt

zzqzzqπ

πρ =

0)(,1)( ≥=∑Θ∈

zqzqz

q(z): 提案分布 (自由に設定)

Θ

propt zz =+1

Page 35: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

−+

=∑

<1)()()()(:

)()()()(1)()(

)()()()(,1min)(

)|(

wuquwqu

wuquwquqvq

wvqvwqvq

wvK

ππ π

πππ

Q3.

wv ≠

Θ∈wv,(簡単のため離散分布で表現)

wv =

∑Θ∈

=v

wvK 1)|(

Q4. )()|()()|( vvwKwwvK ππ =

を示せ

(詳細つりあい条件)を示せ

提案分布は現在の場所 に依存してもよい(次に紹介) Θ∈tz

独立MH法 (2/2) マルコフ核

Page 36: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

一般MH法

今,

(a) 行き先候補

Θ∈tz が所与の下 1+tz

)|(~ tprop zzqz

次の行き先 を条件付き分布で定める.

(b) 本当に移動するか踏みとどまるか決める

1≥ρ propt zz =+1

1<ρ propt zz =+1ρ確率 で

確率 ρ−1 で tt zz =+1

)()|()()|(

ttprop

proppropt

zzzqzzzq

ππ

ρ =

Q5. 独立MH法と同様にマルコフ核を書き下せ, また詳細つりあい条件を満たすことを示せ

Page 37: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

独立MH法の実装例

histogram of MCMC

X

Freq

uenc

y

0.0 0.2 0.4 0.6 0.8

050

100

200

300

histogram of rbeta

hikaku

Freq

uenc

y

0.0 0.2 0.4 0.6 0.8

050

100

200

300

ベータ分布 Be(2.7, 6.3) MCMC利用(MH法)とRの組み込み関数rbeta() の比較

プログラム例 (MCMC)

set.seed(1234); a <- 2.7; b <- 6.3; c <- 2.669; Nsim <- 5000; X <- rep(runif(1), Nsim); for (i in 2:Nsim){ Y <- runif(1); rho <- dbeta(Y, a, b)/dbeta(X[i-1], a, b) ; X[i] <- X[i-1] + (Y - X[i-1] )* (runif(1) < rho); } S <- Nsim/40; MAX_Y <- S*max(dbeta((1:10000)/10000,a,b)); hist(X, col=2, breaks=40, ylim = c(0, MAX_Y), main="histogram of MCMC"); curve(S*dbeta(x, a,b), add=T);

# Rの組み込み関数を用いる場合 hikaku <- rbeta(Nsim, a,b);

Page 38: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

理解度チェック:MCMC法

MCMC法を提案する場合、発生させたい確率分布(事後分布)について、詳細つり合い条件を満たすマルコフ核を与える必要がある

モンテカルロサンプルの定常分布への収束は一般の場合で証明できるが、早く収束するような工夫は個別に必要である

MH法のアルゴリズムをマルコフ核で書き下すと、発生させたい確率分布は、常に詳細つりあい条件を満たしている。

MCMC法でサンプル数を増やしていくと, ほとんど一定の値しか出てこなくなり, 収束していく。

独立MH法では、次の行き先を決める分布(提案分布)は現在の状態と独立である

Page 39: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

5. マルコフ連鎖モンテカルロ法 ~ Gibbs Sampler

*Gibbs Sampling ともいう

Page 40: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

Gibbs Sampler

Gibbs Sampling を紹介, 統計学者の間で認知され広まる

Geman and Geman (1984)

応用でGibbs Samplerを使った

Gelfand and Smith (1990)

周辺分布や同時分布が簡単に書けない(サンプリングが難しい)が、条件付き分布はサンプリングしやすい(正規分布など)場合に使う

基本的な使用の方針

Page 41: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

Two Stage Gibbs Sampling

サンプリングしたい確率分布 (x, yの同時分布!)

Two Stage Gibbs Sampling

1. 初期値を選ぶ

)|(~| 1|11 −−− ⋅= tXYttt xfxXY

Algorithm

2. 条件付き分布から逐次的に を生成

),( yxf二つの条件付き分布 (こちらは比較的簡単な形)

)|(),|( || yxfxyf YXXY

00 xX =

)|(~| | tYXttt yfyYX ⋅=

tt yx ,

Page 42: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

(*この例は棄却法などでも可能)

1. 補助変数 ( ) を加えた積分表示を求めて, 同時分布 を考える

νθθθ

)1()2/exp()( 2

2

+−

= Cf

3. Two Stage GS

やりかた

3=ν

η∫∞ −

+−−=

0

12

2

21exp)2/exp()( ηηηθθθ ν dDf

2. 次の二つの条件付き分布を求める

+−

+=

2

1 21exp

)1(21)|( θη

ηπηθf

+−

= − ηθηθν

θη νν

21exp

21

)(1)|(

21

2

f

Gibbs Samplingの実装例 (1/2)

確率分布 (GSで発生させたい分布)

),( ηθf

Page 43: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

Gibbs Samplingの実装例 (2/2)

確率分布 (GSで発生させたい分布)

点線は理論曲線をヒストグラムにあわせて描いたもの

νθθθ

)1()2/exp()( 2

2

+−

= Cf

プログラム例

3=ν

Nsim <- 5000; theta <- eta <- array(0, dim=c(Nsim, 1)); nu <- 3; theta[1] <- rnorm(1); eta[1] <- rgamma(1, shape=nu, rate= (1+theta[1]^2)/2); for (i in 2:Nsim){ theta[i] <- rnorm(1, mean=0, sd=1/sqrt( 1 + eta[i-1])); eta[i] <- rgamma(1, shape=nu, rate= (1+theta[i]^2)/2); }

Gibbs sim

theta

Freq

uenc

y

-3 -2 -1 0 1 2 3

020

040

060

080

010

00

Page 44: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

2次元同時事後分布を作る場合

確率分布

同時分布を求めたい場合

),(~ vNX i θ

やりかたは同じ

ni ,,2,1 =

)|,(~),( xvv θπθしかし, 次の二つの条件付き分布を使うのは(組み込み関数が使えるので)容易

),(~ 0 wN θθ),(~ baIGv

事後分布 の直接のサンプリングはめんどう (MH法)

),(~,|),,(~,| BAIGxvVNxv θξθ

2)(,2/

2θ−++=+=

xnSbBanA

∑=

−=n

jjn xxS

1

2)(wnv

vxnwnwv

vwV n

++

=+

= 0)(, θξ

Page 45: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

計算部分

確率分布 補足(計算部分)

),(~ vNX i θ ni ,,2,1 =

)|,(~),( xvv θπθ

−−

−−∝ 2

02 )(

21exp)(

/21exp),|( θθθθπ

wx

nvxv n

),(~ 0 wN θθ),(~ baIGv

),|( xv θπ

−−∝ 2)(

21exp ξθV 1

01

/)/(,1

/11

++

=+=wvnwxvn

wnvVn θξ

vban e

vwvxnS

vxv /

1

20

2

2/

12

)(exp2

)(exp1)|,( −+

−−

−+−∝

θθθθπ

+

−+−∝ ++ v

bvxnS

v an 2)(exp1 2

12/

θ

),(~,| BAIGxv θ2

)(,2/2θ−+

+=+=xnSbBanA

Page 46: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

Multi Stage Gibbs Sampling

サンプリングしたい確率分布

Multi Stage Gibbs Sampling

1. 初期値を選ぶ

),,|(~ )1()1(21

)(1

−−⋅ tp

tt xxfx

Algorithm

2. 条件付き分布から逐次的に を生成

),,,( 21 pxxxf

条件付き分布

),,,|(),,,|( 31221 pp xxxyfxxyf

)0()0(1 ,, pxx

)()(2

)(1 ,,, t

ptt xxx

),,,|(,, 121 −pp xxxyf

),,,|(~ )1()1(3

)(12

)(2

−−⋅ tp

ttt xxxfx

),,,|(~ )(1

)(2

)(1

)( tp

ttp

tp xxxfx −⋅

Page 47: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

Gibbs Samplingの収束性 証明の概略

マルコフ連鎖

Gibbs sampler で生成される は以下のマルコフ核をもつマルコフ連鎖

※GSのマルコフ核は一般に詳細つりあい条件は満たしてない

)(zf

p=3 で示す(一般の場合も同様)

,,,..., )1()()0( +tt xxx のマルコフ核Kについて

fが定常分布であることを示せば十分. (詳細は文献参照)

),|(),|(),|()|( 321131222133 yyzfyzzfzzzfyzK =

)(tx

また, )(~ yfy の時, z の分布は

∫= dyyfyzKzgz )()|()(~

ところがこれは計算すると に一致する.

したがって, f はマルコフ連鎖の定常分布

Page 48: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

計算部分 p=3 で

∫=∈ dydzyfyzKzAzP A )()|()(1)(

)()()|()( zfdyyfyzKzg == ∫

ここで,

やや一般的に以下を計算 (A は任意のz可測集合)

∫= dzdyyyyfyyzfyzzfzzzfzA ),,(),|(),|(),|()(1 321321131222133

∫∫∫ = 2323211213213211 ),(),|(),,(),|( dyyyfyyzfdydyyyyfyyzf

を示す

),(

),,(

31

2321

yzf

dyyyzf

=

= ∫

といった計算を繰り返すと

∫= 33213131222133 ),(),|(),|()(1 dydzdzdzyzfyzzfzzzfzA

∫= 33213212133 ),,(),|()(1 dydzdzdzyzzfzzzfzA

∫= 321321 ),,()(1 dzdzdzzzzfzA )(~ zfzしたがって

Page 49: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

理解度チェック:MCMC法2

高次元のパラメータに関する積分であっても、組み込み関数で簡単に独立乱数を発生できるなら、MCMC法は必要ない

Two Stage Gibbs Sampling では、同時分布f(x,y)からのサンプリングを利用して、条件付分布のモンテカルロサンプルを求める

Two Stage, Multi Stage Gibbs Sampling は, 条件付分布を利用して、逐次的にサンプリングするという点で同じである。

f(x,y)でのTwo Stage Gibbs Sampling では、十分、xのサンプルを独立に発生させた後で、条件付分布からy のサンプルを発生させる.

条件付き確率分布が簡単な形で書けない場合は、Gibbs Sampling を利用するしかない

Page 50: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

6.WinBUGS

Page 51: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

BUGS

WinBUGS = Windows上で動くバイナリー (closed source)

BUGS=Bayesian inference Using Gibbs Sampling

メジャーな確率分布を複数組み合わせて解析する場合に使う (たとえば正規分布のみでも複数組み合わせると条件付き分布の計算が面倒になってくる)

基本的な使用の方針

・統計モデル ・事前分布 ・データ ・初期値 ・固定パラメータ

MCMCサンプル 0.05155622 0.07840824 0.06736837 0.08869456 0.03744929 0.02129103 0.08448234 0.05873367 0.02704619 ....

*Open SourceのBUGSもある(OpenBUGS)

Page 52: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

Rとの連携

Rプログラムの中で呼び出して使うことができる

(管理者として実行しないとエラーになることも)

・付属のGUIが使いにくい

・MCMC出力を使った処理が自由にできない

・統計モデル ・事前分布 ・データ ・初期値 ・固定パラメータ

MCMCサンプル 0.05155622 0.07840824 0.06736837 0.08869456 0.03744929 0.02129103 0.08448234 0.05873367 0.02704619 ....

WinBUGSの欠点

Rのインターフェース利用

ExcelやMATLAB, Stata, etc. からも使える

Page 53: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

Example: Coal Mining (1/2)

ここでは変化点問題として、2つの独立なポアソンモデルからのデータ発生と みなしてモデリングする (今回はWinBUGSの使用方法の説明として採用)

> N <- 112; > D <- c(4,5,4,1,0, 4,3,4,0,6, 3,3,4,0,2, 6,3,3,5,4, 5,3,1,4,4, 1,5,5,3,4, 2,5,2,2,3, 4,2,1,3,2, 1,1,1,1,1, 3,0,0,1,0, 1,1,0,0,3, 1,0,3,2,2, 0,1,1,1,0, 1,0,1,0,0, 0,2,1,0,0, 0,1,1,0,2,2,3,1,1,2, 1,1,1,1,2, 4,2,0,0,0, 1,4,0,0,0,1,0,0,0,0, 0,1,0,0,1, 0,0); > plot(1851:1962, D, main="Example of Poisson Change Point Model", xlab="Year", ylab="Num. of Accident")

1860 1880 1900 1920 1940 1960

01

23

45

6

Example of Poisson Change Point

Year

Num

. of A

ccid

ent

データ イギリスの炭鉱での災害数 1851年~1962年 (Carlin et al., 1992)

Page 54: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

統計モデル

← BUGS コードでは, 分散の逆数を指定するので が出てくる

),10,0(~),10,0(~ 62

61 NbNb

)(~ tt PoD µ

model のBUGS言語での記述 (coalmining.txt)

model { for(year in 1:N){ D[year] ~ dpois(mu[year]) log(mu[year]) <- b[1] + step(year - changeyear) * b[2] } for(j in 1:2){ b[j] ~ dnorm(0.0, 1.0E-6) } changeyear ~ dunif(1, N) }

21 )(log btHbt τµ −+=

610−

)112,1(~ Uτ ← 変化点は本来、離散値だが、連続値として一様分布をふっている

Example: Coal Mining (2/2)

Page 55: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

R+WinBUGSの実装例 実装例: ・ bugs 関数 (codaPkg=TRUE)でWinBUGSを実行、さらに read.bugs ・ plot でトレースプロットと事後分布(を推定したもの)が表示される.

data <- list("N", "D"); parameters <- c("changeyear", "b"); inits <- function(){ list(b=c(0,0), changeyear=50) }; coalmining.sim <- bugs(data, inits, parameters, "coalmining.txt", n.chains=3, n.iter=1000, bugs.directory="c:/Program Files/WinBUGS14/", codaPkg=TRUE); coalmining.coda <- read.bugs(coalmining.sim); plot(coalmining.coda); summary(coalmining.coda);

500 600 700 800 900 1000

0.9

1.1

1.3

Iterations

Trace of b[1]

0.8 1.0 1.2 1.4

01

23

4

Density of b[1]

N = 500 Bandw idth = 0.02272

500 600 700 800 900 1000

-1.8

-1.2

-0.6

Iterations

Trace of b[2]

-1.8 -1.6 -1.4 -1.2 -1.0 -0.8 -0.6

0.0

1.0

2.0

Density of b[2]

N = 500 Bandw idth = 0.03829

500 600 700 800 900 1000

3540

45

Iterations

Trace of changeyear

35 40 45

0.00

0.10

0.20

Density of changeyear

N = 500 Bandw idth = 0.5065

500 600 700 800 900 1000

335

345

355

Iterations

Trace of deviance

335 340 345 350 355

0.00

0.10

0.20

Density of deviance

N = 500 Bandw idth = 0.5497

Page 56: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

MCMCサンプルの取り出し方法 1 (収束が確認できた後で) bugs 関数 (codaPkg=FALSE)でWinBUGSを実行 → 出力オブジェクトから取り出す

> coalmining.sim.dat <- bugs(data, inits, parameters, "coalmining.txt", n.chains=3, n.iter=1000, bugs.directory="c:/Program Files/WinBUGS14/", codaPkg=FALSE); > coalmining.sim.dat$sims.list$changeyear[1:10] [1] 40.60 40.69 40.81 41.77 37.52 37.67 40.40 38.97 38.31 36.49 > coalmining.sim.dat$sims.list$b[1:10,] [,1] [,2] [1,] 1.362 -1.4190 [2,] 1.193 -1.1050 [3,] 1.095 -1.1670 [4,] 1.049 -0.9935 [5,] 1.230 -1.3540 [6,] 1.120 -1.2310 [7,] 1.127 -1.4230 [8,] 1.184 -1.3800 [9,] 1.275 -1.3890 [10,] 1.405 -1.3830

MCMCサンプルの取り出し (1/2)

Page 57: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

MCサンプルの取り出し方法 2 codaPkg=TRUE で実行, read.bugs()でリストを生成. → リストの中身を直接、参照する.

> coalmining.coda[1:3,] [[1]] b[1] b[2] changeyear deviance [1,] 1.175 -1.134 37.20 336.6 [2,] 1.243 -1.538 41.94 339.3 [3,] 1.242 -1.481 38.11 340.2 [[2]] b[1] b[2] changeyear deviance [1,] 0.9676 -1.153 43.10 341.5 [2,] 1.0320 -1.225 40.31 335.6 [3,] 1.1270 -1.016 36.00 338.6 [[3]] b[1] b[2] changeyear deviance [1,] 1.256 -1.482 37.49 337.8 [2,] 1.300 -1.561 37.73 339.7 [3,] 1.376 -1.668 39.84 343.4

MCMCサンプルの取り出し (2/2)

Page 58: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

1.トレンドがはっきり見えると、確率分布から独立標本とほど遠いのでダメ 2.自己相関関数(時系列データとして)を計算してすそが0に近づかない場合はダメ 3.初期値を変えて数回走らせる → 時系列でプロットしたときに振る舞いが明らかに違うとダメ

トレースプロット 時系列データとして各パラメータ値をプロットしたもの

トレースプロットでのチェック

MCMCの収束診断 (1/2)

トレースプロットの例

4500 4550 4600 4650 4700 4750 4800

0.00.1

0.20.3

0.40.5

0.60.7

a= 2.7 :b= 6.3 :c= 2.669

step

x

Page 59: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

・明らかに収束してないケースをはじくことは容易 ・パラメータの次元が大きい場合すべてのパラメータの視覚的な収束診断は不可能 ・収束してないけど、さまざまな判断基準をパスする可能性もある (この条件を満たせば収束OK といえる、万能な判断基準はない!!)

MCMCの収束診断 (2/2)

注意点

理論とのギャップ

(適切なMCMCの設定の下では)MCMCサンプルの数 → ∞ で サンプルの分布は、必ず求めたい事後分布に収束 → しかし、MCMCを使う必要がある場合、収束の速さなどもうまく評価できない

Page 60: 統計モデリング 第六回 配布資料 - Osaka Universitybayes.sigmath.es.osaka-u.ac.jp/.../T/modeling/2016chap6.pdf6/11 2/11 ( ) ( ) ( ) q B q S q G q 3 . マルコフ連鎖と定常分布

・WinBUGSでの解析例 (統計モデル, BUGS のコード)が次第に増えてきている → Exampleで、解析したいケースと類似のケースを探してみる

まとめ

MCMCで分析したいとき

・(共役事前分布を用いるなどして)陽な形で事後分布がかけるモデルでやってみる ・階層ベイズにすることで、かなり柔軟な統計モデルがつくれる

・類似例が見つからない、もしくはうまくいかない場合 → 自分で統計モデルをたてるしかない → WinBUGSを経由せず(Rなどで)いちからGS, MH法などでプログラムを作るのがベストかも【今回、紹介した以外にも方法はある】

ベイズモデリングの指針