论文信息
- 作者:Vaswani A , Shazeer N , Parmar N , et al.
- 单位:Google
- 会议:NIPS 2017
- 发表日期: 2017-06
- 论文链接:attention is all you need
简介
主流的序列转换模型一般都是基于循环神经网络或者卷积神经网络来做的,包含编码器(encoder)、解码器(decoder),通过注意力机制连接编码器和解码器取得了最好的效果。
本文提出了一种简单有效的网络架构,即Transformer。
Transformer 仅仅基于注意力机制,而完全不依赖循环和卷积网络。
在机器翻译任务上的实验也证明,这样的模型需要的训练时间消耗会更少。
背景
注意力机制能够对输入序列、输出序列的依赖建模而无需考虑依赖的距离,注意力机制已成为不同任务的序列建模、转换模型不可或缺的一部分。在绝大多数的序列转换任务中,注意力机制往往会和循环神经网络联合使用。
模型架构
Transformer模型结构如下图所示。
编码器和解码器
缩放点乘注意力(Scaled Dot-Product Attention)
多头注意力(Multi-Head Attention)
为什么使用 Self-Attention
激发Self-Attentoin的使用,主要有三方面的考虑:
- 每层的计算复杂度
- 计算是否能并行
- 网络中长依赖的路径长度
实验
结论
在本文工作中,作者提出了Transformer的框架,是首个完全基于注意力机制的序列转换模型,用多头自注意力机制取代了在编码器-解码器框架中常用的循环神经网络。
对于翻译任务而言,Transformer相比于基于循环神经网络或者卷积神经网络,其训练明显更快,而且取得了新的state-of-the-art。