概率圖模型推斷之Belief Propagation

初步打算把概率圖模型中推斷方法都介紹一下,包括Belief Propagation,變分方法,MCMC,以及像是Graph cut也做一些說明。
關於Belief Propagation是什麼?
Belief Propagation是一種信息傳遞方法,一般用來解關於概率圖模型中的推斷問題,在這些問題中,單純地通過公式推導或者MC模擬是很難得到準確答案的,這就需要BP,能夠很有效地求解一些特定問題得邊緣概率。
首先說明一下爲什麼邊緣概率如此難求,wiki上的例子:

X={xi} 是一個離散的隨機變量集合,並且其聯合概率是p ,關於某個變量的邊緣概率就是對於所有其他變量的一個求和
pXi(xi)=x:xi=xip(x)
但是這個求和會隨着變量的增多而變得呈指數增長,假設說有100個二元變量,每個可以取01,那樣所需要的求和次數就是2996.338×1029 ,BP能夠充分利用數據結構信息,讓計算變得很簡便。像是以前學得動態規劃解決最短路徑,以及維特比方法求HMM的Hidden state的概率,都是用了BP的思想。
說道動態規劃(Dynamic programing),可能大家都很熟悉,DP的主要思想就是構造最有子空間,把求解一個大問題分解成求解一系列的小問題,BP也是這個思想,BP利用了局部分消息傳遞,把計算全局的求和或者積分,轉換成了局部的消息傳遞,每個節點都能都過自身的狀態以及鄰近節點的狀態做出評價,得到自身的下一狀態,不斷地更新最終使系統達到穩定。

下面以MRF上的Belief Propagation爲例來介紹BP是如何求解MRF中的Inference問題的。
一般一個MRF問題都可以表述成這樣的形式:

p({x})=1Z(i,j)ψi,j(xi,xj)iϕi(xi)

ϕi(xi) 一般是爲了簡略,原本應該是ϕi(xi,yi) 的形式,yi 是可測變量,觀察變量,xi 是hidden node,不可測的,一般yi 的不可變,所以將其省略,而xi 卻又很多種可能,例如很多可能性標籤,等等,一般用個L 維的向量來表示。在BP中,不同的Hidden node之間(一般指有鄰接關係的)是通過message來傳遞消息的,這樣我們定義一個message變量mij(xj) ,來表示從節點i 向節點j 傳遞的一個消息,也可以傳遞的belief,對於xj 可能性的度量,

參考:
【1】http://en.wikipedia.org/wiki/Belief_propagation
【2】http://blog.sina.com.cn/s/blog_4dfdfdc30100q2el.html
【3】Jonathan S. Yedidia, William T. Freeman, and Yair Weiss, “Understanding Belief Propagation and Its Generalizations” in Exploring Artificial Intelligence in the New Millennium, Lakemeyer, G. and Nebel, B., Eds., ISBN: 1-55860-811-7, chapter 8, pp. 239-236, Morgan Kaufmann Publishers, January 2003
【5】Constructing Free Energy Approximations and Generalized Belief Propagation Algorithms
http://www.cs.princeton.edu/courses/archive/spr06/cos598C/papers/YedidaFreemanWeiss2004.pdf

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章