VAE的原理大概为,给定一个 xx,我们认为其是由一个隐变量 zz 生成的,这个隐变量 zz 则是通过一个后验网络 qϕ(zx)q_{\phi}(z|x) 预测出来的,而在推理的时候,则是通过 zz 去预测 xx.

20250804154550

如果用公式描述p(x)p(x)的生成过程,则大概可以分为以下几步

p(x)=zpθ(xz)p(z)(1)p(x) = \int_z p_{\theta}(x|z)p(z) \tag{1}

可以理解为在所有 zz 上进行积分得到每一个 p(z)p(z) 发生的概率乘以每一个 p(z)p(z) 发生的时候 p(x)p(x) 也发生的概率 pθ(xz)p_\theta(x|z),此时我们同时乘以和除以一个 qϕ(zx)q_\phi(z|x),则可以得到:

p(x)=zqϕ(zx)pθ(xz)p(z)qϕ(zx)(2)p(x) = \int_z q_\phi(z|x) \frac{p_{\theta}(x|z)p(z)}{q_\phi(z|x)} \tag{2}

我们可以把这个边缘计算进行期望表示

logp(x)=logEzqϕ(zx)[pθ(xz)p(z)qϕ(zx)](3)logp(x)=logE_{z \sim q_\phi(z∣x)} [\frac{p_\theta(x∣z)p(z)}{q_\phi(z∣x)}] \tag{3}

对于这个 将边缘计算进行期望表示 即公式(3) 的理解为:

对于一个连续随机变量 ZZ 和一个函数 f(Z)f(Z),其期望(均值)定义为:

E=f(z)p(z)dz(4)\mathbb{E} = \int_{-\infty}^{\infty} f(z)p(z) dz \tag{4}

其中:

  • f(Z)f(Z) 是随机变量 ZZ 的某个函数
  • p(z)p(z) ZZ 的概率密度函数

这个公式表明,期望是通过将函数 f(Z)f(Z) 在整个样本空间上加权平均得到的,权重上随机变量的概率密度 p(z)p(z)

假如有一个积分表达式:

I=f(z)g(z)dz(5)I=\int f(z)g(z)dz \tag{5}

如果我们将 g(z)g(z) 视为某个随机变量 ZZ 的概率密度函数 p(z)p(z),那么这个积分可以写成

I=f(z)p(z)dz(6)I=\int f(z)p(z) dz \tag{6}

根据期望的定义,这正是随机变量 fZf{Z}的期望:

I=E[f(Z)](7)I=\mathbb{E}[f(Z)] \tag{7}

则对于我们的边缘计算进行期望表示则可以理解为:

f(z)qϕ(zx)dz=Ezqϕ(zx)[f(z)](8)\int f(z)q_\phi(z|x)dz = \mathbb{E}_{z \sim q_\phi(z|x)}[f(z)] \tag{8}

即在给定条件 xx 下,随机变量 f(Z)f(Z) 的期望可以通过积分计算,zqϕ(zx)z \sim q_\phi(z∣x) 是概率论和机器学习中常见的表示方法。它表示随机变量 zz 从条件概率分布 qϕ(zx)q_\phi(z∣x) 中采样。

根据公式(8),我们可以将 pθ(xz)p(z)qϕ(zx)\frac{p_{\theta}(x|z)p(z)}{q_\phi(z|x)} 看作是 f(z)f(z),则f(z)f(z)可以被写为

f(z)=pθ(xz)p(z)qϕ(zx)(9)f(z)=\frac{p_{\theta}(x|z)p(z)}{q_\phi(z|x)} \tag{9}

则公式(2)可以被写为:

p(x)=zqϕ(zx)f(z)(10)p(x) = \int_z q_\phi(z|x) f(z) \tag{10}

那么则有:

logp(x)=logEzqϕ(zx)f(z)(11)logp(x)=logE_{z \sim q_\phi(z∣x)} f(z) \tag{11}

根据詹森不等式(Jensen’s Inequality),将对数期望转换为一个下界。这个下界被称为证据下界(Evidence Lower Bound, ELBO),它是变分推断中优化的目标。
詹森不等式的定义:对于一个凸函数ff和一个随机变量XX,詹森不等式表述为,如果ff是一个凸函数,那么对于任何随机变量XX,我们有:

f(E[X])E(f(X))(12)f(\mathbb{E}[X]) \leq \mathbb{E(f(X))} \tag{12}

f()==log()f()==log()时候,通过最大化 ELBO,我们可以找到最佳的近似分布 qϕ(zx)q_\phi(z∣x),从而使其尽可能接近真实的后验分布 p(zx)p(z∣x)

logp(x)=logEzqϕ(zx)f(z)Ezqϕ(zx)[logf(z)](13)logp(x) = logE_{z \sim q_\phi(z∣x)} f(z) \\ \geq \mathbb{E}_{z \sim q_\phi(z∣x)} [\log f(z)] \tag{13}

其中:

f(z)=pθ(xz)p(z)qϕ(zx)(14)f(z) = \frac{p_{\theta}(x|z)p(z)}{q_\phi(z|x)} \tag{14}

综上,则有:

logp(x)Ezqϕ(zx)[pθ(xz)p(z)qϕ(zx)](15)log p(x) \geq \mathbb{E}_{z \sim q_\phi(z∣x)} [\frac{p_{\theta}(x|z)p(z)}{q_\phi(z|x)}] \tag{15}