外观
The Illustrated Transformer
Jay Alammar 的 Transformer 图解长文:把 Attention Is All You Need 拆成可扫读的结构图与直觉说明。
它是做什么的
用图逐步讲 Encoder/Decoder 栈、Self-Attention、Multi-Head、位置编码,以及词向量如何在各层流动。面向「看论文吃力、想先建立画面」的读者,刻意把概念拆开、降低门槛,而不是复述论文全部实验。文章从机器翻译黑盒视图开始,再逐层打开编码器、解码器与子层,并把 self-attention 的计算拆成可读的步骤图。文首说明:内容已扩展进作者相关 LLM 书籍(见文内提示,含后续注意力变体等更新),并有配套短课动画;实现侧可参考 Tensor2Tensor,以及 Harvard NLP 对论文的注解 + PyTorch 实现链接。
要点
- 先把模型当黑盒(机器翻译:输入句 → 输出句),再拆开编码组件 / 解码组件与中间连接
- Encoder:Self-Attention → 逐位置 Feed-Forward;多层堆叠(论文示例为 6 层,层间不共享权重)
- Decoder:在上述两层之间再加一层对 Encoder 输出的 Attention(类似 seq2seq 里的 attention)
- 用指代消解类例子(如 “it” 指 animal 还是 street)解释 Self-Attention「在看哪里」
- 强调相对 RNN 的并行优势:各位置路径在 feed-forward 段可并行;self-attention 段存在位置间依赖
- 文内把 embedding 维度等与论文设定对齐讲解(如 512 维示意),便于和图对照
- 读完应能向别人讲清:一层 Encoder 里两段子层各做什么、Decoder 多出来的那层在看谁
适合谁
- 刚接触 Transformer / LLM,需要视觉直觉再碰公式
- 读 Attention 原论文 前的预习,或读完后的对照复习
- 不打算一上来啃推导,但要能向别人讲清「一层里发生了什么」
官方入口
建议怎么用
通读一遍,重点跟完 Self-Attention 与 Multi-Head 那几组图,自己能复述:Q/K/V 从哪来、分数怎么归一化、如何加权 Value、多头如何拼接。然后打开 Attention 原论文 §3 对照符号,或跟 Karpathy「Let's build GPT」/ 最小 PyTorch 实现,把图里的矩阵对应到代码里的 Q/K/V、causal mask 与 positional encoding。图解负责直觉;论文与代码负责可实现细节。