什么是转换器模型?

年轻大学生在读书

作者

Cole Stryker

Staff Editor, AI Models

IBM Think

Dave Bergmann

Senior Staff Writer, AI Models

IBM Think

什么是转换器模型?

转换器模型是一种神经网络架构,擅长处理顺序数据,最知名的是与大型语言模型 (LLM) 的关联。转换器模型在人工智能 (AI) 的其他领域(例如计算机视觉、语音识别和时间序列预测)也展现出卓越的性能。

Vaswani 等人在 2017 年发表的开创性论文《Attention is All You Need》中首次描述了转换器架构,该论文现在被认为是深度学习的分水岭。

基于转换器的模型最初是作为用于机器翻译的基于递归神经网络 (RNN) 的序列到序列模型的演进而推出的,此后几乎在每个机器学习 (ML) 学科中都取得了前沿进步。

尽管转换器模型具有多功能性,但在自然语言处理 (NLP) 用例(如聊天机器人文本生成摘要、问题解答和情感分析)的背景下,转换器模型被讨论得最频繁。

Google 于 2019 年推出的 BERT(又名“基于转换器的双向编码器表示”)编码器-解码器模型堪称转换器技术发展的重要里程碑,至今仍是大多数词嵌入应用程序(从现代矢量数据库到 Google 搜索)的基石。

仅自回归解码器的 LLM,例如促成 OpenAI ChatGPT 发布的 GPT-3(生成式预训练转换器的缩写)模型,催化了生成式 AI 的现代纪元。

转换器模型能够精细地辨别数据序列的每个部分是如何影响其他部分并与之相关联的,这也使它们具有许多多模式用途。

例如,视觉转换器 (ViT) 较之卷积神经网络 (CNN),在图像分割对象检测 和相关任务中的性能更优。转换器架构还为许多扩散模型(通常用于图像生成、多模态文本转语音 (TTS) 和视觉语言模型 (VLM))提供支持。

小球在轨道上滚动的三维设计

最新的 AI 新闻 + 洞察分析

在每周的 Think 时事通讯中,发现专家精选的有关 AI、云等的洞察分析和新闻。 

转换器模型为何重要?

转换器模型的核心功能是其自注意力机制,转换器模型从中获得了检测输入序列各部分之间关系(或依赖关系)的强大能力。与之前的 RNN 和 CNN 架构不同,转换器架构仅使用注意力层和标准前馈层。

自注意力机制的优势——特别是转换器模型采用的多头注意力技术,使其性能超越了以往最先进的 RNN 和 CNN。

在引入转换器模型之前,大多数 NLP 任务依赖于循环神经网络 (RNN)。RNN 处理顺序数据的方式本质上是序列化的:它们按特定顺序采集输入序列元素。

这会限制 RNN 捕获长距离依赖关系的能力,导致其只能有效地处理短文本序列。
长短期记忆网络 (LSTM) 的引入虽能在一定程度上弥补这一缺陷,但它仍然是 RNN 的根本性“短板”。

相反,注意力机制可以同时检查整个序列,并决定如何以及何时关注该序列的特定时间步长。

除了大大提高理解长距离依赖关系的能力外,转换器的这一特性还能实现并行化:一次执行多个计算步骤,而不是以序列化的方式进行。

非常适合并行性使转换器模型能够在训练和推理过程中充分利用 GPU 提供的功能和速度。这种可能性反过来又为通过自监督学习在空前庞大的数据集上训练转换器模型提供了机会。

特别是对于视觉数据,转换器能带来优于卷积神经网络的一些优势。CNN 本质上是本地的,使用卷积一次处理一个较小的输入数据子集。

因此,CNN 也难以辨别长距离依赖关系,例如彼此不相邻的单词(在文本中)或像素(在图像中)之间的相关性。注意力机制则没有这个限制。

Mixture of Experts | 8 月 28 日,第 70 集

解码 AI:每周新闻摘要

