【神经网络与深度学习】VAE 和 GAN

这位大佬写的 VAE 的讲解很不错

VAE 和 GAN 的相同点和不同点

引言

VAE(变分自编码器)和 GAN(生成对抗网络)是深度学习中两种主要的生成模型,它们在数据生成任务中发挥着重要作用。虽然它们的目标相似,都是生成与训练数据分布相匹配的新样本,但在训练方式、潜在空间结构、生成样本质量和稳定性方面存在显著差异。本文将从多个方面对 VAE 和 GAN 进行对比分析,以帮助初学者更直观地理解它们的特点和区别。


相同点

  • 生成数据的目标:两者都致力于生成与训练数据相似的新数据。例如,在图像生成任务中,它们都能生成逼真的人脸或风景,在文本生成领域,它们可以生成符合语法和语义的句子。
  • 基于神经网络:VAE 和 GAN 均依赖神经网络实现。VAE 包含编码器和解码器两个组件,而 GAN 由生成器和判别器组成。
  • 学习数据分布:二者的核心目标都是学习训练数据的分布,并通过采样从该分布生成新的数据样本。

不同点

训练方式

  • VAE:采用最大似然估计,通过最小化重构误差和 KL 散度来训练模型。重构误差衡量解码器的输出与原始输入的差异,KL 散度则衡量编码器输出的潜在分布与先验分布的匹配程度。
  • GAN:采用对抗训练方式,生成器与判别器互相竞争。生成器努力生成逼真的假样本,而判别器尝试区分真实数据和生成数据。双方不断优化,直至达到平衡。

潜在空间

  • VAE:具有明确的潜在空间,并假设其服从某种先验分布(通常是高斯分布)。编码器将输入数据映射到潜在空间中的分布,解码器则从该分布中采样生成新的数据。
  • GAN:没有显式的潜在空间,生成器直接从随机噪声生成数据。虽然可以通过调整随机噪声影响生成结果,但潜在空间的结构较不明确,难以精确控制和解释。

生成样本的质量

  • VAE:生成样本通常较模糊,因为它在训练过程中关注重构误差和潜在分布的约束,而不是样本的细节。
  • GAN:能够生成高质量、逼真的样本。由于判别器的存在,生成器被迫不断提升生成样本的质量,以骗过判别器。

训练稳定性

  • VAE:训练较为稳定,基于传统优化方法,通过最小化损失函数更新参数。
  • GAN:训练过程不稳定,容易出现梯度消失、模式崩溃等问题。模式崩溃指生成器只能生成有限的样本,而无法涵盖整个数据分布。

对比表格

比较项目 VAE GAN
训练方式 最小化重构误差和 KL 散度 生成器和判别器对抗训练
潜在空间 有明确潜在空间,假设服从先验分布 无显式潜在空间
生成样本质量 较模糊 高质量、逼真
训练稳定性 相对稳定 不稳定,易出现梯度消失和模式崩溃

VAE 和 GAN 的数学原理

相关推荐
TIANE-Kimmy2 小时前
FID和IS的区别
人工智能·深度学习·计算机视觉
HumbleSwage3 小时前
深度学习中常用的符号表达式
人工智能·深度学习
缘友一世3 小时前
深度学习系统学习系列【3】之血液检测项目
人工智能·深度学习·学习
bullnfresh4 小时前
神经网络语言模型(NNLM)的原理与实现
人工智能·神经网络·语言模型
巷9555 小时前
常见的卷积神经网络列举
人工智能·神经网络·cnn
每天都要写算法(努力版)6 小时前
【神经网络与深度学习】VAE 在解码前进行重参数化
人工智能·深度学习·神经网络
江畔柳前堤6 小时前
信息论12:从信息增益到信息增益比——决策树中的惩罚机制与应用
运维·深度学习·算法·决策树·机器学习·计算机视觉·docker
一点.点7 小时前
李沐动手深度学习(pycharm中运行笔记)——09.softmax回归+图像分类数据集+从零实现+简洁实现
pytorch·笔记·python·深度学习·动手深度学习·softmax回归
weixin_452813097 小时前
MCU怎么运行深度学习模型
单片机·嵌入式硬件·深度学习
埃菲尔铁塔_CV算法7 小时前
基于神经网络的 YOLOv8、MobileNet、HigherHRNet 姿态检测比较研究
人工智能·深度学习·神经网络·yolo·目标检测·机器学习