文章出處

1.EM算法
GMM算法是EM算法族的一個具體例子。
EM算法解決的問題是:要對數據進行聚類,假定數據服從雜合的幾個概率分布,分布的具體參數未知,涉及到的隨機變量有兩組,其中一組可觀測另一組不可觀測。現在要用最大似然估計得到各分布參數。
如果涉及的兩組隨機變量都是可觀測的,問題就立即可以解決了,對似然函數求取最大值就能得到分布參數的解。
EM算法先為所需求取的分布參數賦初值,使得能算出隱藏變量的期望;進而用隱藏變量的期望和可觀測變量的數據對分布參數的似然函數求最大值,得到一組解從而更新分布參數。然后用更新過的分布參數算出隱含變量的期望,再用這個期望與可觀測數據進行分布參數的更新...
即:EM算法包括隱藏變量期望計算(E-step)和似然函數最大值計算(M-step)兩個過程,一開始為分布參數賦一個初始值,然后迭代地執行E-step和M-step,直到算法收斂。

2.GMM算法
GMM算法作為EM算法族的一個例子,它指定了各個參與雜合的分布都是高斯分布,即分布參數表現為均值Mu和方差Sigma。通過EM算法作為計算使用的框架,迭代地算出各個高斯分布的參數。

3.GMM和k-means的比較
相同點
都是迭代執行的算法,且迭代的策略也相同:算法開始執行時先對需要計算的參數賦初值,然后交替執行兩個步驟,一個步驟是對數據的估計(k-means是估計每個點所屬簇;GMM是計算隱含變量的期望;);第二步是用上一步算出的估計值重新計算參數值,更新目標參數(k-means是計算簇心位置;GMM是計算各個高斯分布的中心位置和協方差矩陣)
不同點
1)需要計算的參數不同:k-means是簇心位置;GMM是各個高斯分布的參數
2)計算目標參數的方法不同:k-means是計算當前簇中所有元素的位置的均值;GMM是基于概率的算法,是通過計算似然函數的最大值實現分布參數的求解的。


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()