加入我们世界级的专家小组——工程师、研究人员、产品负责人等将为您甄别 AI 领域的真知灼见,带来最新的 AI 资讯与深度解析。

什么是自注意力?

掌握注意力的数学概念或自注意力机制,对于理解转换器模型在许多领域的成功应用至关重要。注意力机制本质上是一种算法,旨在确定 AI 模型在特定时刻应“关注”数据序列的哪些部分。

考虑一种语言模型,它可以解释英语文本“on Friday, the judge issued a sentence”。 "

  • 前面的单词“the ”表明“judge ”充当名词(如主持法律审判的人),而不是动词,意思是评价或形成意见
  • 单词“judge ”表明“sentence ”的语境可能指的是法律处罚,而不是语法上的“句子”。
  • 单词“issued ”还意味着“sentence ”指的是法律概念,而不是语法概念。
  • 因此,在解释单词“sentence ,”模型应密切关注“judge 和“issued ”。此外,还应注意单词“the 。”它可以或多或少地忽略其他单词。

自注意力如何工作?

广义上讲,转换器模型的注意力层通过 4 个步骤来评估和使用数据序列每个部分的特定上下文:

  1. “读取”原始数据序列并将其转换为向量嵌入的模型,其中序列内的每个元素都由各自的特征向量表示,并以数字方式反映语义等特性。

  2. 该模型确定每个向量与其他向量之间的相似性、相关性和其他依赖关系(或缺失情况)。在大多数转换器模型中,一个向量相对于另一个向量的重要性可通过计算每个向量之间的点积来确定。如果向量高度对齐,则将其相乘会产生一个较大值。如果没有对齐,则其点积会产生较小值或负值。

  3. 这些“对齐分数”被转换成注意力权重。这是通过使用对齐分数作为 softmax 激活函数的输入来实现的,该函数将所有值归一化到 0-1 之间的范围,使它们之和为 1。例如,在“向量 A”和“向量 B”之间分配 0 的注意力权重,意味着在对向量 A 进行预测时应忽略向量 B。将向量 B 的注意力权重分配为 1,意味着在对向量 A 进行决策时,它应得到模型 100% 的注意力。

  4. 这些注意力权重用于强调或削弱特定输入元素在特定时间的影响。换句话说,注意力权重帮助转换器模型在特定时刻关注或忽略特定信息。

在训练之前,转换器模型还不“知道”如何生成最佳向量嵌入对齐分数。在训练期间,该模型对从训练数据中提取的数百万个示例进行预测,并且损失函数会对每个预测的误差进行量化。

通过进行预测,然后通过反向传播算法梯度下降更新模型权重的迭代循环,该模型“学习”生成向量嵌入、对齐分数和注意力权重,从而实现准确的输出。

转换器模型如何运作?

转换器模型(例如关系数据库等)为数据序列的每个部分生成查询、键值向量,并使用它们通过一系列矩阵乘法来计算注意力权重。

关系数据库旨在简化相关数据的存储和检索:它们为每条数据分配一个唯一标识符(“键”),每个都与相应的相关联。“注意力就是一切”论文运用该概念框架来处理文本序列中每个词元之间的关系。

  • 查询向量表示既定词元正在“寻找”的信息。换句话说,一个词元的查询向量可用于计算其他词元如何影响其在上下文中的含义、变位或内涵。
  • 键向量代表每个词元包含的信息。查询和键之间的对齐用于计算注意力权重,以反映二者在该文本序列上下文中的相关程度。
  • (或值向量)通过各自的注意力权重缩放后,“返回”来自每个键向量的信息。与查询高度对齐的键的贡献权重较高;与查询无关的键的贡献权重接近零。

对于 LLM 来说,模型的“数据库”是从训练数据中的文本样本中学习到的词元词汇表。它的注意力机制使用来自这个“数据库”的信息来理解语言的上下文。

词元化和输入嵌入

