高斯 VAE 的优化是否合适?

机器算法验证 机器学习 深度学习 变分贝叶斯 生成模型
2022-03-17 01:05:52

在变分自动编码器 (VAE) 中,给定一些数据x和潜变量t预先分配p(t)=N(t0,I),编码器旨在学习一个分布qϕ(t)近似于真实的后验p(tx)解码器旨在学习分布pθ(xt)近似于真实的基础分布p(xt).

然后联合训练这些模型以最大化目标L(ϕ,θ),这是训练集的对数似然的下界:

L(φ,θ)=iEqφlogpθ(xit)p(t)qφ(t)ilogpθ(xit)p(t)dt

根据 Kingma 和 Welling 的原始论文 ( https://arxiv.org/pdf/1312.6114.pdf ) 中的 C.2 节,当我们建模时pθ(x|t)作为高斯族,解码器应该输出均值μ(t)和(对角线)协方差σ2(t)I为高斯分布。

我的问题是:这个优化问题不是不适定的(就像 GMM 中的最大似然训练一样)?如果解码器可以为训练集中的单个图像生成完美的重建(即μ(ti)=xi) 那么就可以设置相应的方差σ2(ti)任意接近零的值,因此无论其余训练示例发生什么情况,可能性都会变为无穷大。

我知道大多数高斯 VAE 实现都有一个简化的解码器,它只输出平均值,替换术语Eqφlogpθ(xit) 通过原始图像和重建之间的平方误差(相当于将协方差设置为始终为单位矩阵)。这是因为原始公式的不适定性吗?

3个回答

我与人共同撰写了一篇关于这个确切问题的论文:

https://papers.nips.cc/paper/7642-leveraging-the-exact-likelihood-of-deep-latent-variable-models

我们表明,正如您所想的,最大似然对于高斯输出 VAE 是不适定的。事情很像 GMM。一种解决方案是将协方差网络的特征值约束为大于某个阈值。

一个有趣的说法是,对于离散数据,问题是适定的。这可能解释了为什么 VAE 通常在离散数据集(如二进制 MNIST)上进行基准测试。

我们在论文的第 2.1 节中展示了所有这些结果。

本文也进行了类似的调查:

http://www.jmlr.org/papers/volume19/17-704/17-704.pdf

他们表明(定理 5)VAE 目标是无界的。这意味着,一般来说,即使有 KL 项也不能使目标适切。

我认为 KL 散度项可以很好地定义问题。直观地,您可以将其视为“编码成本”,其中指定非常窄的后验分布是昂贵的。

考虑您有单个数据点的情况x=0,并且您的潜在空间是 1D 与标准 VAE 先验N(0,1). 一种可能的变分后验将有μ(x)=0σ(x)=σ对于一些未知的最优值σ. 那么解码器将只是身份函数。

损失将是

EzN(0,σ)[logP(0z)]DKL(Q(zX)P(z))=λ(σ)2(log1σ+(σ)2212)+c=λ(σ)2logσ+c2λσ1σ=0σ=(2λ)12

在哪里λ与精度成正比P(X|z)λ=λ12. 只要λ>12,则 KL 项防止后验塌陷。

我认为原始海报是正确的,问题不是很好。当方差变为 0 时,似然项会爆炸到无穷大。KL 项无法控制正则化。因此存在方差收缩问题。 https://arxiv.org/abs/2010.09042