通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布...

46
通信のための確率推論の基礎 林 和則 京都大学大学院情報学研究科 E-mail: [email protected] 主催:電子情報通信学会 コミュニケーションクオリティ専門委員会 第2回CQ基礎講座ワークショップ プレゼン資料: http://www.msys.sys.i.kyoto-u.ac.jp/~kazunori/CQWS201610.pdf

Transcript of 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布...

Page 1: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

通信のための確率推論の基礎

林 和則  

京都大学大学院情報学研究科 E-mail: [email protected]

主催:電子情報通信学会 コミュニケーションクオリティ専門委員会 第2回CQ基礎講座ワークショップ

プレゼン資料: http://www.msys.sys.i.kyoto-u.ac.jp/~kazunori/CQWS201610.pdf

Page 2: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

2

目次 基礎事項の確認 n  確率の基本法則

n  グラフィカルモデル

n  サンプリング法

確率推論問題

状態推定

確率伝搬法

Page 3: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

お話しする内容の関係 3

一般状態空間モデル

事後分布

マルコフ性

カルマンフィルタ

粒子フィルタ

マルコフ連鎖モンテカルロ

確率伝搬法分配法則

グラフィカルモデル

サンプリング法

条件付き独立

棄却サンプリングSIR

重点サンプリング

確率推論(ベイズ推論)

状態推定(時系列解析)

因数分解

非線形・非ガウス

線形・ガウス

テキスト該当箇所:p4

Page 4: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

4

目次 基礎事項の確認 n  確率の基本法則

n  グラフィカルモデル

n  サンプリング法

確率推論問題

状態推定

確率伝搬法

Page 5: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

(実現値                  ) 離散確率変数の基本法則

5 5

離散確率変数: X, Y xi (i = 1, . . . ,M), yj (j = 1, . . . , L)

確率分布: 同時確率分布: 条件付確率分布:

p(xi) = Pr(X = xi)

p(xi, yj) = Pr(X = xi, Y = yj)

p(yj |xi) = Pr(Y = yj |X = xi)

ベイズ則:

p(y|x) = p(x|y)p(y)p(x)

=p(x|y)p(y)X

y

p(x|y)p(y)

確率変数は大文字 その実現値は小文字 (スカラーとベクトルを表記上区別しないので注意)

加法定理: 周辺化

乗法定理:

が成り立つとき   は独立であるという X, Y

p(x) =X

y

p(x, y)

確率の基本法則:

p(x, y) = p(x)p(y)

p(x, y) = p(y|x)p(x) = p(x|y)p(y)

テキスト該当箇所:p5,6

Page 6: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

連続確率変数の基本法則 6 6

連続確率変数:任意の に対して        となる確率変数 XPr(X = c) = 0

確率密度関数: 確率密度関数の性質: 累積分布関数:

c 2 R

Pr(a X b) =

Z b

ap(x)dx

p(x) � 0,

Z 1

�1p(x)dx = 1

p(x)

Pr(X a) = P (a) =

Z a

�1p(x)dx

P (a)

加法定理: 周辺化

乗法定理: p(x, y) = p(y|x)p(x)

確率の基本法則:

p(x) =

Zp(x, y)dy

独立性の定義,およびベイズ則も離散確率変数の場合と同様(確率分布を密度関数に,和を積分に置き換える)

テキスト該当箇所:p6,7

Page 7: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

条件付き独立

7

確率変数    の全ての実現値    について,

が成立するとき,確率変数   は  を与えた下で条件付き独立 といい     と書く

x, y, zX,Y, Z

p(x, y|z) = p(x|z)p(y|z)

X,Y ZX ??Y |Z

条件付き独立性:

条件付き独立の性質の例: のとき X ??Y |Z

p(x, y, z) =p(x, z)p(y, z)

p(z)

p(x|y, z) = p(x|z)

テキスト該当箇所:p8,9

Page 8: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

確率変数       の同時確率分布        に対応するベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印の向きにたどって同じノードに戻ることがない有向グラフ)

ベイジアンネットワーク 8

1. 確率変数が各ノードに対応 2. 同時確率分布の因数分解が

で与えられるとき, が の親ノードの集合. (すなわち,      に対応する有向エッジが存在)

