跳至內容

變分貝葉斯方法

維基百科,自由的百科全書

變分貝葉斯方法是近似貝葉斯推理機器學習中較難積分的一系列技術,通常用於由觀測變量及未知參數潛變量組成的複雜統計模型,之間存在的各種關係可用圖模式描述。貝葉斯推理中,參數和潛變量一般歸為「未觀察變量」。變分貝葉斯方法主要用於兩個目的:

  1. 提供未觀測變量後驗概率的分析近似,以便對變量統計推斷
  2. 得出觀測數據的邊緣似然下界(即給定模型的數據的邊緣概率,邊緣化未觀測變量)。通常用於模型選擇,一般認為給定模型的邊緣似然越高,擬合效果越好,產生數據的可能性越大(另見貝葉斯因子)。

就目的1(近似後驗概率),變分貝葉斯是蒙特卡洛法(特別是馬爾可夫鏈蒙特卡洛,如吉布斯採樣)的替代,可採用完全貝葉斯的方法,對難以取值或抽樣的複雜分佈進行統計推斷。蒙特卡洛技術利用一組樣本對精確後驗值進行數值近似,而變分貝葉斯可求近似後驗的局部最優的精確解析解。

變分貝葉斯可視作最大期望算法(EM)的推廣,從估計參數的單一最似然值的最大後驗概率(MAP估計),推廣到計算參數及潛變量的整個近似後驗分佈的完全貝葉斯估計。貝葉斯估計同EM一樣,也能找到一組最優參數值,且與EM有相同的交替結構——基於不能求解析解的相依方程組。

很多應用中,變分貝葉斯能更快得到與吉布斯採樣精度相當的解,但推導迭代方程組需要更多工作。即便是很多概念上非常簡單的模型也如此,下面以只有2個參數、沒有潛變量的基本不分層模型為例說明。

數學推導

問題

變分推斷中,數據的一組未觀測變量的後驗分佈近似於所謂變分分佈

分佈屬於在形式上比簡單的分佈族(如高斯分佈族),這是為使與真實後驗更相似。

相似性用不相似函數衡量,推斷(inference)通過求分佈使最小化進行。

KL散度

最常見的變分貝葉斯法以QPKL散度作為不相似函數,很適合最小化。KL散度的定義是

注意QP是相反的。反向KL散度在概念上類似於期望最大化算法(KL散度則產生期望傳播算法)。

難解性

變分技術通常用於近似以下參數:

邊緣化(以計算分母中的)通常是難解的,因為的搜索空間在組合上可能很大。因此,我們用求近似。

證據下界

考慮到,KL散度也可寫作

因為是分佈,所以;又由於對於是常數,所以

根據(離散隨機變量期望的定義,上式可以寫作

重排為

由於對數證據對於Q是定值,最大化末項會使QP的KL散度最小化。適當選擇Q可以讓更容易計算,更容易最大化,因此既有後驗的解析近似Q,也有對數證據的下界(KL散度非負)。

下界熱力學自由能類似,也稱作(負)變分自由能,因為它也可以表為負能量Q項也稱作證據下界(ELBO),是數據的對數證據的下界。

證明

根據布雷格曼散度(KL散度是其特例)的廣義勾股定理,可以證明[1][2]

布雷格曼散度的廣義勾股定理[2]

其中是凸集,且

時等號成立。這時,全局最小值,其中可以如下求得:[1]

其中歸一化常數為

項在實踐中常稱作證據下界(ELBO),因為[1]如上所示。

交換的角色,可以迭代計算真實模型邊際的近似。這種迭代保證單調收斂,[1]但收斂到的只是的局部極小值。

若約束空間被限制在獨立空間內,即,則上述迭代將成為所謂平均場近似(mean field approximation)

平均場近似

變分分佈常被假定為潛變量的某劃分的因式分解,即對潛變量的劃分

變分法可以證明,對每個因子的最佳分佈(就KL散度最小的分佈而言,如上所述)滿足[3]

其中是數據與潛變量的對數聯合概率期望值,是相對於不屬於劃分的所有變量的而取。關於的推導見[4]的引理 4.1。

實踐中,通常用對數表示:

上式中的常數與歸一化常數上述表達式中的分母)有關,通常通過檢查來恢復,因為表達式的其餘部分通常是已知的分佈(如正態分佈伽馬分佈等)。

