1. 程式人生 > >EM演算法(期望最大化)——應用:GMM

EM演算法(期望最大化)——應用:GMM

GMM模型簡介

GMM(Gaussian Mixture Model)也叫高斯混合模型。我們(1)可以把它看做是高斯分量的簡單線性疊加,其目標是提供一種比單獨的高斯分佈(GSM,Gaussian Single Model)更為強大的概率模型;(2)也可以利用離散隱變數來描述GMM,並從EM演算法層面給出GMM模型的一種優雅解法。
首先,給出高斯混合模型的概率公式(考慮單樣本):
p(x|π,μ,Σ)=kπkN(x|μk,Σk)
在第(1)種理解中,我們認為πk是各單獨高斯分佈N(x|μk,Σk)所佔權重。這裡,我們將其作為一個隱變數z的先驗分佈的概率值。對於該離散隱變數z的先驗分佈,有如下描述:

離散變數z是一個K維的二值隨機變數,即z=(z1,z2,...,zK),其中zk={0,1}kzk=1,k=1,...,Kz的概率分佈可表示為p(zk=1|π)=πk其中,π=(π1,π2,...,πK),kπk=1

而原先被認為是單獨高斯分佈的N(x|μk,Σk)則被認為是基於先驗分佈下的條件高斯分佈p(x|zk=1,μk,Σk)=N(x|μk,Σk)

GMM與EM演算法的聯絡

借鑑貝努利分佈和狄裡克雷分佈中表示方法(1-of-K表示法),我們換一種方式對上述分佈進行重新表示:

(1)先驗分佈:p(z|π)=kp(zk=1)zk=kπkzk
(2)條件高斯分佈:p

(x|z,μ,Σ)=k[p(x|zk=1)]zk=k[N(x|μk,Σk)]zk

所以,高斯混合模型GMM(單樣本)可表示為:
p(x|π,μ,Σ)=kπkN(x|μk,Σk)=k(kπkzk)(kN(x|μk,Σk)zk)=zp(z|π)p(x|z,μ,Σ)=zp(x,z|π,μ,Σ)

假設,我們有樣本集{xn,n=1,..,N},則邊緣概率