禁止转载 Update 2024.06.28

前言

1. auto是什么意思?

英语中的“auto”通常有两种含义:

  • 自动(automatic):表示某事物能够自动完成或运作
  • 自我(self):表示某事物与其自身相关,通常指代由自己产生或影响自身的事物。

例如: “autoregressive”模型中的“auto”表示“自我回归”,即该模型利用自身过去的值来预测当前的值。同理,“autoencoder”表示将输入encode后再decode为输入, 表示“自我回归” ,在这个过程中获得神经网络模型。

2. Transformer是不是AutoEncoder?

Transformer 由 Vaswani 等人在 2017 年提出,它的核心思想是使用自注意力机制(self-attention)来捕捉序列中的依赖关系。Transformer 主要由编码器(Encoder)和解码器(Decoder)组成。Transformer 并不是 AutoEncoder

3. GPT的Decoder是不是AutoEncoder?

GPT 使用 Transformer 的 Decoder 结构,并对 Transformer Decoder 进行了一些改动。

一、自回归模型(Auto-regressive model, AR)

这类模型的特点是预测下一个token。例如著名的GPT模型就是一种AR模型。

AR中常说的decoder-only指的是Transformer架构中的decoder模块,跟AutoEncoder没有任何关系。

二、自编码(Auto-encoder, AE)

Auto-encoder自编码器是1986年由Rumelhart 提出,常用于文本检索,以图搜图。

Auto-encoder的思路是:用编码器(encoder)把高维输入转换成低维隐藏状态。然后,通过解码器(decoder)把隐藏状态转换回输入。

其中编码/解码器都是可学习的神经网络。通过“一编一解”这种无监督的学习过程,获得编码器和解码器两个有用的神经网络。这两个神经网络可用来将输入降维或者特征提取(替代PCA,因为PCA是无法学习的,因此没法利用大量的数据作为先验知识)。

局限性:仅有解码器时无法获得输出结果。

  • 去噪自动编码器(Denoising AutoEncoder, DAE):在训练过程中随机dropout,研究结果显示此方法可以提升鲁棒。性。效果如下图所示:。

2.2 VAE

来自2013年论文《Auto-Encoding Variational Bayes》。作者通过晦涩难懂的推导,说隐藏层要加上正态分布最好,于是就有了VAE。

通俗理解:DAE的dropout方法属于工程性方法,理论派显然不满足于是提出了加高斯噪声,证明它更牛逼。

2.3 VQ-VAE (Vector-Quantized Variational Autoencoders)

来自google论文《Neural Discrete Representation Learning》,本质是离散化的AE。

算法介绍:VQVAE:言简意赅,轻松理解

简单理解是设计了CodeBook(Zq)代替连续空间Z,最小化 Zq 和Z的损失。通过这个Vector-Quantized(有限的) CodeBook ( Zq ) 可以实现快速(对比PixelCNN)图像重建。这里的CodeBook意思是隐藏code的字典,本来隐藏code是无限的空间,变成了可查询的字典,速度自然快。

三、 AR与VQ

未完

分类: 未分类