EM Algorithm (PRML輪講)

今週のPRML輪講は、Mixture Model and EMでした。EMアルゴリズムとかk-means法とか頻繁に使用されているので、演習にあったプログラミング課題やってみました。与えられた2次元のデータ(1000個)をEMアルゴリズムクラスタリング(Mixture Gaussianを仮定)。

実装はなんでも良いのですが、簡単にできるMATLABで実装。入力データをプロットするとどうやら3つぐらいのクラスタに見えるので、クラスタ数3でEMアルゴリズムを実行し、100回程回すと..

こんな感じ。初期パラメータ値によっては、ここまで上手くいかない場合もある。グラフ中の黒色菱形は、各クラスタの中心(ガウシアンの平均値)です。教科書にあるように、適当な等高線を描きたいのですが、MATLABで楕円を描く方法がわからない。グラフ描くのって、凝りだすと時間がかかる..