Transformer 架构详解
2017 年,Google 发表了一篇名为《Attention Is All You Need》的论文,提出了 Transformer 架构。这篇论文改变了一切——当今所有主流大模型(GPT、GLM、Claude、Llama)都基于它。
它解决了什么问题?
在 Transformer 之前,处理文本主要用 RNN(循环神经网络)和 LSTM。它们有一个致命缺陷:无法并行处理,必须一个词一个词地顺序读取,导致训练速度慢,且难以捕捉长距离依赖。
Transformer 用自注意力机制(Self-Attention)解决了这个问题——它可以同时"看到"句子中的所有词。
自注意力机制
注意力机制的核心思想:处理某个词时,应该关注哪些其他词。
举个例子:
"它是一只猫,它喜欢睡觉。"
当模型处理第二个"它"时,注意力机制让它知道这里的"它"指的是"猫",而不是其他词。
实现方式是通过三个矩阵:Q(Query)、K(Key)、V(Value):
- 每个词生成一个 Q(我在找什么)、K(我是什么)、V(我的内容)
- Q 和所有 K 做点积,得到注意力分数
- 用分数对 V 加权求和,得到该词的新表示
多头注意力
Transformer 不只用一次注意力,而是用多个头并行计算。每个头关注不同的方面——有的关注语法关系,有的关注语义关系,有的关注位置关系。
这就像一群人同时从不同角度阅读同一篇文章,最后汇总各自的理解。
位置编码
由于 Transformer 不像 RNN 那样按顺序处理,它需要一种方式知道词的顺序。解决方案是给每个位置加上一个"位置编码"向量,让模型知道每个词在第几个位置。
编码器与解码器
原始 Transformer 有两部分:
- 编码器(Encoder):理解输入文本。BERT 系列只用编码器
- 解码器(Decoder):生成输出文本。GPT 系列只用解码器
现代大模型大多采用"Decoder-Only"架构,即只用解码器部分,因为它在文本生成任务上表现最好。
为什么 Transformer 赢了?
- 可并行:所有词同时处理,GPU 利用率高
- 可扩展:模型越大效果越好,没有明显的天花板
- 长距离依赖:注意力机制天然支持远距离关系
Transformer 是当前 AI 浪潮的基石。理解它,就理解了大模型的一半。