X1, X2, . . . , Xn p(x1, x2, . . . , xn)

p(x1, x2, . . . , xn) = p(x1|S1)p(x2|S2) · · · p(xn|Sn)xi

xj 2 Si ! xi

具体例: p(x1, x2, x3, x4, x5) = p(x1)p(x2|x1)p(x3|x4)p(x4|x1)p(x5|x4)

x1

x2

x3

x4

x5

テキスト該当箇所:p9,10

Page 9: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

条件付き独立性:3ノードの例 9

x

z

y

(a) tail-to-tail:

x

z

y

(b) head-to-tail:

x

z

y

(c) head-to-head:

x

z

y

(a) tail-to-tail:

x

z

y

(b) head-to-tail:

x

z

y

(c) head-to-head:

x

z

y

(a) tail-to-tail:

x

z

y

(b) head-to-tail:

x

z

y

(c) head-to-head:

p(x, y, z) = p(x|z)p(y|z)p(z) p(x, y, z) = p(x)p(y|z)p(z|x) p(x, y, z) = p(x)p(y)p(z|x, y)

独立でない 独立でない 独立

p(x, y) =X

z

p(x|z)p(y|z)p(z) p(x, y) =X

z

p(x)p(y|z)p(z|x) p(x, y) =X

z

p(x)p(y)p(z|x, y)

= p(x)p(y)

条件付き独立 条件付き独立

条件付き独立でない

p(x, y|z) = p(x, y, z)

p(z)

=p(x|z)p(y|z)p(z)

p(z)

= p(x|z)p(y|z)

p(x, y|z) = p(x)p(y|z)p(z|x)p(z)

=p(x, z)p(y|z)

p(z)

= p(x|z)p(y|z)

p(x, y|z) = p(x)p(y)p(z|x, y)p(z)

テキスト該当箇所:p10,11

Page 10: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

棄却サンプリング:準備 10

・  からサンプリングしたいが,直接は困難

 ・容易にサンプルを抽出できる分布   を用意(提案分布)

・任意の について,  の値はある正規化定数  を除いて容易に分かる(       で   は分かるけど   は分からない)

・定数 を導入し,全ての に対して      となるようにする

比較関数

p(x)

q(x)

p(x)

p(x) =1

Zpp̃(x)

p̃(x) p(x)

x

x

kq(x) � p̃(x)

kq(x)

p̃(x)

x

テキスト該当箇所:p18,19

Page 11: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

・保持された  は確率分布   に従う確率変数のサンプル ・     ならば  を棄却,そうでなければ  を保持

・区間     の一様分布に従う確率変数  のサンプル  を生成

棄却サンプリング:手順 11

・  に従う確率変数  のサンプル(実現値)  を生成

x

kq(x)p̃(x)

・サンプルを抽出できる分布   を用意(提案分布) q(x)

q(x) Xq xq

[0, kq(xq)]

kq(xq)

p̃(xq)

u

u

xq

U

u > p̃(xq) xqxq

xq p(x)

テキスト該当箇所:p18,19

Page 12: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

Pr(Xq

a|keep) = Pr(Xq

a, keep)

Pr(keep)

=

Z 1

�1

Zkq(x)

0I(x a, 0 u p̃(x))q(x)

1

kq(x)dudx

Z 1

�1

Zkq(x)

0I(0 u p̃(x))q(x)

1

kq(x)dudx

=

Za

�1

p̃(x)

k

dx

Z 1

�1

p̃(x)

k

dx

=

Za

�1

p̃(x)

Z

p

dx

Z 1

�1

p̃(x)

Z

p

dx

=

Za

�1p(x)dx

棄却サンプリング:原理 12

・保持された  の累積分布関数:

:特性関数

の累積分布関数

Xq

p(x)

テキスト該当箇所:p18,19

Page 13: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

SIR (sampling/importance-resampling) 13

 棄却サンプリング同様,提案分布  を用いるが定数  を決定することなく,  に(近似的に)従うサンプルを生成する手法

q(x)

p(x)

・確率質量が       の離散分布         に従う確率変数  の 個のサンプルを抽出(再サンプリング)する

・            によって重み       を決定

・  から 個のサンプル         を生成

SIRの手順:

・サンプルを抽出できる分布   を用意(提案分布) q(x)

x

