Issuu on Google+

ガウス分布におけるベイズ理論,最大尤度, 及び 逐次推定に関する発表 Koh Takeuchi 平成 20 年 5 月 29 日

2.2.3

Bayes’ theorem for Gaussian variables

2.3.1 章と 2.3.2 章ではベクトル x を 2 つのベクトル x = (xa , xb ) に分割したのち, 条件付き分布 p(xa |xb ) と周辺分布 p(xa ) を求めた.このとき p(xa |xb ) の平均値 µa|b は xb の線形関数であった. 本 2.3.3 章では既知のガウシアン周辺分布 p(x) と条件付きガウス分布 p(y|x)(平 均値は x の線形関数, 共分散成分は x と独立) が与えられている.これは Liner Gaussian model (Rowies and Ghahramani,1999) の 1 例であり,後半の 8.1.4 章で 詳しく学習することになる.周辺分布 p(y) と条件付き分布 p(x|y) を次のように定 める. p(x) = N (x|µ, Λ−1 )

(2.99) −1

p(y|x) = N (y|Ax + b, L )

(2.100)

µ, A, b は平均値,Λ, L は精度行列である.また x が M 次元,y が D 次元の場合, 行列 A は D × M の行列になる. x と y の同時分布を求めるために,まず z を定義する. ( ) x z = (2.101) y

1


次に同時分布の自然体数を取る.

ln p(z) = ln p(x) + ln p(y|x) ( ) 1 1 = ln exp − (x − µ)τ Λ(x − µ) D −1 2 2 (2π) | Λ | ( ) 1 1 + ln exp − (y − Ax − b)τ L(y − Ax − b) D −1 2 2 (2π) | L | 1 1 = − (x − µ)τ Λ(x − µ) − (y − Ax − b)τ L(y − Ax − b) + const (2.102) 2 (2 ) 1 τ 1 = − (x − µτ )Λ(x − µ) − (y τ − xτ Aτ − bτ )L(y − Ax − b) + const 2 2 これは z の 2 次関数であるから,p(z) はガウス分布に従うことがわかる.ln p(z) の 2 次項から精度行列を求める.

