高斯混合模型--GMM(Gaussian Mixture Model)

高斯混合模型--GMMGaussian Mixture Model

原本鏈接:http://blog.sina.com.cn/s/blog_54d460e40101ec00.html

    統計學習的模型有兩種,一種是概率模型,一種是非概率模型。

    所謂概率模型,是指訓練模型的形式是P(Y|X)。輸入是X,輸出是Y,訓練後模型得到的輸出不是一個具體的值,而是一系列的概率值(對應於分類問題來說,就是輸入X對應於各個不同Y(類)的概率),然後我們選取概率最大的那個類作爲判決對象(軟分類--soft assignment)。所謂非概率模型,是指訓練模型是一個決策函數Y=f(X),輸入數據X是多少就可以投影得到唯一的Y,即判決結果(硬分類--hard assignment)。

    所謂混合高斯模型(GMM)就是指對樣本的概率密度分佈進行估計,而估計採用的模型(訓練模型)是幾個高斯模型的加權和(具體是幾個要在模型訓練前建立好)。每個高斯模型就代表了一個類(一個Cluster)。對樣本中的數據分別在幾個高斯模型上投影,就會分別得到在各個類上的概率。然後我們可以選取概率最大的類所爲判決結果。

     從中心極限定理的角度上看,把混合模型假設爲高斯的是比較合理的,當然,也可以根據實際數據定義成任何分佈的Mixture Model,不過定義爲高斯的在計算上有一些方便之處,另外,理論上可以通過增加Model的個數,用GMM近似任何概率分佈。

    混合高斯模型的定義爲:

   

    其中K 爲模型的個數;πk爲第k個高斯的權重;px / k 則爲第k個高斯概率密度,其均值爲μk,方差爲σk。對此概率密度的估計就是要求出πk、μk 和σk 各個變量。當求出p的表達式後,求和式的各項的結果就分別代表樣本x 屬於各個類的概率。

    在做參數估計的時候,常採用的是最大似然方法。最大似然法就是使樣本點在估計的概率密度函數上的概率值最大。由於概率值一般都很小,N 很大的時候, 連乘的結果非常小,容易造成浮點數下溢。所以我們通常取log,將目標改寫成:

  

 

    也就是最大化對數似然函數,完整形式爲:

    一般用來做參數估計的時候,我們都是通過對待求變量進行求導來求極值,在上式中,log函數中又有求和,你想用求導的方法算的話方程組將會非常複雜,沒有閉合解。可以採用的求解方法是EM算法——將求解分爲兩步:第一步,假設知道各個高斯模型的參數(可以初始化一個,或者基於上一步迭代結果),去估計每個高斯模型的權值;第二步,基於估計的權值,回過頭再去確定高斯模型的參數。重複這兩個步驟,直到波動很小,近似達到極值(注意這裏是極值不是最值,EM算法會陷入局部最優)。具體表達如下:

     1、(E step)

    對於第i個樣本xi 來說,它由第k model 生成的概率爲:

   

    在這一步,假設高斯模型的參數是已知的(由上一步迭代而來或由初始值決定)。

    2、(M step)

 高斯混合模型--GMM(Gaussian <wbr>Mixture <wbr>Model)
 

    3、重複上述兩步驟直到算法收斂。

EM算法具體也可參考統計學習方法-李航。

 

 

應用:1.目標檢測:(侷限:靜態背景)

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