(1), x

(2), . . . , x

(L)q(x)

wl =p̃(x(l))/q(x(l))

PLn=1 p̃(x

(n))/q(x(n))w1, w2, . . . , wL

w1, w2, . . . , wL (x(1), x

(2), . . . , x

(L))Xr L

L

テキスト該当箇所:p21,22

Page 14: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

SIR:原理 14

・再サンプリングされた値の  累積分布関数:

:特性関数

Pr(Xr

a) =X

l:x(l)a

w

l

=

X

l:x(l)a

p̃(x(l))

q(x(l))

LX

n=1

p̃(x(n))

q(x(m))

=

1

L

LX

l=1

I(x(l) a)p̃(x(l))

q(x(l))

1

L

LX

n=1

p̃(x(n))

q(x(n))

Pr(Xr a) !

ZI(x a)

p̃(x)

q(x)q(x)dx

Zp̃(x)

q(x)q(x)dx

=

ZI(x a)p̃(x)dxZ

p̃(x)dx

=

ZI(x a)p(x)dx

の累積分布関数 p(x)

テキスト該当箇所:p21,22

Page 15: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

15

目次 基礎事項の確認 n  確率の基本法則

n  グラフィカルモデル

n  サンプリング法

確率推論問題

状態推定

確率伝搬法

Page 16: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

確率推論問題 16 16

ベイズの定理:

X :未知の(興味のある)確率変数 :観測可能な確率変数 Y

:事後分布 (posterior distribution) :事前分布 (prior distribution) :尤度関数 (likelihood function) p(y|x)

p(x|y)

p(x|y) = p(y|x)p(x)p(y)

p(x)

確率推論問題:  の観測に基づいて,事後分布    を求めること p(x|y)Y

最大事後確率推定: を観測したとき,推定値    が正しい確率は Y = y

o

X = x̂

Pr(X = x̂, Y = y

o

) = p(x̂|yo

)p(yo

)

正しい確率が最大(誤り確率が最小)の推定値は x̂map = argmax

xi

p(x

i

|yo

)

テキスト該当箇所:p7,8

Page 17: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

17

確率推論問題(続) 観測データの確率変数: 未知のある確率変数:

事後分布:

X1, . . . , Xm

周辺事後分布:

Xm+1 = am+1, . . . , Xn = an

p(x1, . . . , xm|am+1, . . . , an)

p(xi|am+1, . . . , an), i = 1, . . . ,m

最大事後確率推定(ブロック毎):

最大事後確率推定(成分毎):

{x̂1, . . . , x̂m

} = arg max

x1,...,xm

p(x1, . . . , xm

|am+1, . . . , an)

i

= argmax

xi

p(x

i

|xm+1, . . . , xn

), i = 1, . . . ,m

Pr(X1 = x1|Xm+1 = a

m+1, . . . , Xn

= a

n

)

=Pr(X1 = x1, Xm+1 = a

m+1, . . . , Xn

= a

n

)

Pr(Xm+1 = a

m+1, . . . , Xn

= a

n

)

= ↵

X

x2,...,xm

p(x1, x2, . . . , xm

, a

m+1, . . . , an)

どちらも,素朴に計算すると指数オーダーの計算量. ただし,周辺事後確率の最大化は同時分布の構造(因数分解)を利用することで計算量削減可能 :規格化定数 ↵

テキスト該当箇所:p7,8

Page 18: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

18

目次 基礎事項の確認 n  確率の基本法則

n  グラフィカルモデル

n  サンプリング法

確率推論問題

状態推定

確率伝搬法

Page 19: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

状態空間モデル 19

観測データの確率変数: 興味のある離散時間確率過程(状態):

Y1, . . . , YT

X1, . . . , XT

(一般化された)同時分布の密度関数: p(x1, . . . , xT , y1, . . . , yT )

= p(yT |x1, . . . , xT , y1, . . . , yT�1)p(x1, . . . , xT , y1, . . . , yT�1)

= p(yT |x1:T , y1:T�1)p(x1:T , y1:T�1)

= p(yT |x1:T , y1:T�1)p(xT |x1:T�1, y1:T�1)p(x1:T�1, y1:T�1)

= p(yT |x1:T , y1:T�1)p(xT |x1:T�1, y1:T�1)