虽然字符(字母、数字或标点符号)是我们人类用来表示语言的基本单位,但 AI 模型使用的最小语言单位是词元 。每个词元都分配有一个 ID 号,这些 ID 号(而非单词甚至词元本身)就是 LLM 浏览其词汇“数据库”的途径。这种语言的词元化大大降低了处理文本所需的算力。

为了生成查询和键向量以输入到转换器的注意层,该模型需要为每个词元提供一个初始的、无上下文的嵌入。这些初始词元嵌入可以在训练过程中学习,也可以从预训练的词嵌入模型中获取。

位置编码

单词的顺序和位置会显著影响其语义。虽然 RNN 的序列化特性本质上保留了有关每个词元位置的信息,但转换器模型必须明确添加位置信息以供注意力机制考量。

使用位置编码时,模型会在词元进入注意力机制之前,根据每个词元的相对位置为其嵌入添加一个值向量。这两个词元越接近,它们的位置向量就越相似,因此,通过添加位置信息,它们的对齐分数就会越高。因此,该模型学会了更加关注附近的词元。

生成查询、键和值向量

添加位置信息后,每个更新的词元嵌入都会用来生成三个新向量。这些查询、键向量是通过将原始词元嵌入传递到第一个注意力层之前的三个并行前馈神经网络层中的每一个层来生成的。该线性层的每个并行子集都有一个独特的权重矩阵,通过对大量文本数据集进行自监督预训练来学习。

  • 嵌入值乘以权重矩阵 WQ,得出查询向量 (Q),其具有 dk 维数
  • 嵌入值乘以权重矩阵 WK,得出键向量 (K),其维度同样为 dk
  • 嵌入值乘以权重矩阵 WV,得出键向量 (K),其维度为 dk

计算自注意力

转换器注意力机制的主要功能是为每个词元的查询向量与序列中所有其他词元的键向量形成的配对分配准确的注意力权重。当实现时,您可以将每一个词X视为有一个对应的注意力权重向量,该向量中的每个元素都表示其他词元应该对它造成的影响程度。

  • 现在,每个其他词元的值向量都要乘以其各自的注意力权重。
  • 这些注意力加权的值向量都被加在一起。生成的向量表示提供给词元的聚合上下文信息 X由序列中的所有其他词元组成。
  • 最后,将每个词元的注意力加权变化的结果向量添加到词元 X的原始位置后编码向量嵌入。

本质上, X的向量嵌入已更新,以更好地反映序列中其他词元提供的上下文。

多头注意力

为了捕捉词元可能相互关联的多种多样的方式,转换器模型跨多个注意力块实现了多头注意力

在被馈送到第一个前馈层之前,每个原始输入词元嵌入被拆分为 h 个大小均匀的子集。每一个嵌入片段都被输入到 h 个由 Q、KV 权重组成的并行矩阵之一,各矩阵分别被称为查询头、键头值头。然后,每个并行的查询、键和值头三元组输出的向量会被输入下一个注意力层的相应子集,称为注意力头

在每个注意力块的最后一层,这 h 个并行回路的输出最终会重新连接在一起,然后再发送到下一个前馈层。在实践中,模型训练导致每个回路学习不同的权重,这些权重捕获语义含义的不同方面。

残差连接和层归一化

在某些情况下,通过注意力块传递上下文更新的嵌入输出可能会导致原始序列信息的不可接受的损失。

为了解决这个问题,转换器模型通常会平衡注意力机制提供的上下文信息和每个词元的原始语义。在注意力机制更新的词元嵌入子集全部重新拼接后,更新后的向量会与词元的原始(位置编码)向量嵌入相加。原始词元嵌入由该层与网络前层之间的残差连接提供。

将生成的向量馈送至另一个线性前馈层,并将其规范化为恒定大小,然后再传递到下一个注意力块。这些措施相辅相成,有助于维持训练的稳定性,并确保文本的原始含义不会随着数据向神经网络深度迁移而丢失。

生成输出

最终,模型有足够的上下文信息来告知其最终输出。输出层的性质和功能取决于转换器模型旨在服务的具体任务。

