k-means與EM算法小結

        EM算法像是k-means的應用場景,比如雙峯分佈的數據,k-means方法,將其看成2-means聚類的方法處理場景。

        k-means算法,也被稱爲k-平均或k-均值,是一種廣泛使用的聚類算法,或者成爲其他聚類算法的基礎。

       假定輸入樣本爲,則算法步驟爲:

        (1)選擇初始的k個簇中心u1,u2,...,uk

        (2)將樣本xi標記爲距離簇中心最近的簇:

        (3)更新簇中心:

        (4)重複最後兩步,直到滿足終止條件。(迭代次數/簇中心變化率/最小平方誤差MSE)

          思考:經典的K-means聚類方法,能夠非常方便的將未標記的樣本分成若干簇;但無法給出某個樣本屬於該簇的後驗概率。

 

         從直觀理解猜測GMM的參數估計

         隨機變量X是有K個高斯分佈混合而成,取各個高斯分佈的概率爲,第i個高斯分佈的均值爲。若觀測到隨機變量X的一系列樣本,試估計參數

          建立目標函數

        由於在對數函數裏面又有加和,我們沒法直接用求導解方程的辦法直接求得極大值。分成兩步。

        第一步:估算數據來自哪個組份

       估計數據由每個組份生成的概率,對於每個樣本xi,它由第k個組份生成的概率爲。

      

 上式中的也是待估計的值,因此採樣迭代法:在計算。但是(1)需要先驗給定;(2)亦可看成組份k在生成數據xi時所做的貢獻。

        第二步:估計每個組份的參數

       對於所有的樣本點,對於組份k而言,可看做生成了這些點。組份k是一個標準的高斯分佈。

 

EM算法的提出

(1)假定有訓練集包含m個獨立樣本,希望從中找到該組數據的模型P(x,z)的參數。

(2)取對數似然函數

其中z是隱隨機變量,不方便直接找到參數估計。策略:計算下界,求該下界的最大值;重複該過程,直到收斂到局部最大值。

(圖像摘自七月算法)

(3)Jensen不等式。令Qi是z的某一個分佈,Oi》0,有:

(圖像摘自七月算法)

(4)爲了使等號成立

(5)進一步分析

(6)EM算法整體框架

 

從理論公式推導GMM

(1)隨機變量X是有K個高斯分佈混合而成,取各個高斯分佈的概率爲,第i個高斯分佈的均值爲ui,方差爲。若觀測到隨機變量X的一系列樣本,試估計參數

(2)E-step

    

          M-step

        將多項分佈和高斯分佈的參數帶入

   

(3)對均值求偏導

令上式等於0,解出均值

同理,求偏導,等於0,得到高斯分佈的方差

(4)多項分佈的參數。

考察M-step的目標函數,對於,刪除常數項。則

(5)拉格朗日乘子法

由於多項分佈的概率和爲1,建立拉格朗日方程

這樣求解的一定非負,所以,不用考慮》0這個條件

求偏導,等於0

(6)回到(2)E-step繼續迭代,直到達到局部最優值

 

帶有隱變量,往往可以用EM算法來求解。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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