摘要

Transformer模型架构最近引起了极大的兴趣,因为它们在语言、视觉和强化学习等领域的有效性。例如,在自然语言处理领域,Transformer已经成为现代深度学习堆栈中不可缺少的主要部分。最近,提出的令人眼花缭乱的X-former模型如Linformer, Performer, Longformer等这些都改进了原始Transformer架构的X-former模型,其中许多改进了计算和内存效率。为了帮助热心的研究人员在这一混乱中给予指导,本文描述了大量经过深思熟虑的最新高效X-former模型的选择,提供了一个跨多个领域的现有工作和模型的有组织和全面的概述。

关键词:深度学习,自然语言处理,Transformer模型,注意力模型

介绍

Transformer是现代深度学习领域中一股强大的力量。Transformer无处不在,在语言理解、图像处理等许多领域都产生了巨大的影响。因此,在过去的几年里,大量的研究致力于对该模型进行根本性的改进,这是很自然的。这种巨大的兴趣也刺激了对该模式更高效变体的研究。

最近出现了大量的Transformer模型变体,研究人员和实践者可能会发现跟上创新的速度很有挑战性。在撰写本文时,仅在过去6个月里就提出了近12种新的以效率为中心的模式。因此,对现有文献进行综述,既有利于社区,又十分及时。

自注意力机制是确定Transformer模型的一个关键特性。该机制可以看作是一种类似图的归纳偏差,它通过基于关联的池化操作将序列中的所有标记连接起来。一个众所周知的自注意力问题是二次时间和记忆复杂性,这可能阻碍模型在许多设置的可伸缩性。最近,为了解决这个问题,出现了大量的模型变体。以下我们将这类型号命名为“高效Transformers”。

根据上下文,可以对模型的效率进行不同的解释。它可能指的是模型的内存占用情况,当模型运行的加速器的内存有限时,这一点非常重要。效率也可能指计算成本,例如,在训练和推理期间的失败次数。特别是对于设备上的应用,模型应该能够在有限的计算预算下运行。在这篇综述中,我们提到了Transformer在内存和计算方面的效率,当它们被用于建模大型输入时。

有效的自我注意力模型在建模长序列的应用中是至关重要的。例如,文档、图像和视频通常都由相对大量的像素或标记组成。因此,处理长序列的效率对于Transformer的广泛采用至关重要。

本篇综述旨在提供这类模型的最新进展的全面概述。我们主要关注的是通过解决自我注意力机制的二次复杂性问题来提高Transformer效率的建模进展和架构创新,我们还将在后面的章节简要讨论一般改进和其他效率改进。

本文提出了一种高效Transformer模型的分类方法,并通过技术创新和主要用例对其进行了表征。特别地,我们回顾了在语言和视觉领域都有应用的Transformer模型,试图对各个领域的文献进行分析。我们还提供了许多这些模型的详细介绍,并绘制了它们之间的联系。

成为VIP会员查看完整内容
0
36

相关内容

最近提出的DETR,以消除在目标检测中许多手工设计的组件的需要,同时显示良好的性能。但由于Transformer注意模块在处理图像特征图时的局限性,导致收敛速度慢,特征空间分辨率有限。为了减轻这些问题,我们提出了可变形的DETR,其注意力模块只关注参考点周围的一小组关键采样点。可变形的DETR比DETR(特别是在小物体上)可以获得更好的性能,训练周期少10个。在COCO数据集上的大量实验证明了我们的方法的有效性。

成为VIP会员查看完整内容
0
13

近年来,随着深度学习的飞速发展,深度神经网络受到了越来越多的关注,在许多应用领域取得了显著效果。通常,在较高的计算量下,深度神经网络的学习能力随着网络层深度的增加而不断提高,因此深度神经网络在大型数据集上的表现非常卓越。然而,由于其计算量大、存储成本高、模型复杂等特性,使得深度学习无法有效地应用于轻量级移动便携设备。因此,压缩、优化深度学习模型成为目前研究的热点,当前主要的模型压缩方法有模型裁剪、轻量级网络设计、知识蒸馏、量化、体系结构搜索等。通过对以上方法的性能、优缺点和最新研究成果进行分析总结,对未来研究方向进行了展望。

成为VIP会员查看完整内容
0
43

图神经网络是解决各种图学习问题的有效的机器学习模型。尽管它们取得了经验上的成功,但是GNNs的理论局限性最近已经被揭示出来。因此,人们提出了许多GNN模型来克服这些限制。在这次调查中,我们全面概述了GNNs的表达能力和可证明的强大的GNNs变体。

成为VIP会员查看完整内容
0
97

基于Transformer的模型目前在NLP中得到了广泛的应用,但我们对它们的内部工作原理仍然知之甚少。本文综合了40多项分析研究,对著名的BERT模型(Devlin et al 2019)的已知情况进行了描述。我们还提供了对模型及其训练机制的拟议修改的概述。然后我们概述了进一步研究的方向。

概述

