假设数据来自未知分布 ,目标是用参数模型 逼近它。下文的 表示自然对数。

从自编码器到 VAE

自编码器由确定性的编码器和解码器组成。它能把样本重构回来,但只优化重构时,不能保证从预设的简单分布里抽出潜编码后仍得到高质量样本。

变分自编码器(Variational Autoencoder, VAE)给潜空间加上概率结构:先从先验采样潜编码,再由解码器生成数据。重构工具因此成为生成模型。

边际似然

极大似然需要边际分布

这个积分通常没有闭式。若潜空间是 维,每个维度放 个求积节点,全张量网格的函数计算次数是 ,随 指数增长。直接从先验 做蒙特卡洛时,对给定 有效的样本往往很少,估计方差会很大。

于是要先回答:给定观测 ,哪些潜编码 以较高概率产生了它。

近似后验

贝叶斯公式给出真实后验

分母仍是 (1),不能直接计算。VAE 用参数为 的网络给出变分分布,近似这个后验:

证据下界

把 (1) 改写成对 的期望。 是凹函数,Jensen 不等式给出证据下界(Evidence Lower Bound, ELBO):

把联合分布拆成 ,得到重构项与正则项:

第一项是重构项,第二项把近似后验拉向先验。训练时最大化数据上的平均 ELBO:

高斯假设与重参数化

标准 VAE 把近似后验取成对角高斯,解码分布取成各向同性高斯:

是预设超参数。先验取标准正态 。

重构项要对 取期望。直接从 抽样时,随机性穿过 ,梯度传不回编码器。重参数化把随机性放进与参数无关的噪声里:

对 可微,重构项可以反向传播。

重构项

在 (8) 下,重构项等于负均方误差加常数:

证明. 设 。协方差 的行列式是 ,故

其中 只依赖 与 ,与 和网络参数无关。对 取期望即得 (10)。

正则项

两个 维高斯

的 KL 散度有闭式

训练里的正则项是把 (11) 代入 (7) 与标准正态先验。记 ,,则 ,,。于是 ,,,,得到

最大化 ELBO 等价于最小化联合 KL

记推断联合分布与生成联合分布为

这里 ,因为先验抽样不依赖 ;,因为数据抽样不依赖 。联合 KL 拆成边际 KL 与期望后验 KL:

证明. 生成模型同时有分解 。于是

第一项先对 积分。,故

第二项先把 代入,内层就是条件 KL:

两项相加即得 (13)。

对数似然与 ELBO 的差就是这个后验 KL:

证明. 不依赖 ,可以放进对 的期望。由 (4) 中 ELBO 的定义,

第三步用了 。

(14) 说明 ELBO 的间隙就是近似后验与真实后验的 KL。 时,下界成为等式。把 (14) 代回 (13),再展开边际 KL:

证明. 由 (13),左端等于边际 KL 加上期望后验 KL。再用 (14) 把后验 KL 换成 ,得到 (15) 的第一个等号。边际 KL 等于 ,其中的 与前一项里的 相消,得到第二个等号。

(15) 末行的第一项是真实数据分布的负熵,与 无关。因此

表达力与模糊化

对角高斯是单峰的

(7) 把近似后验限制在对角高斯里。网络无论多深,输出的都是一个单峰高斯。真实后验 多峰时,这个变分族拟合不上,ELBO 变松,推断变弱。加深网络改变不了变分族,需要更丰富的近似分布。

最优解码器是条件均值

高斯解码器以均方误差为重构目标时,对固定的编码器,最优解码均值是近似后验下 的条件期望。同一 对应多个 时,这个平均值会把生成结果模糊化:

证明. 设编码器已经给定。MSE 目标是

外层对 积分,内层可以逐点最小化。固定 ,记

对 求导:

令梯度为零,得到

由 ,

代回条件期望:

这就是 (17)。

KL 系数

实践中常把 ELBO 改成重构项与 KL 的加权和,也就是 -VAE:

最小化 (18) 时, 对应标准 ELBO 的负值。 调节训练稳定性、潜空间连续性,以及生成与重构的取舍。

时 KL 惩罚消失,目标退化为纯重构,模型回到普通自编码器。

重参数化 (9) 里的噪声只会增大重构误差。没有 KL 约束时,最优编码器把质量全部放在重构似然最大的一点:

也就是 。各样本的后验变成互不重叠的点质量,编码落在孤立流形上,流形之间出现空洞。重构可以很清晰,但从先验 采样容易掉进这些空洞。

KL 主导

较大时,KL 项主导训练。它在数据上的期望可以拆成互信息与聚合后验 KL:

聚合后验是 。

证明. 在被积函数里插入 :

第一项就是 ,即 。第二项交换积分顺序,内层 ,得到 。

是 携带的关于 的信息,生成时希望它大; 是潜空间整体形状相对先验的偏差,希望它小。互信息过小时, 几乎不含 的信息,潜编码难以控制生成。

后验崩溃

若进一步 ,近似后验与 无关,则 (17) 的分子分母都多出一个与 无关的 :

对任意 ,最优输出都是全体训练样本的平均值,也就是一张与 无关的全局均值图。