SlideShare una empresa de Scribd logo
1 de 37
Descargar para leer sin conexión
逐次モンテカルロ法のベイズ統計学への応用
@科研費シンポジウム 「ベイズ統計の理論と
応用」
米倉頌人 (千葉大学)
March 18, 2022
1 / 37
1 自己紹介
2 Feynman-Kac model
3 逐次モンテカルロ法
4 Particle MCMC
5 SMC での分散の推定
6 その他のトピックとまとめ
2 / 37
1 自己紹介
2 Feynman-Kac model
3 逐次モンテカルロ法
4 Particle MCMC
5 SMC での分散の推定
6 その他のトピックとまとめ
3 / 37
自己紹介
• PhD (2020) in Statistical Science, University College
London (UCL)
• 研究内容:ベイズ統計学,計算機統計学,ベイズ
統計学の応用
• 大学の他に株式会社 Nospare にも所属し企業向け
の統計分析も行っています
4 / 37
1 自己紹介
2 Feynman-Kac model
3 逐次モンテカルロ法
4 Particle MCMC
5 SMC での分散の推定
6 その他のトピックとまとめ
5 / 37
Feynman-Kac model1: 登場人物
1 マルコフカーネル: M0, M1, ..., Mn
2 ポテンシャル関数: G0, G1, ..., Gn
• マルコフカーネルはマルコフ連鎖 {Xn} の「行き
先」を指定する
• つまり P(Xn = xn | Xn−1 = xn−1) = Mn(xn−1, xn)
• ポテンシャル関数: G0, G1, ..., Gn は実数値,強い意
味で正,上から有界の関数列.
• 通常 M0, M1, ..., Mn からシミュレーション可能で,
G0, G1, ..., Gn は pointe-wise で評価可能なことも仮
定される.
6 / 37
Feynman-Kac model2: いくつかのnotation
• 適当な関数 𝜙 と測度 𝜇 にたいして
𝜇(𝜙) :=
∫
𝜙(x)𝜇(dx)   
• 適当な関数 𝜙 とマルコフカーネル K にたいして
K (𝜙(x)) :=
∫
K (x, dx′)𝜙(x′)
• 適当なマルコフカーネル K と測度 𝜇 にたいして
𝜇K (A) :=
∫
𝜇(dx)K (x, A)
7 / 37
notation の大雑把な意味
• 𝜇(𝜙) = E(𝜙(Xn))   
• K (𝜙(x)) = E(𝜙(Xn) | Xn−1 = xn−1)
•
∫
𝜇(dx)K (x, A) = X の周辺分布
8 / 37
Feynman-Kac model3: ターゲット
1 𝛾p(S) :=
∫
𝛾p−1(dx)Gp−1(x)Mp(x, S) on
(X, X), S ∈ X.
2 𝜂p(S) :=
𝛾p (S)
𝛾p (X) .
3 𝛾n(𝜙) := E(𝜙(Xn)
În−1
p=0 Gp(Xp)).
9 / 37
Feynman-Kac model の例1: 隠れマルコフモデ
ル(状態空間モデル)
• Xp は隠れマルコフ連鎖としそのカーネルが Mp.
• 観測値 yp は条件付き密度 gp(Xp, Yp) をもち Xq を所
与で (Xq, Yq) と独立.
• この時 Mp = Mp, Gp(xp) = gp(xp, yp) とすると,𝜂n
は y0, ..., yn−1 で条件づけた Xn の条件付き分布.
• 𝛾n(1) = 𝛾n(X) は y0, ..., yn−1 の周辺尤度.
• 𝛾n(𝜙) =
∫
𝜙(xn)p(xn, y0, ..., yn−1)dxn.
10 / 37
本当に?
𝛾n(𝜙) = E(𝜙(Xn)
n−1
Ö
p=0
Gp(Xp)),
=
∫
𝜙(xn)
n−1
Ö
p=0
Gp(Xp))M(x0)
n
Ö
p=1
Mp(xp−1, xp)dx0:p,
=
∫
𝜙(xn)p(x0:n, y0:n−1)dx0:n,
= p(y0:n−1)
∫
𝜙(xn)p(xn | y0:n−1)dxn.
11 / 37
Feynman-Kac model の例2:Tempering
• 数列 𝛽p s.t. 𝛽0 = 0 < · · · 𝛽n = 1
• 2 つのメジャー(事前分布・事後分布):
𝜋0(dx) = ˜
𝜋0(x)dx/Z0, 𝜋1(dx) = ˜
𝜋(x)1dx/Z1
• Gp(x) = ( ˜
𝜋1(x)
˜
𝜋0(x) )𝛽p+1−𝛽p
とし Mp を ˜
𝜋0(x)1−𝛽p
˜
𝜋1(x)𝛽p
を定常分布にもつマルコフカーネル(eg MCMC
カーネル)とする.
• 𝛾p(S) = 1
Z0
∫
S
˜
𝜋0(x)1−𝛽p
˜
𝜋1(x)𝛽p
, 𝜂n = 𝜋1, 𝜂0 = 𝜋0.
• 𝜂1, .., 𝜂n−1 は 𝜋0, 𝜋1 をつなぐ「橋」のような分布に
なる.
12 / 37
Feynman-Kac model のその他の例
• 逐次ベイズ推定
• レアイベント・シミュレーション
• 確率的最適化
• 確率微分方程式モデル
• 密度推定(積分方程式)etc...
13 / 37
1 自己紹介
2 Feynman-Kac model
3 逐次モンテカルロ法
4 Particle MCMC
5 SMC での分散の推定
6 その他のトピックとまとめ
14 / 37
SMC algorithm (ブートストラップ・フィル
ター)
1 Set ZN
0
← 1, sample 𝜉1
0
∼ M(dx0) for i ∈ {1, ..., N},
set
𝜂N
0 =
1
N
N
Õ
i=1
𝛿𝜉i
0
(1)
2 For p = 1, .., n, set ZN
p ← ZN
p−1
1
N
ÍN
i Gp−1(𝜉i
p−1
),
sample
𝜉i
p ∼
ÍN
i=1 Gp−1(𝜉i
p−1
)Mp(𝜉i
p−1
, ·)
ÍN
j=1 Gp−1(𝜉j
p−1
)
(2)
and set 𝜂N
p ← 1
N
ÍN
i=1 𝛿𝜉i
p
, 𝛾N
p ← ZN
p 𝜂N
p
15 / 37
To simulate 𝜉i
p ∼
ÍN
i=1 Gp−1(𝜉i
p−1
)Mp(𝜉i
p−1
,·)
ÍN
j=1 Gp−1(𝜉
j
p−1
)
1 For i ∈ {1, .., N}, sample independently
Ai
p ∼ Categorical(Gp−1(𝜉1
p−1), ..., Gp−1(𝜉N
p−1)) (3)
2 For i ∈ {1, .., N}, sample independently
𝜉i
p ∼ Mp(𝜉
Ai
p−1
p−1
, ·)
• Ai
p−1
は 𝜉i
p の ancestor index と呼ばれることもある.
16 / 37
Ancestor index
Figure: p = 3, N = 4 の ancestor index の例.
A3 = (3, 2, 2, 3), A2 = (2, 2, 2, 4), A1 = (1, 2, 4, 4).
17 / 37
SMC estimators
1 E(𝛾N
p (𝜙)) = 𝛾p(𝜙): 不偏性 (𝜂 も)
2 N → ∞ で 𝛾N
p (𝜙) → 𝛾p(𝜙), w.p.1: 一致性 (𝜂 も)
3 N → ∞ で
p
(N)(
𝛾N
p (𝜙)−𝛾p (𝜙)
𝛾p (1) ) → N (0, 𝜎2
p (𝜙)):
CLT(𝜂 も)
18 / 37
SMC 例:SV モデル
1 M(x, x′) = N (x′; 𝛼x, 𝜎2
)
2 G(x, y) = N (y; 0, 𝛽2
exp(x))
Figure: SV モデル.(𝛼, 𝜎, 𝛽) = (0.9,
√
0.1, 0.8) 19 / 37
SMC result
Figure: SMC による SV モデルの事後平均の推定例 (N = 1024).
20 / 37
SMC の問題点と改善方法
1 Path degeneracy.p → ∞ とすると,リサンプリン
グのせいで Ancestor index が全て同じになってく
る.→ 毎回リサンプリングするのではなく,ある
条件が満たされた時にだけリサンプリングする.
2 考えているマルコフ連鎖 Xn の次元 d が大きくなる
と推定精度が指数的に悪化する.→ マルコフカー
ネル Mp を「変形」してモデルの情報をより多く
取り込む「プロポーザル」
・カーネルを用いる.
21 / 37
1 自己紹介
2 Feynman-Kac model
3 逐次モンテカルロ法
4 Particle MCMC
5 SMC での分散の推定
6 その他のトピックとまとめ
22 / 37
PMCMC 1
• MCMC を用いた状態空間モデルのパラメーターの
推定を考える.
• この時ターゲットは p(𝜃, x0:n | y0:n) となるが,こ
れをターゲットとした MCMC はしばしば収束が遅
くなる.
• よって x0:n を積分消去した
Π(𝜃 | y0:n) ∝ p(y0:n | 𝜃)𝜋(𝜃) をターゲットとする.
23 / 37
PMCMC 2
• q(𝜃′𝜃) をプロポーザル密度とする.
• この時 MH 法の採択確率は
a(𝜃, 𝜃′
) = min{1,
q(𝜃 | 𝜃′)𝜋(𝜃′)p(y0:n | 𝜃′)
q(𝜃′ | 𝜃)𝜋(𝜃)p(y0:n | 𝜃)
} (4)
• 一般に p(y0:n | 𝜃) 状態空間モデルの場合これは解
析的に普通求まらない →use SMC!
24 / 37
PMCMC 3
• SMC で構成する推定量は不偏性をもつ.
p(y0:n | 𝜃) の不偏推定量 p̂(y0:n | 𝜃) は
În
p=0( 1
N
ÍN
i=1 g𝜃 (𝜉i
p, yp))
• u を SMC を用いたときに発生させた乱数とす
ると,
Eu(p̂(y0:n, u | 𝜃)) ∝ 𝜋(𝜃)
∫
p̂(y0:n |, u, 𝜃)p(u | 𝜃)du,
= 𝜋(𝜃)p(y0:n | 𝜃),
∝ p(𝜃 | y0:n)
• よって次の MCMC はターゲットを定常分布に以前
もつ
25 / 37
PMCMC 4
1 Sample 𝜃′ ∼ q(· | 𝜃)
2 Given 𝜃′ , run SMC and obtain p̂(y0:n | 𝜃′)
3 Accept (𝜃′, p̂(y0:n | 𝜃′)) w.p.
a(𝜃, 𝜃′
) = min{1,
q(𝜃 | 𝜃′)𝜋(𝜃′)p̂(y0:n | 𝜃′)
q(𝜃′ | 𝜃)𝜋(𝜃)p̂(y0:n | 𝜃)
} (5)
4 Repeat 1-3 M times.
26 / 37
PMCMC を用いたSV モデルの推定1
Figure: MCMC のトレースプロット.(𝛼, 𝜎, 𝛽) = (0.9,
√
0.1, 0.8),
N = 1024, M = 10, 000. 27 / 37
PMCMC を用いたSV モデルの推定2
Figure: Autocorrelation function
28 / 37
1 自己紹介
2 Feynman-Kac model
3 逐次モンテカルロ法
4 Particle MCMC
5 SMC での分散の推定
6 その他のトピックとまとめ
29 / 37
分散推定1
• 推定精度等を測る際,
「分散」を推定できると非常
に便利だか,2013 年以前までは SMC の output の
分散を推定するには SMC を何度も回すしかな
かった.
• 「Eve index」を Ancestor index を用いて次の様に
定義する.
Ei
p := E
Ai
p
p−1
(6)
30 / 37
Eve index
Figure: p = 3, N = 4 の Eve index の例.
E0 = (1, 2, 3, 4), E1 = (1, 2, 4, 4), E2 = (2, 1, 2, 4), E3 = (2, 1, 1, 2)
31 / 37
分散推定 2
• Eve index を用いることで,𝜂n(𝜙n) の分散は次の様
にオンライン推定することが例えば可能.
Var(𝜂n(𝜙n)) =
1
N
N
Õ
i=1
©
­
«
Õ
j:Ei
n=i
(𝜙(𝜉j
n) − 𝜂N
n (𝜙n))
ª
®
¬
2
(7)
この推定量は Path degeneracy に非常に敏感.集合
{j ∈ [1 : N] : EN
n = i} は time step が進むと空集合になっ
てしまい,分散推定量の値も 0 になる.
32 / 37
分散推定の例1 SV モデル(n = 200)
Figure: N = 5000
33 / 37
分散推定の例1 SV モデル(n = 1000)
Figure: N = 5000
34 / 37
1 自己紹介
2 Feynman-Kac model
3 逐次モンテカルロ法
4 Particle MCMC
5 SMC での分散の推定
6 その他のトピックとまとめ
35 / 37
その他のトピック
• Particle Gibbs (conditional SMC)
• Auxiliary particle filter
• 異常値検知
• 機械学習モデルへの応用
• 並列化
• 変分ベイズへの応用
36 / 37
まとめ
1 ベイズ統計学に現れる様々なモデル・問題は
Feynman-Kac model に書き換えられる.
2 Feynman-Kac model の近似として SMC は導出さ
れる.
3 SMC を用いれば Feynman-Kac model のパラメー
ター推定なども行得られる.
4 精度は N やタイムステップ p,モデルの次元 d に
強く依存し,n, d が大きい時は何かしらの工夫が
必要.
37 / 37

