资讯

变分自编码器 VAE 是什么?能生成新数据的概率自编码器

2026-11-052 分钟阅读百科
TL;DR变分自编码器(VAE)是 Diederik Kingma 和 Max Welling 在 2013 年提出的生成模型,把数据编码成潜在空间中的概率分布并从中采样解码,能生成与训练数据相似的新样本,也是 Stable Diffusion 等潜空间扩散模型压缩图像的关键组件。

变分自编码器(Variational Autoencoder,VAE)是一种生成式的人工神经网络结构,由 Diederik P. Kingma 和 Max Welling 在 2013 年提出,论文标题是《自编码变分贝叶斯》。它属于概率图模型和变分贝叶斯方法的范畴,是深度生成模型的重要奠基工作之一。

从普通自编码器说起

普通的自编码器由编码器和解码器两部分组成:编码器把一张图片压缩成一个低维的向量,也就是“潜在表示”;解码器再从这个向量还原出图片。训练的目标是让还原出的图片尽量接近原图。这样的自编码器能学会压缩和重建数据,但它不太适合用来生成新的数据:潜在空间中的点分布得杂乱无章,如果随便取一个点去解码,很可能得到一张毫无意义的图片。

VAE 的改进

VAE 的关键改变是:编码器不再把一张图片映射成潜在空间中的一个固定的点,而是映射成一个概率分布,通常是一个正态分布,由均值和方差两组参数描述。训练时,从这个分布中随机采样一个点,再交给解码器去重建图片。

VAE 的训练目标包括两部分:一是重建损失,让解码出的图片接近原图;二是 KL 散度,让每张图片编码出的分布都尽量接近一个标准正态分布。第二项起到了“规整”潜在空间的作用:它迫使所有数据在潜在空间中连续、紧凑地分布,相似的数据彼此靠近,空间中没有大片的“空洞”。为了让包含随机采样的网络也能用反向传播训练,论文提出了“重参数化技巧”:把随机性单独提出来,变成一个与参数无关的噪声,这是 VAE 的一个重要贡献。

能做什么

训练好之后,只要从标准正态分布中随机取一个点,交给解码器,就能生成一张新的、和训练数据相似的图片。因为潜在空间是连续的,在两个点之间平滑地移动,生成的图片也会平滑地变化,比如一张人脸慢慢地从微笑变成不笑。早期 VAE 生成的图片往往比较模糊,画质不如后来的生成对抗网络(GAN)和扩散模型。但它在今天的 AI 中依然扮演着关键的角色:Stable Diffusion 等潜空间扩散模型,就是先用一个 VAE 把高分辨率的图片压缩到小得多的潜在空间,扩散模型在潜在空间中生成,最后再由 VAE 的解码器还原成图片,这大大降低了计算成本。很多视频生成模型也使用类似的 VAE 来压缩视频。