· p(yT�1|x1:T�1, y1:T�2)p(xT�1|x1:T�2, y1:T�2)p(x1:T�2, y1:T�2)

...

=TY

t=1

p(yt|x1:t, y1:t�1)p(xt|x1:t�1, y1:t�1)

x1:T = {x1, . . . , xT }

p(y1|x1:1, y1:0) = p(y1|x1)

p(x1|x1:0, y1:0) = p(x1)

テキスト該当箇所:p23

Page 20: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

状態空間モデル(続) 20

p(x1:T , y1:T ) =TY

t=1

p(yt|x1:t, y1:t�1)p(xt|x1:t�1, y1:t�1)

モデルを仮定(マルコフ性)

:システムモデル :観測モデル

=TY

t=1

p(yt|xt)p(xt|xt�1)

p(xt|x1:t�1, y1:t�1) = p(xt|xt�1)

p(yt|x1:t, y1:t�1) = p(yt|xt)

p(x1|x0) = p(x1)

状態変数が離散変数の場合    隠れマルコフモデル(HMM)

が成り立つ

. . .x1 x2 x3 xt

yty1 y2 y3

鎖状グラフィカルモデル:

Xt+1 ??Xt�1|Xt, Xt+1 ??Yt|Xt

テキスト該当箇所:p23,24

Page 21: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

状態空間モデル(続) 21

:システムモデル :観測モデル

一般状態空間モデル: xt ⇠ p(xt|xt�1)

yt ⇠ p(yt|xt)

非線形・非ガウス型状態空間モデル: :非線形関数 :白色雑音

:システムモデル :観測モデル

xt = ft(xt�1, wt)

yt = ht(xt, vt) wt, vt

ft, ht

線形・ガウス型状態空間モデル: :システムモデル :観測モデル

:行列 :白色ガウス雑音

xt = Ftxt�1 +Gtwt

yt = Htxt + vt wt, vt

Ft, Gt, Ht

テキスト該当箇所:p24,25

Page 22: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

重要な分布 22

. . . . . .xtxt�1 xt+1 xTx1

y1 yt�1 yt yt+1 yT

予測分布: p(xt|y1:t�1)

フィルタ分布: p(xt|y1:t)

平滑化分布: 周辺事後分布 p(xt|y1:T )

テキスト該当箇所:p25

Page 23: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

状態推定の手順 23

時刻 Tt� 1 t t+ 1 · · ·

p(xt�1|y1:t�1)予測

p(xt|y1:t�1)

フィルタリング

p(xt|y1:t)予測

p(xt+1|y1:t)

フィルタリング p(xt+1|y1:t+1) · · ·

p(xT |y1:T�1)

p(xT |y1:T )平滑化

· · ·p(xt+1|y1:T )p(xt|y1:T )

テキスト該当箇所:p27

Page 24: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

予測分布 24

から を求める p(xt�1|y1:t�1) p(xt|y1:t�1)

p(xt|y1:t�1) =

Zp(xt, xt�1|y1:t�1)dxt�1

=

Zp(xt|xt�1, y1:t�1)p(xt�1|y1:t�1)dxt�1

=

Zp(xt|xt�1)p(xt�1|y1:t�1)dxt�1

:Markov性

システム モデル

時刻   での フィルタ分布

テキスト該当箇所:p25

Page 25: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

フィルタ分布 25

から を求める p(xt|y1:t�1) p(xt|y1:t)

:Markov性 (観測モデル)

p(xt|y1:t) = p(xt|y1:t�1, yt)

=p(xt, yt|y1:t�1)

p(yt|y1:t�1)

=p(xt, yt|y1:t�1)Rp(xt, yt|y1:t�1)dxt

=p(yt|xt, y1:t�1)p(xt|y1:t�1)Rp(yt|xt, y1:t�1)p(xt|y1:t�1)dxt

=p(yt|xt)p(xt|y1:t�1)Rp(yt|xt)p(xt|y1:t�1)dxt

観測 モデル

時刻   での 予測分布

テキスト該当箇所:p26

Page 26: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

平滑化分布 26

から を求める p(xt+1|y1:T ) p(xt|y1:T )

p(xt|y1:T ) =Z

p(xt, xt+1|y1:T )dxt+1

=

