【机器学习】EM最大期望算法
? ? ? ? EM, ExpectationMaximization Algorithm, 期望最大化算法。一種迭代算法,用于含有隱變量(hidden variable)的概率參數(shù)模型的最大似然估計(jì)或極大后驗(yàn)概率估計(jì),其概率模型依賴于無法觀測(cè)的隱變量。
? ? ? ? 經(jīng)常用在ML與計(jì)算機(jī)視覺的數(shù)據(jù)聚類領(lǐng)域。
? ? ? ? EM應(yīng)用:GMM混合高斯模型、聚類、HMM隱馬爾科夫模型等。
?
一、Jesen不等式
? ? ? ? 對(duì)于凸函數(shù)(對(duì)于所有實(shí)數(shù)x,有f’’(x)≥0)。當(dāng)x時(shí)向量時(shí),如果其hessian矩陣H是半正定的(H≥0),那么f是凸函數(shù)。如果f’’(x)>0或者H>0,那么f是嚴(yán)格凸函數(shù)。
? ? ? ? 關(guān)于Jesen不等式:如果f是凸函數(shù),x是隨機(jī)變量,那么有
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? E[f(x)]≥ f(Ex)
? ? ? ? 圖形化的表示方法就是:
二、EM原理
? ? ? ? 最大期望個(gè)算法經(jīng)過兩個(gè)步驟交替進(jìn)行計(jì)算
? ? ? ? ? ? ? ?step1: 計(jì)算期望E,利用對(duì)隱藏變量的現(xiàn)有估計(jì)值,計(jì)算其最大似然估計(jì)值。
? ? ? ? ? ? ? ?step2: 最大化M,最大化在E步上求得的最大似然值來計(jì)算參數(shù)值。
? ? ? ? (M步上找到的參數(shù)估計(jì)值被用于下一個(gè)E步計(jì)算中,這個(gè)過程不斷交替進(jìn)行)
?
三、EM算法流程
1. 初始化分布參數(shù)
2. 重復(fù)直到收斂:
? ? ? ? ?E步驟:估計(jì)位置參數(shù)的期望值,給出當(dāng)前的參數(shù)估計(jì)
???????? M步驟:重新估計(jì)分布參數(shù),以使得數(shù)據(jù)似然性最大,給出位置變量的期望估計(jì)。
?
EM是一種解決存在隱含變量?jī)?yōu)化問題的有效方法,既然不能直接最大化L(o),可以不斷建立l的下界(E步),然后優(yōu)化下界(M步)。
轉(zhuǎn)載于:https://www.cnblogs.com/DianaCody/p/5425625.html
總結(jié)
以上是生活随笔為你收集整理的【机器学习】EM最大期望算法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 火影忍者怎么兑换礼包码?
- 下一篇: 深入研究Clang(四) Clang编译