为什么自动编码器不被视为生成模型?

机器算法验证 机器学习 定义 自动编码器 变分贝叶斯 生成模型
2022-04-10 01:00:48

自动编码器 (AE) 由编码器和解码器(通常由神经网络表示)组成。编码器产生其输入(例如图像)解码器尝试在给定的情况下输出类似于的对象。zxxxz

变分自动编码器 (VAE) 是将隐藏(或潜在)空间(编码器的输出空间)和解码器的输出空间建模为概率分布(例如高斯)的自动编码器。因此,我们可以从这个隐藏空间中对每个,同样,我们可以从解码器的输出空间中)。因此,VAE 被认为是生成模型。zxxz

AE 和 VAE 之间的区别在于,VAE 被认为是生成模型,而标准 AE 不是。为什么会这样?仅仅是因为它们通常没有被形式化为生成模型吗?更准确地说,为什么 VAE 是生成模型(根据生成模型的定义)而 AE 不是?例如,去噪 AE 可以尝试生成原始的去噪图像,因此,从这个意义上说,它是一个生成模型。AE 能否被表述为生成模型?

1个回答

我对这个问题的回答如下:

如您提供的 Wikipedia 链接上所定义的,生成模型旨在估计您的数据和一些潜在(随机)变量的联合分布,通常是特别是,在 VAE 的情况下,您的数据(通常)是图像、文本、音频或您正在建模的任何内容,而潜在变量(通常)是多元正态(你可以放松一下)。在 AE 中,你不能做这个类比,你有你的数据,你把它映射到一个比你的原始图像更小的空间,然后你尝试将这个低维数据解码成你的原始数据。这意味着,没有关于如何生成数据的分布假设p(x,z)xz. 在概率推理术语中,对数据生成过程没有任何假设

当我开始研究 VAE 时,我认为它们“只是”概率 AE,但现在我真的不喜欢这种看待它们的方式。我围绕 VAE 和神经网络的使用建立的直觉如下:您在数据生成过程中构建模型,特别是,您认为每次观察都有一个潜在变量,每次观察估计每个潜在变量可能非常昂贵在经典的变分推理中,因此您使用函数逼近器(这是神经网络出现的地方)并使用观察本身来逼近每个潜在变量的分布。因此,在概率推理中使用神经网络是因为它具有逼近能力。与认为 VAE 只是神经网络的概率扩展相反。

同样,其他模型也是围绕着我试图解释的直觉开发的。例如深度卡尔曼滤波器、结构 VAE等。

编辑:请注意,我对生成模型的定义有点简化。有一系列模型称为“自回归”生成模型,它们不包含潜在变量。在这种情况下,您会将变量的联合分布视为以其余(先前)变量为条件的单个分布的分解。数学上:

p(x)=p(x0,x1,...,xN)=i=0Np(xi|xi<)=p(xN|xN1,xN2,...x0)p(xN1|xN2,xN3,...x0)...p(xo)