自2017年推出以来,Transformers(Vaswani et al 2017)掀起了NLP的风暴,提供了增强的并行化和更好的长依赖建模。最著名的基于Transformers 的模型是BERT (Devlin et al 2019),他们在许多基准测试中获得了最先进的结果,并集成在谷歌搜索中,提升了10%的查询准确率。

虽然很明显BERT和其他基于Transformer的模型工作得非常好,但是不太清楚为什么,这限制了架构的进一步假设驱动的改进。与CNNs不同,Transformer几乎没有认知动机,而且这些模型的大小限制了我们进行预训练实验和消融研究的能力。这解释了过去一年里大量的研究试图理解BERT表现背后的原因。

本文概述了迄今为止所了解到的情况,并强调了仍未解决的问题。我们重点研究BERT学习的知识的类型,这些知识在哪里体现,如何学习,以及提出的改进方法。

BERT架构

从根本上说,BERT是一堆由多个“头”组成的Transformer 编码器层,即全连接神经网络增强了一个自我注意机制。对于序列中的每个输入标记,每个头计算键、值和查询向量,这些向量用于创建加权表示。将同一层中所有磁头的输出合并并通过全连接层运行。每个层都用一个跳过连接进行包装,并在它之后应用层规范化。

图1 BERT模型

目录:

  • BERT嵌入
  • BERT拥有什么知识
  • 局部化语言知识
  • 训练BERT
  • BERT模型尺寸
  • 多语言BERT
成为VIP会员查看完整内容
0
75

ICLR 2020 Oral论文《Reformer: The Efficient Transformer》提出了一种能利用16GB内存在百万级大小上下文上执行注意力机制的Transformer,它的性能优化是由哈希和可逆残差来实现的。

理解序列数据——如语言、音乐或视频——是一项具有挑战性的任务,特别在当它依赖于大量的上下文的情况下。例如,如果一个人或一个物体在视频中消失,很久以后又重新出现,许多模型就会忘记它的样子。在语言领域,长短时记忆(LSTM)神经网络覆盖了足够的上下文来逐句翻译。在这种情况下,上下文窗口(翻译时考虑的数据跨度)覆盖了几十到上百个词。近期的Transformer模型不仅改进了逐句翻译的性能,还可以通过多文档摘要生成整个Wikipedia文章。这样可行的原因是Transformer的上下文窗口可以覆盖上千个词。用这样的大上下文窗口,Transformer可以被应用于文本以外的数据,如像素、音符等,这样它可以被用来生成音乐、图像等。

然而,更大的上下文窗口会对Transformer造成限制。Transformer的强大来自于注意力机制,在这个过程中,它考虑上下文窗口中所有可能的单词对,以理解它们之间的联系。因此,对于包含10万个单词的文本,它每次需要评估10万 x 10万个(即100亿个)单词对,这是不切实际的。另外,每层输出的存储也是个问题。对于使用大型上下文窗口的应用,存储多个模型层的输出的内存需求很快会变得非常大(几层需要GB级内存,上千层的模型需要TB级内存)。这意味着,使用一些层的Transformer模型,只能被用于少数几段文本或生成简短的音乐片段。

本文介绍Reformer,一个可用于应对百万级大小上下文窗口的Transformer,它可以在单一的加速器上运行且仅依赖16GB的内存。它结合了两种关键技术来解决注意力和内存分配问题,这些问题限制了Transformer不能被应用于长上下文窗口。Reformer使用局部敏感哈希(LSH)来降低长序列中注意力的复杂程度,并使用可逆残差层来更高效地利用内存。

注意力机制

将Transformer模型应用于非常大的文本序列时,第一个挑战是如何处理注意力层。LSH通过计算一个哈希函数来实现这一点,该哈希函数将类似的向量匹配在一起,而不是搜索所有可能的向量对。例如,在翻译任务中,网络第一层的每个向量表示一个单词(后续层中可能表示更大的上下文),不同语言中相同单词对应的向量可能得到相同的哈希。下图中,不同的颜色描绘了不同的哈希,相似的单词有相同的颜色。当哈希值被分配时,序列会被重组,将具有相同哈希值的元素放在一起,并被分成片段(或块),以支持并行处理。之后,注意力机制被应用于这些更短的块中(以及相邻块,以覆盖溢出),从而大幅度减少了计算负载。

内存问题

虽然LSH解决了注意力的问题,但仍然存在一个内存问题。单个网络层通常需要几GB的内存,并且通常适用于一个GPU,所以即使是一个处理长序列的模型的单层网络也是可以接受的。但当用梯度下降训练一个多层模型时,为了反向传播,模型需要存储每层的激活值。典型的Transformer一般有几十或更多层,如果缓存每层的值,内存会很快被消耗完。

Reformer中实现的第二个新方法是在反向传播期间按需重新计算每个层的输入,而不是将其存储在内存中。这是通过使用可逆层来实现的,其中网络最后一层的激活值被用来恢复来自任何中间层的激活值,这相当于反向运行网络。在典型的残差网络中,栈中的每一层都不断地向传播信息中添加向量。每个可逆层有两组激活值,一个遵循刚才描述的标准过程逐层更新,但另一个只捕获变化。因此,要反向运行网络,只需在每层激活值间做简单的减法。

