问题提出:后验推断的困境
在贝叶斯框架中,我们常需进行后验推断(Posterior inference),即计算后验分布 $p(z|x)$。根据贝叶斯公式:
$$ p(z|x) = \frac{p(x,z)}{p(x)}, \quad \text{其中} \ p(x) = \int_z p(x,z) \mathrm{d}z $$核心难点在于分母的边缘概率 $p(x)$:
- 当 $z$ 是高维连续变量时,积分 $\int_z p(x,z) \mathrm{d}z$ 难以解析求解
- 当 $z$ 是离散变量时,计算复杂度随数据量呈指数级增长(如高斯混合模型中 $O(K^n)$)
思路转变:变分推断的提出
既然直接计算行不通,那么转变思路:我们不用非得求出那个完美的 $p(z|x)$,而是引入一个相对简单、可计算的近似分布 $q(z;\theta)$,并让我们这个 $q(z;\theta)$尽可能地去逼近真实的 $p(z|x)$。
这种“优化的对象是函数(分布)而非单个变量”的思想来源于变分法(Calculus of Variations),而优化目标是进行后验推断,因此用变分的思想来计算后验推断的方法就被叫做变分推断(Variational Inference, VI)。其中近似分布$q(z;\theta)$也被称为变分分布。
具体的,我们可以用KL散度((Kullback-Leibler Divergence))来衡量变分分布 $q(z;\theta)$和真实分布的 $p(z|x)$之间的距离,则变分推断的目标函数可以写为:
$$ \theta^* = \arg\min_{\theta} \ KL(q(z;\theta) \| p(z|x)) $$
其中KL散度定义为:
可以看到,变分推断将一个推断问题转化为了一个优化问题。
优化目标转化:ELBO的提出
我们可以看出直接计算$KL(q(z;\theta) \| p(z|x))$是不可行的,因为包含未知的$p(z|x)$。
通过对KL散度进行分解可得:
移项可得:
其中$\log p(x)$是对数证据(evidence),由于KL散度具有恒大于等于0的性质,即
$KL(p\|q) \geq 0$,可得:
$\log p(x) \geq \mathbb{E}_{z\sim q(z;\theta)}[\log p(x,z)] - \mathbb{E}_{z\sim q(z;\theta)}[\log q(z;\theta)]$
因此不等式右侧是对数证据的一个下界,被定义为证据下界(Evidence Lower Bound, ELBO):
注意,$\log p(x)$与$q(z;\theta)$或者说$\theta$是无关,在目标函数中是一个常量。因此当我们希望最小化KL散度$KL(q(z;\theta)||p(z|x))$时,等价于最大化ELBO:
因此最终优化目标转化为了:
深入分析:ELBO的物理意义
进一步分析ELBO的物理性质:
- $\mathbb{E}_q \log p(x,z)$:表示变分分布 $q$ 对联合分布 $p(x,z)$ 的期望,反映 $q$ 对数据生成过程的拟合程度。
- $\mathbb{E}_q \log q(z;\theta)$:是 $q$ 的熵,衡量变分分布的复杂度。
因此最大化ELBO本质上是在"拟合数据"与"分布简单性"之间寻求平衡。
我们还可以进一步分解 ELBO,得到一个更具启发性的形式:
这个形式的 ELBO 包含两项:
- $\mathbb{E}{q}[\log p({x} \vert {z})]$:期望的对数似然(Expected Log-Likelihood)。
- 这一项度量了在变分分布 $q({z})$ 下采样的隐变量解释观测数据 ${x}$ 的程度。
- 最大化这一项鼓励 $q({z})$ 将概率质量分配给那些最有可能生成观测数据 ${x}$ 的隐变量 ${z}$。在 VAE (Variational Autoencoder) 中,这通常被称为重构项(reconstruction term),因为它衡量了从潜在表示 ${z}$ 重构出原始数据 ${x}$ 的效果。
- $KL(q({z}) | p({z}))$:变分分布与先验的负KL散度。
- 这一项度量了变分分布 $q({z})$ 与隐变量的先验分布 $p({z})$ 之间的差异。
- 最大化这一项(等价于最小化 $\text{KL}(q({z}) | p({z}))$,因为有负号)鼓励变分分布 $q({z})$ 保持接近先验分布 $p({z})$。这可以被视为一种正则化。它确保我们学习到的后验近似 $q({z})$ 不会过度偏离我们对隐变量的先验知识。这个形式的 ELBO 有时被称为先验对比式(prior-contrastive)。在 VAE 中,这通常被称为正则化项(regularization term),它约束了潜在空间的结构。
因此,最大化 ELBO可以被理解为平衡了两个目标:
- 使隐变量能够很好地解释/重构观测数据(最大化 $\mathbb{E}{q}[\log p({x} \vert {z})]$)。
- 使学习到的变分分布接近我们对隐变量的先验假设(最小化 $\text{KL}(q({z}) | p({z}))$)。