EMアルゴリズム
概要
-
不完全データ(一部欠損)に対する,尤度最大化の枠組み
-
尤度関数$L(\theta ;x,z)$
- $\theta$: パラメータ
- $x$: 観測データ
- $z$: 潜在データあるいは欠損値
- パラメータの最尤推定値は,観測データに対する周辺尤度最大化
- この最適化問題は解析的に解けない
- 繰り返しにより解を求める
繰り返し
- Eステップ
- 現在推定されているパラメータの分布$\theta^{(t)}$の下で,尤度関数の条件付き確率$P(z|x)$に関する期待値を計算
- Q関数とよび単調増加する
- $Q (\theta | \theta^{(t)} ) = E_{Z|x,\theta^{(t)}} [ \log L(\theta ;x,z) ] $
- Mステップ
- $\theta$を更新する
- $\theta^{(t+1)} = argmax_\theta Q (\theta | \theta^{(t)} ) $
例
K個のガウス分布の重ね合わせからなる混合ガウス分布 $p(\bold{x}) = \sum_{k=1}^{K} \pi_k N(\bold{x}| \mu, \sigma_k)$
- パラメータは平均$\mu_k$,分散$\sigma_k$,混合係数$\pi_k$
- 混合係数から潜在変数$\bold{z}$が導入できる$p(\bold{z}) = \Pi_{k=1}^{K} \pi_k^{z_k}$
EMアルゴリズムは次のようになる
- パラメータを初期化し,対数尤度の初期値を計算
- Eステップ: $\bold{z}$の条件付き確率を求める
- Mステップ: パラメータを更新する