每次您向 ChatGPT 提出问题、使用 Google Translate 翻译句子或从 GitHub Copilot 获取代码建议时,您都在见证 transformers 的力量。 Transformer 架构于 2017 年推出,已成为现代人工智能领域最重要的创新。在本文中,您将准确了解 Transformer 的工作原理、它们为何取代旧方法,以及它们如何为数百万人每天使用的人工智能工具提供支持。无论您是一位有抱负的数据科学家,还是只是对人工智能革命背后的技术感到好奇,本指南都会将复杂的概念分解为清晰易懂的解释。
要理解为什么 Transformer 如此重要,需要了解它们之前发生的事情。
在 Transformer 出现之前,处理语言的主要架构是 循环神经网络 (RNN) 及其改进的变体 长短期记忆网络 (LSTM)。这些模型按顺序一次一个单词地处理文本,就像从左到右读一本书一样,无需向前跳或回头看。
这种顺序处理产生了两个主要问题。首先,它的速度慢得令人痛苦。由于每个单词都必须等待前一个单词被处理,因此在大型数据集上进行训练需要花费大量时间。其次,RNN 面临着长程依赖的困扰。如果段落开头的单词对于理解接近结尾的单词很重要,则模型在到达后面的单词时通常会“忘记”较早的上下文。想象一下在阅读小说最后一章时试图记住小说的第一句话。这是根本性的挑战。
2017 年,谷歌的一组研究人员发表了一篇题为“注意力就是你所需要的”* 的论文,它改变了一切。该论文介绍了变压器架构,它完全放弃了顺序处理。 Transformer 不是一次读取一个单词,而是同时处理句子中的所有单词,并使用一种称为“注意力”的机制来找出哪些单词彼此最相关。
这种并行处理使 Transformer 的训练速度显着加快。更重要的是,注意力机制优雅地解决了长程依赖问题。其结果是一个如此强大和灵活的架构,以至于它现在构成了几乎所有主要人工智能系统的基础,从大型语言模型到图像生成器。
关键要点: Transformer 用快速并行处理取代了缓慢、容易忘记的顺序模型,可以将任何单词与句子中的任何其他单词关联起来,无论距离如何。
注意力机制是 Transformer 的核心。要理解它,请考虑这个类比。
想象一下,你正在读一本悬疑小说,遇到这样一句话:*“侦探捡起了她留在桌子上的放大镜。”*当你读到“她”这个词时,你的大脑会自动跳回“侦探”来理解“她”指的是谁。你不会对每个词都给予同等的关注。您参加最相关的活动。
这正是注意力机制的作用。给定句子中的任何单词,它会计算对每个其他单词要给予多少“关注”。这会产生一个加权组合,其中相关单词对最终理解的贡献更大。
注意力机制依赖于三个概念:查询、键和值。可以将其想象为在图书馆中搜索。
当您带着查询走进图书馆时,您可以将其与每个键(图书标签)进行比较。您的查询与键之间的匹配度越高,您对该书的价值(内容)就越关注。一本标有“气候科学”的书受到高度关注。 《古代历史》得到的很少。
在转换器中,每个单词都会生成自己的查询、键和值向量。每个单词的查询都会与其他单词的键进行比较,以产生注意力分数。这些分数决定了每个单词的值有多少被混合到最终的表示中。其结果是对句子中的每个单词都有丰富的、上下文相关的理解。
让我们通过一个具体的例子来了解一下自注意力。考虑这句话:“猫坐在垫子上,因为它累了。”
第 1 步:生成 Q、K、V 向量。 使用学习到的权重矩阵将每个单词转换为三个向量(查询、键、值)。这些只是单词嵌入的数学预测。
步骤 2:计算注意力分数。 对于单词“it”,模型计算“it”的查询与每个其他单词的键之间的分数。 “cat”的分数会很高,因为“it”指的是猫。 “on”的分数会很低,因为它在语义上不相关。
第 3 步:应用 softmax。 原始分数通过 softmax 函数传递,将它们转换为总和为 1 的概率。这将创建一个分布:也许“cat”的权重为 0.65,“tired”的权重为 0.15,其余单词共享其余单词。
步骤 4:计算加权和。 该模型将每个单词的值向量乘以它的注意力权重,然后将它们全部相加。 “it”的结果向量现在很大程度上受到“cat”信息的影响,这正是我们需要的上下文理解。
这一过程同时针对每个单词进行,从而使模型能够一次性构建整个句子的丰富且相互关联的表示。
关键要点: 自注意力让每个单词“查看”句子中的每个其他单词,自动学习哪些单词彼此最相关。
单个注意力计算捕获单词之间的一种关系。但语言是复杂的。 “bank”这个词可能需要关注“river”的含义,“the”的语法结构,以及“flooded”的更广泛的上下文。一个注意力头无法同时捕捉所有这些关系。
解决方案是多头注意力。 Transformer 不是计算一次注意力,而是并行运行多个注意力操作,每个操作都有自己的一组学习的 Q、K、V 权重矩阵。可以将其视为组建一个专家小组来审查同一份文档。一位专家专注于语法和句法。另一个关注语义。第三种寻找共指(“它”或“他们”指代的是什么)。每个专家都会注意到不同的事情。
实际上,典型的 Transformer 可能使用 8 个、12 个甚至 128 个注意力头。在所有头独立计算结果后,它们的输出被连接并通过线性层投影以产生最终的注意力输出。
这种多视角方法是 Transformer 如此有效的关键原因。他们一次不仅仅理解语言的一个方面。它们同时捕获语法、含义、参考文献和上下文。
现在您已经了解了注意力,让我们缩小范围,看看完整的变压器是如何组装的。
编码器获取输入序列并构建它的深度、上下文化表示。它由一堆相同的层(通常是 6 或 12)组成,每个层包含两个子层:一个多头自注意力机制,后面跟着一个位置前馈网络。
编码器立即读取整个输入,允许每个单词都参与到其他单词中。当数据通过所有编码器层时,模型对捕获含义、上下文和关系的输入有了丰富的理解。
解码器一次生成一个令牌的输出序列。它还由一堆相同的层组成,但有一个重要的补充:一个关注编码器输出的交叉注意层。这就是解码器在生成新文本时“读取”原始输入的方式。
解码器还使用屏蔽自注意力,这可以防止未来的令牌在生成过程中可见。在预测下一个单词时,模型只能查看已经生成的单词,而不能查看稍后出现的单词。这确保了生成过程保持因果性和自回归性。
由于转换器同时处理所有单词,因此它们没有内置的单词顺序意义。如果没有某种方式对位置进行编码,句子“狗咬人”和“人咬狗”看起来是相同的。 位置编码 通过根据每个单词在序列中的位置向其嵌入添加唯一信号来解决此问题。原始论文使用不同频率的正弦和余弦函数,为模型可以学习解释的每个位置创建一个独特的模式。
每个变压器层还包括剩余连接(帮助梯度在训练期间流动的快捷方式)和层归一化(稳定学习过程)。每层内的前馈网络都增加了额外的处理能力,使模型能够学习复杂的非线性变换。
关键要点: 完整的转换器将自注意力、交叉注意力、位置编码和前馈网络结合到一个强大的架构中,可以理解和生成语言。
原始转换器同时使用编码器和解码器。但研究人员很快发现,仅使用一半就可以非常有效地完成特定任务。
BERT(来自 Transformers 的双向编码器表示)仅使用编码器。它同时读取两个方向的文本,建立对语言的深刻的双向理解。在训练过程中,BERT 使用一种称为“掩码语言建模”的技术:隐藏句子中的随机单词,模型学习从周围的上下文中预测它们。
这种双向方法使 BERT 在需要理解现有文本的任务中表现出色。它擅长文本分类、情感分析、搜索排名和问题回答。当谷歌在 2019 年改进其搜索引擎时,BERT 就是其背后的技术。
GPT(生成式预训练变压器)仅使用解码器。它从左到右读取文本并通过下一个标记预测进行学习:给定所有先前的单词,预测下一个单词。这个看似简单的目标,当大规模应用时,会产生可以撰写论文、回答问题、编写代码和进行对话的模型。
GPT 的自回归性质使其成为生成任务的理想选择。 ChatGPT、GitHub Copilot 和许多创意 AI 工具都是基于 GPT 风格的架构构建的。
|特色| BERT(编码器)| GPT(解码器)| |--------------------|----------------|------------------------| |方向 |双向|从左到右| |培训|掩码语言建模 |下一个代币预测 | |优势 |了解、分类|一代,对话| |示例 | Google 搜索、垃圾邮件检测 | ChatGPT,副驾驶 |
Transformer 架构带来的突破远远超出了聊天机器人的范畴。
对话式 AI。 ChatGPT、Claude 和 Gemini 都是基于 Transformer 的模型,可以参与细致入微的多轮对话、回答复杂问题并协助完成创造性和分析任务。
代码生成。 GitHub Copilot 使用在大量代码存储库上训练的转换器模型来建议整个函数、修复错误,甚至解释不熟悉的代码。世界各地的开发人员每天都使用它来加速他们的工作流程。
图像生成和理解。 **视觉变换器(ViTs)**对图像块而不是单词应用相同的注意力机制。 DALL-E 和稳定扩散等模型使用变压器组件从文本描述生成图像,模糊了语言和视觉之间的界限。
科学研究。 DeepMind 的 AlphaFold 2 使用基于 Transformer 的注意力来解决蛋白质结构预测,这是一个困扰生物学家数十年的问题。这一突破加速了药物的发现和我们对疾病的理解。
变压器的多功能性源自其基本设计。注意力不关心输入是单词、像素、氨基酸还是音符。如果数据可以表示为序列,变压器就可以从中学习。
变形金刚很强大,但也并非没有挑战。注意力机制具有二次复杂度,这意味着输入长度加倍会使所需的计算量增加四倍。处理很长的文档或高分辨率图像仍然很昂贵。
研究人员正在积极研究解决方案。 混合专家 (MoE) 模型,如 GPT-4 和 Mixtral 中使用的模型,仅激活每个输入的模型参数的子集,从而显着提高效率。 像 Mamba 这样的状态空间模型提供了一种替代方法,可以处理具有线性复杂性的序列,同时保持强大的性能。
多模式变压器代表了另一个令人兴奋的前沿领域。这些模型可以在单一架构中处理文本、图像、音频和视频,使我们更接近能够像人类一样感知和推理世界的人工智能系统。
尽管有这些创新,核心变压器架构已被证明具有显着的弹性。许多新方法建立在注意力之上,而不是取代它。了解 Transformer 不仅仅是了解当今的人工智能。这是关于了解未来人工智能的基础。
关键要点: Transformer 架构通过效率提升和多模式功能不断发展,但其注意力和并行处理的核心原则仍然是人工智能进步的核心。
了解 Transformer 是人工智能之旅的关键一步,但还有很多东西需要探索。您在这里学到的概念,包括注意力机制、编码器-解码器架构以及 BERT 和 GPT 之间的差异,构成了高级主题的基础,例如微调、人类反馈强化学习 (RLHF) 以及构建您自己的 AI 应用程序。
准备好更进一步了吗?以下是人工智能教育学院可以提供的帮助:
AI Canopy 是我们的高级深度学习程序,您将从头开始构建 Transformer 模型,在代码中实现注意力机制,并了解最先进架构背后的数学。如果本文激发了您的好奇心,AI Canopy 会将这种好奇心转化为专业知识。
AI Branches 提供自然语言处理、计算机视觉和生成人工智能等领域的专业学习轨道。选择与您的职业目标相符的道路,并向构建生产型人工智能系统的从业者学习。
探索所有程序,找到适合您技能水平的正确起点,从基础人工智能素养到高级工程。
人工智能革命建立在 Transformer 的基础上,您对这种架构的理解将使您处于领先地位。下一步是从理解转向构建。我们很乐意帮助您实现这一目标。