來學偉
摘 ? 要:簡單介紹兩種最為流行和有用的方法,針對每一種圖模型進行了分析,詳細介紹了如何使用一個圖來描述概率分布的結構。最后判斷哪些變量之間存在直接的相互作用關系,也就是對于給定的問題哪一種圖結構是最適合的。
關鍵詞:圖模型;概率;因子
1 ? ?背景介紹
圖模型在深度學習的研究領域應用非常廣泛,研究人員曾提出過大量的訓練算法、模型和推斷算法。與普通的圖模型研究者不同,基于深度學習的研究者們通常會使用完全不同的模型結構學習算法和推斷過程。使用圖來描述深度學習中的概率分布相互作用的方法也不止一種。首先,介紹幾種最為流行和有用的方法。其次,分析如何使用一個圖來描述概率分布的結構。最后,判斷哪些變量之間存在直接的相互作用關系,也就是對于給定的問題哪一種圖結構是最適合的。
2 ? ?常見的圖模型
圖模型可以被大致分為兩類:基于模型的有向無環(huán)圖和基于模型的無向模型。
2.1 ?有向模型
有一種結構化概率模型是有向圖模型(Directed Graphical Model,DGM),也被稱為信念網絡(Belief Network)或者貝葉斯網絡(Bayesian Network)(Pearl,1985)[1]。之所以命名為有向圖模型是因為所有的邊都是有方向的,即從一個結點指向另一個結點。這個方向可以通過畫一個箭頭來表示。箭頭所指的方向表示了這個隨機變量的概率分布依賴于其他變量[2]。畫一個從結點a到結點b的箭頭表示了用一個條件分布來定義b,而a是作為這個條件分布符號右邊的一個變量。換句話說,b的概率分布依賴于a的取值。
假設Alice的完成時間為t0,Bob的完成時間為t1,Carol的完成時間為t2。t1的估計是依賴于t0的,t2的估計是依賴于t1的,但是僅僅間接地依賴于t0。正式地講,變量x的有向概率模型是通過有向無環(huán)圖G和一系列局部條件概率分布(Local Conditional Probability Distribution)p(xi|PaG(xi))來定義的[3],其中PaG(xi)表示結點xi的所有父結點。x的概率分布可以表示為:
在之前所述的接力賽的例子中,這意味著概率分布可以被表示為:
這個結構化概率模型的實際例子能夠檢查這樣建模的計算開銷,能夠驗證相比于非結構化建模,結構化建模為什么有那么多優(yōu)勢。假設采用從第0 min到第10 min每6 s一塊的方式離散化地表示時間,這使得t0、t1和t2都是一個有100個取值可能的離散變量。如果嘗試用一個表來表示p(t0,t1,t2),那么需要存儲999 999個值(t0的取值100×t1的取值100×t2的取值100減去1,所有的概率的和為1,所以其中有1個值的存儲是多余的)。反之,如果用一個表來記錄每一種條件的概率分布,那么記錄t0的分布需要存儲99個值,給定t0情況下t1的分布需要存儲9 900個值,給定t1情況下t2的分布也需要存儲9 900個值。加起來總共需要存儲19 899個值。這意味著使用有向圖模型需要存儲的參數個數減少了50倍。通常意義上說,對每個變量都能取k個值的n個變量建模,基于建表的方法需要的復雜度是O(kn),就像之前討論過的一樣?,F(xiàn)在假設用一個有向圖模型來對這些變量建模。如果m代表圖模型的單個條件概率分布中最大的變量數目(在條件符號的左右皆可),那么對這個有向模型建表的復雜度大致為O(km)。只要在設計模型時使其滿足m<n,那么復雜度就會被極大減小。換一句話說,如果每個變量只有少量的父結點,那么這個分布就可以用較少的參數來表示。圖結構上的一些限制條件,比如說要求這個圖為一棵樹,也可以保證一些操作(比如說求一小部分變量的邊緣或者條件分布)更加高效。決定哪些信息需要被包含在圖中而哪些不需要是很重要的。如果許多變量可以被假設為獨立條件,那么這個圖模型可以被大大簡化。當然也存在其他簡化圖模型的假設。比如說,可以假設無論Alice的表現(xiàn)如何,Bob總是跑得一樣快(實際上,Alice的表現(xiàn)很大概率會影響B(tài)ob的表現(xiàn),這取決于Bob的性格,如果在之前的比賽中Alice跑得特別快,這有可能鼓勵Bob更加努力,當然這也有可能使得Bob懶惰)。那么Alice對Bob的唯一影響就是在計算Bob的完成時間時需要加上Alice的時間。這個假設使得所需要的參數量從O(k2)降到了O(k)。然而,值得注意的是在這個假設下t0和t1仍然是直接相關的,因為t1表示的是Bob完成的時間,并不是他跑的時間。這也意味著圖模型中會有一個從t0指向t1的箭頭?!癇ob的個人跑步時間相對于其他因素是獨立的”這個假設無法在t0,t1,t2的圖模型中被表示出來。只能將這個關系表示在條件分布中。這個條件分布不再是一個大小為k×(k?1)的分別對應著t0,t1的表格,而是一個包含了k?1個參數的略復雜的公式。有向圖模型并不能對我們如何定義條件分布做出任何限制,它只能定義哪些變量之間存在著依賴性關系。
2.2 ?無向模型
有向圖模型提供了一個描述結構化概率模型的語言。而另一種常見的語言則是無向模(Undirected Model),也叫作馬爾可夫隨機場(Markov Random Field,MRF)或者是馬爾可夫網絡(Markov Network)(Kindermann,1980)[4]。就像它們的名字所說的那樣,無向模型中所有的邊都是沒有方向的。
有向模型適用于當存在一個很明顯的理由來描述每一個箭頭的時候。有向模型中,經常存在具有因果關系以及因果關系有明確方向的情況。接力賽就是一個這樣的例子。之前運動員的表現(xiàn)影響了后面的運動員,而后面的運動員卻不會影響前面的運動員。然而并不是所有情況的相互影響中都有一個明確方向關系。當相互的作用并沒有本質的方向,或者是明確的有相互影響的時候,使用無向模型更加合適。作為一個這種情況的例子,假設希望對3個二值隨機變量建模。使用無向模型,其中,隨機變量對應著圖中相互作用的結點。不像是有向模型中,在無向模型中的邊是沒有方向的,并不與一個條件分布相關聯(lián)。
把對應你的健康的隨機變量記為hy,對應你的室友健康狀況的隨機變量記為hr,你的同事健康的變量記為hc,如圖1所示。
正式說,一個無向模型是一個定義在無向模型G上的一個結構化概率模型。對圖中的每一個團(Clique)3C,一個因子(Factor)?(C)[也叫作團勢能(Clique Potential)],衡量了團中變量的不同狀態(tài)所對應的密切程度。這些因子都被限制為非負的。合在一起定義了未歸一化概率函數(Unnormalized Probability Function):
(3)
只要所有團中的結點數都不大,那么就能夠高效地處理這些未歸一化概率函數。它包含了這樣的思想:越高密切度的狀態(tài)有越大的概率。然而,不像貝葉斯網絡,幾乎不存在團定義的結構,所以不能保證把它們乘在一起能夠得到一個有效的概率分布。
對于你來講,你的室友和同事之間感冒傳染的例子中包含了兩個團。一個團包含了hy和hc個團的因子可以通過一個表來定義,可能取到下面的值:狀態(tài)為1代表了健康的狀態(tài),相對的,狀態(tài)為0則表示不好的健康狀態(tài)(即被感冒傳染)。你們兩個通常都是健康的,所以對應的狀態(tài)擁有最高的密切程度。兩個人中只有一個人生病的密切程度是最低的,因為這是一個很少見的狀態(tài)。兩個人都生病的狀態(tài)(通過一個人來傳染給了另一個人)有一個稍高的密切程度,盡管仍然不及兩個人都健康的密切程度。為了完整地定義這個模型,需要對包含hy和hr的團定義類似的因子。
3 ? ?結語
簡單介紹兩種最為流行和有用的方法。針對每一種圖模型進行了分析,詳細介紹了如何使用一個圖來描述概率分布的結構。最后判斷哪些變量之間存在直接的相互作用關系,也就是對于給定的問題哪一種圖結構是最適合的。
[參考文獻]
[1]劉 ? 真.實用計算機圖形與動畫技術[M].北京:電子工業(yè)出版社,1998.
[2]漸漸遺忘的記憶.深度學習中結構化概率模型[EB/OL].(2019-05-24)[2019-09-15].https://blog.csdn.net/h2026966427/article/details/90512114.
[3]袁 ? 正.貝葉斯網絡靈敏性分析方法及其在復雜系統(tǒng)故障診斷中的應用[D].合肥:合肥工業(yè)大學,2012.
[4]張 ? 敏.基于SVM和CRF的病癥實體抽取方法研究[D].成都:成都理工大學,2018.