在變分貝葉斯方法中，證據下界（常縮寫為 ELBO，有時也稱為變分下界或負變分自由能）是一種用於估計一些觀測數據的對數似然的下限。



術語和符號

設 $X$ 和 $Z$ 是隨機變量，其聯合分布為 $p_{\theta }$ 。例如， $p_{\theta }(X)$ 是 $X$ 的邊緣分布， $p_{\theta }(Z\mid X)$ 是在給定 $X$ 的條件下， $Z$ 的條件分布。那麼對於任何從 $p_{\theta }$ 中抽取的樣本 $x\sim p_{\theta }$ 和任何分布 $q_{\phi }$ ，我們有：

 
我們將上述不等式稱為 ELBO 不等式。其中，左側稱為 $x$ 的證據，右側稱為 $x$ 的證據下界（ELBO）。

在變分貝葉斯方法的術語中，分布 $p_{\theta }(X)$ 稱為證據。一些人使用「證據」一詞來表示 $\ln p_{\theta }(X)$ ，而其他作者將 $\ln p_{\theta }(X)$ 稱為對數證據，有些人會交替使用證據和對數證據這兩個術語。

ELBO 沒有普遍且固定的表示法。在本文中我們使用



動機

變分貝葉斯推理

假設我們有一個可觀察的隨機變量 $X$ ，並且我們想找到其真實分布 $p^{*}$ 。這將允許我們通過抽樣生成數據，並估計未來事件的概率。一般來說，精確找到 $p^{*}$ 是不可能的，因此我們不得不尋找一個近似。

也就是說，我們定義一個足夠大的參數化分布族 $\{p_{\theta }\}_{\theta \in \Theta }$ ，然後最小化某種損失函數 $L$ ， $\min _{\theta }L(p_{\theta },p^{*})$ 。解決這個問題的一種可能方法是考慮從 $p_{\theta }$ 到 $p_{\theta +\delta \theta }$ 的微小變化，並解決 $L(p_{\theta },p^{*})-L(p_{\theta +\delta \theta },p^{*})=0$ 。這是變分法中的一個變分問題，因此被稱為變分方法。

由於明確參數化的分布族並不多（所有經典的分布族，如常態分布、Gumbel 分布等都太過簡單，無法很好地模擬真實分布），我們考慮隱式參數化的概率分布：


* 首先，定義一個在潛在隨機變量 $Z$ 上的簡單分布 $p(z)$ 。通常情況下，常態分布或均勻分布已足夠。

* 接下來，定義一個由 $\theta $ 參數化的複雜函數族 $f_{\theta }$ （例如深度神經網絡）。

* 最後，定義一種將任何 $f_{\theta }(z)$ 轉換為可觀測隨機變量 $X$ 的簡單分布的方法。例如，讓 $f_{\theta }(z)=(f_{1}(z),f_{2}(z))$ 具有兩個輸出，那麼我們可以將相應的分布定義為在 $X$ 上的常態分布 ${\mathcal {N}}(f_{1}(z),e^{f_{2}(z)})$ 。

這定義了一個關於 $(X,Z)$ 的聯合分布族 $p_{\theta }$ 。從 $p_{\theta }$ 中抽取樣本 $(x,z)\sim p_{\theta }$ 變得非常容易：只需從 $p$ 中抽樣 $z\sim p$ ，然後計算 $f_{\theta }(z)$ ，最後使用 $f_{\theta }(z)$ 來抽樣 $x\sim p_{\theta }(\cdot |z)$ 。

 

換句話說，我們擁有了一個可觀測量和潛在隨機變量的生成模型。

現在，我們認為一個分布 $p_{\theta }$ 是好的，如果它是 $p^{*}$ 的一個接近近似：

由於右側的分布僅涉及到 $X$ ，因此左側的分布必須消除潛在變量 $Z$ 的影響，即要對 $Z$ 進行邊緣化。一般情況下，我們無法積分 $p_{\theta }(x)=\int p_{\theta }(x|z)p(z)dz$ ，這迫使我們尋找另一個近似。

