1. 程式人生 > >EM演算法-原理詳解

EM演算法-原理詳解

1. 前言

概率模型有時既含有觀測變數(observable variable),又含有隱變數或潛在變數(latent variable),如果僅有觀測變數,那麼給定資料就能用極大似然估計或貝葉斯估計來估計model引數;但是當模型含有隱變數時,需要一種含有隱變數的概率模型引數估計的極大似然方法估計——EM演算法

2. EM演算法原理

EM演算法稱為期望極大值演算法(expectation maximizition algorithm,EM),是一種啟發式的迭代演算法。

EM演算法的思路是使用啟發式的迭代方法,既然我們無法直接求出模型分佈引數,那麼我們可以先猜想隱含資料(EM演算法的E步),接著基於觀察資料和猜測的隱含資料

一起來極大化對數似然,求解我們的模型引數(EM演算法的M步)。

可以通過K-Means演算法來簡單理解EM演算法的過程。

E步:

在初始化K箇中心點後,我們對所有的樣本歸到K個類別。

M步:

在所有的樣本歸類後,重新求K個類別的中心點,相當於更新了均值。

3. EM演算法公式

對於\(m\)個樣本觀察資料\(x=(x^{(1)},x^{(2)},...x^{(m)})\)中,找出樣本的模型引數\(\theta\),極大化模型分佈的對數似然函式如下,假設資料中有隱含變數\(z=(z^{(1)},z^{(2)},...z^{(m)})\)

\[ L(\theta) = \sum\limits_{i=1}^m logP(x^{(i)}|\theta) \]


加入隱含變數公式變為如下,注意到下式中\(Q_i(z(i))\)是一個分佈,因此\(\sum Q_i(z(i))logP(x(i),z(i)|θ)\)可以理解為\(logP(x(i),z(i)|θ)\)基於條件概率分佈\(Q_i(z(i))\)的期望。

\[ L(\theta) = \sum\limits_{i=1}^m log\sum\limits_{z^{(i)}}Q_i(z^{(i)})P(x^{(i)},z^{(i)}|\theta)\;\;\;s.t.\sum\limits_{z}Q_i(z^{(i)}) =1\;\;\;\;\;(1) \]

根據Jensen不等式,(1)式變為(2)
\[ E [f \left ( g(X) \right ) ] \ge f \left (E[g(X)] \right ) \]


\[ L(\theta) = \sum\limits_{i=1}^m log\sum\limits_{z^{(i)}}Q_i(z^{(i)})P(x^{(i)},z^{(i)}|\theta)\ge\sum\limits_{i=1}^m \sum\limits_{z^{(i)}}Q_i(z^{(i)})logP(x^{(i)},z^{(i)}|\theta)\;\;\;s.t.\sum\limits_{z}Q_i(z^{(i)}) =1\;\;\;\;\;(2) \]

4. EM演算法流程

輸入:觀察資料\(x=(x^{(1)},x^{(2)},...x^{(m)})\),聯合分佈\(p(x,z|\theta)\), 條件分佈\(p(z|x,\theta)\), EM演算法退出的閾值\(\gamma\)

  1. 隨機初始化模型引數\(\theta\)的初值\(\theta^0\)
  2. E步:計算聯合分佈的條件概率期望

\[ \theta^{j+1} = arg \max \limits_{\theta}L(\theta, \theta^{j}) \]

\[ L(\theta, \theta^{j}) = \sum\limits_{i=1}^m\sum\limits_{z^{(i)}}Q_i(z^{(i)})log{P(x^{(i)},z^{(i)}|\theta)} \]

  1. M步:極大化\(L(\theta,\theta^j)\),得到\(θ^{j+1}\):

\[ \theta^{j+1} = arg \max \limits_{\theta}L(\theta, \theta^{j}) \]

  1. 重複2,3兩步,直到極大似然估計\(L(\theta,\theta^j)\)的變化小於\(\gamma\)

5. 總結

如果我們從演算法思想的角度來思考EM演算法,我們可以發現我們的演算法裡已知的是觀察資料,未知的是隱含資料和模型引數,在E步,我們所做的事情是固定模型引數的值,優化隱含資料的分佈,而在M步,我們所做的事情是固定隱含資料分佈,優化模型引數的值。

本節介紹的EM演算法是通用的EM演算法框架,其實EM演算法有很多實現方式,其中比較流行的一種實現方式是高斯混合模型(Gaussian Mixed Model)。

(歡迎轉載,轉載請註明出處。歡迎溝通交流: [email protected]