核心要点

  • 编码器把输入映射为潜变量分布的均值 μ 与方差 σ²,而非单个确定向量

  • 用重参数化技巧 z = μ + σ·ε(ε~N(0,1))采样,使采样可微、梯度能反传

  • 解码器从 z 重建输入,训练目标是最大化 ELBO = 重建项 − KL(q(z|x)‖p(z))

  • KL 项把后验拉向标准正态先验,使潜空间连续可采样,可从先验直接生成新样本

标准回答

从自编码器到变分

普通自编码器把输入压成一个确定向量再重建,潜空间不连续、不能采样生成。VAE 改为让编码器输出潜变量的概率分布——具体是高斯的均值 μ 和方差 σ²——把潜空间变成可采样的连续空间。

重参数化技巧

直接从 N(μ, σ²) 采样会阻断梯度。VAE 用 $z = \mu + \sigma \cdot \epsilon$,其中 $\epsilon \sim N(0, I)$,把随机性移到与参数无关的 ε 上,于是采样过程对 μ、σ 可微,能正常反向传播训练。

训练目标 ELBO

VAE 最大化证据下界(ELBO),等价于最小化两项之和:

  • 重建项:解码器从 z 重建 x 的负对数似然(图像常用 MSE交叉熵),保证还原质量;
  • KL 正则项:$KL(q(z|x) ,|, p(z))$,把后验分布拉向标准正态先验,使潜空间规整、连续、可从先验直接采样生成。

用途

训练后从先验 N(0,I) 采样 z 解码即可生成新样本;潜空间连续支持插值。Stable Diffusion 即用 VAE 做感知压缩,把扩散放到其潜空间。

常见误区

⚠️ 常见踩坑

编码器输出的是分布参数(μ、σ)而非确定编码;KL 项不是可选的正则,缺了它潜空间不连续、无法采样生成。KL 权重过大易「后验坍缩」,解码器忽略 z 导致样本模糊。

追问

追问 1重参数化技巧解决了什么问题?

它解决了「采样不可微、梯度无法回传到编码器」的问题。把 z 写成 μ + σ·ε,随机性集中在与参数无关的 ε 上,μ、σ 成为确定可微的函数,于是整条计算图可端到端用反向传播训练。

追问 2VAE 和 GAN 生成质量为何有差异?

VAE 优化似然下界、训练稳定、潜空间结构好,但重建用逐像素损失,样本常偏模糊;GAN判别器对抗训练,样本更锐利逼真,但训练不稳定、易模式坍缩。实践中常把 VAE 做压缩、再叠加扩散或对抗损失提升清晰度。

追问 3什么是后验坍缩?怎么缓解?

后验坍缩指 KL 项把后验压得几乎等于先验、潜变量不再携带信息,解码器干脆忽略 z。缓解手段有 KL 退火(训练初期调小 KL 权重)、β-VAE 调节权重、自由比特(free bits)给每维 KL 设下限,以及减弱解码器表达力。

延伸学习

与本题相关的知识库文章、术语、工具与行业资讯。