搜索
首页科技周边人工智能​什么是Transformer机器学习模型?

​什么是Transformer机器学习模型?

Apr 08, 2023 pm 06:31 PM
机器学习模型codex

译者 | 李睿

审校 | 孙淑娟

​近年来, Transformer 机器学习模型已经成为深度学习和深度神经网络技术进步的主要亮点之一。它主要用于自然语言处理中的高级应用。谷歌正在使用它来增强其搜索引擎结果。OpenAI 使用 Transformer 创建了著名的 GPT-2和 GPT-3模型。

图片

自从2017年首次亮相以来,Transformer 架构不断发展并扩展到多种不同的变体,从语言任务扩展到其他领域。它们已被用于时间序列预测。它们是 DeepMind 的蛋白质结构预测模型 AlphaFold 背后的关键创新。OpenAI 的源代码生成模型 Codex 也基于 Transformer。Transformer 最近也进入了计算机视觉领域,在许多复杂任务中它们正在慢慢取代卷积神经网络(CNN)。

研究人员仍在探索改进 Transformer 并将其用于新应用的方法。以下是关于 Transformer 令人兴奋的原因以及它们如何工作的简要解释。

1.采用神经网络处理序列数据

图片

传统的前馈神经网络并非旨在跟踪序列数据并将每个输入映射到输出。它适用于诸如图像分类之类的任务,但在诸如文本之类的序列数据上却失败了。处理文本的机器学习模型不仅必须处理每个单词,还必须考虑单词如何按顺序排列并相互关联。而一个单词的含义可能会随着句子中出现在它们之前和之后的其他单词而改变。

在 Transformer 出现之前,递归神经网络(RNN)是自然语言处理的首选解决方案。当提供一个单词序列时,递归神经网络(RNN)将处理第一个单词,并将结果反馈到处理下一个单词的层。这使它能够跟踪整个句子,而不是单独处理每个单词。

递归神经网络(RNN)的缺点限制了它们的用处。首先,它们的处理速度非常缓慢。由于它们必须按顺序处理数据,因此无法在训练和推理中利用并行计算硬件和图形处理单元(GPU)。其次,它们无法处理长序列的文本。随着递归神经网络(RNN)深入到文本摘录中,句子开头几个单词起到的效果逐渐减弱。当两个链接的词在文本中相距很远时,这个被称为“梯度消失”的问题就会出现。第三,它们只捕捉到一个单词和它之前的单词之间的关系。实际上,单词的含义取决于它们之前和之后的单词。

长短时记忆(LSTM)网络是递归神经网络(RNN)的继任者,能够在一定程度上解决梯度消失问题,并且能够处理更大的文本序列。但是长短时记忆(LSTM)的训练速度甚至比递归神经网络(RNN)还要慢,并且仍然无法充分利用并行计算。他们仍然依赖于文本序列的串行处理。

2017年发表的一篇名为《注意就是所需要的一切》的论文介绍了 Transformer,指出 Transformer
做出了两个关键贡献:首先,它们使并行处理整个序列成为可能,从而可以将顺序深度学习模型的速度和容量扩展到前所未有的速度。其次,它们引入了“注意机制”,可以在正向和反向的非常长的文本序列中跟踪单词之间的关系。

图片

在讨论 Transformer 模型的工作原理之前,有必要讨论一下序列神经网络解决的问题类型。

  • “向量到序列”模型采用单个输入(例如图像)并生成数据序列(例如描述)。
  • “序列到向量”模型将序列数据作为输入,例如产品评论或社交媒体帖子,并输出单个值,例如情绪分数。
  • “序列到序列”模型将一个序列作为输入,例如一个英文句子,并输出另一个序列,例如该句子的法语翻译。

尽管存在差异,但所有这些类型的模型都有一个共同点——他们学习表达。神经网络的工作是将一种类型的数据转换为另一种类型的数据。在训练期间,神经网络的隐藏层(位于输入和输出之间的层)以最能代表输入数据类型特征的方式调整其参数,并将其映射到输出。最初的 Transformer 被设计为用于机器翻译的序列到序列(seq2seq)模型(当然,序列到序列模型不限于翻译任务)。它由一个编码器模块组成,该模块将来自源语言的输入字符串压缩为一个向量,该向量表示单词及其相互之间的关系。解码器模块将编码向量转换为目标语言的文本字符串。

2.标记和嵌入 

图片

输入文本必须经过处理并转换为统一格式,然后才能输入到 Transformer。首先,文本通过“标记器”,将其分解为可以单独处理的字符块。标记化算法可以取决于应用程序。在大多数情况下,每个单词和标点符号大致算作一个标记。一些后缀和前缀算作单独的标记(例如,“ize”、“ly”和“pre”)。标记器生成一个数字列表,表示输入文本的标记ID。

