當前位置:首頁 » 操作系統 » 高斯混合模型的em演算法

高斯混合模型的em演算法

發布時間: 2024-05-08 14:56:55

❶ EM演算法求混合高斯分布的參數時,圖中的T是什麼意思

這里的T是表示一個函數的表達式,也就是是說T(U,S,X,Y,Z......) 實際上是t的函數,其中,t是函數(也就是因變數),U,S,X,Y,Z......都是函數t的自變數。T是函數關系。 y=f(x) =kx+b y就是x的函數,f表示的一種函數關系,只是這里的函數關系比較抽象,並不是具體的,而若是給出具體的函數關系就是kx+b這樣的表達式了。 只是一個是抽象的關系, 一個是具體的關系而已 而樓主給的函數是個多元函數,也就是說,U,S,X,Y,Z......等共同作用影響函數t的變化。 這個函數關系的描述就是U-宇宙;S空間,XYZ,......事件,順序等多個因素共同一種方式T來影響時間t的變化。估計這個是相對論或者霍金的時間理論那的東西。

❷ EM演算法和混合高斯模型(一)

EM(Expectation Maximization)演算法是一種迭代演算法,用於含有隱變數的概率模型參數的極大似然估計,或極大後驗估計。EM演算法的每次迭代由兩步組成:E步,求期望(expectation);M步,求極大值,因而被稱為期望極大演算法,簡稱EM演算法。

本文從EM演算法的引入說起,簡單介紹EM演算法的推導過程,以及其在高斯混合模型中的應用。更多的關於EM演算法的推導細節,可參見 人人都懂EM演算法 。

假設我們需要調查我們學校學生的身高分布。我們先假設學校所有學生的身高服從正態分布 。( 注意:極大似然估計的前提一定是要假設數據總體的分布,如果不知道數據分布,是無法使用極大似然估計的 ),這個分布的均值μ和標准差為σ 未知,如果我們估計出這兩個參數,那我們就得到了最終的結果。那麼怎樣估計這兩個參數呢?

學校的學生這么多,我們不可能挨個統計吧?這時候我們需要用到概率統計的思想,也就是抽樣,根據樣本估算總體。假設我們隨機抽到了 200 個人(也就是 200 個身高的樣本數據,為了方便表示,下面「人」的意思就是對應的身高)。然後統計抽樣這 200 個人的身高。根據這 200 個人的身高估計均值 μ和方差σ 。例子來自 人人都懂EM演算法 。

現在我們假設這200個人的身高服從一個正態分布N(μ,σ),因此可以直接使用極大似然估計方法估計出這個分布的參數μ和σ。

但是,這200個人的身高真的是服從同一個正態分布嗎?實際情況並不是這樣的,男生和女生分別服從兩種不同的正態分布,即男生 女生各服從一個正態分布 ,( 注意:EM演算法和極大似然估計的前提是一樣的,都要假設數據總體的分布,如果不知道數據分布,是無法使用EM演算法的 ),而且假設我們現在只有身高數據,丟失了性別數據,那麼該怎樣評估學生的身高分布呢?

這個時候,對於每一個樣本或者你抽取到的人,就有兩個問題需要估計了,一是這個人是男的還是女的,二是男生和女生對應的身高的正態分布的參數是多少。這兩個問題是相互依賴的:

但是現在我們既不知道每個學生是男生還是女生,也不知道男生和女生的身高分布。這就成了一個先有雞還是先有蛋的問題了。雞說,沒有我,誰把你生出來的啊。蛋不服,說,沒有我,你從哪蹦出來啊。為了解決這個你依賴我,我依賴你的循環依賴問題,總得有一方要先打破僵局,不管了,我先隨便整一個值出來,看你怎麼變,然後我再根據你的變化調整我的變化,然後如此迭代著不斷互相推導,最終就會收斂到一個解(草原上的狼和羊,相生相剋)。這就是EM演算法的基本思想了。

EM的意思是「Expectation Maximization」,具體方法為:

上面的學生屬於男生還是女生我們稱之為隱含參數,女生和男生的身高分布參數稱為模型參數。

EM 演算法解決這個的思路是使用啟發式的迭代方法,既然我們無法直接求出模型分布參數,那麼我們可以先猜想隱含參數(EM 演算法的 E 步),接著基於觀察數據和猜測的隱含參數一起來極大化對數似然,求解我們的模型參數(EM演算法的M步)。由於我們之前的隱含參數是猜測的,所以此時得到的模型參數一般還不是我們想要的結果。我們基於當前得到的模型參數,繼續猜測隱含參數(EM演算法的 E 步),然後繼續極大化對數似然,求解我們的模型參數(EM演算法的M步)。以此類推,不斷的迭代下去,直到模型分布參數基本無變化,演算法收斂,找到合適的模型參數。

