证据下界

在变分贝叶斯方法中,证据下界(,;有时也称为变分下界负变分自由能)是一种用于估计一些观测数据的对数似然的下限。

术语和符号
设 X和 Z是随机变量,其联合分布为p_\theta。例如,p_\theta( X)是 X的边缘分布,p_\theta( Z \mid X)是在给定 X的条件下, Z的条件分布。那么对于任何从p_\theta中抽取的样本x\sim p_\theta和任何分布
q_\phi
,我们有:

\ln p_\theta(x) \ge \mathbb \mathbb E_{z\sim q_\phi}\left[ \ln\frac{p_\theta(x, z)}{q_\phi(z)} \right].

我们将上述不等式称为ELBO不等式。其中,左侧称为x的证据,右侧称为x的证据下界(ELBO)。

在变分贝叶斯方法的术语中,分布p_\theta( X)称为证据。一些人使用“证据”一词来表示\ln p_\theta( X),而其他作者将\ln p_\theta( X)称为对数证据,有些人会交替使用证据和对数证据这两个术语。

ELBO 没有普遍且固定的表示法。在本文中我们使用L(\phi, \theta; x) := \mathbb E_{z\sim q_\phi(\cdot | x)}\left[ \ln\frac{p_\theta(x, z)}{q_\phi(z|x)} \right].

动机
变分贝叶斯推理
假设我们有一个可观察的随机变量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。这是变分法中的一个变分问题,因此被称为变分方法。

由于明确参数化的分布族并不多(所有经典的分布族,如正态分布、耿貝爾分布等都太过简单,无法很好地模拟真实分布),我们考虑隐式参数化的概率分布:

  • 首先,定义一个在潜在随机变量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^的一个接近近似:p_\theta(X) \approx p^(X)由于右侧的分布仅涉及到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。通常的贝叶斯方法是估计积分:

p_\theta(x) = \int p_\theta(x|z)p(z)dz

然后通过贝叶斯定理计算:

p_\theta(z|x) = \frac{p_\theta(x|z)p(z)}{p_\theta(x)}

这通常是非常耗时的,但如果我们可以找到一个在大多数x, z下的好近似q_\phi(z|x) \approx p_\theta(z|x),那么我们就可以快速地从x推断出z。因此,寻找一个好的q_\phi也称为摊销推断

综上所述,我们找到了一个变分贝叶斯推断问题。

推导ELBO
变分推断中的一个基本结果是,最小化KL散度等价于最大化对数似然:\mathbb{E}_{x\sim p^(x)}[\ln p_\theta (x)] = -H(p^) - D_{\mathit{KL}}(p^(x) \| p_\theta(x))其中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),然后使用:N\max_\theta \mathbb{E}_{x\sim p^(x)}[\ln p_\theta (x)]\approx \max_\theta \sum_i \ln p_\theta (x_i)为了最大化\sum_i \ln p_\theta (x_i),必须要找到\ln p_\theta (x_i):{{NoteTag|事实上,根据簡森不等式,有 \mathbb E_{x\sim p^{}(x)}\left[\max {\theta }\sum {i}\ln p{\theta }(x{i})\right]\geq \max {\theta }\mathbb E{x\sim p^{}(x)}\left[\sum {i}\ln p{\theta }(x_{i})\right]=N\max {\theta }\mathbb {E} {x\sim p^{}(x)}[\ln p{\theta }(x)] 这个估计量存在向上的偏差。这可以看作是过度拟合:对于一些有限的采样数据 x{i} ,通常存在一些 \theta 比整个 p^{} 分布更好地拟合它们。|name=注1}}\ln p_\theta(x) = \ln \int p_\theta(x|z) p(z)dz这通常没有解析解,必须进行估计。估计积分的常用方法是使用重要性采样进行蒙地卡羅積分:\int p_\theta(x|z) p(z)dz = \mathbb E_{z\sim q_\phi(\cdot|x)}\left[\frac{p_\theta (x, z)}{q_\phi(z|x)}\right]其中,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是非线性的。事实上,由于簡森不等式,我们有:\ln p_\theta(x)= \ln \mathbb E_{z\sim q_\phi(\cdot|x)}\left[\frac{p_\theta (x, z)}{q_\phi(z|x)}\right] \geq \mathbb E_{z\sim q_\phi(\cdot|x)}\left[\ln\frac{p_\theta (x, z)}{q_\phi(z|x)}\right]事实上,所有明显的\ln p_\theta(x)的估计量都是向下偏的,因为无论我们取多少个z_i\sim q_\phi(\cdot | x)的样本,我们都可以由琴生不等式得到:\mathbb E_{z_i \sim q_\phi(\cdot|x)}\left[
\ln \left(\frac 1N \sum_i \frac{p_\theta (x, z_i)}{q_\phi(z_i|x)}\right)
\right] \leq \ln \mathbb E_{z_i \sim q_\phi(\cdot|x)}\left[
\frac 1N \sum_i \frac{p_\theta (x, z_i)}{q_\phi(z_i|x)}
\right] = \ln p_\theta(x) 减去右边,我们可以看出问题归结为零的有偏估计问题:\mathbb E_{z_i \sim q_\phi(\cdot|x)}\left[
\ln \left(\frac 1N \sum_i \frac{p_\theta (z_i|x)}{q_\phi(z_i|x)}\right)
\right] \leq 0通过delta 方法,我们有\mathbb E_{z_i \sim q_\phi(\cdot|x)}\left[
\ln \left(\frac 1N \sum_i \frac{p_\theta (z_i|x)}{q_\phi(z_i|x)}\right)
\right] \approx -\frac{1}{2N} \mathbb V_{z \sim q_\phi(\cdot|x)}\left[\frac{p_\theta (z|x)}{q_\phi(z|x)}\right] = O(N^{-1})如果我们继续推导,我们将得到加权自编码器。但是让我们先回到最简单的情况,即N=1:\ln p_\theta(x)= \ln \mathbb E_{z\sim q_\phi(\cdot|x)}\left[\frac{p_\theta (x, z)}{q_\phi(z|x)}\right] \geq \mathbb E_{z\sim q_\phi(\cdot|x)}\left[\ln\frac{p_\theta (x, z)}{q_\phi(z|x)}\right]不等式的紧度有一个解析解:\ln p_\theta(x)- \mathbb E_{z\sim q_\phi(\cdot|x)}\left[\ln\frac{p_\theta (x, z)}{q_\phi(z|x)}\right] = D_{\mathit{KL}}(q_\phi(\cdot | x)\| p_\theta(\cdot | x))\geq 0这样我们就得到了ELBO函数:L(\phi, \theta; x) := \ln p_\theta(x) - D_{\mathit{KL}}(q_\phi(\cdot | x)\| p_\theta(\cdot | x))

