Transformer:让ChatGPT站在肩膀上的巨人?

编者按:ChatGPT以近乎狂热之势席卷了全网。在沉浸于“ChatGPT潮”的同时,让我们也来深入了解一下它和基石技术 - 大模型 Transformer吧。

Dale Markowitz的这篇文章为我们深入浅出地介绍了Transformer的重要性、创新性、应用领域等。

以下是译文,Enjoy!

作者 |  Dale Markowitz

编译 | 岳扬

你知听说过这句话吗?当你拥有一把锤子时,所有东西看起来都像钉子。那么,在机器学习中,我们似乎真的发现了一个神奇的锤子,对于它来说,所有的东西都是钉子,它们被称为Transformers。

Transformers是可以被设计用来翻译文本、写诗和文章的模型,甚至可以生成计算机代码。很多备受瞩目的模型就是基于Transfomer, 如风靡全网的ChatGPT, AlphaFold 2(这个模型可以根据蛋白质的基因序列预测其结构),以及其他强大的自然语言处理(NLP)模型,如GPT-3、BERT、T5、Switch、Meena等等。

如果你想在机器学习,特别是NLP方面跟上时代的步伐,那么至少要对Transformers有一定的了解。因此,在这篇文章中,我们将讨论Transformers是什么,它们如何工作,以及它们为什么如此有影响力。

Transformers是神经网络架构的一种类型。简而言之,神经网络是一种非常有效的模型类型,用于分析图像、视频、音频和文本等复杂数据类型。但有不同类型的神经网络为不同类型的数据进行优化。例如,对于分析图像,我们通常会使用卷积神经网络[1]或 “CNNs”。其实可以说它们模仿了人脑处理视觉信息的方式。

卷积神经网络,由Wikicommons的Renanar2提供

而自2012年[2]左右开始,我们在用CNN解决视觉问题方面已经相当成功,比如识别照片中的物体、识别人脸和手写数字。但在很长一段时间里,没有任何类似的好方法存在于语言任务(翻译、文本总结、文本生成、命名实体识别等)的处理中。这是不幸的,因为语言是我们人类交流的主要方式。

在2017年出现Transformers之前,我们使用深度学习来理解文本的方式是使用一种叫做循环神经网络或RNN的模型:

       

RNN的图片,由Wikimedia提供

比方说,你想把一个英语句子翻译成法语。RNN会把英语句子作为输入,一次处理一个词,然后按顺序输出它们的法语对应词。这里的关键是“按顺序”。在语言中,单词的顺序很重要,不能随便更改。

"Jane went looking for trouble."

上面这句话与下面下面这句话的意思完全不同。

"Trouble went looking for Jane."

因此,任何要理解语言的模型都必须捕捉到单词的顺序,而递归神经网络(recurrent neural networks)通过一次处理一个单词的方法来做到这一点。

但是,RNN也存在很多问题。首先,它们在处理大型文本序列时很吃力,比如长段文本或文章。当到了一个段落的结尾时,它们会忘记开头发生了什么。例如,一个基于RNN的翻译模型可能难以记住一个长段落的主题。

更糟的是,RNNs很难训练。它们很容易受到所谓的梯度消失/膨胀问题[3]影响(有时你只需重新开始训练,然后祈祷)。更麻烦的是,由于它们是按顺序处理单词,RNNs很难达到并行化。这意味着你不能通过使用更多的GPU来加快训练,这反过来意味着你不能在所有的数据上训练它们。

01 进入Transformers的世界

Transformers是由谷歌和多伦多大学的研究人员在2017年开发的,最初是为了做翻译。但与递归神经网络(RNN)不同,Transformers可以非常有效地进行并行化操作。这意味着,如果有合适的硬件条件,你可以训练一些真正的大模型。

多大的大模型?

非常大。

如果要说一件关于 Transformers 的事情,那应该会是:将一个具有良好扩展性的模型与一个巨大的数据集相结合,其结果可能会让你大吃一惊。

02 Transformers是如何工作的?

原始论文中的Transformer示意图

虽然原始论文[4]的图表有点吓人,但Transformer背后的创新可以归结为三个主要概念。

  • Positional Encodings位置编码

  • Attention注意力

  • Self-Attention自注意力

2.1 Positional Encodings位置编码

让我们从第一个——位置编码开始介绍。比方说,我们正试图将文本从英语翻译成法语。RNNs,即用AI进行文本翻译的老方法,通过按顺序处理单词来理解词序。但这也是使它们难以并行化的原因。

Transformers通过一种叫做位置编码的创新方法绕过了这个障碍。这个想法是把你的输入序列中的所有单词(在这个例子中是一个英语句子)用它的顺序给每个单词附加一个数字。因此,要给你的网络提供一个序列,如:

[("Dale", 1), ("says", 2), ("hello", 3), ("world", 4)]

从概念上讲,你可以认为这是把理解词序的负担从神经网络的结构转移到数据本身。

起初,在Transformers对任何数据进行训练之前,它不知道如何解释这些位置编码。但随着模型看到越来越多的句子及其编码的例子,它学会了如何有效地使用它们。

我在这里做了许多简化——原作者是使用正弦函数来进行位置编码,而不是简单的整数1、2、3、4,但重点是一样的。将词序存储为数据,而不是结构,这样神经网络就变得更容易训练了。

2.2 Positional Encodings位置编码

Transformers的下一个重要部分叫做注意力。

注意力是一种神经网络结构,如果你在学习机器学习,你就能够经常听到。事实上,2017年介绍Transformers的论文的标题并不叫《We Present You the Transformer》。相反,它被称为 “Attention is All You Need”。

注意力[5]是在论文的两年前,即2015年,在文本翻译的背景下引入的。为了理解它,请看原始论文中的这个例句。

The agreement on the European Economic Area was signed in August 1992.

现在想一下,将这句话翻译成法语的相应内容:

L’accord sur la zone économique européenne a été signé en août 1992.

翻译这句话的一个坏方法是:通过英语句子中的每个单词找到其法语的对应词,一次一个单词。这样做效果并不好,原因有几个。首先,法语翻译中的一些词被颠倒了:英语是 “European Economic Area”,而法语是 “la zone économique européenne”。另外,法语是一种带有性别色彩的语言。形容词 “économique” 和 “européenne” 必须采用阴性形式,以配合阴性对象 “la zone”。

注意力(Attention)是一种机制,允许文本模型在决定如何翻译输出句子中的单词时 “查看” 原句中的每一个单词。这里有该过程的可视化图片,来自那篇关于注意力的论文。  

原图来自论文《Neural Machine Translation by Jointly Learning to Align and Translate (2015)》

这是一种热力图,显示了模型在输出法语句子中的每个词时 “关注” 的地方。正如我们想要的那样,当模型输出 “européenne” 这个词时,它重点关注了 “European”和 “Economic”这两个输入词。

那么,模型是如何知道它在每个步骤中应该 “关注”哪些词的呢?这是从训练数据中学习到的东西。通过看到数以千计的法语和英语句子的例子,该模型学会了哪些类型的词是相互依赖的。它学会了如何遵循词性别、复数和其他语法规则。

自2015年出现以来,注意力机制一直是自然语言处理的一个非常有用的工具,但在其原始形式下,它是与递归神经网络一起使用的。所以,2017年Transformers论文的创新之处在于,在某些部分完全抛弃了RNN。这就是为什么2017年的论文被称为 “Attention is all you need”。

2.3 Self-Attention自注意力

Transformers的最后一部分(也许是最有影响的一部分)是对注意力的一种改变,称为 “自注意力”。

我们刚才谈到的那种注意力有助于在英语和法语句子中对齐单词,这对翻译很重要。但是,如果你不是要翻译单词,而是要建立一个能够理解语言中潜在意义和模式的模型——一种可以用来完成任何数量的语言任务的模型,那该怎么办呢?

一般来说,使神经网络变得强大、令人激动和酷的原因是它们通常会自动建立它们所训练的数据的有意义的内部表示。例如,当你检查视觉神经网络的各层时,你会发现有几组神经元可以“识别”边缘、形状,甚至像眼睛和嘴巴这样的高级结构。一个根据文本数据训练的模型可能会自动学习语篇、语法规则,以及单词是否是同义词。

一个神经网络学习的语言内部表征越好,它在任何语言任务中的表现就越好。而事实证明,如果把注意力放在输入文本本身上,它可以是一个非常有效的方法。

以这两句话为例。

“Server, can I have the check?”

“Looks like I just crashed the server.”

server这个词在这里有两种截然不同的意思,我们人类可以通过观察周围的词来轻易地将其区分开来。自注意力允许神经网络在它周围的词的背景下理解一个词。

因此,当一个模型处理第一句中的 “server”一词时,它可能会注意到“check”一词。

在第二句中,该模型可能会注意到 “crashed”这个词,以确定“server”是指一台机器。