在開始介紹EM演算法之前,讓我們先來了解一個重要的定理——Jensen不等式。

如下圖,如果函數f(x)是凸函數,x是隨機變數,有 0.5 的概率是 a,有 0.5 的概率是 b, x的期望值就是 a 和 b 的中值了,那麼:

對於m個相互獨立的樣本:

假如沒有隱含變數z, 我們僅需要找到合適的θ極大化對數似然函數即可:

現在我們給定一個θ值(初始化θ),那麼logL(θ)的值就取決於Q i (z)和P(x (i) ,z (i) )。我們可以通過調整這兩個概率使下屆逼近logL(θ)的真實值,當不等式變為等式時,說明我們調整後的下屆就等於logL(θ)了。由Jeson不等式可知,等式成立的條件是隨機變數是常數,則有:

如果Q i (z (i) ) = P(z (i) |x (i) , θ),則(2)式使我們包含隱藏數據的對數似然函數的一個下屆。如果我們能極大化這個下屆,則也在嘗試極大化我們的對數似然函數。即我們需要極大化下式:

由於對logaf(x)求導的結果與f(x)的系數無關((ln(ax))'= (lna + lnx)'=1/x),因此對θ求極大似然時,可以去掉式中的常數部分Q i (z (i) ):

現在,讓我們來總結一下EM演算法的流程。

輸入:觀察數據x = (x (1) , x (2) , ... , x (m) ), 聯合分布P(x, z|θ),條件分布P(z|x,θ),極大迭代次數J。
(1)隨機初始化模型參數θ值;
(2)迭代求解各個分布模型的參數以及各個模型的概率:
for j from 1 to J:

輸出:模型參數θ

圖中的直線式迭代優化的路徑,可以看到每一步都會向最優值前進一步,而且前進路線是平行於坐標軸的,因為每一步只優化一個變數。

這猶如在x-y坐標系中找一個曲線的極值,然而曲線函數不能直接求導,因此什麼梯度下降方法就不適用了。但固定一個變數後,另外一個可以通過求導得到,因此可以使用坐標上升法,一次固定一個變數,對另外的求極值,最後逐步逼近極值。對應到EM上,E步:固定 θ,優化Q;M步:固定 Q,優化 θ;交替將極值推向極大。

E步 :初始化θ A =0.6和θ B =0.5(θ A 和θ B 分別表示兩個硬幣出現正面的概率),計算每次擲硬幣選擇A和B的概率,例如第一個實驗中選擇A的概率為:

M步 :求出似然函數下屆Q(θ,θ i ), y i 代表第j次試驗正面朝上的個數,μ j 代表第j次試驗選擇硬幣A的概率,1-μ j 代表第j次試驗選擇硬幣B的概率。

參考:
人人都懂EM演算法
《統計學習方法》. 李航

❸ em演算法是什麼

最大期望演算法(Expectation-Maximization algorithm, EM),或Dempster-Laird-Rubin演算法,是一類通過迭代進行極大似然估計(Maximum Likelihood Estimation, MLE)的優化演算法 ,通常作為牛頓迭代法(Newton-Raphson method)的替代用於對包含隱變數(latent variable)或缺失數據(incomplete-data)的概率模型進行參數估計。
EM演算法的標准計算框架由E步(Expectation-step)和M步(Maximization step)交替組成,演算法的收斂性可以確保迭代至少逼近局部極大值 。EM演算法是MM演算法(Minorize-Maximization algorithm)的特例之一,有多個改進版本,包括使用了貝葉斯推斷的EM演算法、EM梯度演算法、廣義EM演算法等 。
由於迭代規則容易實現並可以靈活考慮隱變數,EM演算法被廣泛應用於處理數據的缺測值 ,以及很多機器學習(machine learning)演算法,包括高斯混合模型(Gaussian Mixture Model, GMM) 和隱馬爾可夫模型(Hidden Markov Model, HMM) 的參數估計。

熱點內容
中國移動用什麼服務密碼 發布:2024-05-20 00:52:10 瀏覽:695
make編譯輸出 發布:2024-05-20 00:37:01 瀏覽:67
4200存儲伺服器 發布:2024-05-20 00:20:35 瀏覽:160
解壓小生活 發布:2024-05-20 00:15:03 瀏覽:143
粘土小游戲伺服器ip 發布:2024-05-20 00:14:00 瀏覽:196
魔獸世界如何快速增加伺服器 發布:2024-05-19 23:53:37 瀏覽:694
安卓手機如何轉入蘋果手機內 發布:2024-05-19 23:50:35 瀏覽:405
安卓哪個能安裝血染小鎮 發布:2024-05-19 23:45:57 瀏覽:901
tensorflowmac編譯 發布:2024-05-19 23:28:59 瀏覽:702
sqlmaxvarchar 發布:2024-05-19 23:24:02 瀏覽:703