然后将标记转换为“单词嵌入”。单词嵌入是一种试图在多维空间中捕捉单词价值的向量。例如,“猫”和“狗”这两个词在某些维度上可能具有相似的值,因为它们都用于关于动物和宠物的句子中。然而,在区分猫科动物和犬科动物的其他维度上,“猫”比“狼”更接近“狮子”。同样,“巴黎”和“伦敦”可能彼此更加接近,因为它们都是城市。然而,“伦敦”更接近于“英格兰”,“巴黎”更接近于“法国”,这是因为在一个国家的区分维度上。而单词嵌入通常有数百个维度。

单词嵌入是通过嵌入模型创建的,这些模型与 Transformer 分开训练。有几种用于语言任务的预训练嵌入模型。

3.注意层   

图片

一旦句子被转换成一个单词嵌入列表,它就会被输入到 Transformer 的编码器模块中。与递归神经网络(RNN)和长短时记忆(LSTM)模型不同,Transformer 一次不会接收一个输入。它可以接收整个句子的嵌入值,并并行处理它们。这使得 Transformer 比它们的前辈更具有计算效率,并且还使它们能够在正向和反向序列中检查文本的场景。

为了保持句子中单词的顺序,Transformer 应用“位置编码”,这基本上意味着它修改每个嵌入向量的值,以表示其在文本中的位置。

接下来,输入被传递到第一个编码器块,它通过“注意层”对其进行处理。注意层试图捕捉句子中单词之间的关系。例如,考虑 “一只大黑猫碰掉一个瓶子之后横穿马路”(The big black cat crossed the road after it dropped a bottle on its side)这个句子。在这里,模型必须将“it”与“cat”相关联,将“its”与“bottle”相关联。因此,它应该建立其他关联,例如“big”和“cat”或“crossed”和“cat”。否则,注意层接收表示单个单词值的单词嵌入列表,并生成表示单个单词及其相互关系的向量列表。注意层包含多个“attention heads” (注意头),每个“attention heads”都可以捕获单词之间的不同类型的关系。

注意层的输出被馈送到前馈神经网络,该网络将其转换为向量表示,并将其发送到下一个注意层。Transformers
包含几个注意块和前馈层,以逐渐捕捉更复杂的关系。

解码器模块的任务是将编码器的注意向量转换为输出数据(例如,输入文本的翻译版本)。在训练阶段,解码器可以访问编码器产生的注意向量和预期的结果(例如,翻译的字符串)。

解码器使用相同的标记化、单词嵌入和注意机制来处理预期结果并创建注意向量。然后,它在编码器模块中传递该注意向量和注意层,从而在输入和输出值之间建立关系。在翻译应用程序中,这是源语言和目标语言中的单词相互映射的部分。与编码器模块一样,解码器注意向量通过前馈层传递。然后其结果被映射到一个非常大的向量池,即目标数据的大小(在翻译的情况下,这可以涉及数万个单词)。

4.训练Transformer

在训练期间,Transformer 提供了非常大的配对示例语料库(例如,英语句子及其相应的法语翻译)。编码器模块接收并处理完整的输入字符串。然而,解码器接收到输出字符串的掩码版本(一次一个单词),并尝试建立编码的注意向量和预期结果之间的映射。编码器尝试预测下一个单词,并根据其输出与预期结果之间的差异进行更正。这种反馈使转换器能够修改编码器和解码器的参数,并逐渐在输入和输出语言之间创建正确的映射。

Transformer 拥有的训练数据和参数越多,它就越有能力在较长文本序列中保持连贯性和一致性。

5.Transformer的变化

 在以上研究的机器翻译示例中,Transformer 的编码器模块学习英语单词和句子之间的关系,而解码器学习英语和法语之间的映射。

但并非所有 Transformer 应用都需要编码器和解码器模块。例如,大型语言模型的GPT系列使用解码器模块堆栈来生成文本。BERT是谷歌研究人员开发的 Transformer 模型的另一种变体,而它只使用编码器模块。

其中一些架构的优点是它们可以通过自我监督学习或无监督方法进行训练。例如,BERT 通过获取大量未标记文本的语料库,可以屏蔽其中的一部分,并尝试预测缺失的部分来进行大部分训练。然后,它根据其预测接近或远离实际数据的程度调整其参数。通过不断地重复这个过程,BERT 捕捉到了不同场景中不同单词之间的关系。在这个预训练阶段之后,BERT 可以通过在少量标记示例上进行训练来针对下游任务进行微调,例如问答、文本摘要或情感分析。使用无监督和自我监督的预训练可以减少注释训练数据所需的工作量。

关于 Transformer 和他们正在解锁的新应用程序还有更多,这超出了本文的范围。研究人员如今仍在寻找从Transformer中获得更多帮助的方法。

