EMアルゴリズム

EMアルゴリズム:不完全データに対し、尤度が大きくなるようにパラメータを決定する一般的な枠組み
不完全データにおける観測されない変数→隠れ変数(latent variable)と呼ぶ
クラスタリングにおいて、クラスタに対応する確率変数を隠れ変数と考えることが多い。

EMアルゴリズム
入力:不完全データD
θの初期値は無作為に決める
until収束
 Eステップ:任意の x^{(i) \in D、任意のcについて、 P(c|\bf{x}^{(i)}) を計算
 Mステップ: \theta^{max} = arg {max}_{\theta} Q(\theta | \theta^{\prime})
  \theta^{\prime} = \theta
end until
ただし、(尤度に基づく)Q関数の定義
 Q(\theta;\theta^{\prime} )= \sum_{\bf{x}^{(i)} \in D}  \sum_c P(c|\bf{x}^{(i)} ;\theta^{\prime} ) log P(c,\bf{x}^{(i)} ; \theta)

※最大事後確率推定(MAP推定)を利用した場合のQ関数の定義(事前確率  P(\theta)を考慮)
 Q(\theta;\theta^{\prime} )= log P(\theta) + \sum_{\bf{x}^{(i)} \in D}  \sum_c P(c|\bf{x}^{(i)} ;\theta^{\prime} ) log P(c,\bf{x}^{(i)} ; \theta)