Chapter 02

Transformer与注意力机制

核心问题 AI凭什么能预测得准? 阅读收获 理解AI"读懂"你说的话的全过程,知道Transformer和注意力机制在其中扮演什么角色

本章概览

第1课我们知道了:AI的本质就是预测下一个词

但一个自然的问题是:它凭什么预测得那么准?为什么输入"我喜欢吃四川",它知道接"火锅"而不是"省"?

答案就是本课要讲的:Transformer和注意力机制——它们让AI能真正"读懂"你在说什么。

第1课:AI在干什么? → 预测下一个词 第2课:AI凭什么预测得准? → Transformer让它能理解上下文(本课) 第3课:这种能力带来了什么?→ 涌现能力与局限

2.1 全景图:AI从输入到输出经历了什么?

给你一个完整的框架,看清Transformer在整个流程中的位置。
回顾第1课

回顾第1课的例子:你输入"我喜欢吃四川",AI一个字一个字输出"火锅,尤其是麻辣锅底……"

但这背后实际经历了什么?下面这张图展示了AI生成回答的完整流程:

Transformer推理流程图
Transformer的推理(Inference)流程:从你的输入到AI的输出,完整的7个步骤
图片来源:Ketan Doshi, Transformers Explained Visually
7个步骤

看起来有点复杂?别担心,我们用"我喜欢吃四川"这个例子来走一遍:

  1. 你的输入进入编码器 — 你输入的话("我喜欢吃四川")被转换成AI能处理的数字形式,送入编码器(Encoder)。
  2. 编码器"读懂"你的话 — 编码器通过多层处理,理解你输入中每个词和其他词的关系,生成一个"读懂后的理解"。比如它发现"四川"和"吃"关系很大。
  3. 解码器准备生成回答解码器(Decoder)从一个"开始"标记出发,准备一个字一个字地生成回答。
  4. 结合理解,处理已有内容 — 解码器结合编码器对你输入的理解,处理当前已生成的内容。
  5. 算出每个词的概率 — 输出层把处理结果转换成每个候选词的概率——比如"火"60%、"省"10%、"话"8%……
  6. 选出概率最高的词 — 选出"火",加入到已生成的序列中。
  7. 循环 — 回到第3步,把已生成的内容("火")重新送入解码器,继续预测下一个词("锅")。如此循环,直到生成完整的回答。
三件事

看起来有7步,但本质上就是三件事

读懂你的话(步骤1-2) → 预测下一个词(步骤3-6) → 循环生成(步骤7)
    ↑ 本课重点                ↑ 第1课已讲              ↑ 第1课已讲

第1课讲了预测和循环生成。本课补上最关键的第一件事:AI是怎么"读懂"你的话的?

如果AI读不懂你在说什么,预测就是乱猜。读懂了,预测才能精准。接下来的三节,我们会逐一展开。

2.2 Transformer:让AI能"同时看完整句话"的架构

2017年,Google发表了《Attention is All You Need》论文,提出了Transformer架构,直接催生了GPT、BERT、Claude、Gemini等所有主流大语言模型。
对应全景图

在2.1的全景图中,步骤1-2是整个流程的起点:编码器"读懂"你的话。这个编码器,就是Transformer架构的核心部分。

Transformer解决了什么问题?

在Transformer出现之前,AI用RNN(循环神经网络)处理文字。RNN逐字处理,一个字处理完才能处理下一个:

处理"我" → 处理"喜" → 处理"欢" → 处理"吃" → 处理"苹" → 处理"果"...

这带来了三个严重问题:

  1. 太慢 — 必须一个字一个字来,无法同时处理多个字
  2. 会"忘事" — 处理到后面的字时,前面的信息记忆变淡
  3. 长句子处理不好 — 句子越长,前面的信息传到后面时损耗越大
类比:传话游戏 vs 电话会议

你玩过传话游戏吗?10个人排成一排,第一个人说一句话逐个传下去,最后一个人听到的往往面目全非。RNN就有这个问题——信息在传递过程中不断衰减。

Transformer的解决方案:不用排队传话了,所有人同时开一个电话会议,每个人都能直接听到其他所有人说的话。不管谁说了什么,所有人都能第一时间接收到完整信息。

对比
对比维度RNN(旧方法)Transformer(新方法)
处理方式串行,一个字一个字处理并行,所有字同时处理
长距离关系信息逐步传递,会衰减任意两个词直接连接,不会衰减
训练速度基准快10倍以上
规模效应难以扩大规模越大越强,效果提升明显
这意味着什么?

用你日常能感受到的话来说:

  • ChatGPT能记住你几千字之前说的话(不会"忘事")
  • 能处理长文章、长对话(不会越长越差)
  • 训练速度快10倍(所以才能用万亿级数据训练,知识越来越多)

正是因为这些优势,Transformer在发表后迅速取代了RNN,成为整个AI领域的标准架构。

权威引用

"我们提出了一种新的简单网络架构——Transformer,完全基于注意力机制,完全摒弃了循环和卷积。"

—— Vaswani et al., Attention is All You Need

2.3 注意力机制:AI怎么"读懂"你的话

在2.1的步骤2中,编码器要"理解每个词和其他词的关系"——这件事具体是怎么做到的?答案就是注意力机制。
核心概念

注意力机制本质上就是在计算词与词之间的相关程度。相关程度越高的词,AI就越"注意"它,用它来帮助理解当前这个词。

直觉理解:用四川火锅来说明

还记得第1课的例子吗?当你输入"我喜欢吃四川",AI预测出下一个字最可能是"火"(火锅60%),而不是"省"(四川省)或"话"(四川话)。AI是怎么做到这个判断的?靠的就是注意力机制——它在算这句话里每个词和其他词之间有多大关系

