Auto-Encoding Variational Bayes

下载 PDF

Auto-Encoding Variational Bayes - 中文验证版

英文原始依据卡片:vae_2013.md

状态:已翻译。

元数据

计算设置

论文明确报告的是 CPU 时代计算,而非加速器训练。在实验部分,作者说明计算耗时约为每百万训练样本 20-40 分钟,运行在"有效算力 40 GFLOPS 的 Intel Xeon CPU"上。未列出任何 GPU、TPU 或集群设置。因此,按项目规则,这些实验最好解读为 2013 年面向单机 CPU 随机优化的神经网络研究,而非大批量加速器训练。

训练配置相应地较小且更新高效。AEVB 算法使用 M = 100 的小批量,在报告的实验中每个数据点仅使用 L = 1 个 Monte Carlo 样本。对于下界实验,MNIST 模型使用各含 500 个隐单元的 encoder 和 decoder 网络,而 Frey Face 模型使用 200 个隐单元以减少在较小数据集上的过拟合。对于 marginal likelihood 比较,论文使用 100 个隐单元和 3 个 latent variable,因为 MCMC 估计器在 latent dimension 更高时变得不可靠。

瓶颈

计算瓶颈是推断,而非矩阵规模。论文针对的是 latent variable 模型,其中 marginal likelihood 积分、真实后验和 mean-field variational Bayes 所需的期望是 intractable 的,尤其当 likelihood 由带非线性隐层的神经网络参数化时。如果后验无法计算,EM 就不可用,而用于 variational parameter 的朴素 Monte Carlo 梯度具有高方差。

论文还将大数据集视为计算约束:批量优化过于昂贵,而基于采样的方法(如 Monte Carlo EM)需要为每个数据点运行昂贵的采样循环。附录 E 给出了 MCEM baseline 的具体成本:每个更新周期使用 10 个自动调参步长的 HMC leapfrog 步骤,然后使用采集到的样本进行 5 次权重更新。这对于在线或小批量神经网络训练(尤其在论文报告的 CPU 设置上)而言适配性很差。

方法适配

该方法是将 variational inference 计算适配到普通 backpropagation 的方法。recognition model q_phi(z|x) 摊销了后验推断:不再为每个数据点分别优化 variational parameters,而是用单个 neural encoder 将每个输入映射到近似后验的参数。reparameterization trick 将潜变量采样重写为 z = g_phi(epsilon, x),其中 epsilon 从固定噪声分布中抽取。这把随机性移到了可微路径之外,因此下界估计量可以通过标准自动微分对 encoder 和 decoder 参数同时求导。

估计量被设计为将采样预算保持得极小。论文指出 KL 项通常可以解析积分,因此只有期望重建项需要采样。实践中,当小批量足够大(如 M = 100)时,L = 1 就足够。这一选择对计算叙事至关重要:训练不再需要每个数据点更新内部的嵌套后验采样,而是变成通过两个小型神经网络的一个小批量 forward/backward 传递,外加每个样本一次噪声抽取。因此,该方法用单次摊销 encoder 评估替代了逐样本迭代推断。

证据

实验证据关注每个训练样本评估的收敛性。在 MNIST 和 Frey Faces 上,图 2 将 AEVB 与 wake-sleep 在多个 latent dimension 下进行比较。图注说明 AEVB"在所有实验中收敛速度显著更快,并达到更好的解";绘制下界的估计量方差很小(小于 1),因此省略。横轴是评估的训练点数量,这对论文的 CPU 时代计算预算而言是正确的坐标轴,因为它度量了所需的数据流和梯度工作量。

Marginal likelihood 比较也支持了计算主张。图 3 在 MNIST 的小和较大训练集规模上比较了 AEVB、wake-sleep 和 Monte Carlo EM。论文指出,Monte Carlo EM 不是在线算法,无法高效应用于完整 MNIST 数据集,而 AEVB 和 wake-sleep 可以。这一点很重要,因为 VAE 的结果不仅仅是一个更好的界限;它是一种将 latent variable 模型保持在神经网络所使用的同一种随机梯度循环内的方法。

架构和优化选择强化了这一点。所有参数用 Adagrad 联合优化,带有小 weight decay,M = 100 小批量,每个数据点 L = 1 样本。该方法被呈现为对一个下界进行近似 MAP 优化,其梯度可以直接计算,而不是作为包裹在神经模型外部的独立推断引擎。

历史影响

VAE 通过将近似后验推断转化为类似标准监督神经网络训练的形式,改变了深度生成建模的计算结构。此前的 latent variable 方法通常将计算花费在逐样本推断或采样上。AEVB 将这项工作的大部分转移到摊销 encoder 和可微随机目标中,使潜变量生成模型兼容小批量、自动微分以及后来加速器支持的训练循环。这就是为什么该论文属于 generative-media 谱系,即使其自身实验是小规模的 CPU 运行:它提供了后来得以扩展的训练原语。

局限

局限也与计算相关。报告的实验按后来标准规模很小,使用浅层 MLP encoder 和 decoder,运行在 Intel Xeon CPU 而非加速器上。估计量针对连续 latent variable;离散变量和更丰富的后验族需要额外机制。Marginal likelihood 估计器仅对极低维 latent space 可靠,论文指出在该比较所采用的 3 个 latent variable 设置之外,估计变得不可靠。最后,使用简单近似后验和小 L 保持训练廉价,但这可能使后验表达力和样本质量落后于后来的生成模型。

链接