最大化 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,使得我们同时得到了以下近似:\ln p_{\hat \theta}(x) \approx \max_\theta \ln p_\theta(x); \quad q_{\hat\phi}(\cdot | x)\approx p_{\hat\theta}(\cdot | x)由于\mathbb{E}_{x\sim p^(x)}[\ln p_\theta (x)] = -H(p^) - D_{\mathit{KL}}(p^(x) \| p_\theta(x))我们有\ln p_{\hat \theta}(x) \approx \max_\theta -H(p^) - D_{\mathit{KL}}(p^(x) \| p_\theta(x))所以\hat\theta \approx \arg\min D_{\mathit{KL}}(p^(x) \| p_\theta(x))也就是说: 最大化ELBO将同时使我们得到一个准确的生成模型p_{\hat\theta} \approx p^*和一个准确的判别模型 q_{\hat\phi}(\cdot | x)\approx p_{\hat\theta}(\cdot | x)。

主要形式
ELBO具有许多可能的表达式,每个表达式都有不同的强调。\mathbb{E}_{z\sim q_\phi(\cdot | x)}\left[\ln\frac{p_\theta(x, z)}{q_\phi(z|x)}\right] = \int q_\phi(z|x)\ln\frac{p_\theta(x, z)}{q_\phi(z|x)}dz这个形式表明,如果我们抽样z\sim q_\phi(\cdot | x) , 则\ln\frac{p_\theta(x, z)}{q_\phi(z|x)}是 ELBO 的无偏估计量。\ln p_\theta(x) - D_{\mathit{KL}}(q_\phi(\cdot | x) \;\|\; p_\theta(\cdot | x))这种形式显示 ELBO 是证据\ln p_\theta(x)的下界 ,并且关于\phi最大化 ELBO 等价于最小化从p_\theta(\cdot | x)到q_\phi(\cdot | x) KL 散度 .\mathbb{E}_{z\sim q_\phi(\cdot | x)}[\ln p_\theta(x|z)] - D_{\mathit{KL}}(q_\phi(\cdot | x) \;\|\; p)这种形式显示,最大化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)移动。H(q_\phi(\cdot | x)) + \mathbb{E}_{z\sim q(\cdot | x)}[\ln p_\theta(z|x)] + \ln p_\theta(x)这个形式显示,最大化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 1N \sum_i \delta_{x_i}。其中\delta表示冲激函数(Dirac函数)。

从p_\theta(x)拟合q_D(x)通常可以通过最大化对数似然\ln p_\theta(D)来完成:D_{\mathit{KL}}(q_D(x) \| p_\theta(x)) = -\frac 1N \sum_i \ln p_\theta(x_i) - H(q_D)= -\frac 1N \ln p_\theta(D) + H(q_D) 现在,根据 ELBO 不等式,我们可以约束\ln p_\theta(D) , 因此D_{\mathit{KL}}(q_D(x) \| p_\theta(x)) \leq -\frac 1N L(\phi, \theta; D) - H(q_D)右侧简化为 KL 散度,因此我们得到:D_{\mathit{KL}}(q_D(x) \| p_\theta(x)) \leq -\frac 1N \sum_i L(\phi, \theta; x_i) - H(q_D)= D_{\mathit{KL}}(q_{D, \phi}(x, z); p_\theta(x, z))这个结果可以解释为数据处理不等式的一个特例。

在这个解释下,最大化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散度而付出了较弱的不等式代价。

参考
注释

评论 (0)

  • 还没有评论,来抢沙发吧。