具体来说,当AI读到"四川",准备预测下一个字的时候,它会把"四川"和前面每一个词都做一次比较,算出一个"相关程度"的分数:

  • "四川"和"吃" → 相关程度很高("吃"说明在讨论食物)
  • "四川"和"喜欢" → 相关程度中等(表示正面态度)
  • "四川"和"我" → 相关程度低(只是说明主语)

因为"吃"拿到了最高的相关性分数,AI就理解到——"四川"出现在"吃"的语境中,所以接下来应该预测食物(火锅、担担面、冒菜),而不是地理(省份、盆地)或文化(方言、川剧)。

然后AI把这些分数转化成百分比(所有百分比加起来刚好等于100%),用来决定在理解每个词的时候,应该把多少注意力分配给其他词。

所以,所谓"注意力",说白了就是:算出每个词和其他词的相关程度,相关程度越高,就越"注意"它

经典案例

下面这张经典图展示了注意力机制的效果。当AI处理句子"The animal didn't cross the street because it was too tired"时,注意力机制让"it"重点关注"animal"这个词——线条越粗,代表关注度越高:

Self-Attention可视化:it指向animal
注意力可视化:处理"it"时,模型将最多的注意力分配给了"The animal"——正确判断出"it"指的是"animal"
图片来源:Jay Alammar, The Illustrated Transformer
类比:鸡尾酒会效应

你参加一个嘈杂的派对,几十个人同时说话,声音混成一片。但当有人在远处喊你的名字时,你立刻就能从嘈杂中听出来——即使周围的噪音比那个声音大得多。

这就是人类的"注意力"能力:在众多信息中,自动聚焦于和自己最相关的部分。AI的注意力机制模仿的正是这种能力——面对一句话里的所有词,它能自动判断哪些词对理解当前这个词最重要,然后把注意力集中到那些词上。

权威引用

"当模型处理'it'这个词时,注意力机制让它能把'it'和'animal'关联起来。"

—— Jay Alammar, The Illustrated Transformer

"注意力机制让模型能够查看输入序列中的其他位置,寻找能帮助更好理解当前词的线索。"

—— 3Blue1Brown, Attention in Transformers

2.4 知道关系有什么用?—— 从"读懂"到"说对"

打通完整链路:注意力机制如何让AI的预测变得精准。
回到核心问题

现在我们知道了:步骤1-2编码器"读懂"你的话(靠Transformer和注意力机制),步骤5-6把理解转化成预测结果。但这两步是怎么连起来的?算出词和词的关系之后,怎么就能预测得准了?

答案要回到第1课的核心结论:大语言模型的本质就是"预测下一个词"。而注意力机制算出来的关系,直接决定了这个预测准不准。

完整链路:用四川火锅走一遍
输入:"我喜欢吃四川___"

第1步:注意力机制算关系
  → "四川"和"吃"关系最大,和"我"关系最小

第2步:用这个关系重新理解"四川"
  → 在这句话里,"四川"不再只是一个地名
  → 它被"吃"这个词"染上了美食的色彩"
  → 变成了"一种美食风味"的含义

第3步:拿着这个新含义去预测下一个词
  → 火锅 60%、担担面 15%、冒菜 8%...
  → 而不是"省 30%、话 25%、盆地 20%"

第4步:输出
  → "火锅"

如果没有注意力机制,模型看到"四川"就只知道这是个地名——后面接"火锅"、"省"、"话"、"盆地"可能概率都差不多,预测就像在乱猜。

有了注意力机制,模型知道"这里在聊吃的",预测一下子就精准了。

同一个词,不同的理解

同样的道理,当你把同一个词放在不同的句子里,注意力机制会根据不同的上下文给出不同的理解:

输入注意力发现的关键关系"四川"被理解为预测结果
我喜欢四川___"四川"↔"吃"美食风味火锅、担担面
来自四川___"四川"↔"来自"地理位置成都、农村
我在四川___"四川"↔"学"地方文化话、方言

每个词从固定的含义(static:字典里的解释)变成了随上下文变化的含义(contextual:在这句话里的具体意思)——这就是注意力机制最终实现的效果。

串课结论

把第1课和第2课串起来:

第1课:AI在干什么?→ 预测下一个词

第2课:AI凭什么预测得准?→ 注意力机制帮它理解了上下文中词与词的关系,让它真正"读懂"了你在说什么

预测得越准,输出的内容就越像"懂你在说什么"——这就是我们感受到的AI"智能"的来源。

本章小结

概念一句话总结
全景图AI处理你的输入分三步:读懂你的话 → 预测下一个词 → 逐字输出,本课讲的是第一步
Transformer让AI能"同时看完整句话"的架构,解决了旧方法逐字处理导致的遗忘和速度问题
注意力机制计算词与词之间的相关程度,让AI理解每个词在当前上下文中的真正含义
从读懂到说对注意力帮AI读懂上下文 → 预测更精准 → 输出更像"懂你" → 这就是"智能"的来源

本章的核心认知:Transformer和注意力机制让AI学会了在众多信息中找出最重要的那些,从而真正"读懂"你在说什么。读懂了,才能预测得准;预测得准,才能输出像"懂你"的回答。

练习

思考题1

语境理解:为什么"苹果"在"我吃苹果"和"苹果股价大涨"里意思不同?如果你是AI的注意力机制,你会关注哪些词来做判断?

思考题2

代词指代:句子"小明把作业给了小红,因为她需要抄。"——"她"指的是谁?如果改成"因为他写得太好了","他"指的又是谁?想想AI是怎么通过上下文中的其他词来判断的——哪些词的相关性会更高?

拓展探索

如果想更直观地了解注意力机制的工作效果:

参考资料