Reformer的应用

Reformer中这两种方法的引用使得它非常高效,以至于它可以在单个16GB的加速器上处理包含100万词的长文本序列。由于Reformer非常高效,它可以直接应用于上下文窗口远大于当前最先进文本领域数据集的上下文窗口的数据。也许Reformer能够处理如此大数据集的能力将刺激社区创建它们。

图像生成任务中不缺乏长上下文数据。下面链接的colab代码中展现了Reformer如何被用于补全残缺图片。它可以基于第一行残缺的图片来像素级地生成第二行中完整的图片。colab地址为:

目前论文《Reformer: The Efficient Transformer》已经被ICLR 2020接收为Oral论文。更多细节可以参考原始论文。

成为VIP会员查看完整内容
0
47

A Survey of Model Compression and Acceleration for Deep Neural Networks 深度卷积神经网络(CNNs)最近在许多视觉识别任务中取得了巨大的成功。然而,现有的深度神经网络模型在计算上是昂贵的和内存密集型的,这阻碍了它们在低内存资源的设备或有严格时间延迟要求的应用程序中的部署。因此,在不显著降低模型性能的情况下,在深度网络中进行模型压缩和加速是一种自然的思路。在过去几年中,这方面取得了巨大的进展。本文综述了近年来发展起来的压缩和加速CNNs模型的先进技术。这些技术大致分为四种方案: 参数剪枝和共享、低秩因子分解、传输/紧凑卷积过滤器和知识蒸馏。首先介绍参数修剪和共享的方法,然后介绍其他技术。对于每种方案,我们都提供了关于性能、相关应用程序、优点和缺点等方面的详细分析。然后我们将讨论一些最近比较成功的方法,例如,动态容量网络和随机深度网络。然后,我们调查评估矩阵、用于评估模型性能的主要数据集和最近的基准测试工作。最后,对全文进行总结,并对今后的研究方向进行了展望。

成为VIP会员查看完整内容
0
61
小贴士
相关主题
相关VIP内容
专知会员服务
43+阅读 · 2020年8月22日
专知会员服务
32+阅读 · 2020年8月12日
专知会员服务
76+阅读 · 2020年6月12日
专知会员服务
97+阅读 · 2020年3月10日
BERT技术体系综述论文:40项分析探究BERT如何work
专知会员服务
75+阅读 · 2020年3月1日
注意力机制模型最新综述
专知会员服务
138+阅读 · 2019年10月20日
深度神经网络模型压缩与加速综述
专知会员服务
61+阅读 · 2019年10月12日
相关资讯
图表示学习Graph Embedding综述
AINLP
13+阅读 · 2020年5月17日
Reformer:一个高效的 Transformer
TensorFlow
4+阅读 · 2020年2月13日
深度学习的下一步:Transformer和注意力机制
云头条
23+阅读 · 2019年9月14日
Attention!注意力机制模型最新综述(附下载)
数据派THU
28+阅读 · 2019年4月14日
打包—综述—看干货
计算机研究与发展
5+阅读 · 2019年1月8日
图神经网络综述:模型与应用
PaperWeekly
154+阅读 · 2018年12月26日
利用 Universal Transformer,翻译将无往不利!
谷歌开发者
4+阅读 · 2018年9月4日
用于神经网络机器翻译的全并行文本生成
相关论文
Compression of Deep Learning Models for Text: A Survey
Manish Gupta,Puneet Agrawal
5+阅读 · 2020年8月12日
Zhuohan Li,Eric Wallace,Sheng Shen,Kevin Lin,Kurt Keutzer,Dan Klein,Joseph E. Gonzalez
6+阅读 · 2020年6月23日
Graph Transformer for Graph-to-Sequence Learning
Deng Cai,Wai Lam
4+阅读 · 2019年11月30日
EfficientDet: Scalable and Efficient Object Detection
Mingxing Tan,Ruoming Pang,Quoc V. Le
5+阅读 · 2019年11月20日
AutoML: A Survey of the State-of-the-Art
Xin He,Kaiyong Zhao,Xiaowen Chu
32+阅读 · 2019年8月14日
Learning Deep Transformer Models for Machine Translation
Qiang Wang,Bei Li,Tong Xiao,Jingbo Zhu,Changliang Li,Derek F. Wong,Lidia S. Chao
3+阅读 · 2019年6月5日
Music Transformer
Cheng-Zhi Anna Huang,Ashish Vaswani,Jakob Uszkoreit,Noam Shazeer,Ian Simon,Curtis Hawthorne,Andrew M. Dai,Matthew D. Hoffman,Monica Dinculescu,Douglas Eck
3+阅读 · 2018年12月12日
A Survey on Deep Transfer Learning
Chuanqi Tan,Fuchun Sun,Tao Kong,Wenchang Zhang,Chao Yang,Chunfang Liu
10+阅读 · 2018年8月6日
Yeonwoo Jeong,Hyun Oh Song
6+阅读 · 2018年5月15日
Luowei Zhou,Yingbo Zhou,Jason J. Corso,Richard Socher,Caiming Xiong
12+阅读 · 2018年4月3日
Top