一、文档说明
本文档为个人系统性学习Transformer开山论文《Attention Is All You Need》的完整复盘记录,包含:论文背景、核心动机、全套架构、模块原理、关键公式、易错辨析、灵魂问答、架构闭环逻辑。
论文地址:https://arxiv.org/abs/1706.03762
学习定位:所有现代大模型(GPT、LLaMA、Qwen、DeepSeek、多模态模型)的底层唯一基石。
二、论文基础信息
-
论文名称:Attention Is All You Need
-
发表时间:2017年
-
发表机构:Google Brain
-
核心地位:彻底抛弃RNN、CNN,纯注意力架构,开启大模型时代
三、研究背景与核心动机(为什么要做Transformer)
1. 传统模型痛点
-
RNN/LSTM/GRU :串行时序计算,必须逐词计算,无法并行训练;长距离依赖存在严重信息衰减,长文本效果极差。
-
CNN序列模型 :只能依靠卷积核获取局部感受野,无法建模全局长距离依赖。
2. 论文核心目标
设计一套完全基于自注意力机制的序列模型,实现:全局依赖建模 + 全并行训练 + 超强长文本理解能力。
四、核心核心:自注意力机制全套原理
1. 自注意力本质
自注意力 = 词与词之间的相似度检索 + 全局加权融合。
作用:让每一个单词,都能和句子中所有单词计算关联,捕捉全局语义依赖,彻底解决长距离信息衰减。
2. QKV三元核心逻辑
自注意力为什么是3个矩阵(Q/K/V),不是2个、不是4个?
检索系统天然三元闭环,缺一不可:
-
Q Query 查询:当前词的需求,我想找哪些相关词(发起检索)
-
K Key 键:所有词的特征标签,用于被匹配、做相似度计算(索引)
-
V Value 值:所有词真实的语义内容,最终用于加权融合输出(内容)
闭环逻辑:Q拿着需求匹配所有K → 得到注意力权重 → 加权聚合V的语义。
2个参数功能拆分不完,4个参数冗余浪费,3个是数学最优解。
3. 缩放点积注意力公式与五步流程
核心公式 :Attention(Q,K,V)=softmax(QK⊤dk)V\text{Attention}(Q,K,V) = \text{softmax}\left(\frac{QK^\top}{\sqrt{d_k}}\right)VAttention(Q,K,V)=softmax(dk QK⊤)V
标准五步计算流程:
-
输入词向量,通过线性层投影得到 Q、K、V
-
计算 Q与K的点积,得到词间原始相似度矩阵
-
除以 dk\sqrt{d_k}dk 缩放数值
-
Softmax归一化,得到0-1的注意力权重
-
权重与V加权求和,得到上下文融合向量
4. 缩放操作的核心作用
维度越高,点积数值会指数级变大,导致Softmax进入饱和区,梯度趋近于0,出现梯度消失。除以根号维度,将数值拉回合理分布,稳定训练梯度。
5. 多头注意力机制
原理:将QKV切分为多组低维子空间,并行计算多组注意力,最后拼接融合。
作用 :单头注意力只能学习一种语义关系,多头可以同时捕捉语法关系、位置关系、长距离依赖、语义关联,极大提升模型表达能力。
五、两大核心模块:Encoder + Decoder 完整架构
1. 共性组件(Encoder、Decoder通用)
(1)残差连接
公式:H(x)=x+F(x)H(x) = x + F(x)H(x)=x+F(x)
作用:① 求导恒有1的直通通路,解决梯度消失 ;② 多余层可拟合为0,实现恒等映射,解决网络退化。
(2)LayerNorm 层归一化
对单个词向量做均值方差归一化,稳定每层输入分布、加速收敛、防止训练震荡,支撑深层网络堆叠。
(3)FFN前馈神经网络
核心分工:注意力负责挖掘词与词的关系 ;FFN负责对单个词做非线性特征深加工,二者互补、不可替代。
2. Encoder 编码器
单层完整数据流:输入 → 多头自注意力(双向无掩码)→ 残差+LayerNorm → FFN → 残差+LayerNorm → 输出
核心特点:全局双向可见,所有词互相看彼此,用于完整理解全文语义。
衍生模型:BERT、各类语义理解、检索模型。
3. Decoder 解码器
单层完整数据流:输入 → 掩码多头自注意力 → 残差+LN → 交叉注意力 → 残差+LN → FFN → 残差+LN → 输出
三层注意力分工:
-
掩码自注意力:屏蔽未来token,只能看前文,防止生成时偷看未来内容
-
交叉注意力:Decoder的Q查询Encoder的K/V,实现生成内容与原文语义对齐
4. Encoder vs Decoder 核心区别
-
Encoder:双向自注意力,无掩码,专注理解
-
Decoder:多掩码自注意力+交叉注意力,单向因果,专注生成
六、位置编码核心原理
1. 必要性
自注意力是纯矩阵并行计算,天生没有时序、语序概念,必须手动注入位置信息,否则模型无法区分词语先后顺序。
2. 核心结论
Encoder、Decoder 全部需要位置编码,二者都是序列输入,均需要感知语序。
3. 论文原版方案
采用正弦余弦三角函数位置编码,可泛化超长序列,与词向量直接相加融合。
七、掩码 Mask 完整原理
1. 作用
保证Decoder自回归生成合法,训练时当前位置无法看到未来未生成的token。
2. 实现方式
在Softmax之前,构造上三角掩码矩阵,将未来位置数值赋值为**-∞**;经过Softmax计算后,该位置权重趋近于0,彻底屏蔽未来信息。
核心逻辑:掩码控制可见范围,位置编码控制顺序信息,二者完全独立、缺一不可。
八、自注意力 vs 交叉注意力 核心辨析
-
自注意力:同序列内部词与词关联,Encoder、Decoder均使用
-
交叉注意力:Decoder序列查询Encoder输出序列,实现原文与生成内容的语义对齐,仅Decoder拥有
九、Transformer 对比传统模型核心优势
-
无长距离信息衰减:任意两个token直接建模依赖,无需串行传递
-
全并行训练:彻底摆脱RNN串行瓶颈,训练速度大幅提升
-
多维度语义建模:多头注意力捕捉多元语义关系,表达能力远超传统模型
-
架构通用:可适配NLP、CV、视频、多模态所有任务
十、全文核心终极总结
Transformer 摒弃RNN、CNN,以缩放点积自注意力、多头机制为核心,搭配位置编码、残差连接、LayerNorm、FFN模块,构建Encoder-Decoder架构。Encoder负责双向语义理解,Decoder负责单向自回归生成,兼具全局依赖建模与全并行训练能力,是所有现代大模型、多模态模型的底层核心基座。
十一、学习闭环
已完整掌握:Transformer论文背景、QKV核心逻辑、缩放多头注意力、位置编码、掩码机制、残差与归一化、FFN作用、Encoder/Decoder完整架构、交叉注意力原理、新旧模型对比优势。
下一站:进阶学习GPT、开源大模型、微调、多模态的底层基础。