A Survey of Transformers(整理总结)

https://arxiv.org/abs/2106.04554

 

引言

Transformer 最初是作为机器翻译的 Seq2Seq 模型提出的。后来的工作表明,基于 Transformer 的预训练模型 (PTM) 可以在各种任务上实现 SOTA。因此,Transformer,特别是 PTM,已成为 NLP 中的首选架构。除了语言相关的应用,Transformer 还被 CV,音频处理甚至其他学科采用。在过去几年中提出了各种 Transformer 变体(又名 X-former),这些 X-former 也从不同的角度改进了原版 Transformer。

1. 模型效率。应用 Transformer 的一个关键挑战是其处理长序列的效率较低,这主要是由于 self-attention 的计算和内存复杂性。改进方法包括轻量化注意力模块(例如稀疏注意力)和分而治之的方法(例如循环和分层机制)。

2. 模型泛化。由于 Transformer 是一种灵活的架构,并且对输入数据的结构偏差几乎没有假设,因此很难在小规模数据上进行训练。改进方法包括引入结构偏差或正则化,对大规模未标记数据进行预训练等。

3. 模型适配。这一系列工作旨在使 Transformer 适应特定的下游任务和应用程序。

在这篇综述中,我们旨在全面回顾 Transformer 及其变体。虽然我们可以根据上述观点来分类 X-former,但许多现有的 X-former 可能会解决一个或几个问题。例如,稀疏注意力不仅降低了计算复杂度,而且在输入数据上引入了结构先验以缓解小数据集上的过拟合问题。因此,对现有的各种 X-former 进行分类,并主要根据它们改进原版 Transformer 的方式提出新的分类法:架构修改、预训练和应用

原版 Transformer

Transformer 分类

迄今为止,已经从三个角度提出了基于原版 Transformer 的各种模型:架构修改类型、预训练方法和应用程序。如图:

详细的 Transformer 分类如下图:

模型层面

2.1 注意力机制

Self-attention 在 Transformer 中扮演着重要的角色,但在实际应用中存在两个挑战。

1. 复杂性。self-attention 的复杂度是

。因此,在处理长序列时 Attention 模块会成为瓶颈。

2. 结构先验。Self-attention 不假设对输入有任何结构性偏见。甚至顺序信息也需要从训练数据中学习。因此,无预训练的 Transformer 通常很容易在小型或中等规模的数据上过拟合。

Attention 机制的改进可以分为几个方向:

1. 稀疏注意力。这一系列工作将稀疏偏差引入 Attention 机制,从而降低了复杂性。

2. 线性化注意力。这一系列工作将注意力矩阵与核特征图分解,然后以相反的顺序计算注意力以实现线性复杂度。

3. 原型和内存压缩。这类方法减少了查询或键值记忆对的数量,以减少注意力矩阵的大小。

4. 低秩的自注意力。这一系列工作捕获了 Self-attention 的低秩属性。

5. 先验注意力。该研究领域探索用先验的注意力分布来补充或替代标准注意力。

6. 改进的多头机制。这一系列工作探索了多个不同的多头(Multi-head)机制。

2.1.1 Sparse Attention 稀疏注意力

在标准的自注意力机制中,每个 token 都需要关注所有其他 token。然而,据观察,对于经过训练的 Transformer,学习到的注意力矩阵 A 在大多数数据点上通常非常稀疏。因此,可以通过结合结构偏差来限制每个查询关注的查询键对的数量来降低计算复杂度。

从另一个角度来看,标准注意力可以被视为一个完整的二分图,其中每个查询从所有内存节点接收信息并更新其表示。稀疏注意力可以被认为是一个稀疏图,其中删除了节点之间的一些连接。基于确定稀疏连接的指标,我们将这些方法分为两类:基于位置的稀疏注意力和基于内容的稀疏注意力。

2.1.1.1 基于位置的稀疏注意力

在基于位置的稀疏注意力中,注意力矩阵根据一些预定义的模式受到限制。虽然这些稀疏模式以不同的形式变化,但我们发现其中一些可以分解为一些原子稀疏模式。

1. 原子稀疏注意力:全局注意力(Global)、带状注意力(Band)、扩张注意力(Dilated)、随机注意力(Random)、块局部注意力(Block Local);

 

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值