AE, VAE和VQ-VAE有什么区别?

写在前面

AE, VAE, VQ-VAE是一系列的工作,其中VAE更是构成了整个AIGC的重要基石,那么他们之间有什么区别呢?

1. AE

AE(AutoEncoder)是一种自编码器,能够将一个图片压缩成一个较短的向量。其结构如下所示。

它有一对编码器和解码器, 编码器负责将图片压缩到一个较短的向量,而解码器负责将较短的向量恢复成图片。在训练的时候,两者做loss。但是这样的话会有一个问题,即Decoder只认识Encoder的向量,一旦我们扔掉Encoder,那么Decoder将会变得毫无用处。

2. VAE

如果我们能够限制住AE的编码空间,使其能够符合某个数学分布,比如标准正态分布,那么我们就可以在标准正态分布中随机采样给Decoder,那么就能够生成随机的图了。VAE就是来干这事儿的网络。网络结构如下:

3. VQ-VAE

但是VAE生成图的质量普遍不高,有人认为原因是因为VAE把图片编码成了连续的变量,但是我们在描述物体时,转化为离散变量会更为自然。比如我们描述一个人,不会说胖0.6, 性别是0.5, 年龄是0.3。而是说男或女,年龄20。

但是把图像编码成离散化之后,就又出现了两个新的问题。

  1. 神经网络擅长处理连续的数值,而不擅长处理离散数据。解决方法是借鉴nlp中处理离散单词的方法,将连续数据处理成一个独一无二的连续向量上
  1. 另外一个问题是,离散空间不太好采样,因此不能像VAE那样进行随机图像生成。

VQVAE的作者的做法是,通过PixelCNN随机在数学分布中采样,生成小图像,再用VQGAN的decoder翻译小图像成大图像。

具体做法如下:

  1. 训练VQGAN的编码器和解码器,编码器负责将图像压缩到小图像,解码器负责将小图像还原成大图
  2. 训练PixelCNN, 让它拥有能够从随机分布中采样成小图像的能力
  3. 扔掉VQGAN的编码器,接上PixelCNN, 使得VQVAE拥有从随机分布中采样图像的能力

那么VQGAN怎么生成离散向量的呢?

作者设计了一个embedding space

为了能够让编码器的输入向量、embedding space, 以及解码器的输入张量embedding关联起来,作者做了如下方案:

假设codebook已经训练完毕,对于编码器的每个输入z(x), 通过最近邻找到embedding中与之最相近的向量z(q), 然后用z(q)替换z(x)。

相关推荐
梦想的颜色3 小时前
2026 年 9 月主流 AI 视频生成模型横向硬核测评:价格、能力定位、质量、Agent 工作流适配
人工智能·aigc·大模型测评·ai视频大模型·minimax h3·seedance 2.5
Csvn3 小时前
第 18 章 学习与适应 Learning
人工智能·aigc·agent
知了一笑4 小时前
Token消费不为结果买单
人工智能·aigc·token
在所不辞兄4 小时前
【零基础学智能仿真-11】CatBoost——让材料类型和边界条件参与力学预测
人工智能·python·深度学习·神经网络·机器学习·工程技术
Dawson Zhu4 小时前
离散与连续的博弈:从BM25到向量检索的工程演进与系统融合
人工智能·语言模型·架构·aigc·agi
知识分享小能手13 小时前
深度学习学习教程,从入门到精通,深度学习中的正则化 — 完整知识点与代码示例(7)
人工智能·深度学习·学习
LaughingZhu13 小时前
Product Hunt 每日热榜 | 2026-09-05
人工智能·深度学习·神经网络·搜索引擎·百度
全栈弄潮儿14 小时前
30 天 AI 编程入门总结:接下来应该学什么
aigc·openai·ai编程
Dawson Zhu16 小时前
知识图谱与 Palantir Ontology:同一套「实体—关系」表象下,两种截然不同的工程范式
人工智能·语言模型·架构·aigc·agi
YOLO数据集集合16 小时前
无人机高分辨率多树种单木分割数据集 | 单木分割 无人机林业 树种识别 实例分割 点云 遥感数据集 深度学习 精准林业9047期
人工智能·深度学习·数据集·无人机·遥感数据集·点云数据集·树木分割