prml復々習レーン 2.3節(発表資料:修正中)
TRANSCRIPT
パターン認識と機械学習(上)
2.3 ガウス分布
__youki__
現在修正中です。
はじめに1変量→多変量で何が変わる?
Ν( x⃗∣⃗μ ,Σ)=1
(2π)D /2
1∣Σ∣
1 /2 exp(−12
(x⃗−μ⃗)TΣ
−1( x⃗−μ⃗))
Ν(x∣μ ,σ2)=
1
(2π)1 /2
1
(σ2)1 /2 exp(−12
(σ2)−1
(x−μ)2)
1変量ガウス分布
多変量ガウス分布(x, μはD次元ベクトル、ΣはD次元の共分散行列)
確率密度の正則化項 変数分布を表す
確率密度の正則化項 変数分布を表す
よくよく眺めれば変数がスカラからベクトルに変わっただけ(とはいえΣによって分布がどう変わるかは分かりづらい?)
アウトライン
● 多変量ガウス分布の変数分布(5スライド)● 多変量ガウス分布の確率密度(7スライド)● 多変量ガウス分布の期待値・分散(4スライド)● 多変量ガウス分布の制約事項(2スライド)
色々と勉強しながら読み進めて見ましたが、まだ体に染み込んで理解できていないので、間違っていたら逐次教えてください。
多変量ガウス分布の変数分布 その11変量標準正規分布と1変量ガウス分布
Ν(x∣μ ,σ2)=
1
(2π)1 /2
1
(σ2)1/2 exp(−
12
(σ2)−1
(x−μ)2)
1変量ガウス分布
Ν(x∣0,02)=
1
(2π)1/2
1
(02)1 /2 exp(−
12
(02)−1 x2
)
1変量標準正規分布
平均を 、分布形状を 変える+μ σ2
平均を 、分布形状を 変える−μ σ−2
多変量ガウス分布の変数分布 その2多変量標準正規分布と多変量ガウス分布
多変量標準正規分布
平均を 、分布形状を 変える
Ν( x⃗∣⃗μ ,Σ)=1
(2π)D /2
1∣Σ∣1 /2 exp(−
12
(x⃗−μ⃗)TΣ
−1( x⃗−μ⃗))
多変量ガウス分布
Ν( x⃗∣0⃗ , Ι)=1
(2π)D /2
1∣Ι∣1/2 exp(−
12
x⃗TΙ−1 x⃗ )
+μ⃗ Σ 平均を 、分布形状を 変える−μ⃗ Σ−1
多変量ガウス分布の変数分布 その3共分散行列ってなんでしたっけ:わかりにくいので修正!
● 共分散行列は変換前後の変数分布の相関度を表す
– 例えばN個の二次元ベクトルXとX'で考えると共分散行列Σは以下のように計算することができる
x⃗=(x1, x2) , x⃗ '=(x '1, x '2) と お く と
Σ=(∑i=1
N(x1−μ1)(x '1−μ '1)
2 ∑i=1
N(x1−μ1)(x '2−μ '2)
2
∑i=1
N(x2−μ2)(x '1−μ '1)
2 ∑i=1
N(x2−μ2)(x '2−μ '2)
2)
共分散行列は元のベクトルXをベクトルX'に変換するためのふたつの操作(基軸方向の拡大縮小と基軸の回転)を表す。
修正中
多変量ガウス分布の変数分布 その5これまでの内容が正しいかプログラムで確認
● 一つ前のスライドで説明したことが正しいかプログラムでテスト
– 二次元標準正規分布にしたがうN個のベクトルXを生成
– N個のベクトルXに行列Σを掛けてN個のベクトルX'を生成
– XとX'の共分散行列Σ'を求める
Σ=(1 00 3)( cos60 o sin60 o
−sin60 o cos60 o)=( 0.5 −0.86602542.59807621 1.5 )
Σ '=(0.53167025 −0.833056372.56744252 1.46541199 )
N=1000の場合
N=10000の場合
Σ '=(0.51859829 −0.869963522.60795867 1.5002641 )
正解値
多変量ガウス分布の確率密度 その1概要
Ν( x⃗∣μ⃗ ,Σ)=1
(2π)D /2
1∣Σ∣
1 /2 exp(−12
( x⃗−μ⃗)T Σ−1
( x⃗−μ⃗))
Ν(x∣μ ,σ2)=
1(2π)
1/2
1(σ
2)1/2 exp(−
12
(σ2)−1
(x−μ)2)
1変量ガウス分布
多変量ガウス分布(x, μはD次元ベクトル、ΣはD次元の共分散行列)
正則化項
正則化項
(2π)1/2
(σ2)1/2
(2π)D/2
∣Σ∣1 /2
-∞から+∞まで積分
D次元ベクトルを-∞から+∞まで積分
非正則化項
非正則化項
多変量ガウス分布の確率密度 その21変量ガウス分布における非正則化項の積分法(後で使う):
間違っているので修正!
Δ=∫−∞
+∞
exp(−1
2σ2 (x2
−2xμ+μ2))dx=∫
−∞
+∞
exp(−x2
2σ2 )dx
Δ2=∫−∞
+∞
∫−∞
+∞
exp(−x2+ y2
2σ2 )dxdy
∫0
+∞
∫0
2π
r⋅exp(−r2
(cos2θ+sin2
θ)
2σ2
)dθ dr=∫0
+∞
∫0
2π
r⋅exp(−r2
2σ2)dr
[−σ2exp(
−r2
2σ2 )]
∞0
[θ]2π0
=(0−(−σ2))(2π−0)
2πσ2
Δ=(2πσ2)1/2
Δ=∫−∞
+∞
exp(−1
2σ2 (x−μ)2)dx
極座標系への変数変換 x=rcosΘ, y=rsinΘ
=
=
=
これは1変量ガウス分布の正則化項の逆数と一致する
負と正の部分の積分で打ち消しあう
修正中
多変量ガウス分布の確率密度 その3マハラノビス距離では共距離分散行列は対称行列とみなせる
Ν( x⃗∣⃗μ ,Σ)=1
(2π)D /2
1∣Σ∣
1 /2 exp(−12
( x⃗−μ⃗)TΣ
−1( x⃗−μ⃗))
マハラノビス距離(Δ)
マハラノビス距離を計算する際には任意の共分散行列は対称行列とみなせる:
Λ=Σ−1、Λs=A+AT
2,Λa=
A−AT
2とおく。ここで Λs は対称行列、Λa は反対称行列を表す
Λ=Λs+Λa となり、任意の行列Λは対称行列と反対称行列に分割できることがわかる
例えば、 Λ=(1 23 4)のときΛs=(1
52
52
4 )、Λs=(0 −12
12
0 )である
ここで、マハラノビス距離はΔ2=(x⃗−μ⃗)T Λs( x⃗−μ⃗)+( x⃗−μ⃗)T Λa( x⃗−μ⃗)と変換でき、
(x⃗−μ⃗)T Λa( x⃗−μ⃗)=0であるため、Δ2=( x⃗−μ⃗)T Λs(x⃗−μ⃗)となる
多変量ガウス分布の確率密度 その4固有値と固有ベクトルによる共分散行列Σの変数変換:確
認!固有ベクトルの方程式を考える
Σ u⃗i=λ i u⃗i ⋯(1)Σ が実数の対称行列である場合 、 固有値が実数になるため 、
固有ベクトルには互い正規直交するものを選ぶことができる 。
u⃗iT u⃗ j=I ij ⋯(2)
た だ し I ij iは単位行列の , j要 素 で あ る。 U次に以下の行列 を定義する。
U=(u⃗1 , u⃗2 ,⋯ , u⃗n) ⋯(3)
U T U=U U T=I ⋯(4)こ の と き 式(1)は以下のように置き換えられる 。
ΣU=U Λ ⋯(5)
UT ΣU=UT U Λ=Λ ⋯(6)(6)を さ ら に 変 形 す る こ と で (2.48) ,(2.49)が以下のように求まる
Σ=U ΣUT=∑i=0
Dλi u⃗i u⃗i
T⋯(2.48)
Σ−1=U ΛU T=∑i=0
D 1λ i
u⃗i u⃗iT
⋯(2.49)
多変量ガウス分布の確率密度 その5固有値と固有ベクトルを用いた変数変換
多変量ガウス分布の確率密度 その6変数変換による拡大率と共分散行列の行列式の導出
yi で定義された新しい座標系でのガウス分布の形について考える 。 そのためにヤコビ行列を用いる 。
J ij=∂ xi
∂ y j
=U ji ⋯ (2.53)
た だ し 、 U ji は行列 U T の要素であり 、 U行列 の正規直交性から、
∣J∣2=∣UT∣2=∣U T∣∣U∣=∣I∣2=1 ⋯ (2.54)ま た 、 共分散行列の行列式∣Σ∣も固有値の積でかけるので
∣Σ∣1 /2
=∏j=1
D
λ j1/2
⋯ (2.55)
(2.53)についてなんとなくしか理解ができていないです。。。
多変量ガウス分布の確率密度 その7多変量ガウス分布の確率密度を求める
p( x⃗)=Ν( x⃗∣⃗μ ,Σ)=1
(2π)D /2
1∣Σ∣
1/2 exp(−12
( x⃗−μ⃗)TΣ
−1( x⃗−μ⃗))
これまでに求めたヤコビ行列の行列式∣J∣と (2.50)を用いると上の式は次のように変換できる
p( y⃗)= p( x⃗)∣J∣=∏j=1
D1
(2π λ j)1 /2
exp(−y j
2
2λ j)
1この結果にたいして 変数ガウス分布の正規化の結果(1.48)を用いると次のように計算できる 。
∫ p( y⃗)=∏j=1
D1
(2πλ j)1/2 ∫
−∞
+∞
exp(−y j
2
2λ j)d y j=∏
j=1
D1
(2π λ j)1/2⋅(2π λ j)
1/2=1
なお 、 1上記赤枠部分の計算結果は 変量ガウス分布の積分と同じ計算方法で求まる
ま た 、 1変量ガウス分布における分母とその積分結果を以下に示す
∫−∞
+∞
exp(−x2
2σ2)dx=√2πσ
2
多変量ガウス分布の期待値・分散 その1期待値の導出
E [ x⃗ ]=∏j=1
D
∫−∞
+∞ 1
(2π)D /2
1
∣Σ∣1/2 exp(−12
( x⃗−μ⃗)TΣ
−1( x⃗−μ⃗)) x⃗ d x⃗
こ こ で z⃗=( x⃗−μ⃗)とおくと上の式は以下のように変形できる
E [ x⃗ ]=∏j=1
D
∫−∞
+∞ 1
(2π)D /2
1
∣Σ∣1 /2 exp(−
12
z⃗TΣ
−1 z⃗)( z⃗+μ⃗)d z⃗
すると指数部分は z⃗ の要素の偶関数であり 、 積分が (−∞ ,+∞)の範囲になる 。
因子 ( z⃗+μ⃗)中の z⃗ Eの項は対称性のため消えることから [ x⃗]は以下となる 。
E [ x⃗ ]=μ⃗このことからガウス分布の平均が x⃗ の期待値となることがわかる 。
多変量ガウス分布の期待値・分散 その2二次モーメントの導出
E多変量ガウス分布では [ xi x j ] Dで与え ら れ る 2個の二次モーメントがあり 、
Eこ れ ら は [ x⃗ x⃗T]の形にまとめられる 。
E [ x⃗ x⃗T]=∏
j=1
D
∫−∞
+∞ 1
(2π)D /2
1
∣Σ∣1/2exp(−
12
( x⃗−μ⃗)TΣ
−1( x⃗−μ⃗)) x⃗ x⃗T d x⃗
こ こ で z⃗=( x⃗−μ⃗)とおくと上の式は以下のように変形できる
E [ x⃗ x⃗T ]=∏j=1
D
∫−∞
+∞ 1
(2π)D /2
1
∣Σ∣1 /2 exp(−12
z⃗T Σ−1 z⃗)( z⃗+μ⃗)( z⃗+μ⃗)T d z⃗
こ こ で μ⃗ z⃗T と μ⃗T z⃗ の項は指数部分の対称性により消える 。
E [ x⃗ x⃗T]=∏
j=1
D
∫−∞
+∞ 1
(2π)D /2
1
∣Σ∣1 /2 exp(−
12
z⃗TΣ
−1 z⃗) z⃗ z⃗T d z⃗+μ⃗ μ⃗T
次のスライドでは赤枠の部分を計算します
多変量ガウス分布の期待値・分散 その3二次モーメントの導出:内容修正!
∫−∞
+∞ 1
(2π)D/2
1
∣Σ∣1/2 exp(−
12
z⃗TΣ
−1 z⃗) z⃗ z⃗T d z⃗ ¿
=∏k=1
D
∫−∞
+∞ 1
(2π)D/2
1
∣Σ∣1/2 ∑
i=1
D
∑j=1
D
u⃗i u⃗ jT yi y j exp(−
yk2
2λk)
=∏k=1
D
∫−∞
+∞ 1
(2π)D/2
1
∣Σ∣1/2 ∑
i=1
D
u⃗i u⃗iT yi
2exp(−yk
2
2λk)
=∑i=1
D
u⃗i u⃗iTλi=Σ
上記結果を用いることで多変量ガウス分布の二次モーメントは以下の通りもとまる
E [ x⃗ x⃗T ]=μ⃗ μ⃗T+Σ
ここの式展開が理解できません。。。分かる人教えてください。。。
修正中
多変量ガウス分布の期待値・分散 その4共分散の導出
cov[ x⃗ ]=E [( x⃗−E [ x⃗ ])( x⃗−E [ x⃗ ])T ]
=E [ x⃗ x⃗T ]−E [ x⃗ E [ x⃗ ]T ]−E [E [ x⃗ ] x⃗T ]+E [E [ x⃗ ]E [ x⃗]T ]
=(μ⃗ μ⃗+Σ)−E [ x⃗ μ⃗T]−E [μ⃗ x⃗T
]+ E [μ⃗μ⃗T]
=(μ⃗ μ⃗+Σ)−(μ⃗μ⃗T)−(μ⃗ μ⃗
T)+(μ⃗μ⃗
T)
=Σ
ガウス分布の制約事項
● ガウス分布は– パラメータが多すぎる→計算量が多い!
● 計算量を抑える方法としては、共分散行列に「対角行列」、「等方共分散行列」、「単位行列」などを利用できるが...
– 単峰性形である→分布の表現範囲が狭い!● ガウス分布の表現力を広げる方法について知りたい場合は
2.3.9節の「ガウス混合分布」などを勉強しよう。
ガウス分布の制約事項(補足)
● 一般対称共分散行列ΣにはD(D+1)/2個の自由パラメータがあることから、大きなDに対してはD^2に応じた行列演算(逆行列の導出や固有値分解等)が必要になる
共分散行列Σ
対称成分はD2−D
2個
D対角成分は 個 D+D2−D
2=
D(D+1)
2
おしまい
#今回一番勉強になったのはlibreofficeの使い方かも