自编码器 (AE) 和变分自编码器 (VAE) 的区别

2024年11月18日 | 阅读4分钟

自编码器 (AE) 和变分自编码器 (VAE) 是人工智能和机器学习领域中两种受欢迎的方法,尤其是在无监督学习中。这两种方法都属于大型神经网络家族,并应用于生成建模、特征学习和数据压缩。尽管它们具有相似的基础,但 AE 和 VAE 的架构和功能却大相径庭。

什么是自编码器?

自编码器是一种用于无监督学习的人工神经网络架构。自编码器的主要目标是快速获取输入数据的编码或压缩表示。编码器网络将输入数据压缩为降维表示,而解码器网络使用这种压缩表示来重建原始输入。

自编码器通过减少输入数据和重建输出之间的不一致性来进行学习。通过这种方式,数据被有效地压缩到低维潜在空间中,因为自编码器能够识别输入中的重要模式和特征。自编码器的应用包括降维、特征学习和数据去噪。当处理未标记数据或在提取重要特征对于完成后续任务至关重要的情况下,它们特别有用。

编码器和解码器是自编码器的两个组成部分。编码器将输入映射到潜在空间,解码器将潜在空间映射回用于重建的输入(比如 X^)。通过计算输入数据的二次重建,评估自编码器的成本函数。原始输入和重建输出之间的差异也称为均方误差 (MSE)。

成本函数的公式是

Error = N1∑i = 1N∥∥Xi - Xi∥∥2

什么是变分自编码器?

变分自编码器 (VAE) 是一种生成模型,是传统自编码器的扩展。与自编码器类似,VAE 包含编码器和解码器;但是,它们将概率视角应用于潜在空间。使用变分推断对数据中固有的不确定性进行建模是 VAE 的主要创新。

在 VAE 中,编码器在潜在空间中创建概率分布和确定性编码。通常,使用具有均值和标准差的高斯分布来对该分布进行建模。为了激励先前获得的潜在空间遵循特定的概率分布,VAE 在训练期间从该分布中采样,而不是直接从中选择单个点。该正则化项通常基于 Kullback-Leibler (KL) 散度。

由于 VAE 是概率性的,因此它们在生成任务中很有效。通过从潜在空间中采样,VAE 能够生成各种独特的数据点。图像合成、数据增强以及从现有分布中创建额外数据点等应用可以极大地受益于此功能。

变分自编码器的成本函数是

Error(VAE) = -EQ(Z∣X)[logP(X∣Z)] + DKL(Q(Z∣X)∣∣P(Z))

自编码器和变分自编码器之间的区别

性质自动编码器变分自动编码器
定义自编码器主要设计用于数据压缩和特征学习。它们由一个编码器网络组成,该网络将输入数据压缩为潜在表示,以及一个解码器网络,该网络从该表示中重建原始输入。另一方面,变分自编码器更侧重于生成建模。除了编码和解码之外,VAE 还引入了一个概率元素,允许它们通过从学习的潜在空间中采样来生成新的数据点。
潜在空间表示在传统的自编码器中,潜在空间是一个固定且确定的表示。潜在空间中的每个点都对应于输入数据的特定编码。变分自编码器将概率方法引入到潜在空间。VAE 不是分配单个点,而是为潜在空间中的每个点生成概率分布。这种概率性质允许更有效的采样并更好地捕获数据中的不确定性。
损失函数自编码器通常使用均方误差或二元交叉熵损失函数来最小化输入和重建输出之间的差异。变分自编码器使用重建损失和称为 Kullback-Leibler (KL) 散度的正则化项的组合。
生成特性虽然自编码器可以生成输入数据的重建版本,但它们缺乏生成训练集中不存在的全新样本的能力。变分自编码器本质上是生成性的。通过从学习的概率潜在空间中采样,VAE 可以生成多样且新颖的数据点,这使得它们适用于图像合成或数据生成等应用。
应用自编码器找到了具有义务的程序,包括图片去噪、特征学习和降维。变分自编码器特别适合于生成任务,包括图像合成、统计增强以及从学习的分布中开发新样本。

结论

变分自编码器和传统自编码器是编码和解码的基本思想,但它们在目标、潜在区域表示、损失函数、生成能力和包方面有所不同。了解这些差异对于根据特定要求决定给定机器学习问题的正确模型至关重要,从而了解挑战。