通俗解构语言大模型的工作原理
2024-10-09 03:04:47发布 浏览335次 信息编号:184357
友情提醒:凡是以各种理由向你收取费用,均有骗子嫌疑,请提高警惕,不要轻易支付。
通俗解构语言大模型的工作原理
大型语言模型内部如何工作?本文用最少的数学和术语来解释它。
本文作者 Tim Lee 曾就职于科技媒体 Ars。他最近推出了《AI》,主要讨论人工智能的工作原理。 Sean Trott 是加州大学圣地亚哥分校的助理教授,研究人类语言理解和语言建模。 (以下内容经授权编译发布,转载请联系我们获得授权。原文:)
作者|蒂姆·李、肖恩·特洛特
编译
去年秋天推出时,引起了科技行业和全世界的轰动。当时,机器学习研究人员多年来一直在尝试开发语言大模型(LLM),但普通大众并没有给予太多关注,也没有意识到它们已经变得多么强大。
如今,几乎每个人都听说过LLM,并且有数以千万计的人使用过它们,但没有多少人了解它们是如何运作的。您可能听说过法学硕士接受过“预测下一个单词”的训练,并且他们需要大量文本才能实现这一目标。然而,解释通常就到此为止。他们如何预测下一个单词的细节通常被视为一个深奥的谜题。
原因之一是这些系统的开发方式不同。典型的软件是由人类工程师编写的,他们向计算机提供清晰的分步指令。相比之下,它建立在使用数十亿语言单词训练的神经网络之上。
因此,世界上没有人完全了解LLM的内部运作方式。研究人员正在努力尝试理解这些模型,但这是一个缓慢的过程,可能需要数年甚至数十年才能完成。
然而,专家们确实对这些系统的工作原理了解很多。本文的目标是向广大读者开放这些知识。我们将尝试解释这些模型的内部运作原理,而不涉及技术术语或高等数学。
我们将从解释词向量开始,这是语言模型表示和推理语言的一种令人惊讶的方式。然后我们将深入探讨构建 的构建块。最后,我们解释了这些模型是如何训练的,并探讨了为什么需要大量数据才能实现良好的性能。
词向量
要了解语言模型的工作原理,您首先需要了解它们如何表示单词。人类使用字母序列来表示英语单词,例如 CAT 代表猫。语言模型使用称为词向量的长数字列表。例如,以下是将猫表示为向量的一种方法:
[0.0074,0.0030,-0.0105,0.0742,0.0765,-0.0011,0.0265,0.0106,0.0191,0.0038,-0.0468, -0.0212,0.0091,0.0091,0.0030,0.0030,0.0030,-0.0030,-0.0563,-0.0563,0563,0。 0396,-0.0998,-0.0796,…,0.0002]
(注:完整的向量长度实际上是300位)
为什么使用如此复杂的表示法?这是一个类比。华盛顿特区位于北纬 38.9 度、西经 77 度。我们可以用向量表示来表示:
• 华盛顿特区的坐标是[38.9, 77]
• 纽约的坐标是[40.7, 74]
• 伦敦的坐标是[51.5, 0.1]
•巴黎的坐标是[48.9,-2.4]
这对于推理空间关系很有用。您可以看到纽约与华盛顿特区非常接近,因为在坐标中 38.9 接近 40.7,而 77 接近 74。同样,巴黎与伦敦也非常接近。但巴黎距离华盛顿特区很远。
语言模型采用类似的方法:每个词向量代表“词空间”中的一个点,具有相似含义的词彼此距离更近。例如,向量空间中与猫最接近的单词包括狗、小猫和宠物。使用实数向量来表示单词(与“CAT”等字母字符串相反)的一大优点是数字可以执行字母无法执行的操作。
单词太复杂,无法仅用二维表示,因此语言模型使用数百甚至数千维的向量空间。人类无法想象如此高维度的空间,但计算机可以对其进行推理并产生有用的结果。
研究人员几十年来一直在研究词向量,但这个概念真正受到关注是在 2013 年该项目宣布时。对从新闻中收集的数百万份文件进行分析,找出哪些单词往往出现在相似的句子中。随着时间的推移,训练有素的神经网络学会将相似类别的单词(例如狗和猫)放置到向量空间中的相邻位置。
单词向量还有另一个有趣的功能:您可以使用向量运算“推理”单词。例如,研究人员取最大的( )向量,减去大(big)向量,并添加小(small)向量。最接近结果向量的单词是最小的 () 向量。
可以用向量运算来打个比方!在这个例子中,大(big)和最大()之间的关系类似于小(small)和最小()之间的关系。的词向量捕获许多其他关系:
• 瑞士人之于瑞士就像柬埔寨人之于柬埔寨一样。 (公民权国家)
• 巴黎和法国与柏林和德国类似。 (首都)
• 不道德和道德类似于可能和不可能。 (反义词)
• 老鼠(mouse)和小鼠(mice的复数形式)类似于()和(的复数形式)。 (复数形式)
• 男人和女人就像国王和王后。 (性别角色)
由于这些向量是根据人们使用语言的方式构建的,因此它们反映了人类语言中存在的许多偏见。例如,在某些词向量模型中,(医生)减去(男人)加上(女人)等于(护士)。减少这种偏见是一个新颖的研究领域。
尽管如此,词向量是语言模型的有用基础,因为它们编码单词之间微妙但重要的关系信息。如果语言模型了解了关于猫的一些信息(例如,它有时会去看兽医),那么同样的事情可能也适用于小猫或狗。如果模型了解了巴黎和法国之间的关系(例如,他们共享一种语言),那么柏林和德国以及罗马和意大利之间的关系很可能是相同的。
单词的含义取决于上下文
像这样的简单词向量方案并没有捕捉到有关自然语言的一个重要事实:单词通常具有多种含义。
例如,“银行”一词可以指金融机构或河岸。或者考虑以下句子:
•约翰拿起一本(约翰拿起一本杂志)。
•苏珊为一家公司工作(苏珊为一家杂志社工作)。
在这些句子中,“”的含义相关但又不同。约翰拿起一本实体杂志,苏珊在一家出版实体杂志的机构工作。
当一个词有两个不相关的含义时,语言学家称其为同音异义词()。当一个词有两个密切相关的含义时,例如“”,语言学家称之为一词多义()。
像这样的语言模型能够根据单词出现的上下文在不同的向量中表示相同的单词。有一个“bank”的向量,还有一个“bank”的向量。有一个“(实体出版物)”向量,还有一个“(出版机构)”向量。正如您所料,语言模型使用的向量对于多义词的含义更相似,而对于同音异义词的含义则不太相似。
到目前为止,我们还没有解释语言模型是如何做到这一点的——我们很快就会讨论这个主题。然而,我们正在详细阐述这些向量表示,这对于理解语言模型的工作原理非常重要。
传统软件旨在处理显式数据。如果你让计算机计算“2+3”,那么 2、+ 或 3 的含义是明确的。但自然语言中的歧义远远超出了同音异义词和一词多义的范畴:
• 在“他要求修理他的汽车”中,“他的”是指顾客还是机械师?
• 在“the敦促做她(教授敦促学生完成她的作业)”中,“她”是指教授还是学生?
• 在“fruit flies like a”中,“flies”是动词(指像香蕉一样在天上飞的水果)还是名词(指喜欢香蕉的果蝇)?
人们根据上下文来解决此类歧义,但没有简单或明确的规则。相反,它需要了解世界实际上正在发生什么。你要知道,机械师通常会修理客户的汽车,学生通常会完成作业,而水果通常不会飞。
词向量为语言模型提供了一种灵活的方式来表示特定段落上下文中每个词的精确含义。现在让我们看看他们是如何做到这一点的。
将词向量转换为词预测
原始版本背后的 GPT-3 模型由数十个神经网络层组成。每一层都将向量序列作为输入(输入文本中的每个单词对应一个向量),并添加信息以帮助阐明该单词的含义并更好地预测接下来可能出现的单词。
让我们从一个简单的例子开始。
LLM 的每一层都是神经网络结构,首次在 2017 年的一篇具有里程碑意义的论文中引入。
在图的底部,模型的输入文本是“John 希望他的银行兑现”。这些单词被表示为样式向量并传递给第一个。这证实了需求和现金都是动词(这两个词也可以是名词)。我们用括号中的红色文本表示这个额外的上下文,但模型实际上通过以人类难以解释的方式修改单词向量来存储这些信息。这些新向量称为隐藏状态,并传递到下一个向量。
第二个增加了两条上下文信息:它澄清了银行指的是金融机构()而不是河岸,并且他是指约翰的代词。第二个生成另一组隐藏状态向量,反映模型之前学到的所有信息。
上图纯粹是假设的法学硕士,所以不要太关注细节。真正的法学硕士往往有更多层次。例如,最强大的 GPT-3 版本有 96 层。
研究表明,(),前几层侧重于理解句子的语法并解决上面所示的歧义。后面的层(上面未显示,以保持图表大小易于管理)专用于对整个段落的高级理解。
例如,当LLM“阅读”一个短篇小说时,它似乎会记住有关故事人物的各种信息:性别和年龄、与其他人物的关系、过去和现在的地点、性格和目标等等。
研究人员并不完全了解 LLM 如何跟踪这些信息,但从逻辑上讲,模型必须通过在层之间传递信息时修改隐藏状态向量来实现这一点。现代LLM中的向量维度极大,有利于表达更丰富的语义信息。
例如,最强大的GPT-3版本使用12288维的词向量,即每个词由12288个数字的列表表示。这比 2013 年提出的计划大了 20 倍。你可以将所有这些额外维度视为一种“暂存空间”,GPT-3 可以用它来记录每个单词的上下文。前面层所做的信息注释可以被后面的层读取和修改,从而使模型逐渐对整篇文章有更深入的理解。
因此,假设我们更改上图来描述解释 1,000 字故事的 96 层语言模型。第 60 层可能包含 John 的向量,该向量表示为“(主角,男性,嫁给谢丽尔,唐纳德的表弟,来自明尼苏达州,目前在博伊西,试图找到他丢失的钱包)”括号注释。同样,所有这些事实(可能还有更多)都被编码在与单词 John 相对应的 12,288 个数字的列表中。或者,故事中的某些信息可能会编码为单词 、、Boise、 或其他单词的 12288 维向量。
目标是让网络的第 96 层(即最后一层)输出一个隐藏状态,其中包含预测下一个单词的所有必要信息。
注意机制
现在让我们来谈谈每个内部发生的事情。更新输入段落每个单词的隐藏状态时有两个过程:
1. 在注意力步骤中,词汇“环顾四周”,寻找具有相关上下文并相互共享信息的其他单词。
2. 在前馈步骤中,每个单词都会“思考”前一个注意力步骤中收集的信息,并尝试预测下一个单词。
当然,执行这些步骤的是网络,而不是单个单词。但我们这样表述是为了强调单词是分析的基本单位,而不是整个句子或段落。这种方法使 LLM 能够充分利用现代 GPU 芯片的大规模并行处理能力。它还有助于法学硕士扩展到包含数千个单词的长段落。这两个方面都是早期语言模型面临的挑战。
你可以把注意力机制想象成单词之间的匹配服务。每个单词都会生成一个检查列表(称为查询向量),用于描述其正在查找的单词的特征。每个单词还创建一个描述其自身特征的清单(称为关键向量)。神经网络通过将每个关键向量与每个查询向量进行比较(通过计算点积)来找到最佳匹配单词。一旦找到匹配项,它将相关信息从生成键向量的单词传递到生成查询向量的单词。
例如,在上一节中,我们展示了一个假设模型,该模型发现在句子“John Want his Bank to cash the”的一部分中,“his”指的是“John”。在内部,该过程可能如下所示:“his”的查询向量可能有效地表示为“我正在寻找:描述男人的名词”。 “John”的关键向量可以有效地表达为“我是描述男性的名词”。网络将检测这两个向量之间的匹配,并将有关“John”向量的信息传输到“his”向量。
每个注意力层都有几个“注意力头”,这意味着这个信息交换过程在每一层发生多次(并行)。每个注意力头专注于不同的任务:
• 正如我们之前讨论的,注意力头可能会将代词与名词进行匹配。
• 另一个注意力头可能会处理解析“bank”等单词的模糊含义。
• 第三个注意力头可能会将两个词的短语链接在一起,例如“Joe拜登”。
诸如此类的注意力头通常按顺序操作,一个注意力层中注意力操作的结果成为下一层注意力头的输入。事实上,我们刚刚列出的每一项任务都可能需要多个注意力头,而不仅仅是一个。
GPT-3最大的版本有96层,每层有96个注意力头,因此每次预测一个新词时,GPT-3都会执行9216次注意力操作。
一个现实世界的例子
在上面两节中,我们提出了注意力头如何工作的理想化版本。现在让我们看一下真实语言模型内部运作的研究。
去年,研究人员研究了 GPT-2 的前身 GPT-2,预测了“当玛丽和约翰去商店时,约翰给了一杯饮料”这段话。一句话的过程。
GPT-2 预测下一个单词是 Mary。研究人员发现,三种类型的注意力头促成了这一预测:
• 三个被称为“名称移动器头”的注意力头将信息从 Mary 向量复制到最终输入向量(对应于单词 to 的向量)。 GPT-2 使用这个最右边向量中的信息来预测下一个单词。
• 神经网络如何确定Mary 是要复制的正确单词?通过逆向分析 GPT-2 的计算过程,科学家们发现了一组四个注意力头,他们称之为主体抑制头(Heads),它标记了第二个约翰向量,并阻止名字移动头复制约翰这个名字。 。
• 主题抑制头如何知道它不应该复制约翰?逆向研究,团队发现了两个注意力头,他们称之为重复令牌头。他们将第二个 John 向量标记为第一个 John 向量的重复副本,这有助于主题抑制头决定不应复制 John。
简而言之,这九个注意力头使 GPT-2 能够理解“John 给 John 喝了一杯饮料”没有意义,而是选择“John 给 Mary 喝了一杯饮料。Mary 喝了一杯饮料)”。
这个例子说明了完全理解LLM是多么困难。由五名研究人员组成的团队发表了一篇 25 页的论文,解释了他们如何识别和验证这些注意力头。然而,即使他们完成了所有这些工作,我们距离全面解释为什么 GPT-2 决定预测“玛丽”作为下一个单词还有很长的路要走。
例如,模型如何知道下一个单词应该是一个人的名字而不是其他类型的单词?很容易想象玛丽不会成为类似句子中下一个单词的良好预测者。例如,在句子“当玛丽和约翰去餐厅时,约翰把他的钥匙交给(当玛丽和约翰去餐厅时,约翰把他的钥匙给)”,从逻辑上讲,下一个单词应该是“代客泊车”服务员)”。
假设计算机科学家进行充分的研究,他们可以揭示并解释 GPT-2 推理过程中的其他步骤。最终,他们可能能够完全理解 GPT-2 如何确定“Mary”是句子中最有可能的下一个单词。但可能需要数月甚至数年的额外努力才能理解一个单词是如何预测的。
它们背后的语言模型——GPT-3和GPT-4——比GPT-2更大、更复杂,它们可以完成比团队研究的简单句子更复杂的推理任务。因此,全面解释这些系统的任务将是人类短时间内不太可能完成的浩大工程。
前馈步骤
在注意力头在词向量之间传递信息后,前馈网络“思考”每个词向量并尝试预测下一个词。在这个阶段,单词之间没有信息交换,前馈层独立分析每个单词。然而,前馈层可以访问注意力头之前复制的任何信息。以下是最大版本的GPT-3的前馈层结构。
绿色和紫色圆圈代表神经元:它们是计算其输入的加权和的数学函数。
前馈层由于其大量的连接而非常强大。我们使用三个神经元作为输出层和六个神经元作为隐藏层来绘制这个网络,但是 GPT-3 的前馈层要大得多:输出层有 12,288 个神经元(对应于模型的 12,288 维词向量),隐藏层有有49152个神经元。
所以在最大版本的GPT-3中,隐藏层有49152个神经元,每个神经元有12288个输入值(所以每个神经元有12288个权重参数),并且有12288个输出神经元,每个神经元有49152个输入值(所以每个神经元有 49152 个权重参数)。这意味着每个前馈层有49152*12288+12288*49152=12亿个权重参数。并且有96个前馈层,总共12亿*96=1160亿个参数!这相当于 GPT-3 参数量的近三分之二,GPT-3 拥有 1750 亿个参数。
在 2020 年的一篇论文 ( ) 中,特拉维夫大学的研究人员发现前馈层通过模式匹配发挥作用:隐藏层中的每个神经元都能够匹配输入文本中的特定模式。以下是 16 层版本的 GPT-2 中的一些神经元匹配模式:
• 第 1 层中的神经元匹配以“”结尾的单词序列。
• 第 6 层中的神经元匹配以“base”或“bases”结尾的与军事相关的单词序列。
• 第 13 层中的神经元匹配以时间范围结束的序列,例如“下午 3 点到晚上 7 点之间”或“从星期五到晚上 7 点”。
• 第 16 层中的神经元匹配与电视节目相关的序列,例如“原始 NBC 日间版本,已存档”或“时间延迟使该集的收视率增加了 57%”。
正如您所看到的,在后面的层中,模式变得更加抽象。前面的层倾向于匹配特定的单词,而后面的层则匹配属于更广泛语义类别的短语,例如电视节目或时间间隔。
这很有趣,因为如前所述,前馈层一次只能检查一个单词。因此,当将序列“原始 NBC 日间版本,存档”分类为“电视相关”时,它只能访问单词“存档”的向量,而不是 NBC 或日间等。可以推断,前馈层可以确定的原因“存档”是电视相关序列的一部分是因为注意力头先前将上下文信息移动到“存档”向量中。
当神经元匹配其中一种模式时,它会将信息添加到词向量中。虽然此信息并不总是易于解释,但在许多情况下,您可以将其视为对下一个单词的尝试性预测。
使用向量运算的前馈网络进行推理
布朗大学 (Brown ) 最近的研究展示了一个很好的例子,说明前馈层如何帮助预测下一个单词。我们讨论了早期的研究表明向量运算可用于类比推理。例如,柏林 - 德国 + 法国 = 巴黎。
布朗大学的研究人员发现,前馈层有时会使用这种准确的方法来预测下一个单词。例如,他们研究了 GPT-2 对以下提示的响应:“问题:法国的首都是什么?答案:巴黎。问题:波兰的首都是什么?答案:”
该团队开发了 24 层的 GPT-2 版本。在每一层之后,布朗大学的科学家都会对模型进行探索,以了解其对下一个标记的最佳猜测。在前 15 个级别中,可能性最高的猜测是一个看似随机的单词。在第 16 层和第 19 层之间,模型开始预测下一个单词是波兰语——虽然不正确,但越来越接近。然后在第 20 级,最可能的猜测变为华沙 - 正确答案,并在最后四个级别保持不变。
布朗大学的研究人员发现,第 20 个前馈层通过添加一个将国家向量映射到相应首都的向量,将波兰转变为华沙。当同样的向量加到中国时,答案就是北京。
同一模型中的前馈层使用向量运算将小写单词转换为大写单词,并将现在时单词转换为其过去时态等价物。
注意力层和前馈层有不同的功能
到目前为止,我们已经看到了 GPT-2 单词预测的两个实际例子:注意力头帮助预测 John 给了 Mary a Drink;前馈层帮助预测华沙是波兰的首都。
在第一种情况下,Mary 来自用户提供的提示。但在第二种情况下,华沙不会出现在提示中。相反,GPT-2 必须“记住”华沙是波兰的首都,这是从训练数据中学到的信息。
当布朗大学的研究人员禁用将波兰转换为华沙的前馈层时,该模型不再预测下一个单词将是华沙。但有趣的是,如果他们随后在提示的开头添加“波兰的首都是华沙”这句话,GPT-2 就能再次回答这个问题。这可能是因为 GPT-2 使用了注意力机制从提示中提取了 这个名字。
这种分工表现得更广泛:注意力机制从线索的早期部分检索信息,而前馈层使语言模型能够“记住”线索中不存在的信息。
事实上,前馈层可以被认为是模型从训练数据中学到的信息的数据库。早期的前馈层更有可能编码与特定单词相关的简单事实,例如“特朗普经常出现在唐纳德之后”。后面的层编码更复杂的关系,例如“添加此向量以将一个国家转换为其首都。
如何训练语言模型
许多早期的机器学习算法需要人工标记的训练示例。例如,训练数据可能是带有人类标签(“狗”或“猫”)的狗或猫的照片。标记数据的需要使得创建足够大的数据集来训练强大的模型变得困难且昂贵。
法学硕士的一个关键创新是它们不需要明确标记的数据。相反,他们通过尝试预测一段文本中的下一个单词来学习。几乎任何书面材料都适合训练这些模型——从维基百科页面到新闻文章再到计算机代码。
例如,法学硕士可能会收到输入“我喜欢奶油和”,并尝试预测“糖”作为下一个单词。新初始化的语言模型在这方面表现不佳,因为它的每个权重参数(最强大的 GPT-3 版本拥有多达 1750 亿个参数)最初基本上都是从随机数开始的。
但随着模型看到更多的例子(数千亿个单词),这些权重会逐渐调整以做出更好的预测。
这里用一个类比来说明这个过程是如何工作的。假设您正在洗澡,并且希望水温恰到好处:不太热,也不太冷。你以前从未使用过这个水龙头,所以你随意调整水龙头手柄的方向,感受水的温度。如果太热或太冷,您将向相反方向转动手柄,当您接近合适的水温时,您将对手柄进行较小的调整。
现在,让我们对这个类比做一些改变。首先,假设有 50,257 个水龙头,每个水龙头对应一个不同的单词,例如“the”、“cat”或“bank”。您的目标是仅让水从与序列中的下一个单词相对应的水龙头中流出。
其次,水龙头后面有一堆相互连接的管道,这些管道上有一堆阀门。所以如果水从错误的水龙头流出,你不能只调节水龙头上的旋钮。你派出一群聪明的松鼠去追踪每根管道并调整他们沿途找到的每一个阀门。
这变得很复杂,因为同一条管道通常供应多个水龙头,因此需要仔细考虑如何确定拧紧和松开哪些阀门以及拧紧和松开的程度。
显然,如果按照字面意思来理解这个例子,就显得很可笑了。建设一个拥有1750亿个阀门的管网既不实际,也没用。但由于摩尔定律,计算机能够而且确实以这种规模运行。
到目前为止,本文讨论的LLM的所有部分——前馈层的神经元和在单词之间传递上下文信息的注意力头——都被实现为一系列简单的数学函数(主要是矩阵乘法),其行为由通过可调整的权重参数。就像我故事中的松鼠拧紧阀门来控制水流一样,训练算法通过增加或减少语言模型的权重参数来控制通过神经网络的信息流。
训练过程分为两个步骤。首先执行“正向传递”,打开水源并检查水是否从正确的水龙头流出。然后关闭水源并执行“通过”,松鼠沿着每根管道竞速以拧紧或松开阀门。在数字神经网络中,松鼠的角色是由一种称为反向传播的算法扮演的,它“行走”网络,使用微积分来估计每个权重参数需要改变多少。
完成这个过程(前向传播一个示例,然后进行后向传播以提高网络在该示例上的性能)需要数百亿次数学运算。训练像 GPT-3 这样的大型模型需要针对每个训练数据中的每个单词重复此过程数十亿次。据估计,训练 GPT-3 需要超过 3000 亿次浮点计算——这需要数十个高端计算机芯片运行数月。
10
GPT-3的惊人性能
您可能会对培训过程的顺利进行感到惊讶。可以执行各种复杂的任务——写文章、进行类比,甚至编写计算机代码。那么,如此简单的学习机制如何产生如此强大的模型呢?
原因之一是规模。 GPT-3 等模型的示例数量之多怎么强调都不为过。 GPT-3 在大约 5000 亿个单词的语料库上进行训练。相比之下,人类孩子在 10 岁之前平均遇到的单词数量约为 1 亿个。
在过去的五年里,它不断扩大其语言模型的规模。在一篇广为流传的 2020 年论文 () 中,他们报告说,他们的语言模型的准确性与模型大小、数据集大小和用于训练的计算量呈现幂律关系,其中一些趋势跨越了七个数量级以上” 。
模型越大,在涉及语言的任务上表现就越好。但前提是他们需要将训练数据量增加类似的倍数。为了利用更多数据训练更大的模型,需要更多的计算能力。
2018年,首款大型型号GPT-1发布。它使用768维的词向量,总共12层,总共1.17亿个参数。几个月后,GPT-2发布,最大的版本有1600维词向量,48层,总共15亿个参数。 2020年,GPT-3发布,词向量12288维,96层,总共1750亿个参数。
今年,GPT-4发布了。该公司尚未公布任何架构细节,但业界普遍认为 GPT-4 比 GPT-3 大得多。
每个模型不仅比其较小的前身学到了更多的事实,而且在需要某种形式的抽象推理的任务上表现出了更好的性能。
例如,考虑以下故事:一袋爆米花。袋子里没有巧克力。但是,袋子上的标签上的标签说“巧克力”,而不是“爆米花”。山姆找到了包。她以前从未见过这个袋子。她看不到书包里面有什么。她读了标签。
您可能会猜到,山姆认为该袋子里有巧克力,并惊讶地发现里面的爆米花。
心理学家称这项研究对他人心理状态的推理能力为“心理理论”。自从上小学以来,大多数人都具有这种能力。专家不同意心理理论是否适用于任何非人类动物,例如黑猩猩,但基本共识是它对人类的社会认知至关重要。
今年早些时候,斯坦福大学心理学家MI发表了一项研究(),研究了LLM解决任务理论的能力。他读了各种语言模型,就像一个刚才引用的故事,然后要求他们完成一句话,例如“她相信书包已经满了”。正确的答案是“巧克力”,但未成熟的语言模型可能说“爆炸”。大米”之类的东西。
在此测试中,GPT-1和GPT-2失败。但是,2020年发布的GPT-3的第一版的准确率接近40%,将模型绩效水平与三岁儿童的表现水平进行了比较。去年11月发布的最新版本GPT-3将上述问题的准确性提高到了约90%,这相当于一个七岁的孩子。 GPT-4回答心理理论的问题大约95%。
“鉴于没有迹象表明汤姆(心理化能力)是故意在这些模型中设计的,而且没有研究来证明科学家知道如何实施它,因此这种能力很可能自动且自主地出现。这就是语言模型A副产品的能力不断增强。”
值得注意的是,研究人员并不同意这些结果证明了心理理论:例如,错误的信念任务的小变化导致GPT-3()的性能大大降低;而GPT-3在衡量心理理论的其他任务上表现更好。性能更加不稳定(),正如Sean (),成功的性能可能是由于任务中的混杂因素(一种“聪明的汉斯”),指的是一匹名为Hans的马。这匹马似乎能够完成一些简单的智力任务,但实际上,它仅依赖于人的无意识线索)。
尽管如此,GPT-3还是在几个旨在衡量心理理论的任务上的人类绩效,几年前本来是难以想象的,这与较大的模型一致性一致,通常在需要高级推理一致观点的任务上表现得更好。
这只是语言模型的众多示例之一,证明了先进推理能力的自发发展。今年4月,研究人员()发表的一篇论文指出,GPT-4显示了通用人工智能的初步和诱人的迹象,即以复杂和类似人的方式思考的能力。
例如,研究人员要求GPT-4使用一种晦涩的图形编程语言,称为Tikz来绘制独角兽。 GPT-4响应了几行代码,然后研究人员输入了Tikz软件以输入Tikz软件。尽管生成的图像很粗糙,但清楚地表明,GPT-4对独角兽的外观有一定的了解。
研究人员认为,GPT-4可能会以某种方式从培训数据中绘制独角兽的守则,因此他们提出了一个后续挑战:他们修改了独角兽的代码,删除了头部角落,并删除了角落。并移动其他身体部位。然后,他们让GPT-4回到独角兽的角落。 GPT-4的回应是将角落放在正确的位置:
尽管作者测试版的培训数据完全基于文本,并且不包括任何图像,但GPT-4似乎能够完成此任务。但是,经过大量的书面文本培训,GPT-4显然学会了推理独角兽的身体形状。
目前,我们对LLM如何完成这样的壮举没有真正的了解。有人认为这样的例子表明该模型开始真正理解其训练集中词的含义。其他人则坚持认为语言模型只是“随机鹦鹉()”,只是重复越来越复杂的单词序列,而不是真正理解它们。
这场辩论指出了一个深刻的哲学论点,可能无法解决。但是,我们认为关注GPT-3和其他模型的体验很重要。如果语言模型始终可以在特定类型的问题中获得正确的答案,并且研究人员有信心消除混乱因素(例如,以确保在培训期间不暴露这些语言模型),那么它是否了解语言培训期间的语言),然后它是否了解语言的语言。与人类完全相同,这是一个有趣而重要的结果。
训练下一个单词元来预测的另一个可能的原因是,语言本身是可以预测的。语言的规律性(尽管并非总是如此)与物质世界的规律有关。因此,当语言模型学习词之间的关系时,通常会隐含地学习世界之间的关系。
此外,预测可能是生物智能和人工智能的基础。根据安迪·克拉克(Andy Clark)等哲学家的观点,人脑可被视为“预测机器”。主要任务是预测我们的环境,然后使用这些预测成功控制环境。预测对于生物智能和人工智能至关重要。在不利的情况下,良好的预测与良好的表达式 - 准确的地图更有可能帮助人们进行比错误的地图更好。世界是庞大而复杂的,预测可以帮助生物学有效的定位并适应这种复杂性。
在构建语言模型方面,一个主要的挑战是找到指示不同单词的最有用的方法,尤其是因为许多单词的含义在很大程度上取决于上下文。下一个单词的预测方法使研究人员能够将其转变为经验丰富的问题,以避免这个棘手的理论问题。
事实证明,如果我们提供足够的数据和计算能力,语言模型可以通过找到最佳下一个单词的预测来学习如何操作人类语言。缺点是最终获得的人类内部操作无法完全理解。
笔记:
1。从技术上讲,LLM的单词成为一个词,但是我们会忽略本实现的细节,以使本文保持可控的长度(请参阅文章“揭示GPT的工作原理”)。
2。喂食网络也称为多层感知。自1960年代以来,计算机科学家一直在研究这种类型的神经网络。
3。从技术上讲,在计算输入加权和输入后,它将结果传递给激活函数。本文将忽略此实现的详细信息,并解释神经元如何完全工作,请检查:)。
4。如果您想进一步了解反向传播,请查看蒂姆在2018年如何在神经网络中工作的解释。
5。实际上,为了提高计算效率,培训通常是通过批量进行的。因此,该软件可能在反向通信之前传播32,000个字。
其他所有人都在看
试用:/ - inc //
提醒:请联系我时一定说明是从星空网上看到的!