WAP PAPER · 高中 · 中文

Attention Is All You Need

面向高中读者的清晰版讲解,按论文原有顺序展开:动机 → 架构 → 训练 → 结果。

论文信息
作者
Vaswani, Shazeer, Parmar, Uszkoreit, Jones, Gomez, Kaiser, Polosukhin
会议
NeurIPS (NIPS) 2017 · arXiv 1706.03762
任务
机器翻译与序列到序列建模。
核心结论
纯注意力架构也能超过 RNN/CNN 翻译模型,并且训练更快。

摘要(通俗版)

论文提出 Transformer:一个只用注意力的序列模型。它去掉循环和卷积,让训练可以并行,速度更快,翻译效果也更好。

核心亮点:在 WMT14 翻译任务上取得高 BLEU,同时训练时间大幅缩短。

引言与背景

机器翻译需要把一串词转换成另一串词。传统 RNN/CNN 必须按顺序处理词,速度慢,而且很难捕捉远距离的依赖。

注意力机制已经被证明很有用,但通常还是依赖 RNN。本论文问:如果只用注意力,会不会更好?

目标
让训练并行化,减少顺序计算。
做法
让每个词直接关注所有其他词。
结果
速度更快,质量更高。

Transformer 架构

整体仍是编码器-解码器,但每一层只由注意力和小型前馈网络组成。基础模型中,编码器和解码器各 6 层。

编码器层
自注意力 + 前馈网络。
解码器层
遮罩自注意力 + 编码器-解码器注意力 + 前馈网络。
稳定训练
残差连接 + 层归一化。

缩放点积注意力

每个词生成 Q/K/V 向量,通过 Q 与 K 的相似度得到权重,再对 V 做加权求和。

除以 √d_k 能避免 softmax 饱和,训练更稳定。

多头注意力

基础模型用 8 个头并行,每个头关注不同关系,比如语法或语义。

位置前馈网络

注意力后,每个位置再过一个两层小网络,增强表达能力。

词向量与位置编码

因为没有循环结构,模型用正弦/余弦位置编码加入顺序信息。

为什么自注意力有效?

自注意力让任意两个词只需要一步就能相互联系,并且可以一次性并行计算。

训练设置

训练数据来自 WMT14:英德 450 万句对,英法 3600 万句对,并使用 BPE 进行子词切分。

批大小
约 25k 源语言 + 25k 目标语言 token。
硬件
8× NVIDIA P100 GPU。
训练速度
基础模型 100k 步约 12 小时,大模型 300k 步约 3.5 天。

优化器使用 Adam,学习率先 warmup 4k 步再衰减;dropout 和 label smoothing 都是 0.1。

实验结果

Transformer (big) 在英德翻译上达到 28.4 BLEU,在英法翻译上达到 41.8 BLEU,并且训练更快。

英德:28.4 BLEU
英法:41.8 BLEU
训练:3.5 天(8 卡)

泛化与展望

论文还将 Transformer 用于英文成分句法分析,显示其能推广到翻译之外的任务。

局限:注意力对长序列成本高,作者建议探索限制注意力范围,并尝试其他模态的应用。

资源

arXiv 摘要 1706.03762
论文 PDF 下载 PDF
NeurIPS 论文页 NIPS 2017
参考代码 Tensor2Tensor

引用

@inproceedings{vaswani2017attention,
  title={Attention Is All You Need},
  author={Vaswani, Ashish and Shazeer, Noam and Parmar, Niki and Uszkoreit, Jakob and Jones, Llion and Gomez, Aidan N. and Kaiser, Lukasz and Polosukhin, Illia},
  booktitle={Advances in Neural Information Processing Systems},
  year={2017}
}