AI 通关攻略 · 第 1 关 | Attention 机制:LLM 最强大的能力从哪里来

3 阅读4分钟

AI 通关攻略 · 第 1 关 | Attention 机制:LLM 最强大的能力从哪里来

故事从 2017 年说起

2017 年,Google 发表了一篇论文叫《Attention Is All You Need》,提出了 Transformer 架构。这是现代所有大语言模型(LLM)的技术基石。

在那之前,AI 处理文字靠的是 RNN(循环神经网络),但 RNN 有个致命问题:信息越远越容易丢失。Transformer 用"注意力机制"彻底解决了这个问题。


1. 核心概念:Attention(注意力机制)

什么是注意力?

Attention 的核心思想是:让模型在处理每个词时,能"看到"整句话中所有其他词的相关程度,然后重点关注最相关的那些词。

类比:当你读到"猫在沙发上睡觉"这句话时,你理解"猫"和"睡觉"是紧密相关的,但"沙发"和"睡觉"也有一定关联,而"在"字的影响相对较小。Attention 就是在模拟这种人类阅读时的注意力分配。

Query、Key、Value(QKV)

Attention 的内部运作依赖三个向量,这是最容易让人困惑的部分:

角色比喻
Query(查询)你当前正在处理的词发出的"提问"——"我需要找什么信息?"
Key(键)句子中每个词的"索引标签"——"我包含什么信息?"
Value(值)每个词包含的"实际内容"

Attention 的计算过程:

  1. 用 Query 和每个 Key 做点积,得到相关性分数
  2. 通过 Softmax 归一化(转换成概率)
  3. 用归一化后的分数对所有 Value 加权求和,得到最终输出

简单理解:Query 是"搜索词",Key 是"文档标题",Value 是"文档正文"。搜索引擎用搜索词匹配标题,找到最相关的文档,把正文内容返回给你。

Self-Attention(自注意力)

Self-Attention 指的是:用同一个句子自己和自己做注意力计算,而不是跨句子。LLM 之所以能理解上下文语义,靠的就是 Self-Attention。


2. Transformer 的整体结构

Transformer 由两大部分组成:Encoder(编码器)Decoder(解码器)

2.1 Encoder(编码器)

负责理解输入文本,把文字转换成机器能理解的表示(向量)。

每个 Encoder 层包含两个子模块:

  1. Multi-Head Self-Attention(多头注意力):从多个角度同时捕捉词与词之间的关系
  2. Feed Forward Neural Network(前馈神经网络):对每个位置的表示做非线性变换

"多头"是什么意思? 就像一道数学题让多个学生同时做,每个人思路不同,最后汇总结果更好。多头注意力让模型从多个子空间理解语义。

2.2 Decoder(解码器)

负责根据 Encoder 的理解,逐词生成输出文本。

Decoder 比 Encoder 多了一个机制:

  • Masked Self-Attention(掩码注意力):生成第 N 个词时,只能"看到"前 N-1 个词,不能偷看后面的答案(否则就是作弊)

2.3 经典模型对比

模型结构代表
Encoder only只用编码器BERT(Google)
Decoder only只用解码器GPT 系列(OpenAI)
Encoder-Decoder两者都用T5(Google)、BART

LLM 时代的主流是 Decoder-only 架构(如 GPT、Llama、Claude),原因是:它更擅长生成式任务,且工程实现上更高效。


3. Token 位置与位置编码

Self-Attention 本身不包含词序信息——"狗咬猫"和"猫咬狗"对模型来说如果没有位置信息,是一样的。

位置编码(Positional Encoding) 的作用就是:给每个词的位置打上一个独特的"标记",让模型知道谁在前谁在后。

Transformer 使用正弦/余弦函数来生成位置编码,这是经过精心数学设计的,使得任意相对位置都能通过线性变换计算出来。


4. GPT 用的是哪种结构?

GPT(Generative Pre-trained Transformer)采用的是 Decoder-only 结构:

  • 输入一段文本,用多层 Masked Self-Attention + 前馈网络处理
  • 逐词预测下一个 token

这就是"下一个 token 预测(Next Token Prediction)"——LLM 本质上就是在做这件事:给定前 N 个 token,预测第 N+1 个 token,循环往复生成整段文字。


5. 为什么 Transformer 能 Scale(扩展)?

Transformer 之所以能训练出 GPT-4、Claude 这样的超大模型,有几个关键原因:

  1. 并行计算:Self-Attention 的计算可以高度并行化,不像 RNN 必须顺序处理,大幅缩短训练时间
  2. 可扩展性:层数(depth)、注意力头数(heads)、隐藏层维度(hidden size)都可以独立扩展
  3. 长距离依赖:Attention 让任意两个词之间可以直接建立联系,解决了 RNN 的根本局限

6. 总结

Transformer = Self-Attention(注意力)+ 位置编码 + 前馈网络

LLM(GPT系列)= Decoder-only Transformer + 下一个token预测 + 海量数据 + 超大算力

理解 Transformer,就理解了大语言模型 80% 的技术原理。后面学习 RAG、微调、Agent 等概念时,都需要回到这个基础。