利用期望的性質,式通常可簡為潛變量先驗分佈的固定超參數及不屬於當前劃分的潛變量(即不屬於的潛變量)的期望值的函數(有時還包括方差等高階)。這就在某一划分的變量分佈參數同其他劃分的變量的期望值之間產生了循環依賴,自然就需要類似期望最大化算法迭代法,以某種方式(也許隨機)初始化潛變量期望(可能還有高階矩),再利用當前期望依次計算每個分佈的參數、適當設置新算出的分佈的期望。這種算法保證收斂。[5]

換一種說法,對每個變量劃分,簡化其中變量分佈的表達式、研究分佈與相關變量的函數依賴關係,通常就能確定分佈的族(反過來確定了常數)。分佈的參數公式可用先驗分佈的超參數(已知常數)表示,也可用其他劃分中變量函數的期望表示。通常這些期望可簡為變量本身的期望值函數(即平均值);有時也會出現變量平方(與變量方差有關)或更高次冪()高階)的期望。其他變量的分佈一般來自已知族,相關期望的公式可查到;但公式取決於分佈的參數,參數又取決於其他變量的期望,所以每個變量的分佈參數公式都可表為一群變量間非線性相互依賴的方程。通常不能直接求解,不過可以用簡單的迭代算法,大多數時候都能保證收斂。

變分推理對偶公式

用對偶公式圖解坐標上升變分推理算法[4]

下面的定理稱作變分推理對偶公式,[4]解釋了變分貝葉斯方法中變分分佈的一些重要性質。

Theorem 考慮兩概率空間,其中。假設存在共同的主導概率測度使。令h上的任意實值隨機變量,滿足,則下列等式成立

此外,若且唯若(supremum)

關於概率測度Q幾乎是確定的,其中分別表示概率測度PQ的Radon–Nikodym導數,右式才取上界。

基本例子

考慮簡單的不分層貝葉斯模型,由來自正態分佈均值方差未知)的獨立同分佈觀測量組成。[6]下面我們將詳細介紹這模型,以說明變分貝葉斯方法的工作原理。

為了數學上的方便,下例中我們用精度(即方差倒數;多元正態分佈時是協方差矩陣的逆。理論上精度和方差等價,因為兩者間是雙射)。

數學模型

共軛先驗分佈置於未知均值、精度,即均值也遵循高斯分佈,而精度遵循伽馬分佈

先驗分佈超參數是已知定值,可設為小正數,以得到較寬的先驗分佈,表明我們對的先驗分佈一無所知。

已知N個數據點,而我們的目標是推斷參數後驗分佈

聯合概率

所有變量的聯合概率可重寫為

個體因子是

其中

因式分解近似

假設,即後驗分佈因式分解為的獨立因子。這種假設是變分貝葉斯方法的基礎。事實上,真正的後驗分佈並非如此(這種簡單情形我們知道它是正態-伽馬分佈),因此所得結果將是近似值。

導出q(μ)

上面的推導中,指對為常數的值。注意項不是的函數,無論的值是多少,它都不變。因此,第三行中可以把它吸收到末尾的常數項,第七行也如此。

最後一行是的二次多項式。由於這是的對數,我們可以看到本身是正態分佈

通過一些繁瑣的計算(展開括號里的平方、分離出涉及的項、對應用配方法),可得到正態分佈的參數:

注意上面所有步驟用二次和公式都能化簡。

推導q(τ)

的推導大致相同,簡潔起見略去細節。

兩側取指數,可見服從伽馬分佈

計算參數

回憶前幾節的結論:

每種情形下,某變量的分佈參數取決於對另一變量的期望。可用正態分佈和伽馬分佈矩期望的標準公式推廣期望:

大多數時候將這些公式應用到上述方程不困難,但需要更多工作:

這樣就可以寫出參數方程如下,不需要期望:

注意存在相互依賴關係,自然產生了類似最大期望算法的算法:

  1. 計算用所得值計算
  2. 初始化為任意值。
  3. 的現值和其它參數的已知值計算
  4. 的現值和其它參數的已知值計算
  5. 重複最後兩部,直到收斂(即直到兩值的更新量不超過閾值)。