Zp(xt|xt+1, y1:T )p(xt+1|y1:T )dxt+1

=

Zp(xt|xt+1, y1:t)p(xt+1|y1:T )dxt+1

=

Zp(xt, xt+1|y1:t)p(xt+1|y1:t)

p(xt+1|y1:T )dxt+1

=

Zp(xt+1|xt, y1:t)p(xt|y1:t)

p(xt+1|y1:t)p(xt+1|y1:T )dxt+1

= p(xt|y1:t)Z

p(xt+1|xt)

p(xt+1|y1:t)p(xt+1|y1:T )dxt+1

有向分離(d-separation)

テキスト該当箇所:p26,27

Page 27: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

有向分離 27

d-separation

. . . . . .

p(xt, y1:T |xt+1) = p(xt|xt+1, y1:T )p(y1:T |xt+1)積法則を用いると…

p(xt, y1:T |xt+1) = p(xt, y1:t, yt+1:T |xt+1)

= p(xt, y1:t|xt+1)p(yt+1:T |xt+1)

= p(xt|xt+1, y1:t)p(y1:t|xt+1)p(yt+1:T |xt+1)

= p(xt|xt+1, y1:t)p(y1:t, yt+1:T |xt+1)

= p(xt|xt+1, y1:t)p(y1:T |xt+1)

条件付き独立性を用いると… :条件付き独立

xtxt�1 xt+1 xTx1

y1 yt�1 yt yt+1 yT

テキスト該当箇所:p26,27

Page 28: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

粒子による確率分布の近似 28

連続分布である      や     を複数の「粒子」(サンプル)による離散分布で近似する

p(xt|y1:t�1) p(xt|y1:t)

xt

確率密度関数

xt

近似

累積分布関数

xt

xt

近似

テキスト該当箇所:p28

Page 29: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

粒子フィルタの手順 29

       を近似するサンプル:             

を近似するサンプル:             

予測

を近似するサンプル:             

フィルタリング

p(xt�1|y1:t�1)

p(xt|y1:t�1)

p(xt|y1:t) {x(i)t , i = 1, . . . , L}

{x(i)t�1, i = 1, . . . , L}

{x̂(i)t , i = 1, . . . , L}

テキスト該当箇所:p28

Page 30: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

粒子フィルタ:予測 30

非線形・非ガウス型状態空間モデル:

テキスト該当箇所:p28,29

xt = ft(xt�1, wt)

予測分布: p(xt|y1:t�1) =

Zp(xt|xt�1)p(xt�1|y1:t�1)dxt�1

=

Z ⇢Zp(xt, wt|xt�1)dwt

�p(xt�1|y1:t�1)dxt�1

=

Z ⇢Zp(xt|xt�1, wt)p(wt|xt�1)dwt

�p(xt�1|y1:t�1)dxt�1

=

Z ⇢Z� (xt � ft(xt�1, wt)) p(wt)dwt

�p(xt�1|y1:t�1)dxt�1

⇡ 1

L

LX

i=1

⇣xt � ft

⇣x

(i)t�1, w

(i)t

⌘⌘

Page 31: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

粒子フィルタ:予測(続) 31

粒子フィルタによる予測分布の計算手順:

・時刻   の状態のフィルタ分布      を近似する粒子           を用意 ・システム雑音の分布   からの 個のサンプル       を生成 ・時刻  の状態の予測分布      を近似する粒子を次で計算

t� 1

t

p(xt�1|y1:t�1)

p(xt|y1:t�1)

{x(i)t�1, i = 1, . . . , L}

p(wt) L {w(i)t , i = 1, . . . , L}

(i)t = ft(x

(i)t�1, w

(i)t ), i = 1, . . . , L

テキスト該当箇所:p28,29

Page 32: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

粒子フィルタ:フィルタリング 32

フィルタ分布: p(xt|y1:t) =

p(yt|xt)p(xt|y1:t�1)Rp(yt|xt)p(xt|y1:t�1)dxt

/ p(yt|xt)p(xt|y1:t�1)

提案分布(既にサンプルあり) p(x)

q(x)

SIRの利用

粒子フィルタによるフィルタ分布の計算手順:

・時刻  の状態の予測分布      を近似する粒子           を用意 ・確率質量が      

   である     上の離散分布から  回再サンプリングすることで,時刻  の状態のフィルタ分布      を近似する粒子         を得る

t p(xt|y1:t�1)

{x̂(i)t , i = 1, . . . , L}

p(yt|x̂(i)t )

PLn=1 p(yt|x̂

(n)t ) {x̂(i)

t , i = 1, . . . , L}

t

{x(i)t , i = 1, . . . , L}p(xt|y1:t)

L

テキスト該当箇所:p29,30

Page 33: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

カルマンフィルタ 33

線形・ガウス型状態空間モデルの場合,     と     はガウス分布になるので,条件付期待値と共分散行列だけを追いかければよい 

予測分布: フィルタ分布:

p(xt|y1:t�1) p(xt|y1:t)

E[Xt|y1:s] = x̄t|s

E[(Xt � x̂t|s)(Xt � x̄t|s)T |y1:s] = Pt|s

条件付き期待値: 条件付き共分散行列:

p(xt|y1:t�1) = N (x̄t|t�1, Pt|t�1)

p(xt|y1:t) = N (x̄t|t, Pt|t)

カルマンフィルタ:

フィルタリング:

予測:

Kt = Pt|t�1HTt (HtPt|t�1H

Tt +Rt)

�1

x̄t|t = x̄t|t�1 +Kt(yt �Htx̄t|t�1)

Pt|t = Pt|t�1 �KtHtPt|t�1

x̄t+1|t = Ftx̄t|t

Pt+1|t = FtPt|tFTt +GtQtG

Tt

テキスト該当箇所:p30,31

Page 34: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

34

目次 基礎事項の確認 n  確率の基本法則

n  グラフィカルモデル

n  サンプリング法

確率推論問題

状態推定

確率伝搬法

Page 35: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

35

確率伝搬法の原理 同時確率分布の分解:

必ずしも全ての条件が有効ではない

p(x1, . . . , xn) = p(x1)p(x2, . . . , xn|x1)

= p(x1)p(x2|x1)p(x3, . . . , xn|x1, x2)

= p(x1)p(x2|x1)p(x3|x1, x2) · · · p(xn|x1, x2, . . . , xn�1)

p(x1, x2, x3, x4, x5)

= p(x1)p(x2|x1)p(x4|x1, x2)p(x3|x1, x2, x4)p(x5|x1, x2, x3, x4)

= p(x1)p(x2|x1)p(x4|x1)p(x3|x4)p(x5|x4)

具体例:

Pr(X1 = x1|X3 = a3) =Pr(X1 = x1, X3 = a3)

Pr(X3 = a3)

= ↵

X

x2,x4,x5

p(x1, x2, a3, x4, x5)

= ↵

X

x2,x4,x5

p(x1)p(x2|x1)p(X3 = a3|x4)p(x4|x1)p(x5|x4)

= ↵p(x1)

X

x2

p(x2|x1)

! X

x4

p(X3 = a3|x4)p(x4|x1)

X

x5

p(x5|x4)

!!

3乗から2乗のオーダーに

分配法則により  ローカルな   周辺化へ

テキスト該当箇所:p33,34

Page 36: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

36

ファクターグラフ 多変数関数の因子分解を表すグラフ

多変数関数: (       は       の部分集合)

関数ノード:ローカル関数    に対応 変数ノード:変数  に対応 ノード接続ルール:

   に対応する関数ノードと  に含まれる変数に対応する変数ノードがエッジで接続される

f(x1, x2, . . . , xn) = f1(A1)f2(A2) · · · fm(Am)

A1, A2, . . . , Am x1, x2, . . . , xn

fi(Ai)xj

fi(Ai) Ai

f1(x1)

f2(x1, x2) f3(x1, x4)

f4(x3, x4) f5(x4, x5)

x1

x2

x3 x5

x4

関数ノード 変数ノード

具体例: p(x1, x2, x3, x4, x5)

= p(x1)p(x2|x1)p(x3|x4)p(x4|x1)p(x5|x4)

= f1(x1)f2(x1, x2)f4(x3, x4)f3(x1, x4)f5(x4, x5)

x1

x2

x3

x4

x5

テキスト該当箇所:p11,12

Page 37: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

37

和-積 アルゴリズム ファクターグラフで表現された多変数関数

