スライド 1

第7回の演習
混合二項分布( x{0, 1, 2,...,N} N は既知)
N x
N x
N x
p( x | w)  a  p1 (1  p1 )
 (1  a)  p2 (1  p2 ) N  x
x
x
w  {a, p1, p2 ; 0  a  1, 0  p1  1, 0  p2  1} について
(1)
( 2)
(1)潜在変数を y  ( y , y ) {(1,0), (0,1)}として p( x, y | w )を表せ
(2)ベイズの定理
p ( y | x, w ) 
p ( x, y | w )
 p ( x, y | w )
により p( y | x, w ) を表せ
y
(3)n個のデータ x  {x1 ,..., xn }が与えられたときの
~ ) を計算せよ( nk ,  k を用いて表せ)
Q関数 Q(w; w
(4)EM法による尤度最大化のためのアルゴリズムを導け
演習の略解
(1) p( x, y | w)  a N  p x (1  p ) N  x 
   1

1
x
  

(2) p( y (1)  1 | x, w) 
p( y
(3)
( 2)
y (1)


N x
N x


(
1

a
)
p
(
1

p
)


2
x 2
 


ap1x (1  p1 ) N  x
ap1x (1  p1 ) N  x  (1  a) p2x (1  p2 ) N  x
(1  a) p2x (1  p2 ) N  x
 1 | x, w)  x
ap1 (1  p1 ) N  x  (1  a) p2x (1  p2 ) N  x
y( 2)
x  {x1 ,..., xn } (独立)
y  { y1 ,..., yn }
yi  ( yi(1) , yi( 2) )
~) 
~ ) logp(x, y | w)
Q(w; w
 p(y | x, w
y
n
n
j 1
i 1
~ ) log
  ...  p( y j | x j , w
 p( xi , yi | w)
y1
y2
yn
n
~ ) log p( x , y | w)
  p( yi | xi , w
i
i
i 1
yi
各データ x i を独立とする場合は、Q関数はここまでシンプルに
なるのをお伝えし忘れました。すみません。
演習の略解
~)
(3) Q(w; w

n
 p( y
i 1
i
~ ) log p( x , y | w)
| xi , w
i
i
yi
(1)の結果から、
N
 xi 
N
 yi(1) log a  xi log p1  ( N  xi ) log(1  p1 ) yi( 2) log(1  a)  xi log p2  ( N  xi ) log(1  p2 )  
 xi  より
log p( xi , yi | w)  yi(1) log a  log p1x (1  p1 ) N  x  yi( 2) log(1  a)  log p2x (1  p2 ) N  x   
i
i
i
 p( y | x , w~ ) log p( x , y | w)  p( yi(1)  1| xi , w~ )loga  xi log p1  (N  xi ) log(1 p1)
i
yi
i
i
i
i
N
~
 p( y  1 | xi , w)log(1  a)  xi log p2  ( N  xi ) log(1  p2 )  
 xi 
よって
~ ) n log a  n  log p  n ( N  ) log(1  p )
Q(w; w
1
1 1
1
1
1
1
n
N
n 2 log(1  a)  n2 2 log p2  n2 ( N  2 ) log(1  p2 )    
i 1  xi 
n
n
( 2)
i
ここで
~)
nk   p( yi( k )  1 | xi , w
i 1
k 
1
nk
 p( y
i 1
(k )
i
~ )x
 1 | xi , w
i
(k=1,2)
演習の略解
(4)
~)
Q(w; w
n1 log a  n11 log p1  n1 ( N 1 ) log(1  p1 )
N
n 2 log(1  a)  n2 2 log p2  n2 ( N  2 ) log(1  p2 )    
i 1  xi 
ここで
n
n  n1
n1 log a  n 2 log(1  a)  n1 log a  (n  n1 ) log(1  a)  n1 log 1  (n  n1 ) log
n
n
n1
より
∵
a
n
n
のときQは最大になる。
n1
n / n n  n1
(n  n1 ) / n
log 1

log
はカルバック情報量なので非負
n
a
n
(1  a)
同様の議論より、
n1 1 n
~)
aˆ    p( yi( k )  1 | xi , w
n n i 1
1
1 n
~ )x
pˆ1  
p( yi(1)  1 | xi , w

i
N Nn1 i 1
n
2
1
~ )x
pˆ 2  
p( yi( 2)  1 | xi , w
のときQは最大となる。

i
N N (n  n1 ) i 1
演習の略解
(4)
よってEMアルゴリズムは、
Eステップ
a~~p1xi (1  ~p1 ) N  xi
~
p( y  1 | xi , w)  ~~ xi
a p1 (1  ~p1 ) N  xi  (1  a~) ~p2xi (1  ~p2 ) N  xi
(1)
i
~ )  1  p( y(1)  1 | x , w
~)
p( yi(2)  1 | xi , w
i
i
を全てのi=1,2,…,nについて計算し、
Mステップ
代入
n1 1 n
~)
aˆ    p( yi( k )  1 | xi , w
n n i 1
1
1 n
~ )x
pˆ1  
p( yi(1)  1 | xi , w

i
N Nn1 i 1
2
n
1
~ )x
pˆ 2  
p( yi( 2)  1 | xi , w

i
N N (n  n1 ) i 1
~ w
ˆ
w
の二つを(対数尤度が収束するまで)繰り返す。
演習の略解
 基本的にQ関数の最大化は、
~)
Q ( w; w
0
w
を解く。
 パラメータに制約がある場合はラグランジュの未定乗数法。
 混合比は足して1という制約があるので、カルバック情報量
が0以上ということから導出しました。
他の場合にも、“確率ベクトルである”、“確率密度関数であ
る”という制約のもとで、最小化、最大化を考えるときに便利
な場合があります。