Variational Inference
鏈接:https://www.zhihu.com/question/41765860/answer/101915528
來源:知乎
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。
變分推斷其實(shí)就是一句話:用簡(jiǎn)單的分布q去近似復(fù)雜的分布p。
首先,為什么要選擇用變分推斷?
因?yàn)?#xff0c;大多數(shù)情況下后驗(yàn)分布很難求啊。如果后驗(yàn)概率好求解的話我們直接EM就搞出來了。
當(dāng)后驗(yàn)分布難于求解的時(shí)候我們就希望選擇一些簡(jiǎn)單的分布來近似這些復(fù)雜的后驗(yàn)分布,至于這種簡(jiǎn)單的分布怎么選,有很多方法比如:Bethe自由能,平均場(chǎng)定理。而應(yīng)用最廣泛的要數(shù)平均場(chǎng)定理。為什么?
因?yàn)樗僭O(shè)各個(gè)變量之間相互獨(dú)立砍斷了所有變量之間的依賴關(guān)系。這又有什么好處呢?我們拿一個(gè)不太恰當(dāng)?shù)睦觼硇蜗蟮恼f明一下:用古代十字軍東征來作為例子說明一下mean field。十字軍組成以騎兵為主步兵為輔,開戰(zhàn)之前騎兵手持重標(biāo)槍首先沖擊敵陣步兵手持刀斧跟隨,一旦接戰(zhàn)就成了單對(duì)單的決斗。那么在每個(gè)人的戰(zhàn)斗力基本相似的情況下某個(gè)人的戰(zhàn)斗力可以由其他人的均值代替這是平均場(chǎng)的思想。這樣在整個(gè)軍隊(duì)沒有什么戰(zhàn)術(shù)配合的情況下軍隊(duì)的戰(zhàn)斗力可以由這些單兵的戰(zhàn)斗力來近似這是變分的思想。
當(dāng)求解Inference問題的時(shí)候相當(dāng)于積分掉無關(guān)變量求邊際分布,如果變量維度過高,積分就會(huì)變得非常困難,而且你積分的分布p又可能非常復(fù)雜因此就徹底將這條路堵死了。采用平均場(chǎng)就是將這種復(fù)雜的多元積分變成簡(jiǎn)單的多個(gè)一元積分,而且我們選擇的q是指數(shù)族內(nèi)的分布,更易于積分求解。如果變量間的依賴關(guān)系很強(qiáng)怎么辦?那就是structured mean field解決的問題了。
說到這里我們就知道了為什么要用變分,那么怎么用?
過程很簡(jiǎn)單,推導(dǎo)很復(fù)雜。
整個(gè)過程只需要:
1、根據(jù)圖模型寫出聯(lián)合分布
2、寫出mean filed 的形式(給出變分參數(shù)及其生成隱變量的分布)
3、寫出ELBO(為什么是ELBO?優(yōu)化它跟優(yōu)化KL divergence等價(jià),KL divergence因?yàn)楹泻篁?yàn)分布不好優(yōu)化)
4、求偏導(dǎo)進(jìn)行變分參數(shù)學(xué)習(xí)
這樣就搞定了!
要點(diǎn)都有了,具體怎么推怎么理解還得多看親自推一遍。轉(zhuǎn)載于:https://www.cnblogs.com/sddai/p/9593987.html
總結(jié)
以上是生活随笔為你收集整理的Variational Inference的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++11 (多线程)并发编程总结
- 下一篇: Luogu 2921 [USACO08D