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