变分推断(一):KL-Divergence作为距离度量
变分推断属于贝叶斯模型中近似后验的方法,其构成了《VAE:自动编码变分贝叶斯》的数学原理。接下来,基于论文《Variational Inference: A Review for Statisticians》理解其理论。
近似后验
在贝叶斯模型中,隐变量有助于控制数据的分布。一个贝叶斯模型从先验密度$p(\mathbf{z})$中采样隐变量,在根据似然$p(\mathbf{x}\vert\mathbf{z})$采样观测。在贝叶斯模型中,推断是指根据观测数据计算后验$p(\mathbf{z}\vert\mathbf{x})$。在复杂贝叶斯模型中,通常需要近似推断。
过去数十年,近似推断的主要方法是马尔可夫链蒙特卡洛MCMC。在该方法中,先构建一个$\mathbf{z}$的马尔可夫链,其静态分布为后验$p(\mathbf{z}\vert\mathbf{x})$。接下来,从该链中收集静态分布的样本。最后,从收集的样本中构建实验估计以近似后验。
然而,在面对数据量足够大且模型足够复杂时,MCMC方法因其速度慢而不适用。
变分推断
与MCMC相比,变分推断把后验推断问题转化为了优化问题,不再是利用采样。首先,假设隐变量的密度函数属于一个近似密度族$\mathcal{Q}$,那么期望找到一个与精确后验之间KL-Divergence最小化的成员,即
$$
\begin{aligned}
q^{*}(\mathbf{z})=\underset{q(\mathbf{z}\in\mathcal{Q})}{argmin}KL(q(\mathbf{z})\Vert p(\mathbf{z}\vert\mathbf{x}))
\end{aligned}\tag{1}
$$
其中,概率密度族$\mathcal{Q}$控制着优化的复杂性。变分推断背后关键的想法是选择一个足够灵活且简单的密度族以捕获接近$p(\mathbf{z}\vert\mathbf{x})$。
与MCMC相比,变分推断也属于近似推断,但其精确性没有理论保障。
近似推断的难点
若$\mathbf{x}=x_{1:n}$为观测变量且$\mathbf{z}=z_{1:m}$为隐变量,那么联合概率密度为$p(\mathbf{z},\mathbf{x})$。给定$\mathbf{x}$条件下的$\mathbf{z}$的条件密度为
$$
\begin{aligned}
p(\mathbf{z}\vert\mathbf{x})=\frac{p(\mathbf{z},\mathbf{x})}{p(\mathbf{x})}
\end{aligned}\tag{2}
$$
式(2)中分母包含了观测的边际密度,被称为证据,计算方法为
$$
\begin{aligned}
p(\mathbf{x})=\int p(\mathbf{z},\mathbf{x})d\mathbf{z}
\end{aligned}\tag{3}
$$
然而,对于大部份模型,证据的积分很难计算。
ELBO
在变分推断中,推断问题的优化目标为式(1)。然而,由于需要计算证据$log(p(\mathbf{x}))$,所以该目标计算难度大。确切的原因为:
$$
\begin{aligned}
KL(q(\mathbf{z})\Vert p(\mathbf{z}\vert\mathbf{x}))&=\mathbb{E}[log q(\mathbf{z})]-\mathbb{E}[log p(\mathbf{z}\vert\mathbf{x})] \\
&=\mathbb{E}[log q(\mathbf{z})]-\mathbb{E}[log p(\mathbf{z},\mathbf{x})]+log p(\mathbf{x})
\end{aligned}\tag{4}
$$
那么,可替代的优化目标为
$$
\begin{aligned}
ELBO(q)=\mathbb{E}[logp(\mathbf{z},\mathbf{x})]-\mathbb{E}[logq(\mathbf{z})]
\end{aligned}\tag{5}
$$
该函数被称为证据下界,其与KL-Divergence相差常数$logp(\mathbf{x})$,这是因为以上期望均是关于$q(\mathbf{z})$。由此,最大化证据下界就是最小化KL-Divergence。
进一步的,ELBO可被写为:
$$
\begin{aligned}
ELBO(q)&=\mathbb{E}[logp(\mathbf{z})]+\mathbb{E}[logp(\mathbf{x}\vert\mathbf{z})]-\mathbb{E}[logq(\mathbf{z})] \\
&=\mathbb{E}[logp(\mathbf{x}\vert\mathbf{z})]-KL(q(\mathbf{z})\Vert p(\mathbf{z}))
\end{aligned}\tag{6}
$$
其中,第一项鼓励隐变量解释观测变量,第二项为变分密度和先验之间的距离。由此,该变分目标可以理解为似然和先验之间的平衡。
根据式(4)和式(5),可观察到,证据下界的另一个特性是它属于证据的下界,即$logp(x)\ge ELBO(q)$,这是因为
$$
\begin{aligned}
logp(\mathbf{x})=KL(q(\mathbf{z})\Vert p(\mathbf{z}\vert\mathbf{x}))+ELBO(q)
\end{aligned}\tag{7}
$$
且$KL(\cdot)\ge0$。这一特性也可从Jensen不等式推导得到。
总结
本文介绍了变分推断的主要目标是近似隐变量的后验。在近似后验过程中,由于证据边际密度获得的积分难度,从而引出了证据下界的内容。证据下界的最大化不仅可以近似后验,也可以近似证据的log似然。
引用方法
请参考:
li,wanye. "变分推断(一):KL-Divergence作为距离度量". wyli'Blog (Jun 2025). https://www.robotech.ink/index.php/archives/743.html
或BibTex方式引用:
@online{eaiStar-743,
title={变分推断(一):KL-Divergence作为距离度量},
author={li,wanye},
year={2025},
month={Jun},
url="https://www.robotech.ink/index.php/archives/743.html"
}