A. 概率圖模型-有向圖:貝葉斯濾波(Bayesian Filtering)
貝葉斯濾波在概率圖模型有向圖中是一種基於貝葉斯定理進行狀態估計的經典演算法。其核心內容和特點如下:
起源與關聯:貝葉斯濾波的起源雖難以精確追溯,但它與Joseph L. Doob的隨機過程理論有一定的關聯。在1960年,R. E. Kalman提出了卡爾曼濾波,這是貝葉斯濾波在線性假設和正態分布下的一個特例。
核心目標:貝葉斯濾波的核心目標是計算後驗概率分布,即在給定歷史觀測信息的情況下,預測當前狀態的概率分布。
核心步驟:
演算法推導:貝葉斯濾波的演算法推導涉及對預測步和更新步的詳細數學處理,包括積分運算以得到歸一化常數。
實際應用:貝葉斯濾波在機器人導航等動態環境信息處理問題中有廣泛應用。在這些應用中,預測和更新步驟考慮了時間推移對隱狀態的影響,即使沒有控制動作,環境變化也會改變隱狀態,從而使演算法能夠適應動態環境的變化。
總結:貝葉斯濾波是一種根據已知觀測結果計算隱狀態後驗分布的統計方法,它適用於處理動態環境中的信息處理問題,如機器人導航等。
B. 1. 概率圖模型
對現實世界的不確定性進行建模
1.4 貝葉斯公式
通過上面的加法規則和乘法規則,以及P(X,Y)=P(Y,X)。我們可以得到 貝葉斯公式 :
其中P(X)為:
貝葉斯公式寫成另外的一種常見的符號形式:
其中D表示觀察到的數據,也成為Evidence, w表示相應的參數。
p(D|w)表示似然函數(likehood function)。P(w)成為參數w的先驗。p(w|D)表示參數w的後驗概率。
所以可以得到:
其中
優點:
圖模型分為三類。
常用於描述變數之間的因果關系
貝葉斯網路中的聯合概率:
p(x)=P(xk|parent)
假設三個變數a,b,c上的聯合概率分布p(a,b,c).
那麼p(a,b,c)=p(c|ba)p(ba)=p(c|ba)p(b|a)p(a)
上面的圖是全連接的。但是真實世界中變數之間確實是全連接的嗎?
而且真正傳遞出概率分布性質的有趣信息是圖中信息的缺失。
** 為什麼呢?**
因為對於全連接的圖模型可以用來代表所有的概率分布。這樣的狀態空間是巨大的。意義不大。
但是對於圖中缺少邊的模型,則只能對應於具有某些條件獨立性質的
概率分布。
比如說:
對於如下的圖模型:
非全鏈接的圖模型中包含了相應的領域知識和因果關系。
對於下面一個關於學生成績的例子。
我們假設各個隨機變數出現的概率如下:
有了每個因子的分布之後, 就可以得到任意的概率分布了。方法就是:使用加法公式和乘積公式。
另外的一個問題是: 對於圖模型中的變數怎麼快速的知道它們之間是否相互影響。例如:
在左邊對應的六種情況下,只有最後一種情況X→W←Y下X的概率不會影響到Y的概率。這是因為W不是被觀察變數,其值是未知的,因此隨機變數X的值不會影響隨機變數Y的取值。有趣的是,當中間W變數成為被觀察變數,上述結論就會發生變化。如下圖所示
當WєZ時,即W為觀察變數時,所有判斷會變得相反。仍然以 X→W← Y 為例,此時W的值已知,比如已知某個學生Grade為B,那麼此時學生的聰明程度Intelligence和課程難度Difficulty就不再條件獨立了。比如,這種情況下如果課程比較容易,那邊學生很聰明的概率較小;反之,若課程很難,則學生很聰明的概率較大。
結論: 概率影響的流動性反應了貝葉斯網路中隨機變數條件獨立性關系
那麼貝葉斯網路中的獨立性或者說影響的流動性是如何的呢?
先來看看 ,圖模型結構圖中,三種常見的本地結構。
一般的如果沒有觀察變數,見結構1中的圖,但是變數c是未知的。 那麼:
對兩邊進行積分或者求和:
因為:
結構2:
可以得到:
結構3:
因為:
考慮一個一般的有向圖,其中A,B,C是任意無交集的集合。我們的目的在於希望從圖中迅速的觀察到在給定C的情況下A與B是否相互獨立。考慮A中任意節點到B中任意節點的所有可能路徑,如果路徑中包含一個滿足下面任何一條的節點,那麼就認為該路徑是被阻隔的。
馬爾科夫毯 :
我們以馬爾科夫毯來結束對貝葉斯網路獨立性的討論。考慮如下的圖模型:
考慮變數x(i)對應節點上的條件概率分布,其中條件為所有剩餘的變數。使用分解性質,可得:
最後與x(i)無關的變數可以提取,進行消除。唯一剩下的因子包括:p(xi|pai)以及p(Xk|Pak)其中xi為xk的父節點。
p(Xk|Pak)不僅僅依賴於xi,還依賴於xk的父節點。
我們可以將馬爾科夫毯想像成為將xi與圖中剩餘部分隔離開的最小集合。
(用於引出貝葉斯概率圖模型中的表示)
考慮一個多項式回歸的問題:
其中參數w為多項式稀疏,a為超參,t為觀測變數。x為輸入,另外一個為高斯分布的方差。
概率圖模型為了清晰的在圖形中表明各種的變數的狀態。引入了特殊的表示法:包括觀察變數,隱含變數,輸入,參數,以及plate的概念。
其他的參考模型:LDA, PLSA模型圖。
有了t,我們可以計算w的後驗概率:
最終目標是對輸入變數進行預測,假設給定一個輸入值x^,我們需要預測輸出。概率模型圖如下:
那麼模型的聯合分布為:
對w進行積分就可以得到相應的預測值:
圖模型描述了生成觀測數據的生成式模型。因此這種模型通常被稱為生成式模型。
對於概率模型的實際應用,通常情況下是,數量眾多的變數對應於圖的終端節點,較少的對應隱變數(hidden variables)。隱變數的主要作用是使得觀測變數上的復雜分布可以表示為由簡單條件分布構建的模型。(具體的原因,在E-M演算法部分進行說明)
一個馬爾科夫隨機場也成為馬爾科夫網路,或者無向圖模型,包含了一組節點,每個節點都對應一個變數或者一組變數。鏈接是無向的,即不含箭頭。
無向圖的連接沒有了方向,所以父子節點之間的對稱性也消除了。所以可以使用一下兩種方法判斷是否獨立:
無向圖的馬爾科夫毯 非常簡單,因為節點只依賴於相鄰的節點,而z給定鄰居節點的情況下,條件獨立於任何其他的節點。
剩下的一個問題是:如何寫出馬爾科夫隨機場的聯合分布。也就是如何對聯合分布進行 分解。
先來考慮圖中的一個概念clique:
維基網路中的解釋: a clique is a subset of vertices of an [undirected graph] such that its [inced subgraph]is [complete]; that is, every two distinct vertices in the clique are adjacent 。
馬爾科夫隨機場的聯合概率可以分解為圖中最大團快的勢函數(potential functions )的乘積形式:
其中Z被稱為劃分函數,是一個歸一化常數,等於:
我們假定勢函數是大於0的,因此可以將勢函數表示為指數的形式:
其中E(Xc)稱為能量函數。
因子圖主要用於模型的推斷過程。
參考文獻:
書籍《Pattern Recognition andMachine Learning》 第八章