由於 $p_{\theta }(x)={\frac {p_{\theta }(x|z)p(z)}{p_{\theta }(z|x)}}$ ，因此我們只需要找到一個 $p_{\theta }(z|x)$ 的好的近似即可。因此，我們定義另一個分布族 $q_{\phi }(z|x)$ 來近似 $p_{\theta }(z|x)$ ，這是一個針對潛在變量的判別模型。

下表概述了所有情況:

用貝葉斯的方式來說， $X$ 是觀測到的證據， $Z$ 是潛在 / 未觀測到的隨機變量。分布 $p$ 在 $Z$ 上是 $Z$ 的先驗分布， $p_{\theta }(x|z)$ 是似然函數，而 $p_{\theta }(z|x)$ 是 $Z$ 的後驗分布。

 
給定一個觀測值 $x$ ，我們可以通過計算 $p_{\theta }(z|x)$ 來推斷出可能導致 $x$ 出現的 $z$ 。通常的貝葉斯方法是估計積分：

然後通過貝葉斯定理計算：

這通常是非常耗時的，但如果我們可以找到一個在大多數 $x,z$ 下的好近似 $q_{\phi }(z|x)\approx p_{\theta }(z|x)$ ，那麼我們就可以快速地從 $x$ 推斷出 $z$ 。因此，尋找一個好的 $q_{\phi }$ 也稱為攤銷推斷。

綜上所述，我們找到了一個變分貝葉斯推斷問題。

推導 ELBO

變分推斷中的一個基本結果是，最小化 Kullback–Leibler 散度（KL 散度）等價於最大化對數似然：

其中 $H(p^{*})=-\mathbb {\mathbb {E} } _{x\sim p^{*}}[\ln p^{*}(x)]$ 是真實分布的熵。因此，如果我們可以最大化 $\mathbb {E} _{x\sim p^{*}(x)}[\ln p_{\theta }(x)]$
我們就可以最小化 $D_{\mathit {KL}}(p^{*}(x)\|p_{\theta }(x))$

因此找到一個準確的近似 $p_{\theta }\approx p^{*}$ 。要最大化 $\mathbb {E} _{x\sim p^{*}(x)}[\ln p_{\theta }(x)]$ 我們只需從真實分布中抽取許多樣本 $x_{i}\sim p^{*}(x)$ ，然後使用：

為了最大化 $\sum _{i}\ln p_{\theta }(x_{i})$ ，必須要找到 $\ln p_{\theta }(x_{i})$ ：這通常沒有解析解，必須進行估計。估計積分的常用方法是使用重要性採樣進行蒙特卡洛積分：其中， $q_{\phi }(z|x)$ 是我們用於進行蒙特卡羅積分的在 $z$ 上的抽樣分布。因此，我們可以看到，如果我們抽樣 $z\sim q_{\phi }(\cdot |x)$ ，那麼 ${\frac {p_{\theta }(x,z)}{q_{\phi }(z|x)}}$ 是 $p_{\theta }(x)$ 的一個無偏估計量。不幸的是，這並不能給我們一個對 $\ln p_{\theta }(x)$ 的無偏估計量，因為 $\ln $ 是非線性的。事實上，由於琴生（Jensen）不等式，我們有：事實上，所有明顯的 $\ln p_{\theta }(x)$ 的估計量都是向下偏的，因為無論我們取多少個 $z_{i}\sim q_{\phi }(\cdot |x)$ 的樣本，我們都可以由琴生不等式得到：減去右邊，我們可以看出問題歸結為零的有偏估計問題：通過 delta 方法，我們有如果我們繼續推導，我們將得到加權自編碼器。但是讓我們先回到最簡單的情況，即 $N=1$ : 不等式的緊度有一個解析解：這樣我們就得到了 ELBO 函數：

最大化 ELBO

對於固定的 $x$ ，優化 $\max _{\theta ,\phi }L(\phi ,\theta ;x)$ 的同時試圖最大化 $\ln p_{\theta }(x)$ 和最小化 $D_{\mathit {KL}}(q_{\phi }(\cdot |x)\|p_{\theta }(\cdot |x))$ 。如果 $p_{\theta }$ 和 $q_{\phi }$ 的參數化足夠靈活，我們會得到一些 ${\hat {\phi }},{\hat {\theta }}$ ，使得我們同時得到了以下近似：

由於我們有所以也就是說： 最大化 ELBO 將同時使我們得到一個準確的生成模型 $p_{\hat {\theta }}\approx p^{*}$ 和一個準確的判別模型 $q_{\hat {\phi }}(\cdot |x)\approx p_{\hat {\theta }}(\cdot |x)$ 。



主要形式

ELBO 具有許多可能的表達式，每個表達式都有不同的強調。

這個形式表明，如果我們抽樣 $z\sim q_{\phi }(\cdot |x)$ ， 則 $\ln {\frac {p_{\theta }(x,z)}{q_{\phi }(z|x)}}$ 是 ELBO 的無偏估計量。這種形式顯示 ELBO 是證據 $\ln p_{\theta }(x)$ 的下界 ，並且關於 $\phi $ 最大化 ELBO 等價於最小化從 $p_{\theta }(\cdot |x)$ 到 $q_{\phi }(\cdot |x)$ KL 散度。這種形式顯示，最大化 ELBO 同時試圖將 $q_{\phi }(\cdot |x)$ 保持接近 $p$ ，並將 $q_{\phi }(\cdot |x)$ 集中在最大化 $\ln p_{\theta }(x|z)$ 的那些 $z$ 上。也就是說，近似後驗 $q_{\phi }(\cdot |x)$ 在保持先驗 $p$ 的同時，朝著最大似然 $\arg \max _{z}\ln p_{\theta }(x|z)$ 移動。這個形式顯示，最大化 ELBO 同時試圖保持 $q_{\phi }(\cdot |x)$ 的熵高，並將 $q_{\phi }(\cdot |x)$ 集中於最大化 $\ln p_{\theta }(z|x)$ 的那些 $z$ 。也就是說，近似後驗 $q_{\phi }(\cdot |x)$ 在均勻分布和向最大後驗 $\arg \max _{z}\ln p_{\theta }(z|x)$ 之間保持平衡。

數據處理不等式

假設我們從 $p^{*}$ 中取 $N$ 個獨立樣本，並將它們收集在數據集 $D=\{x_{1},...,x_{N}\}$ 中，則我們具有經驗分布 $q_{D}(x)={\frac {1}{N}}\sum _{i}\delta _{x_{i}}$ 。其中 $\delta $ 表示衝激函數（Dirac 函數）。

從 $p_{\theta }(x)$ 擬合 $q_{D}(x)$ 通常可以通過最大化對數似然 $\ln p_{\theta }(D)$ 來完成：

現在，根據 ELBO 不等式，我們可以約束 $\ln p_{\theta }(D)$ ， 因此右側簡化為 KL 散度，因此我們得到：這個結果可以解釋為數據處理不等式的一個特例。在這個解釋下，最大化 $L(\phi ,\theta ;D)=\sum _{i}L(\phi ,\theta ;x_{i})$ 等價於最小化 $D_{\mathit {KL}}(q_{D,\phi }(x,z);p_{\theta }(x,z))$ ，其中上式是真實的需要估計的量 $D_{\mathit {KL}}(q_{D}(x);p_{\theta }(x))$ 的上界，通過數據處理不等式獲得。也就是說，我們通過將潛在空間與觀測空間連接起來，為了更高效地最小化 KL 散度而付出了較弱的不等式代價。



參考



注釋