大模型基石论文:《Attention Is All You Need》
这篇论文《Attention Is All You Need》由Ashish Vaswani等人撰写,介绍了一种全新的神经网络架构——Transformer,它完全基于注意力机制,摒弃了传统的循环(RNN)和卷积(CNN)结构。论文的核心贡献在于提出了一种全新的基于注意力机制的模型架构,该架构在多个NLP任务上展现出了卓越的性能,为大模型技术的发展奠定了理论基础,并且为未来的研究提供了新的方向。
摘要
Transformer模型在两个机器翻译任务上表现出了优越的质量,同时具有更高的并行化能力,并且训练时间显著减少。在WMT 2014英德翻译任务上,Transformer模型达到了28.4 BLEU分数,超过了之前所有模型的最佳结果。在WMT 2014英法翻译任务上,Transformer模型在3.5天内达到了41.8 BLEU分数,训练成本远低于之前的最佳模型。
引言
循环神经网络(RNN)在序列建模和转换问题上取得了巨大成功,但其固有的序列性质限制了训练样本内部的并行化。注意力机制已成为各种序列建模和转换模型中不可或缺的一部分,允许模型不考虑输入或输出序列中的距离来建模依赖关系。
背景
Transformer的目标是减少序列计算,使用卷积神经网络作为基本构建块,为所有输入和输出位置并行计算隐藏表示。
模型架构
Transformer遵循编码器-解码器结构,使用堆叠的自注意力和逐点全连接层。编码器由多个相同层组成,每层包含多头自注意力机制和逐位置全连接前馈网络。解码器也由多个相同层组成,增加了一个额外的子层,执行对编码器输出的多头注意力。
为什么使用自注意力?
自注意力层与常用的循环和卷积层相比,在计算复杂性、并行化能力和学习长距离依赖的能力上有显著优势。
(1). 计算复杂性
自注意力层:自注意力层的计算复杂度为O(n2⋅d),其中n是序列长度,d是表示的维度。这意味着对于每个位置,自注意力层需要计算与序列中所有其他位置的关系。
循环层:循环层(如LSTM或GRU)的计算复杂度为O(n⋅d2),因为每个时间步的计算依赖于前一个时间步的输出,导致序列长度n与表示维度d的平方成正比。
卷积层:卷积层的计算复杂度取决于卷积核的大小k,为O(k⋅n⋅d2)。对于覆盖所有输入和输出位置,可能需要多层卷积,导致复杂度增加。
(2). 并行化能力
自注意力层:自注意力层可以并行处理序列中的所有位置,因为每个位置的计算不依赖于其他位置的输出,这使得自注意力层非常适合并行计算。
循环层:由于循环层的计算是顺序的,每个时间步的输出依赖于前一个时间步的输出,因此难以并行化。
卷积层:虽然卷积层可以并行处理,但其并行化能力受到卷积核大小和步长的限制。
(3). 学习长距离依赖的能力
自注意力层:自注意力层可以直接建模任意两个位置之间的依赖关系,无论它们在序列中的距离有多远,这使得自注意力层特别擅长捕捉长距离依赖。
循环层:循环层通过递归地处理序列中的每个元素来学习长距离依赖,但可能会受到梯度消失或梯度爆炸的影响,尤其是在长序列中。
卷积层:卷积层通过多层堆叠来捕捉长距离依赖,但随着层数的增加,计算复杂度和最大路径长度也会增加。
训练
论文描述了Transformer模型的训练数据、批处理、硬件配置、优化器选择和正则化策略。
(1).训练数据和批处理(5.1 Training Data and Batching)
WMT 2014 English-German 数据集:包含约450万句子对,使用字节对编码(byte-pair encoding),共享源-目标词汇表约37000个token。
WMT 2014 English-French 数据集:包含3600万句子对,使用词片(word-piece)编码,词汇表大小为32000。
批处理:根据近似序列长度将句子对组合在一起,每个训练批次包含约25000个源token和25000个目标token。
(2).硬件和训练计划(5.2 Hardware and Schedule)
硬件:使用一台装有8个NVIDIA P100 GPU的机器。
训练步骤时间:基础模型每个训练步骤约0.4秒,大型模型为1.0秒。
训练时间:基础模型训练了100,000步或12小时,大型模型训练了300,000步(3.5天)。
(3).优化器(5.3 Optimizer)
Adam优化器:使用β1 = 0.9, β2 = 0.98, ϵ = 10^-9。
学习率调整:根据公式lrate = d^-0.5_model · min(step_num^-0.5, step_num · warmup_steps^-1.5)调整学习率,其中warmup_steps = 4000。
(4).正则化(5.4 Regularization)
结果
Transformer在机器翻译任务上取得了新的最佳性能,并且在英语成分句法分析任务上也表现出色。
结论
Transformer是第一个完全基于注意力的序列转换模型,证明了注意力机制在处理序列数据时的有效性。作者对基于注意力的模型在未来的应用表示期待,并计划将Transformer扩展到文本以外的输入和输出模态。
原文: