模块 2 · 第 1

从RNN到Attention

预计时长:30分钟

欢迎来到阶段四!在这个阶段,我们将深入AI的底层原理。首先,让我们了解大语言模型最核心的技术突破——从RNN到Attention机制的演进。

这一课可能会有些「硬核」,但我会尽量用通俗的方式解释。理解这些原理,能帮你更好地使用和优化AI应用。

序列处理的挑战

语言是有顺序的。「我吃了饭」和「饭吃了我」意思完全不同。所以处理语言的AI需要理解词语之间的顺序关系。

早期处理序列数据的方法是RNN(循环神经网络)。它的思路是:按顺序一个词一个词地处理,同时「记住」之前看过的内容。

[图示:RNN处理流程]
RNN像读书一样,一个字一个字顺序处理

RNN的问题

RNN有两个严重的问题:

  1. 长距离遗忘:处理到句子后面时,可能已经「忘记」句子开头的内容。就像你读一本书,读到后面忘了前面写的什么。
  2. 无法并行:必须按顺序处理,前一个词处理完才能处理下一个。这使得训练非常慢。
例子
句子:"这本书是关于一个年轻人如何在困境中...(省略500字)...最终实现梦想的故事"

问题:当RNN处理到"故事"时,它可能已经忘记开头说的是"这本书"
这导致它无法正确理解"故事"指的是什么

注意力机制的诞生

2017年,Google发表了著名的论文《Attention Is All You Need》,提出了Transformer架构。其核心创新就是「自注意力机制」(Self-Attention)。

注意力机制的核心思想是:处理每个词时,让模型能够「看到」句子中的所有词,并判断哪些词对当前词的理解更重要。

注意力机制就像你在读一个句子时,眼睛可以快速回看之前的内容,找到相关的部分来帮助理解当前读到的内容。

自注意力如何工作?

让我们用一个简单的例子来理解:

例子
句子:"小明把苹果给了小红,因为她很饿"

问题:这里的"她"指的是谁?

自注意力的工作方式:
1. 处理"她"这个词时
2. 计算它与句子中每个词的"关联分数"
3. "小红"的分数会很高(因为语义相关)
4. "小明"的分数会较低
5. 基于这些分数,模型理解"她"指的是"小红"

通过这种方式,即使「小红」出现在句子较早的位置,处理「她」时仍然能够正确关联。

为什么Attention如此重要?

注意力机制解决了RNN的两大问题:

  1. 长距离依赖:每个位置都能直接「看到」所有其他位置,不会遗忘
  2. 可以并行:所有位置可以同时计算,大大加速训练

这就是为什么Transformer架构能够支撑GPT、BERT等大模型的训练——它既能理解长文本中的复杂关系,又能高效地利用GPU并行计算。

注意力机制的缺点是计算量随序列长度平方增长。这就是为什么大模型都有「上下文长度限制」——太长的文本计算成本太高。

本课小结

  • RNN按顺序处理序列,但有长距离遗忘和无法并行的问题
  • 注意力机制让每个位置都能看到所有其他位置
  • 自注意力通过计算关联分数来决定关注哪些内容
  • Transformer解决了RNN的问题,成为现代LLM的基础

思考与练习

  1. 找一个复杂的长句子,分析哪些词之间有重要的关联关系
  2. 思考:为什么「上下文长度」是大模型的一个重要指标?