EM算法——具體推導,Q函數直接用

EM算法

原文鏈接:https://www.cnblogs.com/zdz8207/p/DeepLearning-em-gosimix.html 

本文經過一定修改,個人認爲原文中存在符號混用情況,對Q函數的角碼使用不太清晰,容易暈

假設訓練集是由m個獨立的樣本構成。我們的目的是要對概率密度函數進行參數估計。它的似然函數爲:

然而僅僅憑藉似然函數,無法對參數進行求解。因爲這裏的隨機變量是未知的。

EM算法提供了一種巧妙的方式,可以通過逐步迭代逼近最大似然值。下面就來介紹下EM算法:

假設對於所有j,爲隨機變量的第j個分佈函數(在此時i爲固定量即:。那麼:

其中第(2)步至第(3)步的推導就使用了Jensen不等式。其中:f(x)=log x,,因此爲凸函數;表示隨機變量爲概率分佈函數爲的期望。因此有:

這樣,對於任意分佈,(3)都給出了的一個下界。如果我們現在通過猜測初始化了一個的值,我們希望得到在這個特定的下,更緊密的下界,也就是使等號成立。根據Jensen不等式等號成立的條件,當爲一常數時,等號成立。即:

由上式可得,又,因此p\left(x^{(i)} ; \theta\right)=c。再由上式可得:

上述等式最後一步使用了貝葉斯公示。最後一個公式Q_j(z^{(i)})表示第i個樣本屬於隱含變量的第j個分佈的概率

結論:得出了Q函數公式,在EM算法中可以直接使用

EM算法有兩個步驟:

(1)通過設置初始化值,求出使似然方程最大的值,此步驟稱爲E-步(E-step)

(2)利用求出的值,更新。此步驟稱爲M-步(M-step)。過程如下:

repeat until convergence{

   (E-step) for each i, set

      (M-step) set

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章