Transformer架构:从分布式系统视角理解
Transformer 是 2017 年《Attention is All You Need》论文提出的架构,已成为现代大型语言模型的基础。本节从工程视角解析其核心组件和数据流。
Transformer 的本质:一个并行的动态路由数据流系统
先给结论:
Transformer 不是"会思考的结构",而是一个允许所有 token 彼此通信的并行数据流网络。
如果你用分布式系统视角看,它非常朴素。
对应关系非常直接
- token:节点
- attention:动态路由表
- 多头 attention:多套并行路由策略
- FFN:节点的本地计算逻辑(详见 数学基础:激活函数)
- LayerNorm:层内归一化,稳定训练梯度(详见 数学基础:LayerNorm)
- 多层:多轮全局通信 + 本地计算
也就是说:
每一层 Transformer,本质上就是:所有节点先"广播感兴趣的信息",再各自做一次本地处理。
这和"思考"没有关系,它解决的是信息如何在序列中高效流动的问题。
为什么 RNN 串行架构存在根本性问题
RNN / LSTM 的问题你一定熟悉:
- 严格串行:必须按时间步顺序处理
- 上下文依赖长:信息随时间步衰减
- 吞吐被时间步锁死:无法充分利用硬件并行能力
这在分布式系统中是典型性能瓶颈。
Transformer 的工程解法
Transformer 的解法很工程化:
- 直接放弃时间顺序约束
- 一次性让所有 token 互相通信
- 用计算量换并行度
O(n²) 在 CPU 上是灾难,在 GPU 上反而是优势。这是硬件友好型设计,不是认知突破。
Attention 为什么成立:不是优雅,是工程取舍
很多文章会告诉你 Attention "更强""更聪明"。
工程上更准确的说法是:Attention 更适合并行硬件。
RNN / LSTM 的串行问题:
- 严格串行
- 上下文依赖长
- 吞吐被时间步锁死
Transformer 的解法:直接放弃时间顺序,一次性让所有 token 互相通信,用计算量换并行度。
O(n²) 在 CPU 上是灾难,在 GPU 上反而是优势。这是硬件友好型设计,不是认知突破。
本节小结
Transformer 的核心创新只有一条:把串行变并行,全局 context 一次看完。
所有 token 不再排队,而是互相直接连线,这个连线的权重就是 attention。
本质上 Transformer 做了什么?
把原本 O(n) 的串行信息传递,改成 O(1) 的全连通广播。每个 token 可以直接访问整个序列的所有信息。
RNN 需要沿时间步逐层传递信息,而 Transformer 通过全连通 attention 机制,允许每个 token 直接与任意其他 token 交互,从而大幅提升并行度和长距离依赖建模能力。
延伸阅读
- Vaswani et al., "Attention Is All You Need", NeurIPS 2017
- "The Illustrated Transformer" by Jay Alammar
- "Transformers from scratch" by Peter Bloem