混合ベルヌーイ分布とは
を
次元ベクトル
,
を
次元ベクトル
とします。
は以下の分布に従うと仮定します。
確率分布の平均を求めます。
確率分布の共分散を求めるために、先に
の期待値を
と場合分けして求めます。
まず、の場合です。
確率分布の共分散を求めます。
式の下から3行目の変形は、式
を利用しました。
ここで、確率分布の混合分布を考えます。
ただし、
式が混合ベルヌーイ分布です。
混合ベルヌーイ分布の平均と共分散
混合ベルヌーイ分布の平均を求めます。
混合ベルヌーイ分布の共分散を求めます。
ここで、式を変形するため、
を計算します。
式より、以下が成り立ちます。
ここで、とおくと、式
より以下のように書けます。
よって、式より、式
は次のように書けます。
潜在変数を潜り込ませる
データ集合が与えられたとき、尤度関数は次式で表されます。
式より、対数尤度関数は次のようになります。
式はlog-sumの形をしているので、解析的に解くのが難しいです。
そこで、混合ガウス分布同様、潜在変数を潜り込ませて、EMアルゴリズムを用いることにします。
まず、潜在変数を潜り込ませます。
に対応する
次元の2値確率変数
を導入します。
これは1-ofK符号化を取るとします。かつ
を満たします。
の事前分布を
式より、
の条件付き分布は
となります。
また、式から次式が成り立ちます。
式を
について周辺化します。
式は混合ベルヌーイ分布の式
と一致するので潜在変数
を潜り込ませてもよいことが分かります。
データ集合に対応する潜在変数の集合を
とします。

さて、ここからは混合ガウス分布の最尤推定に一般のEMアルゴリズムを適用の記事同様、EMアルゴリズムを適用していきます。
一般のEMアルゴリズムと表記を合わせるためにとおきます。
1. 初期化
を初期化します。
2. Eステップ
Eステップでは、を計算します。
の計算には、
と
が必要です。
まず、の計算します。
完全データの尤度関数を計算します。
完全データの対数尤度関数を計算します。
次に、を計算します。
※本来は、を計算する必要がありますが、
か
の違いだけなので、
を計算すれば十分です。
式は
についての積の形をしているので、事後分布の下では
は独立であることが分かります。
式の因数
を求めます。
の計算時に
が出てくるので、先に求めておきます。
式の4行目から5行目にかけての変形ですがこちらの記事の式
の説明を参照してください。
を求めます。
Eステップでの目的はを計算することであり、
の中で
に依存するのは、
なので、
Eステップで実質行うのは、の計算です。
また、式ですが、
「本当は完全データの対数尤度関数を使って計算したいが、
は潜在変数なので観測できない。
だったら、の代わりに
の事後分布による期待値
で置き換えてしまおう。」
というノリです。
3. Mステップ
以下のMステップの全ての更新式で使う為、を以下のようにおきます。
アルゴリズム
1.初期化
を初期化します。
2.Eステップ
を更新します。
3.Mステップ
を更新します。
ただし、
とします。
4.収束確認
対数尤度を再計算し、前回との差分があらかじめ設定していた収束条件を満たしていなければ2に戻り、満たしていれば終了します。
偉人の名言

大事は寄せ集められた小事によってなされる。
フィンセント・ファン・ゴッホ
動画
なし