然後就有了後驗參數近似分佈的超參數值,可用於計算後驗的任何屬性,如均值、方差、95%最高密度區域(包含總概率95%的最小區間)等等。

可以證明這種算法保證收斂到局部極大值。

還要注意,後驗分佈與相應的先驗分佈有同樣的形式。只需假設分佈可以分解,分佈形式便隨之而來。事實證明,後驗、先驗形式相同並非巧合,而是先驗分佈為指數族成員時的一般結果,大多數標準分佈都如此。

進一步討論

分步法

上面例子展示了給定貝葉斯網絡中推導後驗概率密度的變分貝葉斯近似的方法:

  1. 圖模式描述網絡,確定觀察變量(數據)和未觀察變量(參數潛變量)及其條件概率分佈。之後,變分貝葉斯構建後驗概率,這近似具有可分解分佈的基本特性,即是多個獨立分佈在不相交的未觀測變量子集上的積。
  2. 將未觀測變量劃分為多個子集,在其上推導出獨立因子。這種方法沒有通用的程序,子集太多會使近似結果不佳,子集過少會使整個變分貝葉斯方法變得難以實現。第一種分割方法是將參數和潛變量分開,一般足以產生可操作的結果。劃分記作
  3. 對給定的劃分,用基本方程寫出最佳近似分佈
  4. 用圖模式填寫聯合概率分佈公式。任何不涉及中變量的分量條件分佈都可忽略,它們將被摺疊到常數項中。
  5. 按上面例子,簡化公式並應用期望算子。理想情況下這應該簡化為不屬於的變量的基本函數的期望(如第一或第二原始、對數期望等等)。為讓變分貝葉斯方法順利運行,這些期望值通常應可以解析地表為變量分佈的參數和/或超參數的函數。這些期望項對當前劃分的變量都是常數。
  6. 式對當前劃分中變量的函數形式表明了分佈的類型。特別地,取公式指數,便得到分佈的概率密度函數(PDF)(或至少是與之成正比的函數,帶未知歸一化常數)。要使方法可操作,應能識別出函數形式所屬的已知分佈;要將公式轉為匹配已知分佈的PDF的形式,可能需要大量計算。若能做到,就可根據定義恢復歸一化常數,並提取公式中的適當部分得到已知分佈的參數方程。
  7. 期望都可用非當前劃分變量的函數進行解析替換、並將PDF轉為可與已知分佈相對應的形式,此時結果應是一組方程,將最優參數值表為其他劃分變量參數的函數。
  8. 若這程序適用於所有劃分,就會產生相互依賴的方程組,指明所有參數的最優值。
  9. 最大期望算法型程序可為每個參數選取初值,再迭代。每一步中,我們都會在方程中循環,依次更新每個參數。可以確證收斂。

另見

參考文獻

  1. ^ 1.0 1.1 1.2 1.3 Tran, Viet Hung. Copula Variational Bayes inference via information geometry. 2018. arXiv:1803.10998可免費查閱 [cs.IT]. 
  2. ^ 2.0 2.1 Adamčík, Martin. The Information Geometry of Bregman Divergences and Some Applications in Multi-Expert Reasoning. Entropy. 2014, 16 (12): 6338–6381. Bibcode:2014Entrp..16.6338A. doi:10.3390/e16126338可免費查閱. 
  3. ^ Nguyen, Duy. AN IN DEPTH INTRODUCTION TO VARIATIONAL BAYES NOTE. 2023-08-15 [2023-08-15]. SSRN 4541076可免費查閱 請檢查|ssrn=的值 (幫助). doi:10.2139/ssrn.4541076. 
  4. ^ 4.0 4.1 4.2 Lee, Se Yoon. Gibbs sampler and coordinate ascent variational inference: A set-theoretical review. Communications in Statistics - Theory and Methods. 2021, 51 (6): 1–21. S2CID 220935477. arXiv:2008.01006可免費查閱. doi:10.1080/03610926.2021.1921214. 
  5. ^ Boyd, Stephen P.; Vandenberghe, Lieven. Convex Optimization (PDF). Cambridge University Press. 2004 [2011-10-15]. ISBN 978-0-521-83378-3. 
  6. ^ Bishop, Christopher M. Chapter 10. Pattern Recognition and Machine Learning. Springer. 2006. ISBN 978-0-387-31073-2. 

外部連結