Más contenido relacionado

La actualidad más candente

Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料
Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料
Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料Yusuke Uchida
 
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説弘毅 露崎
 
GAN(と強化学習との関係)
GAN(と強化学習との関係)GAN(と強化学習との関係)
GAN(と強化学習との関係)Masahiro Suzuki
 
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Modelscvpaper. challenge
 
ベイズ機械学習(an introduction to bayesian machine learning)
ベイズ機械学習(an introduction to bayesian machine learning)ベイズ機械学習(an introduction to bayesian machine learning)
ベイズ機械学習(an introduction to bayesian machine learning)医療IT数学同好会 T/T
 
[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction
[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction
[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured PredictionDeep Learning JP
 
Active Learning 入門
Active Learning 入門Active Learning 入門
Active Learning 入門Shuyo Nakatani
 
トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?hoxo_m
 
[DL輪読会]GQNと関連研究,世界モデルとの関係について
[DL輪読会]GQNと関連研究,世界モデルとの関係について[DL輪読会]GQNと関連研究,世界モデルとの関係について
[DL輪読会]GQNと関連研究,世界モデルとの関係についてDeep Learning JP
 
最適輸送入門
最適輸送入門最適輸送入門
最適輸送入門joisino
 
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)Deep Learning JP
 
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健Preferred Networks
 
RでGARCHモデル - TokyoR #21
RでGARCHモデル - TokyoR #21RでGARCHモデル - TokyoR #21
RでGARCHモデル - TokyoR #21horihorio
 
[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...
[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...
[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...Deep Learning JP
 
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...
[DL輪読会]Revisiting Deep Learning Models for Tabular Data  (NeurIPS 2021) 表形式デー...[DL輪読会]Revisiting Deep Learning Models for Tabular Data  (NeurIPS 2021) 表形式デー...
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...Deep Learning JP
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門Kawamoto_Kazuhiko
 
はじめてのKrylov部分空間法
はじめてのKrylov部分空間法はじめてのKrylov部分空間法
はじめてのKrylov部分空間法tmaehara
 
Control as Inference (強化学習とベイズ統計)
Control as Inference (強化学習とベイズ統計)Control as Inference (強化学習とベイズ統計)
Control as Inference (強化学習とベイズ統計)Shohei Taniguchi
 

La actualidad más candente (20)

Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料
Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料
Swin Transformer (ICCV'21 Best Paper) を完璧に理解する資料
 
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
 
2 3.GLMの基礎
2 3.GLMの基礎2 3.GLMの基礎
2 3.GLMの基礎
 
GAN(と強化学習との関係)
GAN(と強化学習との関係)GAN(と強化学習との関係)
GAN(と強化学習との関係)
 
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models
 
ベイズ機械学習(an introduction to bayesian machine learning)
ベイズ機械学習(an introduction to bayesian machine learning)ベイズ機械学習(an introduction to bayesian machine learning)
ベイズ機械学習(an introduction to bayesian machine learning)
 
[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction
[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction
[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction
 
Active Learning 入門
Active Learning 入門Active Learning 入門
Active Learning 入門
 
トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?
 
[DL輪読会]GQNと関連研究,世界モデルとの関係について
[DL輪読会]GQNと関連研究,世界モデルとの関係について[DL輪読会]GQNと関連研究,世界モデルとの関係について
[DL輪読会]GQNと関連研究,世界モデルとの関係について
 
最適輸送入門
最適輸送入門最適輸送入門
最適輸送入門
 
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)
【DL輪読会】言語以外でのTransformerのまとめ (ViT, Perceiver, Frozen Pretrained Transformer etc)
 
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
PyData.Tokyo Meetup #21 講演資料「Optuna ハイパーパラメータ最適化フレームワーク」太田 健
 
RでGARCHモデル - TokyoR #21
RでGARCHモデル - TokyoR #21RでGARCHモデル - TokyoR #21
RでGARCHモデル - TokyoR #21
 
[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...
[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...
[DL輪読会]Wasserstein GAN/Towards Principled Methods for Training Generative Adv...
 
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...
[DL輪読会]Revisiting Deep Learning Models for Tabular Data  (NeurIPS 2021) 表形式デー...[DL輪読会]Revisiting Deep Learning Models for Tabular Data  (NeurIPS 2021) 表形式デー...
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門
 
線形計画法入門
線形計画法入門線形計画法入門
線形計画法入門
 
はじめてのKrylov部分空間法
はじめてのKrylov部分空間法はじめてのKrylov部分空間法
はじめてのKrylov部分空間法
 
Control as Inference (強化学習とベイズ統計)
Control as Inference (強化学習とベイズ統計)Control as Inference (強化学習とベイズ統計)
Control as Inference (強化学習とベイズ統計)
 

Similar a 逐次モンテカルロ法の基礎

Quantum Support Vector Machine
Quantum Support Vector MachineQuantum Support Vector Machine
Quantum Support Vector MachineYuma Nakamura
 
MLaPP 24章 「マルコフ連鎖モンテカルロ法 (MCMC) による推論」
MLaPP 24章 「マルコフ連鎖モンテカルロ法 (MCMC) による推論」MLaPP 24章 「マルコフ連鎖モンテカルロ法 (MCMC) による推論」
MLaPP 24章 「マルコフ連鎖モンテカルロ法 (MCMC) による推論」moterech
 
Stanの紹介と応用事例(age heapingの統計モデル)
Stanの紹介と応用事例(age heapingの統計モデル)Stanの紹介と応用事例(age heapingの統計モデル)
Stanの紹介と応用事例(age heapingの統計モデル). .
 
量子アニーリングを用いたクラスタ分析
量子アニーリングを用いたクラスタ分析量子アニーリングを用いたクラスタ分析
量子アニーリングを用いたクラスタ分析Shu Tanaka
 
クラシックな機械学習の入門  9. モデル推定
クラシックな機械学習の入門  9. モデル推定クラシックな機械学習の入門  9. モデル推定
クラシックな機械学習の入門  9. モデル推定Hiroshi Nakagawa
 
Jokyonokai130531
Jokyonokai130531Jokyonokai130531
Jokyonokai130531nwpmq516
 
Takuya Tsuchiya
Takuya TsuchiyaTakuya Tsuchiya
Takuya TsuchiyaSuurist
 
PRML読み会第一章
PRML読み会第一章PRML読み会第一章
PRML読み会第一章Takushi Miki
 
公開鍵暗号(3): 離散対数問題
公開鍵暗号(3): 離散対数問題公開鍵暗号(3): 離散対数問題
公開鍵暗号(3): 離散対数問題Joe Suzuki
 
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1東京都市大学 データ解析入門 6 回帰分析とモデル選択 1
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1hirokazutanaka
 
一般化線形混合モデル isseing333
一般化線形混合モデル isseing333一般化線形混合モデル isseing333
一般化線形混合モデル isseing333Issei Kurahashi
 
SLP研究会201902 正弦関数摂動 von Mises 分布 DNN の モード近似を用いた位相復元
SLP研究会201902 正弦関数摂動 von Mises 分布 DNN の  モード近似を用いた位相復元 SLP研究会201902 正弦関数摂動 von Mises 分布 DNN の  モード近似を用いた位相復元
SLP研究会201902 正弦関数摂動 von Mises 分布 DNN の モード近似を用いた位相復元 Shinnosuke Takamichi
 
PRML 3.3.3-3.4 ベイズ線形回帰とモデル選択 / Baysian Linear Regression and Model Comparison)
PRML 3.3.3-3.4 ベイズ線形回帰とモデル選択 / Baysian Linear Regression and Model Comparison)PRML 3.3.3-3.4 ベイズ線形回帰とモデル選択 / Baysian Linear Regression and Model Comparison)
PRML 3.3.3-3.4 ベイズ線形回帰とモデル選択 / Baysian Linear Regression and Model Comparison)Akihiro Nitta
 
Distributed Stochastic Gradient MCMC
Distributed Stochastic Gradient MCMCDistributed Stochastic Gradient MCMC
Distributed Stochastic Gradient MCMCKaede Hayashi
 

Similar a 逐次モンテカルロ法の基礎 (20)

Quantum Support Vector Machine
Quantum Support Vector MachineQuantum Support Vector Machine
Quantum Support Vector Machine
 
MLaPP 24章 「マルコフ連鎖モンテカルロ法 (MCMC) による推論」
MLaPP 24章 「マルコフ連鎖モンテカルロ法 (MCMC) による推論」MLaPP 24章 「マルコフ連鎖モンテカルロ法 (MCMC) による推論」
MLaPP 24章 「マルコフ連鎖モンテカルロ法 (MCMC) による推論」
 
Stanの紹介と応用事例(age heapingの統計モデル)
Stanの紹介と応用事例(age heapingの統計モデル)Stanの紹介と応用事例(age heapingの統計モデル)
Stanの紹介と応用事例(age heapingの統計モデル)
 
量子アニーリングを用いたクラスタ分析
量子アニーリングを用いたクラスタ分析量子アニーリングを用いたクラスタ分析
量子アニーリングを用いたクラスタ分析
 
クラシックな機械学習の入門  9. モデル推定
クラシックな機械学習の入門  9. モデル推定クラシックな機械学習の入門  9. モデル推定
クラシックな機械学習の入門  9. モデル推定
 
大規模凸最適化問題に対する勾配法
大規模凸最適化問題に対する勾配法大規模凸最適化問題に対する勾配法
大規模凸最適化問題に対する勾配法
 
Jokyonokai130531
Jokyonokai130531Jokyonokai130531
Jokyonokai130531
 
Takuya Tsuchiya
Takuya TsuchiyaTakuya Tsuchiya
Takuya Tsuchiya
 
π計算
π計算π計算
π計算
 
PRML読み会第一章
PRML読み会第一章PRML読み会第一章
PRML読み会第一章
 
公開鍵暗号(3): 離散対数問題
公開鍵暗号(3): 離散対数問題公開鍵暗号(3): 離散対数問題
公開鍵暗号(3): 離散対数問題
 
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1東京都市大学 データ解析入門 6 回帰分析とモデル選択 1
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1
 
一般化線形混合モデル isseing333
一般化線形混合モデル isseing333一般化線形混合モデル isseing333
一般化線形混合モデル isseing333
 
SLP研究会201902 正弦関数摂動 von Mises 分布 DNN の モード近似を用いた位相復元
SLP研究会201902 正弦関数摂動 von Mises 分布 DNN の  モード近似を用いた位相復元 SLP研究会201902 正弦関数摂動 von Mises 分布 DNN の  モード近似を用いた位相復元
SLP研究会201902 正弦関数摂動 von Mises 分布 DNN の モード近似を用いた位相復元
 
PRML 3.3.3-3.4 ベイズ線形回帰とモデル選択 / Baysian Linear Regression and Model Comparison)
PRML 3.3.3-3.4 ベイズ線形回帰とモデル選択 / Baysian Linear Regression and Model Comparison)PRML 3.3.3-3.4 ベイズ線形回帰とモデル選択 / Baysian Linear Regression and Model Comparison)
PRML 3.3.3-3.4 ベイズ線形回帰とモデル選択 / Baysian Linear Regression and Model Comparison)
 
MCMC法
MCMC法MCMC法
MCMC法
 
Distributed Stochastic Gradient MCMC
Distributed Stochastic Gradient MCMCDistributed Stochastic Gradient MCMC
Distributed Stochastic Gradient MCMC
 
Prml sec6
Prml sec6Prml sec6
Prml sec6
 
PRML 8.4-8.4.3
PRML 8.4-8.4.3 PRML 8.4-8.4.3
PRML 8.4-8.4.3
 
主成分分析
主成分分析主成分分析
主成分分析
 

逐次モンテカルロ法の基礎

  • 2. 1 自己紹介 2 Feynman-Kac model 3 逐次モンテカルロ法 4 Particle MCMC 5 SMC での分散の推定 6 その他のトピックとまとめ 2 / 37
  • 3. 1 自己紹介 2 Feynman-Kac model 3 逐次モンテカルロ法 4 Particle MCMC 5 SMC での分散の推定 6 その他のトピックとまとめ 3 / 37
  • 4. 自己紹介 • PhD (2020) in Statistical Science, University College London (UCL) • 研究内容:ベイズ統計学,計算機統計学,ベイズ 統計学の応用 • 大学の他に株式会社 Nospare にも所属し企業向け の統計分析も行っています 4 / 37
  • 5. 1 自己紹介 2 Feynman-Kac model 3 逐次モンテカルロ法 4 Particle MCMC 5 SMC での分散の推定 6 その他のトピックとまとめ 5 / 37
  • 6. Feynman-Kac model1: 登場人物 1 マルコフカーネル: M0, M1, ..., Mn 2 ポテンシャル関数: G0, G1, ..., Gn • マルコフカーネルはマルコフ連鎖 {Xn} の「行き 先」を指定する • つまり P(Xn = xn | Xn−1 = xn−1) = Mn(xn−1, xn) • ポテンシャル関数: G0, G1, ..., Gn は実数値,強い意 味で正,上から有界の関数列. • 通常 M0, M1, ..., Mn からシミュレーション可能で, G0, G1, ..., Gn は pointe-wise で評価可能なことも仮 定される. 6 / 37
  • 7. Feynman-Kac model2: いくつかのnotation • 適当な関数 𝜙 と測度 𝜇 にたいして 𝜇(𝜙) := ∫ 𝜙(x)𝜇(dx)    • 適当な関数 𝜙 とマルコフカーネル K にたいして K (𝜙(x)) := ∫ K (x, dx′)𝜙(x′) • 適当なマルコフカーネル K と測度 𝜇 にたいして 𝜇K (A) := ∫ 𝜇(dx)K (x, A) 7 / 37
  • 8. notation の大雑把な意味 • 𝜇(𝜙) = E(𝜙(Xn))    • K (𝜙(x)) = E(𝜙(Xn) | Xn−1 = xn−1) • ∫ 𝜇(dx)K (x, A) = X の周辺分布 8 / 37
  • 9. Feynman-Kac model3: ターゲット 1 𝛾p(S) := ∫ 𝛾p−1(dx)Gp−1(x)Mp(x, S) on (X, X), S ∈ X. 2 𝜂p(S) := 𝛾p (S) 𝛾p (X) . 3 𝛾n(𝜙) := E(𝜙(Xn) În−1 p=0 Gp(Xp)). 9 / 37
  • 10. Feynman-Kac model の例1: 隠れマルコフモデ ル(状態空間モデル) • Xp は隠れマルコフ連鎖としそのカーネルが Mp. • 観測値 yp は条件付き密度 gp(Xp, Yp) をもち Xq を所 与で (Xq, Yq) と独立. • この時 Mp = Mp, Gp(xp) = gp(xp, yp) とすると,𝜂n は y0, ..., yn−1 で条件づけた Xn の条件付き分布. • 𝛾n(1) = 𝛾n(X) は y0, ..., yn−1 の周辺尤度. • 𝛾n(𝜙) = ∫ 𝜙(xn)p(xn, y0, ..., yn−1)dxn. 10 / 37
  • 11. 本当に? 𝛾n(𝜙) = E(𝜙(Xn) n−1 Ö p=0 Gp(Xp)), = ∫ 𝜙(xn) n−1 Ö p=0 Gp(Xp))M(x0) n Ö p=1 Mp(xp−1, xp)dx0:p, = ∫ 𝜙(xn)p(x0:n, y0:n−1)dx0:n, = p(y0:n−1) ∫ 𝜙(xn)p(xn | y0:n−1)dxn. 11 / 37
  • 12. Feynman-Kac model の例2:Tempering • 数列 𝛽p s.t. 𝛽0 = 0 < · · · 𝛽n = 1 • 2 つのメジャー(事前分布・事後分布): 𝜋0(dx) = ˜ 𝜋0(x)dx/Z0, 𝜋1(dx) = ˜ 𝜋(x)1dx/Z1 • Gp(x) = ( ˜ 𝜋1(x) ˜ 𝜋0(x) )𝛽p+1−𝛽p とし Mp を ˜ 𝜋0(x)1−𝛽p ˜ 𝜋1(x)𝛽p を定常分布にもつマルコフカーネル(eg MCMC カーネル)とする. • 𝛾p(S) = 1 Z0 ∫ S ˜ 𝜋0(x)1−𝛽p ˜ 𝜋1(x)𝛽p , 𝜂n = 𝜋1, 𝜂0 = 𝜋0. • 𝜂1, .., 𝜂n−1 は 𝜋0, 𝜋1 をつなぐ「橋」のような分布に なる. 12 / 37
  • 13. Feynman-Kac model のその他の例 • 逐次ベイズ推定 • レアイベント・シミュレーション • 確率的最適化 • 確率微分方程式モデル • 密度推定(積分方程式)etc... 13 / 37
  • 14. 1 自己紹介 2 Feynman-Kac model 3 逐次モンテカルロ法 4 Particle MCMC 5 SMC での分散の推定 6 その他のトピックとまとめ 14 / 37
  • 15. SMC algorithm (ブートストラップ・フィル ター) 1 Set ZN 0 ← 1, sample 𝜉1 0 ∼ M(dx0) for i ∈ {1, ..., N}, set 𝜂N 0 = 1 N N Õ i=1 𝛿𝜉i 0 (1) 2 For p = 1, .., n, set ZN p ← ZN p−1 1 N ÍN i Gp−1(𝜉i p−1 ), sample 𝜉i p ∼ ÍN i=1 Gp−1(𝜉i p−1 )Mp(𝜉i p−1 , ·) ÍN j=1 Gp−1(𝜉j p−1 ) (2) and set 𝜂N p ← 1 N ÍN i=1 𝛿𝜉i p , 𝛾N p ← ZN p 𝜂N p 15 / 37
  • 16. To simulate 𝜉i p ∼ ÍN i=1 Gp−1(𝜉i p−1 )Mp(𝜉i p−1 ,·) ÍN j=1 Gp−1(𝜉 j p−1 ) 1 For i ∈ {1, .., N}, sample independently Ai p ∼ Categorical(Gp−1(𝜉1 p−1), ..., Gp−1(𝜉N p−1)) (3) 2 For i ∈ {1, .., N}, sample independently 𝜉i p ∼ Mp(𝜉 Ai p−1 p−1 , ·) • Ai p−1 は 𝜉i p の ancestor index と呼ばれることもある. 16 / 37
  • 17. Ancestor index Figure: p = 3, N = 4 の ancestor index の例. A3 = (3, 2, 2, 3), A2 = (2, 2, 2, 4), A1 = (1, 2, 4, 4). 17 / 37
  • 18. SMC estimators 1 E(𝛾N p (𝜙)) = 𝛾p(𝜙): 不偏性 (𝜂 も) 2 N → ∞ で 𝛾N p (𝜙) → 𝛾p(𝜙), w.p.1: 一致性 (𝜂 も) 3 N → ∞ で p (N)( 𝛾N p (𝜙)−𝛾p (𝜙) 𝛾p (1) ) → N (0, 𝜎2 p (𝜙)): CLT(𝜂 も) 18 / 37
  • 19. SMC 例:SV モデル 1 M(x, x′) = N (x′; 𝛼x, 𝜎2 ) 2 G(x, y) = N (y; 0, 𝛽2 exp(x)) Figure: SV モデル.(𝛼, 𝜎, 𝛽) = (0.9, √ 0.1, 0.8) 19 / 37
  • 20. SMC result Figure: SMC による SV モデルの事後平均の推定例 (N = 1024). 20 / 37
  • 21. SMC の問題点と改善方法 1 Path degeneracy.p → ∞ とすると,リサンプリン グのせいで Ancestor index が全て同じになってく る.→ 毎回リサンプリングするのではなく,ある 条件が満たされた時にだけリサンプリングする. 2 考えているマルコフ連鎖 Xn の次元 d が大きくなる と推定精度が指数的に悪化する.→ マルコフカー ネル Mp を「変形」してモデルの情報をより多く 取り込む「プロポーザル」 ・カーネルを用いる. 21 / 37
  • 22. 1 自己紹介 2 Feynman-Kac model 3 逐次モンテカルロ法 4 Particle MCMC 5 SMC での分散の推定 6 その他のトピックとまとめ 22 / 37
  • 23. PMCMC 1 • MCMC を用いた状態空間モデルのパラメーターの 推定を考える. • この時ターゲットは p(𝜃, x0:n | y0:n) となるが,こ れをターゲットとした MCMC はしばしば収束が遅 くなる. • よって x0:n を積分消去した Π(𝜃 | y0:n) ∝ p(y0:n | 𝜃)𝜋(𝜃) をターゲットとする. 23 / 37
  • 24. PMCMC 2 • q(𝜃′𝜃) をプロポーザル密度とする. • この時 MH 法の採択確率は a(𝜃, 𝜃′ ) = min{1, q(𝜃 | 𝜃′)𝜋(𝜃′)p(y0:n | 𝜃′) q(𝜃′ | 𝜃)𝜋(𝜃)p(y0:n | 𝜃) } (4) • 一般に p(y0:n | 𝜃) 状態空間モデルの場合これは解 析的に普通求まらない →use SMC! 24 / 37
  • 25. PMCMC 3 • SMC で構成する推定量は不偏性をもつ. p(y0:n | 𝜃) の不偏推定量 p̂(y0:n | 𝜃) は În p=0( 1 N ÍN i=1 g𝜃 (𝜉i p, yp)) • u を SMC を用いたときに発生させた乱数とす ると, Eu(p̂(y0:n, u | 𝜃)) ∝ 𝜋(𝜃) ∫ p̂(y0:n |, u, 𝜃)p(u | 𝜃)du, = 𝜋(𝜃)p(y0:n | 𝜃), ∝ p(𝜃 | y0:n) • よって次の MCMC はターゲットを定常分布に以前 もつ 25 / 37
  • 26. PMCMC 4 1 Sample 𝜃′ ∼ q(· | 𝜃) 2 Given 𝜃′ , run SMC and obtain p̂(y0:n | 𝜃′) 3 Accept (𝜃′, p̂(y0:n | 𝜃′)) w.p. a(𝜃, 𝜃′ ) = min{1, q(𝜃 | 𝜃′)𝜋(𝜃′)p̂(y0:n | 𝜃′) q(𝜃′ | 𝜃)𝜋(𝜃)p̂(y0:n | 𝜃) } (5) 4 Repeat 1-3 M times. 26 / 37
  • 27. PMCMC を用いたSV モデルの推定1 Figure: MCMC のトレースプロット.(𝛼, 𝜎, 𝛽) = (0.9, √ 0.1, 0.8), N = 1024, M = 10, 000. 27 / 37
  • 28. PMCMC を用いたSV モデルの推定2 Figure: Autocorrelation function 28 / 37
  • 29. 1 自己紹介 2 Feynman-Kac model 3 逐次モンテカルロ法 4 Particle MCMC 5 SMC での分散の推定 6 その他のトピックとまとめ 29 / 37
  • 30. 分散推定1 • 推定精度等を測る際, 「分散」を推定できると非常 に便利だか,2013 年以前までは SMC の output の 分散を推定するには SMC を何度も回すしかな かった. • 「Eve index」を Ancestor index を用いて次の様に 定義する. Ei p := E Ai p p−1 (6) 30 / 37
  • 31. Eve index Figure: p = 3, N = 4 の Eve index の例. E0 = (1, 2, 3, 4), E1 = (1, 2, 4, 4), E2 = (2, 1, 2, 4), E3 = (2, 1, 1, 2) 31 / 37
  • 32. 分散推定 2 • Eve index を用いることで,𝜂n(𝜙n) の分散は次の様 にオンライン推定することが例えば可能. Var(𝜂n(𝜙n)) = 1 N N Õ i=1 © ­ « Õ j:Ei n=i (𝜙(𝜉j n) − 𝜂N n (𝜙n)) ª ® ¬ 2 (7) この推定量は Path degeneracy に非常に敏感.集合 {j ∈ [1 : N] : EN n = i} は time step が進むと空集合になっ てしまい,分散推定量の値も 0 になる. 32 / 37
  • 33. 分散推定の例1 SV モデル(n = 200) Figure: N = 5000 33 / 37
  • 34. 分散推定の例1 SV モデル(n = 1000) Figure: N = 5000 34 / 37
  • 35. 1 自己紹介 2 Feynman-Kac model 3 逐次モンテカルロ法 4 Particle MCMC 5 SMC での分散の推定 6 その他のトピックとまとめ 35 / 37
  • 36. その他のトピック • Particle Gibbs (conditional SMC) • Auxiliary particle filter • 異常値検知 • 機械学習モデルへの応用 • 並列化 • 変分ベイズへの応用 36 / 37
  • 37. まとめ 1 ベイズ統計学に現れる様々なモデル・問題は Feynman-Kac model に書き換えられる. 2 Feynman-Kac model の近似として SMC は導出さ れる. 3 SMC を用いれば Feynman-Kac model のパラメー ター推定なども行得られる. 4 精度は N やタイムステップ p,モデルの次元 d に 強く依存し,n, d が大きい時は何かしらの工夫が 必要. 37 / 37