Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)

34,542 views

Published on

2014.06.08
「ベイズ推定による多変量解析入門」@広島大学
ベイズ推定とマルコフ連鎖モンテカルロ法について解説しています。
当日動かしたギブスサンプリングのアニメーションは,
以下のサイトで紹介されたコードを参考にしています。
http://qiita.com/yagays/items/5bde6addf228b1fe24e6

Published in: Data & Analytics
  • Be the first to comment

マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)

  1. 1. マルコフ連鎖モンテカルロ法 Markov Chain Monte Carlo methods 2014.06.08 ベイズ推定による多変量解析入門 @広島大学総合科学研究科 広島大学大学院 総合科学研究科 竹林由武
  2. 2. 所 属 広島大学大学院研究員 日本学術振興会特別研究員 (PD) 専 門 臨床心理学 趣 味 猫ときどき統計勉強 自己紹介
  3. 3. http://blue.zero.jp/yokumura/workshop.html https://sites.google.com/site/studygroup13csrm/activity 執筆担当 第10章 カテゴリカルデータのパス解析 第14章 潜在混合分布モデル RやMplusを用いた データ解析の 勉強会の主催 臨床疫学研究における 報告の質向上のための 諸活動に参加 http://www.amazon.co.jp/M- plus%E3%81%A8R%E3%81 %AB%E3%82%88%E3%82%8 B%E6%A7%8B%E9%80%A0 %E6%96%B9%E7%A8%8B% E5%BC%8F%E3%83%A2%E3 %83%87%E3%83%AA%E3% 83%B3%E3%82%B0%E5%85 %A5%E9%96%80- %E5%B0%8F%E6%9D%89- %E8%80%83%E5%8F%B8/dp /4762828254
  4. 4. http://www.lancaster.ac.uk/pg/jamest/Group/stats3.htmlから拝借 ベイズ推定って 良く知らない言葉が多いし難しそう,複雑そう…..
  5. 5. 従来の推定法 得られたデータを もっともらしく表現する パラメータ(回帰係数) を探そう 例えば重回帰モデル データ (Y)=切片+回帰係数 ×データ (X)+誤差 データ 推定値 回帰係数は .75だ!! 知りたいパラメータ
  6. 6. ① パラメータの(事後)分布を推定する ② 推定に事前の情報を取り込む データ 従来の推定法 パラメータ の推定値 ベイズ推定法 事前の情報 研究者の理論 (主観) 先行研究の知見など 従来の推定法とベイズ推定の違い ベイズの定理 パラメータ の分布 ここが わかれば OK!!
  7. 7. パラメータが確率的に分布する 相関係数は0.5だ !! 相関係数が.50の確率が一番高い。 .25や.75は.50より確率が低い。 0や1である確率はほぼない。 確 率 ( 密 度 ) パラメータの値 (θ) 0 0.5 1 確 率 ( 密 度 ) パラメータの値 (θ) 固定されたパラメータ値 (1つの値を取る) 10 0.5 従来の推定 (最尤推定)法 ベイズ推定 ① パラメータの分布を推定する
  8. 8. パラメータが確率的に分布する 確 率 ( 密 度 ) パラメータの値 (θ) 確 率 ( 密 度 ) パラメータの値 (θ) 固定されたパラメータ値 (1つの値を取る) 1 0 0.5 10 0.5 ① パラメータの分布を推定する 相関係数は0.5だ !! 相関係数が.50の確率が一番高い。 .25や.75は.50より確率が低い。 0や1である確率はほぼない。 従来の推定 (最尤推定)法 ベイズ推定 ベイズ主義頻度主義
  9. 9. 頻度主義の考え方 標本平均の平均→母数の推定値 母集団 (母平均) 標本 A 標本 B 標本 C 標本 D サンプルを繰り返していけば,誤差がなくなって 真の値 (母数)がぴったり推定できる 母平均は「観察によらず」一定 (真の値の存在) 確 率( 密 度 ) パラ メ ータ の値  (θ) 固定さ れたパラ メ ータ 値 (1つの値を取る) 10 0.5
  10. 10. ベイズ主義の考え方 標本の標本分布→母数の推定値 母集団 (母平均) 標本 A 標本 B 標本 C 標本 D リサンプルが作り出す分布は, 真の値に近づいていくに違いない 観察によって当然変わりうる 確率的に分布する パラ メ ータ が確率的に分布する 確 率 (密 度 ) パラ メ ータ の値  (θ) 0 0.5 1
  11. 11. 頻度主義 vs ベイズ主義 95%信頼区間 何度もサンプルを繰り返せば, 95%の確率で,真の値が この範囲に入る 95%信用区間 (仮に真の値を仮定するなら) 95%の確率で母平均が, この範囲に入る 母数は一定で, 観測が確率に変動する ベイズ主義信用区間 頻度主義的信頼区間 確 率 ( 密 度 ) パラ メ ータ の値  (θ) 0 0.5 1 95%信頼区間
  12. 12. ベイズの定理おさらい P (A|B) P (A)P (B|A) = × P (B) A B P(A|B): 条件付き確率 事象Bのもとで,事象Bが起こる確率 P(B|A): 条件付き確率 事象Aのもとで,事象Bが起こる確率 P (A) or P (B): 周辺確率 事象Aのみ,事象Bのみが起こる確率 U A U B P(A|B)
  13. 13. A → θ B → D ベイズの定理を統計学に応用する P (θ|D) P (θ)P (D|θ) = P (D) P (A|B) P (A)P (B|A) = × P (B) 事象Aを母数・パラメータ (θ), 事象Bを得られたデータ (D) に置き換える × ※ 離散変数の場合
  14. 14. ※ 離散変数の場合 ベイズの定理を統計学に応用する P (θ|D) P (θ)P (D|θ) = P (D) × データが得られた時に,母数がθである確率 母数がθである時に,データが得られる確 率 データによらず母数が発生する確率 P (θ|D) P (θ) P (D|θ)
  15. 15. ※ 離散変数の場合 ベイズの定理を統計学に応用する P (θ|D) P (θ)P (D|θ) = P (D) × 事後確率 尤度 事前確率 P (θ|D) P (θ) P (D|θ)
  16. 16. ※ 離散変数の場合 ベイズの定理を統計学に応用する 事後確率 事前確率尤度 = データが得られる確率 × 事後確率 尤度 事前確率 P (θ|D) P (θ) P (D|θ)
  17. 17. ベイズの定理を統計学に応用する 事後分布 事前分布尤度 = データが得られる確率 × 尤度 事前分布 π (θ|D) π (θ) f (D|θ) ※ 連続変数の場合 事後分布
  18. 18. ベイズの定理を統計学に応用する 事後分布 posterior 事前分布 prior 尤度 likelihood f (D|θ) π (θ) π(θ|D) 事後分布は尤度と事前分布の積に比例する ∝ × ∝ ※分母のデータが得られる確率は,母数を含まないため比例定数になっている
  19. 19. 従来の推定法 得られたデータ (D)を もっともらしく表現する パラメータ(θ) を探そう データ 推定値 = f ( D | θ) 尤度 母数が θである時に, データが得られる確率 従来の推定法 尤度を最大化するパラメータを探す
  20. 20. 事後分布 posterior 事前分布 prior 尤度 likelihood f (D|θ) π (θ) π(θ|D) 事後分布は尤度と事前分布の積に比例する ∝ × ベイズの定理を統計学に応用する ∝ データ事前の情報 パラメータ の分布
  21. 21. ② 推定に事前情報を取り込む データ取得前に,事後分布の性質に関して想定されうる情報 事後分布の性質を, 想定可能な知見がある ・先行研究の知見 ・歴史的コンセンサス ・専門家へのインタビュー 事後分布の性質は まったく検討がつかない 分布の性質を指定する (種類,平均,分散) 無情報事前分布を使う (一様分布)
  22. 22. ② 推定に事前情報を取り込む データ取得前に,事後分布の性質に関して想定されうる情報 事後分布の性質を, 想定可能な知見がある 事後分布の性質は まったく検討がつかない 分布の性質を指定する (種類,平均,分散) 無情報事前分布を使う
  23. 23. 平均と分散の事後分布を Let’s Bayes!! 事後分布 posterior 事前分布 prior 尤度 likelihood × 正規分布
  24. 24. 工場Aで作られるコーヒーから3つ抽出 内容量は分散1で正規分布することが, わかってる 工場Aで作られるコーヒーの内容量の 「平均値の事後分布」が知りたい 事後分布 得ら れたデータ (D) 99ml 101ml 103ml 事前の情報 平均 100 ml μ ml データ 正規分布 機械の設定100ml
  25. 25. 正規分布 他は定数 円周率 (π) = 3.14159… ネイピア定数 (e) =2.71828…. 分布を示す式 f (x) 平均値 (u) 分散 (σ2) f (x) = N (μ,σ2) 分散 平均 平均と分散によって, 分布の形状が決まる 1 2ps æ è ç ö ø ÷e - (x-m)2 2´s2
  26. 26. 1 2p ´2 æ è ç ö ø ÷e - (x-100)2 2´4 事前の情報 N (100, 4) 分布の形状 = 正規分布 平均 = 100ml (機械の設定) 分散 = 4 (経験から) 事前分布 事前分布 π (D) あるパラメータが得られる確率 (密度)
  27. 27. 1 2p æ è ç ö ø ÷e - (m-101)2 2´1/3 1 2p æ è ç ö ø ÷e - (99-m)2 2´1 1 2p æ è ç ö ø ÷e - (101-m)2 2´1 1 2p æ è ç ö ø ÷e - (103-m)2 2´1 尤度 f (D|μ) × × = あるパラメータの元でデータが得られる確率 (密度) 得ら れたデータ (D) 99ml 101ml 103ml 3 +定数 尤度 f (D|μ) 平均 = 101 分散 = 1/3
  28. 28. 1 2p æ è ç ö ø ÷e - (m-101)2 2´1/3 尤度 f (D|μ) = 平均 = 101 分散 = 1/3 3 +定数 あるパラメータの元でデータが得られる確率 (密度) 尤度 f (D|μ) N (101, 1/3)
  29. 29. 事後分布 posterior 事前分布 prior 尤度 likelihood∝ × N (109, 4/13) N (100, 4) e - (m-100)2 2´4 e - (m-109)2 2´4/13 N (101, 1/3) e - (m-101)2 2´1/3 ※e以前の式は定数なので,省略
  30. 30. 事前分布 尤度 事後分布
  31. 31. 事前分布に 無情報事前分布を使うと… 事前分布の影響 無情報事前分布を使うと最尤推定値とほぼ一致する 事後分布 posterior 尤度 likelihood ∝
  32. 32. マルコフ連鎖モンテカルロ法 パラメータが増えると,指数関数的に計算量が増える 次元の呪いで事後分布の推定が困難になる gooランキング「数学嫌いでも,興味を持たずにはいられない数学用語」第5位 シミュレーションによって呪いを解いて 事後分布を推定する gooランキング「職場で使ってみたいドラクエの呪文」第27位
  33. 33. マルコフ連鎖モンテカルロ法 ランダムに与えたパラメータの初期値を, 一定の手順に従って,更新していくことで, 事後分布に従ったパラメータを得る 代表的な手順 ・ギブスサンプリング法 ・メトロポリス・ヘイスティング法
  34. 34. ギブスサンプリング 2つのパラメータ (x1, x2)の場合 step1 x1の初期値を指定する step2 x2を初期値で固定して,x1をサンプリング step3 x1をstep2で得られた値に固定してx2をサンプリング step4 x2をstep3で得られた値に固定してx1をサンプリング 以下、 step3,4を繰り返す。 一つのステップの中で, 前の状態に基づいて, 新しい状態を作りだしている マルコフ連鎖 モンテカルロ法 シミュレーションを使ってる
  35. 35. 反復 100 反復 10000 x1 x2 x1 x2 STEPをひたすら繰り返し得られた点列から 安定した分布が得られる (定常分布)
  36. 36. http://stackoverflow.com/questions/19949435/ 3d-plot-of-bivariate-distribution-using-r-or-matlab x1x2
  37. 37. 初期値の影響を大きくうける初期の期間 (バーンイン区間)は分布の推定から除く バーンイン区間 バーンイン 区間 分布の推定に用いる 区間
  38. 38. バーンイン区間を推定に用いると 事後分布が歪む 300辺りまで,落ち着かない 事後分布が歪む
  39. 39. バーンイン区間を切り捨てると, 事後分布の歪みは少なくなる
  40. 40. 500回 1000回 5000回 定常分布に収束する 十分な期間シミュレーションすると 事後分布が安定した分布に収束する
  41. 41. 報告する数値 (詳細は徳岡君) 平均 (または中央値) 標準偏差 信用区間 95%信用区間が一般的 この区間に0がなければ有意, という判断が可能 点推定値
  42. 42. 収束判断の指標 定常分布に達しているか数値で判断 • Gelman & Rubinの指標 • Raftery and Lewisの指標 • Gewekeの指標 • Heidelberger and Welchの指標 • 自己相関 これを報告しておけば, 文句はいわれまい
  43. 43. Gelman and Rubinの指標 Potential Scale Reduction (PSR) または ^ R(アールハット) 初期値を変えて,MCMC推定を複数回やった時に, それぞれの推定結果に違いがないかという発想 複数のマルコフ連鎖間の分散がマルコフ連鎖内の分 散に比べて十分小さくなれば収束。 大抵は 1.01を越えなければ良い。 初期値を変えて, 2つ走らせた結果を格納
  44. 44. Gewekeの指標 MCMCの最初の方 と最後の方の平均に 差がないか検定 Z値が±1.96以内に 入っていれば, 差はない →収束してる
  45. 45. ベイズ推定のメリット データや推定値についての分布の制約がない ※ モデルが要請する制約はある -回帰分析: 残差が正規分布 -ロジスティック回帰: 残差が二項分布 事後分布の形状も正規分布以外にできる - 分散の分布などはガンマ分布に従う - 分散パラメータの非負の制約も簡単にできる 事前情報を旨く上手に扱うことで, 少数サンプルでも妥当な推定ができる 何これ? おいしそう!!
  46. 46. ベイズ推定のデメリット 推定にかかる時間が長い − 最尤法に比べて10倍以上は時間がかかる 適合度指標が限られる – 最尤法は豊富な適合度指標を参照できる
  47. 47. まとめ ベイズ推定では, ① パラメータの分布が得られる ② 事前の情報を推定に活用できる MCMCで推定結果をえる時には, ① 初期値,事前分布を指定,バーンイン区間指定 ② 収束したかどうか数値でチェック 収束を確認したら, 点推定値と信用区間を報告 簡単だね, いつからやろう...
  48. 48. 参考文献 ① ② ③ ④ ①②③④の順序で 読むのがおすすめです!!

×