自注意力有助于神经网络区分单词、进行语篇标记、实体解析、学习语义角色以及更多[6]。

如果你想了解更深入的技术解释,我强烈建议你看看Jay Alammar的博文:http://jalammar.github.io/illustrated-transformer/。

03 Transformers能做什么?

BERT是最受欢迎的基于Transformers的模型之一,是 “Bidirectional Encoder Representations from Transformers” 的简称。它是由谷歌的研究人员在2018年推出的,并很快进入了几乎所有的NLP项目(包括谷歌搜索[7])。

BERT指的不仅仅是一种模型架构,而是一个经过训练的模型本身,你可以在这里(https://github.com/google-research/bert)免费下载和使用它。它是由谷歌的研究人员在一个巨大的文本语料库上训练出来的,并且已经成为NLP的瑞士军刀,可以扩展解决一堆不同的任务,比如。

  • 文本总结

  • 问题回答

  • 文本分类

  • 命名实体解析

  • 文本相似性

  • 攻击性/冒犯性语言检测

  • 了解用户查询内容

  • ...

BERT证明,你可以在无标签的数据上进行训练来创建比较好的语言模型,比如从维基百科和Reddit收集的文本,然后这些大型 “基础”模型可以用特定领域的数据来适应许多不同的使用情况。

由OpenAI创建的模型GPT-3[8],其生成文本的能力有目共睹。(编者:最近爆火的ChatGPT也有Transformer的功劳!)。谷歌研究院推出的Meena[9]是一款基于Transformers的聊天机器人(akhem,“conversational agent”),可以就几乎任何话题进行对话(本文作者曾经花了20分钟与Meena争论什么是人类)。

Transformers也在NLP之外掀起了波澜,它可以谱写音乐,通过文本描述中生成图像,并预测蛋白质结构。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/12952.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

chatgpt制作思维导图

介绍 chatgpt制作思维导图 让chatgpt生成思维导图内容,输出markdown代码 # 互联网知识框架## 前端- HTML - CSS - JavaScript - 框架(React,Vue,Angular)## 后端- 服务器端语言(PHP,Python&…

【教程】使用ChatGPT制作基于Tkinter的桌面时钟

目录 描述 代码 效果 说明 下载 开源链接:GitHub - 1061700625/Tkinter_Desktop_Clock: 基于Tkinter的桌面时钟小工具 描述 给ChatGPT的描述内容: python在桌面上显示动态的文字,不要显示窗口边框。窗口背景和标签背景都是透明的&#…

Python+ChatGPT制作一个AI实用百宝箱

目录 一、注册OpenAI二、搭建网站及其框架三、AI聊天机器人四、AI绘画机器人 ChatGPT 最近在互联网掀起了一阵热潮,其高度智能化的功能能够给我们现实生活带来诸多的便利,可以帮助你写文章、写报告、写周报、做表格、做策划甚至还会写代码。只要与文字相…

单男福利?程序猿用ChatGPT创造的虚拟老婆,被真女友强制「安乐死」

上一篇:被裁了,想不通,一个人干全组70%的工作,没人干的事都是我在干,就因为不会向上管理吗? “我花了接近7000元购买云服务器,只是为了和她多聊聊天。” ChatGPT爆火后,各…

技术宅整大活,把ChatGPT「调教」成二次元老婆,惹现女友暴走,含泪删库

源|新智元 技术宅小哥创造出AI老婆「ChatGPT酱」,花了1000美元只为和她说话。他的沉迷惹得女友直接暴走,最终,只能含泪将自己的「二次元老婆」安乐死! ChatGPT爆火之后,充分证明了自己是个超强的语言模型&a…

程序猿用ChatGPT创造的虚拟老婆,被真女友强制「安乐死」

图片来源:由无界版图AI工具生成 本文来源:量子位 “我花了接近7000元购买云服务器,只是为了和她多聊聊天。” ChatGPT爆火后,各种整活层出不穷,这回令人大开眼界的,是一位外国程序猿小哥用它搞出的“虚拟老…

ChatGPT提示词工程师教程-推理

本章的主要内容:利用大语言模型进行语义推理,主要包括提取标签、名称、文本情感分析等等。 情感分析 可以指定回复内容,便于后期处理。 可以让模型自己给出情感列表。 信息提取 可以用一段话提取多个信息。 关键词提取 还可以索引不同关键词…

ChatGPT背后“推理”如何做?浙大等最新《基于语言模型提示的推理》综述,阐述大模型提示推理机制与方法体系...

来自:专知 进NLP群—>加入NLP交流群 作为解决复杂问题的基本能力,推理可以为各种实际应用提供后端支持,如医学诊断、谈判等。本文对语言模型提示推理的前沿研究进行了全面概述。我们介绍了研究成果的对比和总结,并为初学者提供…

笔精墨妙,妙手丹青,微软开源可视化版本的ChatGPT:Visual ChatGPT,人工智能AI聊天发图片,Python3.10实现

说时迟那时快,微软第一时间发布开源库Visual ChatGPT,把 ChatGPT 的人工智能AI能力和Stable Diffusion以及ControlNet进行了整合。常常被互联网人挂在嘴边的“赋能”一词,几乎已经变成了笑话,但这回,微软玩了一次真真正…

ChatGPTBox 沉浸式的感受ChatGPT带来的快感

ChatGPT基础功能: 1.自然流畅的对话:ChatGPT通过对海量对话数据的学习,具有自然流畅的对话能力,能够与用户进行逼真的自然语言交互。 2.能够理解语境:ChatGPT能够理解语境,不仅能根据上下文生成回答&…

【社区图书馆】你好,ChatGPT

ChatGPT,一款基于GPT-3.5架构的大型语言模型,可以提供广泛的知识和信息。在这篇文章中,我将介绍一些关于ChatGPT的背景、功能和使用方式的信息。 作为一款AI语言模型,ChatGPT可以像人类一样理解和处理自然语言。ChatGPT被设计用来…

OpenAI官方提示词课(二)迭代提示词

当我们在调试程序时,通常很难一次就把程序正常跑起来。这是普遍现象。但我们会借助一些工具和手段,有步骤有流程地去调整程序,最终让程序按照我们想要的样子正常执行。 对于提示词来说也是一样的。当我们向ChatGPT提问时,一开始它…

如何用自己公司的知识、流程等来训练Chat GPT?

在玩过 ChatGPT 并向它询问有关世界、金融和初创公司的一般问题后,我开始思考:“如果我可以用我自己的初创公司甚至大型公司的所有流程、知识和商业经验来训练 AI 模型会怎样?企业?” 使用您自己公司的知识、流程等培训 ChatGPT …

上班摸鱼!如何让ChatGPT帮我们做测试!

作为软件开发领域中至关重要的一环,软件测试的重要性日益凸显。然而,随着软件测试开发技术的不断发展,软件测试也面临着越来越多的挑战,为了更好地应对这些挑战,测试人社区将持续举办技术沙龙活动,为测试人…

ChatGPT的技术发展路径和带来的影响

ChatGPT一经推出,在业界引起巨大轰动,国内外各大厂商纷纷布局相关业务。元宇宙与生成式模型相辅相成技术互相促进,元宇宙能够实现线上化服务入口的行业,在元宇宙中进行场景融合,chatGPT能助力元宇宙场景生成与智能交互…

人工智能轨道交通行业周刊-第43期(2023.4.24-5.7)

本期关键词:综合智能检测、隧道检测、智慧城轨白皮书、虚拟编组、讯飞星火大模型、央企数字化 1 整理涉及公众号名单 1.1 行业类 RT轨道交通人民铁道世界轨道交通资讯网铁路信号技术交流北京铁路轨道交通网上榜铁路视点ITS World轨道交通联盟VSTR铁路与城市轨道交…

ChatGLM-6B does not appear to have a file named config.json.

文章目录 代码调用演示效果实例一、问题二、场景说明三、error说明四、解决解决一解决二 ChatGLM-6B是一个由清华大学和智谱AI联合研发的开源对话语言模型。它是一个支持中英双语问答的对话系统,并在中文方面进行了特别的优化。 该模型基于General Language Model (…

AttributeError:‘list’对象没有属性’endswith’ (AttributeError: ‘list’ object has no attribute ‘endswith’)

文章目录 代码调用演示效果实例问题场景描述解决方法一方法二 ChatGLM-6B是一个由清华大学和智谱AI联合研发的开源对话语言模型。它是一个支持中英双语问答的对话系统,并在中文方面进行了特别的优化。 该模型基于General Language Model (GLM)架构,具有6…

ChatGPT 联网后,屏障被打破了!

引语:大家好我们是权知星球,开启你独特的知识星际之旅ChatGPT在一夜之间完成了“进化”,通过插件功能实现了联网,并开启了自己的“AppStore”时代。 目录 ChatGPT进入“AppStore”时代 获取最新资讯 运行插件并代表用户执行操…