の周辺化関数

をファクターグラフ上で計算するメッセージ伝搬アルゴリズム

f(x1, x2, . . . , xn) = f1(A1)f2(A2) · · · fm(Am)

g

r

(xr

) =X

x1,...,xn\xr

f(x1, . . . , xn

)

周辺化関数計算の手順: 1.                      からファクターグラフ を作る

2.  求めたい周辺化関数を   とするとき,変数ノード  を根と する木としてファクターグラフを描き直す

3.  木の下側(葉側)のノードから上側(根側)のノードの順に以下に 説明する処理のルールに従って計算する

f(x1, x2, . . . , xn) = f1(A1)f2(A2) · · · fm(Am)

gr(xr) xr

テキスト該当箇所:p34

Page 38: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

38

和-積 アルゴリズム(続) 変数ノード  での処理: 変数ノード  から直接つながっている関数ノード  へのメッセージ

は  に接続するノードの集合 はノード から  に届いたメッセージ

が葉のときは

fi

xk

fj fl

Mfj→xk(xk) Mfl→xk(xk)

Mxk→fi(xk) = Mfi→xk(xk)Mfl→xk(xk)

xk fi

M

xk!fi(xk

) =Y

a2N(xk)\fi

M

a!xk(xk

)

N(xk) xk

M

a!xk(xk

) a xk

xk

xk

M

xk!fi(xk

) = 1

テキスト該当箇所:p35

Page 39: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

39

和-積 アルゴリズム(続) 関数ノード  での処理: 関数ノード  から直接つながっている変数ノード  へのメッセージ

xk

fi

xj xl

Mxj→fi(xj) Mxl→fi(xl)

Mfi→xk(xk) =!

xj ,xl

fi(xk, xj, xl)Mxj→fi(xj)Mxl→fi(xl)

fifi xk

M

fi!xk(xk

) =X

Ai\xk

0

@f

i

(Ai

)Y

a2Ai\xk

M

a!fi(a)

1

A

はノード から  に届いたメッセージ

が葉のときは

aMa!fi(a) fi

M

fi!xk(xk

) = f

i

(xk

)fi

テキスト該当箇所:p35,36

Page 40: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

40

和-積 アルゴリズム(続) ルートノード  での処理: ルートの変数ノード  での処理

xr

xr

M

xr (xr

) =Y

a2N(xr)

M

a!xr (xr

) = g

r

(xr

)

テキスト該当箇所:p36

Page 41: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

41

和-積 アルゴリズムのしくみ

: を介して  に繋がって いる変数の集合

周辺化関数:

set of all variable nodes:

xr

a

Ma→xr(xr)

Ba

g

r

(xr

) =X

x1,...,xn\xr

f(x1, . . . , xn

)

ファクターグラフが木構造をもつと仮定すると f(x1, . . . , xn

) =Y

a2N(xr)

F

a

(xr

, B

a

) Ba a xr

という形に因数分解可能.

ルートノードでの処理

g

r

(xr

) =X

x1,...,xn\xr

Y

a2N(xr)

F

a

(xr

, B

a

)

=Y

a2N(xr)

X

Ba

F

a

(xr

, B

a

)

!

=Y

a2N(xr)

M

a!xr (xr

)

M

a!xr (xr

)def

=X

Ba

F

a

(xr

, B

a

)ただし, ←  以下の情報で計算可能 a

テキスト該当箇所:p36,37

Page 42: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

補足:和と積の順序の交換について 42

X

x1,x22{0,1}

Y

a2{f1,f2}

F

a

(xr

, B

a

)

=X

x1,x22{0,1}

F

f1(xr

, x1)Ff2(xr

, x2)

= F

f1(xr

, x1,0)Ff2(xr

, x2,0) + F

f1(xr

, x1,1)Ff2(xr

, x2,0)

+ F

f1(xr

, x1,0)Ff2(xr

, x2,1) + F

f1(xr

, x1,1)Ff2(xr

, x2,1)

= (Ff1(xr

, x1,0) + F

f1(xr

, x1,1))(Ff2(xr

, x2,0) + F

f2(xr

, x2,1))

=

X

x1

F

f1(xr

, x1)

! X

x2

F

f1(xr

, x2)

!

=Y

a2{f1,f2}

