EM algorithm(EMアルゴリズム、Expectation Maximization algorithm)について
EMアルゴリズムはいろんなところで使われます。
基本的には未知パラメータの推定方法の一種です。
とりあえず箇条書でまとめます。
提案論文:Maximun likelihood from incomplete data via the EM algorithm.
Dempster AP, Laird NM and Rubin DB. JRSS B. 39,1-38. 1977.
提案者のRubinは欠測分野、因果推論の権威で次の教科書も書いています。

Statistical Analysis with Missing Data (Wiley Series in Probability and Statistics)
- 作者: Roderick J. A. Little,Donald B. Rubin
- 出版社/メーカー: Wiley-Interscience
- 発売日: 2002/09/09
- メディア: ハードカバー
- 購入: 2人 クリック: 24回
- この商品を含むブログ (3件) を見る
教科書:The EM algorithm and its extensions.
McLachlan GJ and Krishnan T. Wiley. (1997)
EMアルゴリズムだけで一冊の本が出ているわけですが、この本はBishop本で紹介されてたので良本なのでしょう(@doryokujinさんはこの本で勉強したらしいです)。

The EM Algorithm and Extensions (Wiley Series in Probability and Statistics)
- 作者: Geoffrey McLachlan,Thriyambakam Krishnan
- 出版社/メーカー: Wiley-Interscience
- 発売日: 2007/08
- メディア: ハードカバー
- 購入: 1人 クリック: 62回
- この商品を含むブログ (1件) を見る
残念ながら日本語で分かりやすく説明されている本はありませんでした。
日本語の本を読むより、Bishop本とHastie本を英語のまま読んだ方が分かりやすかったです笑
また@doryokujinさんお勧めのPDF資料はこちらです。
以下、EMアルゴリズムの説明です。
【EMアルゴリズム】
【計算アルゴリズム】
- パラメータの初期値を決める
- Expectationステップ:未観測データの期待値を求める
- 未観測データのパラメータを計算する
- Maximizationステップ:未観測データを動かして目的関数を最大にするパラメータを求める
- 2と3を繰り返す
混合正規分布の具体例
- この例はBishop本とHastie本の両方でEMアルゴリズムの導入で説明されていました。
- 目的:観測データに平均と分散の違う2つの正規分布を混合した分布を仮定し、パラメータを推定したい。
- mixture model
- 混合効果モデル(mixed model)とは似て非なるものなので注意!
- パラメータ:平均2つ、分散2つ、混合割合1つ
- 5つのパラメータの初期値を決める
- Eステップ:responsibilityを計算する
- Mステップ:パラメータの更新式にresponsibilityを代入してパラメータを更新する
- 対数尤度を評価して収束するまで2と3を繰り返す
【幾何的イメージ】
- 局所解に落ちてしまう例
【Rでの例】
- EMアルゴリズムはパラメータ推定のための計算手順の1つ
- 「EMアルゴリズム」というパッケージがあるわけではなく、いろいろな場面で使われている
- phmmパッケージ
- mlmmmパッケージ
- MFDAパッケージ
【小ネタ】
つまり、、、
EMアルゴリズムをプログラムで実装できれば博士号をとれる!?
かもしれません笑
しかし、、、
原因をつきとめるのがこれまた困難だったりします。