EM算法 大白话讲解
假設(shè)有一堆數(shù)據(jù)點(diǎn),它是由兩個(gè)線性模型產(chǎn)生的。公式如下:
模型參數(shù)為a,b,n:a為線性權(quán)值或斜率,b為常數(shù)偏置量,n為誤差或者噪聲。
一方面,假如我們被告知這兩個(gè)模型的參數(shù),則我們可以計(jì)算出損失。
對于第i個(gè)數(shù)據(jù)點(diǎn),第k個(gè)模型會(huì)預(yù)測它的結(jié)果
則,與真實(shí)結(jié)果的差或者損失記為:
目標(biāo)是最小化這個(gè)誤差。
但是仍然不知道具體哪些數(shù)據(jù)由對應(yīng)的哪個(gè)模型產(chǎn)生的(缺失的信息)。
?
另一方面,假設(shè)我們被告知這些數(shù)據(jù)對應(yīng)具體哪個(gè)模型,則問題簡化為求解約束條件下的線性方程解
(實(shí)際上可以計(jì)算出最小均分誤差下的解,^-^)。
?這兩個(gè)假設(shè),都只知道其中的一部分信息,所以求解困難。
?EM算法就是重復(fù)迭代上述兩步,固定因素A,放開因素B,然后固定因素B,再放開因素A,直到模型收斂,
?如此迭代更新估計(jì)出模型的輸出值以及參數(shù)值。
?
具體如下:
--------------------------------------------------------------------------------------------------------
?在E步時(shí),模型參數(shù)假定已知(隨機(jī)初始化或者聚類初始化,后續(xù)不斷迭代更新參數(shù)),
?計(jì)算出每個(gè)點(diǎn)屬于模型的似然度或者概率(軟判決,更加合理,后續(xù)可以不斷迭代優(yōu)化,而硬判決不合理是因?yàn)橹暗募俣▍?shù)本身不可靠,判決準(zhǔn)則也不可靠)。
根據(jù)模型參數(shù),如何計(jì)算出每個(gè)點(diǎn)屬于模型的似然度或者概率?
計(jì)算出模型輸出值與真實(shí)值的殘差:
已知?dú)埐?#xff0c;計(jì)算出i點(diǎn)屬于k模型的似然度(殘差與似然度建立關(guān)系):
貝葉斯展開
?
?=?,假設(shè)殘差與概率分布為高斯分布,殘差距離度量 轉(zhuǎn)換成 ?概率度量。
殘差越小,則由對應(yīng)模型生成的概率越大。
根據(jù)產(chǎn)生的殘差,判斷i屬于模型k的歸屬概率
則,
?
完成點(diǎn)分配到模型的目的
--------------------------------------------------------------------------------------------------------
進(jìn)入M步,知道各個(gè)點(diǎn)屬于對應(yīng)模型的概率,估計(jì)出模型參數(shù)
絕對值差*概率,誤差(均方誤差)期望最小化
?最小化
求偏導(dǎo):
置0,則上述兩公式展開為
?
改寫成 矩陣式:
?
?
完成計(jì)算出ak和bk參數(shù)
如此,反復(fù)迭代,收斂 ? ? ? ? ?
EM算法對敏感,每輪迭代它的更新推薦公式:
?--------------------------------------------------------------------------------
同樣地,在 GMM 中,我們就需要確定 影響因子pi(k)、各類均值pMiu(k)?和 各類協(xié)方差pSigma(k)?這些參數(shù)。 我們的想法是,找到這樣一組參數(shù),它所確定的概率分布生成這些給定的數(shù)據(jù)點(diǎn)的概率最大,而這個(gè)概率實(shí)際上就等于??,我們把這個(gè)乘積稱作似然函數(shù) (Likelihood Function)
沒法直接用求導(dǎo)解方程的辦法直接求得最大值。
不清楚這類數(shù)據(jù)是具體哪個(gè)高斯生成的,或者說生成的概率。
?E步中,確定出數(shù)據(jù)xi屬于第i個(gè)高斯的概率:通過計(jì)算各個(gè)高斯分量的后驗(yàn)概率,占比求得。
?
解決了點(diǎn)歸屬哪個(gè)高斯的問題,這是缺失的信息。
M步中,重新計(jì)算出各個(gè)參數(shù)。
根據(jù)似然概率最大化,可以推出均值、方差、權(quán)重更新公式。
另外知道了各個(gè)點(diǎn)屬于各個(gè)高斯的概率,也可以直接計(jì)算求出 均值、方差、權(quán)重
如此E步和M步重復(fù)。 ? ? ? ? ? ? ? ?
參考:http://blog.csdn.net/abcjennifer/article/details/8198352 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
--------------------------------------------------------------------------------------------------------
?
總結(jié)
以上是生活随笔為你收集整理的EM算法 大白话讲解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 全民直播CTO张云龙:已全面迁移至阿里云
- 下一篇: Maven FAQ