X

Ba

F

a

(xr

, B

a

)

!

xr

x1 x2

f1 f2

N(xr) = {f1, f2}Bf1 = {x1}Bf2 = {x2}

簡単な構成のグラフの例:

Page 43: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

43

和-積 アルゴリズムのしくみ(続) 関数ノード に直接接続する変数ノードを        とし, 変数ノード   を介して につながる全ての変数の集合を   とする

set of all variable nodes:

xr

a

xa,m

Ba,m

Ma→xr(xr)

Mxa,m→a(xa,m)

という形にかけるので

a xr, xa,1, ..., xa,M

xa,m a Ba,m

Fa(xr, Ba) = a(xr, xa,1, . . . , xa,M )Ga,1(xa,1, Ba,1) · · ·Ga,M (xa,M , Ba,M )

テキスト該当箇所:p37.38

関数ノードでの処理

M

xa,m!a

(xa,m

)def

=X

Ba,m

G

a,m

(xa,m

, B

a,m

)ただし, ←   以下の情報で計算可能 xa,m

M

a!xr (xr

)

=X

Ba

a(xr

, x

a,1, . . . , xa,M

)MY

m=1

G

a,m

(xa,m

, B

a,m

)

=X

xa,1,...,xa,M

a(xr

, x

a,1, . . . , xa,M

)MY

m=1

X

Ba,m

G

a,m

(xa,m

, B

a,m

)

=X

xa,1,...,xa,M

a(xr

, x

a,1, . . . , xa,M

)Y

xa,m2N(a)\xr

M

xa,m!a

(xa,m

)

Page 44: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

44

とかけるので

和-積 アルゴリズムのしくみ(続)

set of all variable nodes:

xr

xa,m

a

b

Ba,m,b

Ma,xr(xr)

Mxa,m→a(xa,m)

Mb→xa,m(xa,m)

変数ノード  にノード   を介してつながる全ての変数の集合: xa,m Ba,m,b

G

a,m

(xa,m

, B

a,m

) =Y

b2N(xa,m)\a

F

a,b

(xa,m

, B

a,m,b

)

変数ノードでの処理

M

xa,m!a

(xa,m

)

=X

Ba,m

Y

b2N(xa,m)\a

F

a,b

(xa,m

, B

a,m,b

)

=Y

b2N(xa,m)\a

X

Ba,m,b

F

a,b

(xa,m

, B

a,m,b

)

=Y

b2N(xa,m)\a

M

b!xa,m(xa,m

)

b( 6= a)

テキスト該当箇所:p38,39

Page 45: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

45

和-積アルゴリズムの注意点

1.            などを           のようにおく  2.  周辺事後確率の計算を周辺化関数の計算に帰着させる 3.  ファクターグラフを作成 4.  和-積アルゴリズムを実行(観測値がある場合は以下のようにする)

の観測値が  のとき

p(xr|xi, xj , xk, xl, . . .) f(xr, xi, xj , xk, xl, . . .)

xk ak M

xk!fi(xk

) = �

xk,ak

確率推論への適用法:

グラフのループについて: • ループがある場合にはどのような解が得られるか理論的な保証はないが,経験的に多くの応用でよい結果が得られる • ループがある場合の理論的な説明付けや収束特性解析,対策法など

ü  情報幾何に基く解釈 ü  ベーテ自由エネルギーの停留点 ü  密度発展法 ü  EXITチャート法 ü  ガウス近似法 ü  一般化確率伝搬法

テキスト該当箇所:p39

Page 46: 通信のための確率推論の基礎kazunori/paper/cq201610...確率変数 の同時確率分布 に対応する ベイジアンネットワークは次の性質をみたす有向非巡回グラフ(矢印

46

まとめ • 確率推論の手法を理解するのに必要な基礎事項の復習 • 確率変数と確率の基本法則 • ベイズ則 • 条件付き独立とグライフィカルモデル • サンプリング法(棄却サンプリング,SIR)

• ベイズ則に基づく確率推論(周辺事後分布)

• マルコフ性を用いた状態空間モデルの導出と,予測とフィルタフィングによる逐次的な状態推定および平滑化による周辺事後分布の導出

• 確率伝搬法としてファクターグラフ上の和-積アルゴリズムを説明