在自回归 LLM 中,最后一层使用 softmax 函数来确定下一个单词与其词汇“数据库”中各个词元相匹配的概率。根据特定的采样超参数,该模型会使用这些概率来确定输出序列的下一个词元。

自然语言处理 (NLP) 中的转换器模型

转换器模型通常与 NLP 关联,最初是为机器翻译用例而开发的。值得一提的是,转换器架构催生了大语言模型 (LLM),进而促成了生成式 AI 的诞生。

公众最熟悉的大多数 LLM,从 OpenAI 的 GPT 系列和 Anthropic 的 Claude 模型等闭源模型,到包括 Meta Llama 或IBM® Granite® 在内的开源模型,都是仅自回归解码器的 LLM

自回归 LLM 专为文本生成而设计,也可自然扩展到摘要和问题解答等邻近任务。它们通过自我监督学习进行训练,即向模型提供文本段落的第一个单词,然后让其反复预测下一个单词,直到序列结束。

自注意力机制提供的信息使模型能够从输入序列中提取上下文,并维持其输出的连贯性和连续性。

编码器-解码器掩码语言模型 (MLM)——例如 BERT 及其诸多衍生模型,均代表基于转换器的 LLM 的另一主要演进分支。在训练中,MLM 会接收一个部分词元被掩码(隐藏)的文本样本,并负责补全缺失信息。

虽然这种训练方法对于文本生成效果欠佳,但它能帮助 MLM 出色地完成需要强大上下文信息支撑的任务,例如翻译、文本分类和学习嵌入。

其他领域的转换器模型

尽管转换器模型最初是为自然语言用例设计的,并且依然与自然语言用例最为相关,但它们几乎可用于任何涉及顺序数据的情况。这促使基于转换器的模型在其他领域得到发展,从微调 LLM 到多模态系统,再到专用的时间序列预测模型和用于计算机视觉的 ViT。

某些数据模态比其他数据模态天然地更适合转换器友好的序列表示。就时间序列而言,音频和视频数据本质上是连续的,而图像数据则不然。尽管如此,VIT 和其他基于注意力的模型已在许多计算机视觉任务中取得了最先进的结果,包括图像字幕生成、对象检测图像分割和视觉问答。

要将转换器模型用于传统上不被视作“序列”的数据,需通过概念性变通将其表示为序列。例如,为了利用注意力机制来理解视觉数据,ViT 使用图像块嵌入将图像数据解释为序列。

  • 首先,图像被分割成一个图块阵列。例如,224x224 像素的图像可细分为 256 个 14x14 像素的图块,从而大大减少处理图像所需的计算步骤。
  • 接下来,线性投影层将每个图块映射到向量嵌入
  • 每个图像块嵌入都会添加位置信息,类似于上文所述的位置编码。
  • 这些图块嵌入现在本质上可以作为词元嵌入序列发挥作用,从而允许通过注意力机制来解释图像。
相关解决方案
IBM watsonx.ai

使用面向 AI 构建器的新一代企业级开发平台 IBM watsonx.ai,可以训练、验证、调整和部署生成式 AI、基础模型和机器学习功能。使用一小部分数据,即可在很短的时间内构建 AI 应用程序。

了解 watsonx.ai
人工智能 (AI) 解决方案

借助 IBM 业界领先的人工智能专业知识和解决方案组合,让人工智能在您的业务中发挥作用。

深入了解 AI 解决方案
AI 咨询与服务

通过增加 AI 重塑关键工作流程和运营,最大限度提升体验、实时决策和商业价值。

深入了解人工智能服务
采取后续步骤

一站式访问跨越 AI 开发生命周期的功能。利用用户友好型界面、工作流并访问行业标准 API 和 SDK,生成功能强大的 AI 解决方案。

深入了解 watsonx.ai 预约实时演示
脚注

1 Google BERT 全球正式上线(ibm.com 外部链接),Search Engine Journal,2019 年 12 月 9 日