1 1 (ln p(z) の 2 次項) = − xτ Λx − (y τ − xτ Aτ )L(y − Ax) + const 2 2 1 τ 1 1 1 = − x (Λ + Aτ ΛA)x − y τ Ly + y τ LAx + xτ Aτ LY 2 2 2 ( )2 ( ) τ τ 1 Λ + A ΛAx −A Ly = − xτ y τ 2 −LAx −Ly )( ) ( )τ ( 1 x Λ + Aτ ΛA −Aτ L x = − 2 y −LA −L y 1 = − z τ Rz 2 ( ∵

(2.103) (

R≡

Λ + Aτ ΛA −Aτ L −LA −L

))

したがって z のガウス分布は精度行列 R を持つことがわかり,さらに共分散行列 は精度行列の逆行列から得られるので,(2.76) より

( cov[z] = R−1 =

Λ−1 Λ−1 Aτ AΛ−1 L−1 + AΛ−1 Aτ

) (2.104)

以上より z の共分散行列が得られた.同様にして,ln p(z) の 1 次項から z のガウ ス分布の平均値を求める.

2


1 1 (ln p(z) の 1 次項) = − (−xτ Λx − µτ Λx) − (−y τ Lb + xτ Aτ Lb − bτ y + bτ LAx) 2 2 = xτ Λµ + y τ Lb − xτ Aτ Lb ( )τ ( ) x Λµ − Aτ Lb = (2.105) y Lb これらより (2.71) の結果から指数部分の線形項は xτ Σ−1 µ なので z の平均値は,

(

Λµ − Aτ Lb Lb

E[z] = R−1

) (2.106)

となるので,(2.105) より

(

) µ Aµ + b

E[z] =

(2.107)

が得られた. 次に周辺分布 p(y) の式を求める.(2.92) や (2,93) のように周辺分布は精度行列 の分割行列を使うと簡単な形で表される.(1.105) と (1.108) から p(y) の平均値と 共分散を求める.

E[y] = Aµ + b −1

cov[y] = L

(2.108) −1

+ AΛ A

τ

(2.109) (2.110)

特別なケースとして A = I の場合,この結果は 2 つのガウシアンの畳み込みにな り,平均は両者の平均値を足しあわせたもの,共分散は両者の共分散を足しあせ たものになる. 以上から条件付き分布 p(x|y) を得る.(2.73) と (2.75) では精度行列の分割行列を 使うと条件付き分布が簡単な形で表されていた.これらの結果を (2.105) と (2.108) に用いると,

E[x|y] = µx|y = Λ−1 xx {Λxx µx − Λxy (y − µy )} = (Λ + Aτ LA)−1 {(Λ + Aτ LA)µ + Aτ L(y − Aµ − b)} = (Λ + Aτ LA)−1 {Aτ L(y − b) + Λµ} τ

−1

cov[x|y] = (Λ + A LA)

(2.111) (2.112)

3


以上の結果をまとめると x の周辺ガウス分布と y の x による条件付きガウス分 布は

p(x) = N (x|µ, Λ−1 ) p(y|x) = N (y|Ax + b, L−1 )

(2.113) (2.114)

となり,y の周辺分布と x の y による条件付き分布は

p(x) = N (y|Aµ + b, (Λ + Aτ LA)−1 )

(2.115)

p(x|y) = N (x|Σ {Aτ L(y − b) + Λµ} , Σ)

(2.116)

(

) ∵ Σ ≡ (Λ + Aτ LA)−1

となる.

4

(2.117)


2.2.4

Maximum liklifood for the Gaussian

データセット X = (x1 , x2 , ..., xn ) が与えられたとき,xn が多変数ガウス分布に よって独立に引き出されているならば,最大尤度から分布のパラメータを推定で きる.尤度関数の対数は次の式から得られる.

ND N 1∑ ln(2π) − ln | Σ | − (xn − µ)τ Σ−1 (xn −(2.118) µ) 2 2 2 n=1 N

ln p(X|µ, Σ) = −

尤度関数は x から得られる次の2つの値のみによって定められる. N ∑

xn ,

n=1

N ∑

xn xτn

(2.119)

n=1

これらはガウス分布の十分統計値と知られている.(C.19) を用いることで,次の 式から対数尤度の導関数が得られる.

∑ ∂ ln p(X|µ, Σ) = Σ−1 (xn − µ) ∂µ n=1 N

(2.120)

次に導関数の値を 0 にするために,最尤推定の平均値を得る.

µM L

N 1 ∑ = xn N n=1

(2.121)

Σ についての (2.118) 対数尤度の最大化はより複雑である.最も簡単な方法は対 称制約を無視し,結果として得られた解が要求されたように対称であることを示 すことであるこの結果の交互誘導は,対称性と正定性制約を明確に示し,Magnus と Neudecker によって 1999 年に示された.解は以下の数式の形を取る. ΣM L =

N 1 ∑ (xn − µM L )(xn − µM L )τ N n=1

(2.122)

この式は µ と Σ を同時に最大化したものであるから,µM L を含む.(2.121) の解 µM L は ΣM L によらない.そのため,まず µM L を求めた後に,この式を用いるこ とで ΣM L を求められる. また,最尤推定法の推定値が真の分布のもとに評価されているとすれば,次の

5


式が得られる. N 1 ∑ E[µM L ] = E[ xn ] N n=1 N 1 ∑ = E[xn ] N n=1

=

N 1 ∑ µ N n=1

= µ

(2.123)

N 1 ∑ (xn − µM L )2 ] N n=1 ] N [ 1 ∑ 2 = E[(xn − µM L ) ] N n=1 ] N [ 1 ∑ 2 = E[(xn − µ + µ − µM L ) ] N n=1 ] N [ 1 ∑ 2 2 = E[(xn − µ) ] + 2E[(xn − µ)(µ − µM L )] + E[(µ − µM L ) ] N n=1

E[ΣM L ] = E[

] N [ 1 ∑ 2 = Σ+ 2E[(xn − µ)(µ − µM L )] + E[(µ − µM L ) ] N n=1 (2.124) また次の式が成り立つので,

6


[ ] N N 1 ∑ 2E[(xn − µ)(µ − µM L )] = 2E (xn − µ)( µ − xn ) N N n=1 [ ] N ∑ 1 = 2(− )E (xn − µ) (xn − µ) N n=1 1 )E[(xn − µ)((x1 − µ) + (x2 − µ) + · · · + (xN − µ))] N N 2 2 ∑ 2 = − E[(xn − µ) ] = − 2 [(xn − µ)2 ] N N n=1 = 2(−

= −

2 Σ N

[ ] [( ∑ N N )2 ] 1 ∑ 1 2 E[(µ − µM L ) ] = E ( xn − µ) = E (xn − µ) N n=1 N n=1 [ ] N 1 ∑ 2 = E (xn − µ) N 2 n=1 2

=

Σ N

Σ 2 Σ+ N N N −1 = Σ N

E[ΣM L ] = Σ −

(2.124) 最尤推定法による平均値は真の平均値と一致している.だが,共分散の推定値 ˜ を定義することで偏りを修 は真の共分散よりも小さくなり偏りがある.そこで Σ ˜ を次のように定める. 正する.(2.122) と (2.124) から,Σ

1 ∑ (xn − µM L )(xn − µM L )τ N − 1 n=1 N

˜ = Σc

˜ が得られた. したがって真の値 Σ と一致する推定量 Σ

7

(2.125)


2.2.5

2.3.5 Sequential estimation

2.3.4 ではデータセット x から多変数ガウス分布のパラメータ µ と Σ を最尤推定 法によって得た.ここでは逐次推定を最大尤度に用いるための一般的な議論をす る.逐次推定はデータ点を一つずつ処理,廃棄していくので,オンラインアプリ ケーションや,データセットが膨大なためにすべてのデータ点の一括処理ができ ない場合などで威力を発揮する. (N ) (2.121) で得た平均値 µM L の最尤推定値が,N 個の観測に依拠している場合,µM L と書くことにする.最後のデータ点 xN の寄与を分離して考えるために,次のよう に式を変換する. (N ) µM L

N 1 ∑ = xn N n=1 N 1 1 ∑ = XN + xn N N n=1

1 N − 1 (N −1) XN + (µM L ) N N 1 (N −1) (N −1) = µM L + (XN − µM L ) N

=

(2.126)

この結果から次のようなことがわかる。まず N − 1 個のデータ点から計算した (N −1) µM L から µ の推定値を得たとする.その後,新たに生じたデータ点 xN を使っ (N −1) (N −1) て誤差信号を表す (XN − µM L ) に,古い推定値 µM L を N1 に比例させて動かし (N ) て,µM L から新しい µ を得る。するとデータ数 N が増えていくしたがって逐次的 なデータ点の寄与は次第に小さくなっていく. (2.126) の計算結果は,(2.121) のすべてのデータ点を一括処理した場合に得られ る平均値と一致する.だが,つねにこの手法で逐次推定のアルゴリズムが得られ るわけではない.そこでより一般的な形式の逐次学習を求めるために,RobbinsMonro のアルゴリズムを用いる.まず,同時確率分布 p(z, θ) によって支配されて いる 1 組の確率変数 z とθ を考える.この z の θ による条件付き期待値から決定性 の関数 f (x) を定義する. ∫ f(θ) ≡ E[x|θ] = zp(z|θ)dz (2.127) これは Figure(2.10) に描かれており,またこのような手法で定義された関数は回 帰関数と呼ばれている. さて今回のゴールを f (θ∗ ) = 0 を満たす底 θ∗ を求めることとする.観測したデー タセットが大きければ,回帰関数を直接求めて θ∗ を推定することが出来る.しか し,z を 1 度に 1 つずつしか観測することができず,さらにその時々に得られる観 測データ点に対応した θ∗ の逐次推定の値を得たい場合を考えてみて欲しい.この ような問題を解決するための一般的な解法は前述の Robbins と Monro が 1951 年

8


によって示した.まず z の条件付き期待値は有限であることから,次の式が得ら れる.

E[(z − f )2 |θ] < ∞

(2.128)

また,一般性を失うことなく,Figure2.10 のような場合では次のように考えるこ とが出来る. { > 0 (θ > θ∗ ) f (θ) < 0 (θ < θ∗ )

Robbinsons-Monro 手法は底 θ∗ の逐次推定の値を次の (2.129) のように定義する. θ(N ) = θ(N −1) + aN −1 z(θ(N −1) )

(2.129)

z(θ(N ) は θ が θ(N ) を取るときに得られる z の値であり,係数 an は正の値で以下の 条件をもつ. lim aN = 0

N →∞ ∞ ∑

(2.130)

aN = ∞

(2.131)

a2N < ∞

(2.132)

n=1 ∞ ∑ n=1

(2.129) の推定数列は実際に底に収束すると (Robbins and Monro, 1951;Fukunaga,1990) では示されている.まず (2.130) は逐次補正がマグニチュード級に減少していき, その結果,処理が一定の値に収束していくためにある.次に (2.131) はアルゴリズ ムが底よりも手前に落ちていかないために存在し,最後に (2.132) は累積雑音が収 束点を持ち,累積雑音が発散してしまうのを防ぐために存在している. それではいかにして一般的な最大尤度問題が,Robbins-Monro アルゴリズムに よって逐次的に解決されるかを示そう.定義より,最尤推定 θM L は対数尤度関数 の定留点である.したがって次の式を満たす. { }¯ N ¯ 1 ∑ ∂ ¯ = 0 (2.133) ln p(xn |θ) ¯ ¯ ∂θ N n=1

θM L

導関数と和を動かして,N を ∞ まで飛ばす極限を取ると次のようになる. [ ] N ∑ ∂ ∂ lim f rac1N ln p(xn |θ) = Ex ln p(x|θ) (2.134) N to∞ ∂θ ∂θ n=1

9


したがって,最尤推定の解を求めることで,回帰関数の底 θ∗ を探し出すことが出 来る.これを Robbiins-Monro 手法を用いることによって以下の式を得ることが出 来る.

θ(N ) = θ(N −1) + aN −1

∂ ∂θ(N −1)

ln p(xN |θ(N −1) )

(2.135)

特殊例として,ガウス分布の平均値の逐次推定を考える,θ(N ) がガウス分布の推 (N ) 定平均値の µM L となる場合,確率変数 z は以下の式から得られる.

z =

∂ 1 ln p(xN |µM L , σ 2 ) = (x − µM L ) ∂µM L σ

(2.136)

したがって z の分布は Figure2.11 に描かれたように,平均値 µ のガウス分布とな 2 る.(2.136) を (2.135) と置換すると,係数 aN が aN = σN を満たすように選べば, (2.126) の一変量形式を得られる. また,今回は一変数の場合に焦点を当てていた が,係数 aN に (2.130)-(2.132) と同じ条件付けをしておけば,多変数の場合におい ても等しく用いることが出来ると 1965 年に Blum によって示されている.

10


Semi about gaussian