第 15 章 变压器 变压器和变压器
本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com
随着Ashish Vaswani 等人在 2017 年发表论文《Attention Is All You Need》, ,人工智能领域发生了翻天覆地的变化。虽然论文摘要显示的内容轻巧而简单--卷积和递归架构的演化(见本书第 4章至第 9章)--但如果你能原谅我的双关语,这项工作的影响是变革性的。它彻底改变了人工智能,从 NLP 开始。尽管作者声称这种方法非常简单,但在代码中实现这种方法却非常复杂。其核心是一种全新的 ML 架构方法:变形器(我们用大写字母来表示我们将其作为一个概念)。
在本章中,我们将从高层次探讨 Transformers 背后的理念,展示三种主要架构:编码器、解码器和编码器-解码器。请注意,我们只是在一个非常高的层次上进行探索,概述这些架构是如何工作的。要深入探讨这些内容,需要几本书,而不仅仅是一个章节!
然后,我们将探索变换器, ,我们小写表示它们是来自抱抱熊的 API 和库,旨在让使用基于变换器的模型变得简单易用。在使用变换器之前,大部分情况下你都必须阅读论文并自己摸索如何实现细节。因此,Hugging Face 的转换器库扩大了使用转换器架构创建的模型的访问范围,并已成为使用基于转换器架构创建的众多模型的事实标准。
注释
为了澄清起见,在本章的其余部分,我将把体系结构、模型和概念称为 Transformers(大写T),而把 Hugging Face 库称为 transformers(小写t),以避免混淆。
了解变换器
自本章引言中提到的原始论文发表以来,变换器领域不断发展和壮大,但其基本原理基本保持不变。在本节中,我们将对此进行探讨。
在任何地方处理 LLMs 时(不仅仅是抱抱脸),你都会听到编码器、解码器和编码器-解码器等术语。因此,我认为你最好对它们有一个高层次的了解。这些架构中的每一种都代表了不同的文本管理方法--无论是处理、分类还是生成。它们在特定场景下都有特定的优势,为了优化你的场景,最好了解它们,以便选择合适的架构。
编码器架构
纯编码器架构(如 BERT、RoBERTa)通常擅长理解文本,因为它们在处理文本时非常严格。它们具有双向性,能够同时 "看到 "整个输入序列。由于具有这种理解性质,它们对于需要深入理解和领会文本及其语义的任务特别有效。因此,它们特别适用于分类、命名实体识别以及问题解答等意义提取任务。它们的优势在于将文本转化为丰富的上下文表征,但它们并不是用来生成新文本的。
您可以在图 15-1 中看到基于编码器的架构。
图 15-1. 基于编码器的架构
让我们更详细地探讨一下这个架构。首先是标记化输入,然后将其传递给自关注层。
自我注意层
自我注意是的核心机制,它允许标记 "注意 "输入序列中的其他标记。因此,举例来说,请看句子 "我在爱尔兰上的高中,所以我必须学习如何说盖尔语"。这个句子中的最后一个词是盖尔语,它实际上是由句子前面的爱尔兰一词触发的。如果模型关注整个句子,它就能预测下一个词是盖尔语。另一方面,如果模型没有注意整个句子,那么它可能会从句子中解读出更适合 "如何说话 "的词,比如礼貌或其他形容词。
然而,自我关注机制通过考虑整个句子,可以更细致地理解这样的语境。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access