GMM演算法k means演算法的比較

2021-09-22 17:07:15 字數 872 閱讀 6848

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是基於概率的演算法,是通過計算似然函式的最大值實現分布引數的求解的。

GMM演算法k means演算法的比較

1.em演算法 gmm演算法是em演算法族的乙個具體例子。em演算法解決的問題是 要對資料進行聚類,假定資料服從雜合的幾個概率分布,分布的具體引數未知,涉及到的隨機變數有兩組,其中一組可觀測另一組不可觀測。現在要用最大似然估計得到各分布引數。如果涉及的兩組隨機變數都是可觀測的,問題就立即可以解決了,...

EM演算法和GMM演算法

文章目錄 0.前言 1.e m在解決什麼問題?一句話概括em 2.e m是一種模型麼?3.e step和m step分別指的是什麼?4.e m的優化目標是什麼?5.e m收斂麼,為什麼?6.怎麼理解隱變數,對任意模型都可以引入隱變數麼?隱變數的合理性 7.如何理解gmm中的隱變數 8.怎麼理解gmm...

GMM與EM演算法(零)

聚類的方法有很多種,k means 要數最簡單的一種聚類方法了,其大致思想就是把資料分為多個堆,每個堆就是一類。每個堆都有乙個聚類中心 學習的結果就是獲得這 k個聚類中心 這個中心就是這個類中所有資料的均值,而這個堆中所有的點到該類的聚類中心都小於到其他類的聚類中心 分類的過程就是將未知資料對這 k...