3

ベルヌーイ分布が混在している場合に備えて、EM の MAP 更新を書き留めようとしています。

ML の推定値については、次のことがわかっています。

E-step: compute P(Z|X,p,t)
M-Step: (p,t)<-argmax sum(over Z): p(Z|X,p,t)log p(X,Z|p,t)

ここで、p は各クラスのベクトル パラメーター (K 個、サイズ D のそれぞれ、K はクラスの数、D は特徴の数) であり、t は各クラスの多項パラメーターです。

しかし、どうすれば MAP の見積もりを取得できますか? p(X) は…?

4

1 に答える 1

0

ケビン P. マーフィーによる「機械学習 - 確率論的展望」の 350 ページによると、次のようになります。

M ステップでは、シータに関して Q 関数 (補助関数) を最適化します。

theta^t = argmax_theta Q(theta,theta^{t-1})

これは ML であり、代わりに MAP 推定を実行するために、M ステップを次のように変更します。

theta^t = argmax_theta Q(theta,theta^{t-1})+log(p(theta))

theta はパラメーターで、theta^{t-1} はパラメーターの前の近似値で、theta^t は現在の値です。

Qの場所

Q(theta,theta^{t-1}) = E[logL(theta)|Data,theta^{t-1}]

Eステップは変わらず

したがって、基本的に ML と MAP の違いは、パラメーターの前のログである argmax 内に log(p(theta)) を追加することです。

前の p(theta) が beta(alpha,beta) 分布している特定の例については、ここで最後の割り当ての回答を参照できます

前もって使用するか、一般的な前置きのままにしておくのは簡単です。

于 2012-12-27T10:28:48.443 に答える