Transformer 还引发了关于语言理解和通用人工智能的讨论。显而易见的是,Transformer 与其他神经网络一样是一种统计模型,能够以巧妙而复杂的方式捕捉数据中的规律性。虽然它们不像人类那样“理解”语言,但是其发展仍然令人兴奋并且可以提供更多新事物。

原文链接:https://bdtechtalks.com/2022/05/02/what-is-the-transformer/

图片

以上是​什么是Transformer机器学习模型?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:51CTO.COM。如有侵权,请联系admin@php.cn删除
AI内部部署的隐藏危险:治理差距和灾难性风险AI内部部署的隐藏危险:治理差距和灾难性风险Apr 28, 2025 am 11:12 AM

Apollo Research的一份新报告显示,先进的AI系统的不受检查的内部部署构成了重大风险。 在大型人工智能公司中缺乏监督,普遍存在,允许潜在的灾难性结果

构建AI测谎仪构建AI测谎仪Apr 28, 2025 am 11:11 AM

传统测谎仪已经过时了。依靠腕带连接的指针,打印出受试者生命体征和身体反应的测谎仪,在识破谎言方面并不精确。这就是为什么测谎结果通常不被法庭采纳的原因,尽管它曾导致许多无辜者入狱。 相比之下,人工智能是一个强大的数据引擎,其工作原理是全方位观察。这意味着科学家可以通过多种途径将人工智能应用于寻求真相的应用中。 一种方法是像测谎仪一样分析被审问者的生命体征反应,但采用更详细、更精确的比较分析。 另一种方法是利用语言标记来分析人们实际所说的话,并运用逻辑和推理。 俗话说,一个谎言会滋生另一个谎言,最终

AI是否已清除航空航天行业的起飞?AI是否已清除航空航天行业的起飞?Apr 28, 2025 am 11:10 AM

航空航天业是创新的先驱,它利用AI应对其最复杂的挑战。 现代航空的越来越复杂性需要AI的自动化和实时智能功能,以提高安全性,降低操作

观看北京的春季机器人比赛观看北京的春季机器人比赛Apr 28, 2025 am 11:09 AM

机器人技术的飞速发展为我们带来了一个引人入胜的案例研究。 来自Noetix的N2机器人重达40多磅,身高3英尺,据说可以后空翻。Unitree公司推出的G1机器人重量约为N2的两倍,身高约4英尺。比赛中还有许多体型更小的类人机器人参赛,甚至还有一款由风扇驱动前进的机器人。 数据解读 这场半程马拉松吸引了超过12,000名观众,但只有21台类人机器人参赛。尽管政府指出参赛机器人赛前进行了“强化训练”,但并非所有机器人均完成了全程比赛。 冠军——由北京类人机器人创新中心研发的Tiangong Ult

镜子陷阱:人工智能伦理和人类想象力的崩溃镜子陷阱:人工智能伦理和人类想象力的崩溃Apr 28, 2025 am 11:08 AM

人工智能以目前的形式并不是真正智能的。它擅长模仿和完善现有数据。 我们不是在创造人工智能,而是人工推断 - 处理信息的机器,而人类则

新的Google泄漏揭示了方便的Google照片功能更新新的Google泄漏揭示了方便的Google照片功能更新Apr 28, 2025 am 11:07 AM

一份报告发现,在谷歌相册Android版7.26版本的代码中隐藏了一个更新的界面,每次查看照片时,都会在屏幕底部显示一行新检测到的面孔缩略图。 新的面部缩略图缺少姓名标签,所以我怀疑您需要单独点击它们才能查看有关每个检测到的人员的更多信息。就目前而言,此功能除了谷歌相册已在您的图像中找到这些人之外,不提供任何其他信息。 此功能尚未上线,因此我们不知道谷歌将如何准确地使用它。谷歌可以使用缩略图来加快查找所选人员的更多照片的速度,或者可能用于其他目的,例如选择要编辑的个人。我们拭目以待。 就目前而言

加固芬特的指南 - 分析Vidhya加固芬特的指南 - 分析VidhyaApr 28, 2025 am 09:30 AM

增强者通过教授模型根据人类反馈进行调整来震撼AI的开发。它将监督的学习基金会与基于奖励的更新融合在一起,使其更安全,更准确,真正地帮助

让我们跳舞:结构化运动以微调我们的人类神经网让我们跳舞:结构化运动以微调我们的人类神经网Apr 27, 2025 am 11:09 AM

科学家已经广泛研究了人类和更简单的神经网络(如秀丽隐杆线虫中的神经网络),以了解其功能。 但是,出现了一个关键问题:我们如何使自己的神经网络与新颖的AI一起有效地工作

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

安全考试浏览器

安全考试浏览器

Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。