1.1.2 理解 Transformer 架构及其在 LLM 中的作用
Transformer 架构彻底改变了 NLP 领域,这主要是因为它能够有效地解决之前的 NLP 模型(如 RNN)存在的一个关键问题:很难处理长文本序列并记住其上下文。换句话说,RNN 在处理长文本序列时容易忘记上下文(也就是臭名昭著的“灾难性遗忘问题”),Transformer 则具备高效处理和编码上下文的能力。
这场革命的核心支柱是注意力机制,这是一个简单而又强大的机制。模型不再将文本序列中的所有词视为同等重要,而是在任务的每个步骤中关注最相关的词。交叉注意力和自注意力是基于注意力机制的两个架构模块,它们经常出现在 LLM 中。Transformer 架构广泛使用了交叉注意力模块和自注意力模块。
交叉注意力有助于模型确定输入文本的不同部分与输出文本中下一个词的相关性。它就像一盏聚光灯,照亮输入文本中的词或短语,并突出显示预测下一个词所需的相关信息,同时忽略不重要的细节。
为了说明这一点,让我们以一个简单的句子翻译任务为例。假设输入文本是这样一个英语句子:Alice enjoyed the sunny weather in Brussels(Alice 很享受布鲁塞尔阳光明媚的天气)。如果目标语言是法语,那么输出文本应该是:Alice a profité du temps ensoleillé à Bruxelles。在这个例子中,让我们专注于生成法语单词 ensoleillé,它对应原句中的 sunny。对于这个预测任务,交叉注意力模块会更关注英语单词 sunny 和 weather,因为它们都与 ensoleillé 相关。通过关注这两个单词,交叉注意力模块有助于模型为句子的这一部分生成准确的翻译结果,如图 1-2 所示。
图 1-2:交叉注意力模块使模型关注输入文本(英语句子)中的关键部分,以预测输出文本(法语句子)中的下一个单词
自注意力机制是指模型能够关注其输入文本的不同部分。具体到 NLP 领域,自注意力机制使模型能够评估句子中的每个词相比于其他词的重要性。这使得模型能够更好地理解各词之间的关系,并根据输入文本中的多个词构建新概念。
来看一个更具体的例子。考虑以下句子:Alice received praise from her colleagues(Alice 受到同事的赞扬)。假设模型试图理解 her 这个单词的意思。自注意力机制给句子中的每个单词分配不同的权重,突出在这个上下文中与 her 相关的单词。在本例中,自注意力机制会更关注 Alice 和 colleagues 这两个单词。如前所述,自注意力机制帮助模型根据这些单词构建新概念。在本例中,可能出现的一个新概念是 Alice's colleagues,如图 1-3 所示。
图 1-3:自注意力机制使新概念 Alice's colleagues 得以出现
与 RNN 不同,Transformer 架构具有易于并行化的优势。这意味着 Transformer 架构可以同时处理输入文本的多个部分,而无须顺序处理。这样做可以提高计算速度和训练速度,因为模型的不同部分可以并行工作,而无须等待前一步骤完成。基于 Transformer 架构的模型所具备的并行处理能力与图形处理单元(graphics processing unit,GPU)的架构完美契合,后者专用于同时处理多个计算任务。由于高度的并行性和强大的计算能力,GPU 非常适合用于训练和运行基于 Transformer 架构的模型。硬件上的这一进展使数据科学家能够在大型数据集上训练模型,从而为开发 LLM 铺平了道路。
Transformer 架构由来自谷歌公司的 Ashish Vaswani 等人在 2017 年的论文“Attention Is All You Need”中提出,最初用于序列到序列的任务,如机器翻译任务。标准的 Transformer 架构有两个主要组件:编码器和解码器,两者都十分依赖注意力机制。编码器的任务是处理输入文本,识别有价值的特征,并生成有意义的文本表示,称为嵌入(embedding)。解码器使用这个嵌入来生成一个输出,比如翻译结果或摘要文本。这个输出有效地解释了编码信息。
生成式预训练 Transformer(Generative Pre-trained Transformer,GPT)是一类基于 Transformer 架构的模型,专门利用原始架构中的解码器部分。在 GPT 中,不存在编码器,因此无须通过交叉注意力机制来整合编码器产生的嵌入。也就是说,GPT 仅依赖解码器内部的自注意力机制来生成上下文感知的表示和预测结果。请注意,BERT 等其他一些众所周知的模型基于编码器部分,但本书不涉及这类模型。图 1-4 展示了 NLP 技术的演变历程。
图 1-4:NLP 技术从 n-gram 到 LLM 的演变