变分自编码器(VAE)是机器学习中的一种生成模型,将观测数据的概率模型与通过学习得到的隐变量近似推断方法相结合。它通常使用人工神经网络实现,既学习如何从潜在空间生成观测数据,也学习如何根据观测数据推断潜在分布。与传统自编码器不同,它优化的是概率目标,而不只是重构精度。(arxiv.org)
起源与理论基础
迪德里克·P. 金马(Diederik P. Kingma)和马克斯·韦林(Max Welling)在《自编码变分贝叶斯》(Auto-Encoding Variational Bayes)一文中提出了这一框架,该文于2013年12月首次提交。达尼洛·希门尼斯·雷森德(Danilo Jimenez Rezende)、沙基尔·穆罕默德(Shakir Mohamed)和达恩·维尔斯特拉(Daan Wierstra)的密切相关研究于2014年1月出现,并在同年的国际机器学习会议上发表。这些工作借助随机梯度估计,使生成网络与推断网络的联合学习成为可行方法。(arxiv.org)
这一框架将深度学习与贝叶斯推断及变分推断联系起来。它要解决的核心问题是:在非线性生成模型中,隐变量的后验分布通常难以通过计算精确求得。VAE不计算精确后验,而是学习一个易于计算的分布来近似它。(arxiv.org)
生成模型与编码器
对于观测值 (x) 和潜在随机变量 (z),生成模型为
[ p_\theta(x,z)=p(z)p_\theta(x\mid z). ]
其中,(p(z)) 是先验分布,通常采用标准多元正态分布;(p_\theta(x\mid z)) 是解码器定义的似然,其参数 (\theta) 通过学习得到。生成时,先从先验分布中采样 (z),再从解码器分布中采样一个观测值。因此,解码器指定的是一个分布,而不只是一个重构后的数据点。(arxiv.org)
编码器又称识别网络,输出 (q_\phi(z\mid x)),用以近似后验分布 (p_\theta(z\mid x))。在一种常见实现中,它输出高斯分布的均值和对角协方差矩阵。这两个网络构成编码器—解码器架构,但编码器是一种推断机制,并不属于生成过程本身。在不同观测值之间共享编码器参数称为摊销推断:用一个学习得到的映射,取代针对每个输入分别进行的优化。(arxiv.org)
变分训练目标
训练的目标是最大化证据下界(ELBO):
[ \mathcal L(x;\theta,\phi)
\mathbb E_{q_\phi(z\mid x)} [\log p_\theta(x\mid z)]
D_{\mathrm{KL}}!\left(q_\phi(z\mid x),|,p(z)\right). ]
[ \log p_\theta(x)
\mathcal L(x;\theta,\phi) + D_{\mathrm{KL}}!\left(q_\phi(z\mid x),|,p_\theta(z\mid x)\right). ]
由于KL散度非负,ELBO是对数似然的下界。最大化ELBO可以在改善后验近似的同时,实现近似的最大似然估计。(arxiv.org)
ELBO的负值用作损失函数。其中的重构项取决于观测模型:方差固定的高斯分布对应一个与均方误差成正比的项,而伯努利分布对应二元交叉熵。KL项起到正则化作用,抑制潜在编码不受限制地存储信息。(arxiv.org)
重参数化与优化
从依赖于参数的分布中采样,会使梯度计算变得复杂。对于采用对角协方差高斯分布的编码器,重参数化技巧将样本表示为
[ z=\mu_\phi(x)+\sigma_\phi(x)\odot\epsilon, \qquad \epsilon\sim\mathcal N(0,I), ]
其中,(\odot) 表示逐元素乘法。随机性被集中到与参数无关的噪声中,而 (z) 对编码器参数仍然可微。这样就能通过采样得到的潜在表征进行反向传播。(arxiv.org)
期望值通过采样来估计,编码器和解码器的参数使用随机梯度下降等方法联合更新。小批量训练使模型能够从大型数据集中学习。高斯分布的这种构造尤其方便,但只要存在合适的可微采样表示,这一更一般的方法也适用于其他分布;离散潜变量则需要使用其他估计方法或松弛方法。(proceedings.mlr.press)
应用与局限
VAE可用于数据生成、表征学习、可视化和缺失数据插补。其概率编码器给出的是各种可能潜在解释的分布,而不是单一的确定性编码。早期实验展示了使用深层潜在高斯模型进行生成、插补和可视化的能力。(proceedings.mlr.press)
一种重要的失效模式是后验坍塌,即某些潜变量的近似后验分布与先验分布高度接近。这些变量因而几乎不携带关于单个观测值的信息。对线性VAE的分析表明,坍塌可能源于边际似然的局部极大值,而不只是变分下界本身。相关的线性模型将VAE与主成分分析联系起来。(arxiv.org)
近似后验分布的表达能力受限,也可能限制所学表征的质量。良好的重构效果、有用的潜在特征和准确的密度建模是不同的目标;优化其中一个,并不意味着其他目标也会自动得到优化。(arxiv.org)
重要扩展
条件VAE将额外的观测值或标签纳入生成模型和推断模型。它们对条件分布进行建模,可以针对同一输入生成多个合理的输出,包括结构化的图像预测结果。(papers.nips.cc)
β-VAE将KL项乘以一个可调系数 (\beta)。增大这一系数会改变重构精度与潜在信息约束之间的权衡,并在其开发者研究的情境中促进形成因子化程度更高的表征。(openreview.net)
重要性加权自编码器使用多个潜在样本和重要性加权,构造一个至少与标准ELBO同样紧的似然下界。其最初的实验表明,在密度估计基准任务中,这种方法提高了留出数据的似然,并获得了更丰富的潜在表征。(arxiv.org)