变分推断(Variational Inference, VI)的原理与期望下界(ELBO)优化
题目描述
变分推断是深度学习与概率图模型中用于近似复杂后验分布的核心方法。当模型涉及隐变量(如VAE、主题模型)时,后验分布通常难以直接计算(如积分复杂或高维)。变分推断通过将一个可优化的简单分布(如高斯分布)拟合真实后验,将推断问题转化为优化问题。其核心是最大化证据下界(ELBO),从而间接近似后验。
解题过程
1. 问题形式化
- 设观测数据为 \(x\),隐变量为 \(z\),模型联合分布为 \(p(x, z)\)。
- 目标:计算后验分布 \(p(z \mid x) = \frac{p(x, z)}{p(x)}\),但证据 \(p(x) = \int p(x, z) dz\) 难求(尤其高维时)。
- 解决思路:用变分分布 \(q_\phi(z)\)(参数为 \(\phi\))逼近 \(p(z \mid x)\),通过最小化 \(q_\phi(z)\) 与 \(p(z \mid x)\) 的KL散度:
\[ \min_{\phi} D_{\text{KL}}\left(q_\phi(z) \| p(z \mid x)\right). \]
2. 推导证据下界(ELBO)
- 直接优化KL散度需已知 \(p(z \mid x)\),不可行。转而利用KL散度的分解:
\[ \log p(x) = D_{\text{KL}}\left(q_\phi(z) \| p(z \mid x)\right) + \mathcal{L}(\phi). \]
其中,\(\mathcal{L}(\phi)\) 即ELBO,定义为:
\[ \mathcal{L}(\phi) = \mathbb{E}_{q_\phi(z)} \left[ \log \frac{p(x, z)}{q_\phi(z)} \right]. \]
- 由于 \(\log p(x)\) 与 \(\phi\) 无关,最小化KL散度等价于最大化ELBO。
3. ELBO的直观解释
ELBO可重写为两项:
\[\mathcal{L}(\phi) = \mathbb{E}_{q_\phi(z)} [\log p(x \mid z)] - D_{\text{KL}}\left(q_\phi(z) \| p(z)\right). \]
- 第一项:重建损失(Reconstruction Loss),期望隐变量 \(z\) 能解释观测数据 \(x\)。
- 第二项:正则项,约束 \(q_\phi(z)\) 不要偏离先验 \(p(z)\) 太远(如标准高斯先验)。
4. 优化方法
- 梯度下降:直接对 \(\nabla_\phi \mathcal{L}(\phi)\) 优化,但期望项涉及 \(q_\phi\) 的采样,梯度方差大。
- 重参数化技巧(Reparameterization Trick):
若 \(q_\phi(z)\) 可表示为 \(z = g_\phi(\epsilon, x)\)(如 \(z = \mu_\phi(x) + \sigma_\phi(x) \cdot \epsilon, \epsilon \sim \mathcal{N}(0,1)\)),则梯度可回溯至 \(\phi\):
\[ \nabla_\phi \mathcal{L}(\phi) = \mathbb{E}_{\epsilon \sim p(\epsilon)} \left[ \nabla_\phi \log p(x, g_\phi(\epsilon, x)) - \nabla_\phi \log q_\phi(g_\phi(\epsilon, x)) \right]. \]
通过蒙特卡洛采样 \(\epsilon\) 计算梯度,方差更低(如VAE中的用法)。
5. 变分分布的选择
- 平均场近似(Mean-Field):假设 \(q_\phi(z) = \prod_{i=1}^d q_i(z_i)\),各隐变量独立,简化优化。
- 结构化变分分布:保留部分依赖关系(如时序模型中的自回归结构)。
- 归一化流(Normalizing Flows):通过可逆变换构造复杂 \(q_\phi\),提升近似能力。
6. 应用示例
- 变分自编码器(VAE):Encoder输出 \(q_\phi(z \mid x)\) 的参数,Decoder生成 \(p_\theta(x \mid z)\),联合优化ELBO。
- 贝叶斯神经网络:用变分分布近似权重后验,实现不确定性估计。
总结
变分推断通过优化ELBO,将后验推断转化为可解的优化问题,其核心权衡在于重建精度与分布匹配程度。结合重参数化、灵活变分分布等技术,已成为深度概率模型的基石方法。