使用语言模型构建AGI

2020-08-18 10:30:23

在很多方面,这使得它类似于AlphaGo或深蓝;虽然在一个领域接近人类的能力(下国际象棋/围棋,或者真正令人印象深刻的写作),但它似乎不会真的像AlphaGo很快就会把地球变成回形针一样。虽然它的著作在模仿人类方面令人印象深刻,但GPT-3(或任何潜在的未来GPT-x)对过去的交互没有记忆,也不能遵循目标或最大化效用。然而,语言建模与国际象棋、围棋或图像分类有一个重要的区别。自然语言本质上编码了关于世界的信息-整个世界,而不仅仅是戈班的世界,以一种比任何其他形式都更具表现力的方式。[1]通过利用嵌入在语言模型中的世界模型,有可能建立一个原型AGI。

语言模型的明确目标仅仅是最大化模型在自然语言数据上的可能性。在GPT-3使用的自回归公式中,这意味着能够尽可能好地预测下一个单词。然而,这一目标将更多的权重放在语法和拼写等大的文本规模的差异上,而不是语义和逻辑上的细微差异,这反映了分布上非常微妙的变化。然而,一旦前者近乎完美,唯一可以继续改进的地方就是后者。

在极端情况下,任何模型的损失达到自然语言的香农熵-由于语言固有的随机性,语言模型可能达到的理论上最低损失-将在各个方面与真人的作品完全无法区分,我们越接近它,损失的每一点改进对质量的影响就越抽象。或者,换句话说,使用马尔可夫链生成器将单词串在一起可以让你走到50%的路程,找出语法可以让你多走50%的剩余距离,跨段落停留在主题上可以让你多走50%的路程,逻辑上的一致可以让你多走50%的路程,依此类推。[2]。

H(X)=−E[log P(X)]=−∑x∈Ωf X(X)log f X(X)\Begin{Alignment}H(X)=-\Mathbb E[\log\Mathbb P(X)]=-\SUM_{x\in\Omega}f_X(X)\log f_X(X)\End{Alignment}​H(X)=−E[log P(X)]=−。​x∈Ω​∑​​f​X​​(X)log f​X​​(X)​​为什么?因为如果你有一个连贯但逻辑上不一致的模型,变得逻辑上更一致有助于你更好地预测语言。拥有人类行为的模型可以帮助你更好地预测语言。拥有一个世界模型可以帮助你更好地预测语言。随着语法和基本逻辑一致性的低垂果实被拿走,模型继续改进损失的唯一地方就是世界模型。预测文本相当于人工智能。

GPT-3之所以如此重要,是因为它提供了证据,表明只要我们不断增加模型大小,我们就可以不断降低损失,可能一直持续到达到文本的香农熵。不需要巧妙的架构或复杂的手工试探法。只要把它放大,我们就可以得到一个更好的语言模型,一个更好的语言模型就需要一个更好的世界模型。

但是,如果这个语言模型被隐式地表示在GPT-x中,我们如何使用它呢?嗯,我们可以用自然语言问它,在给定一系列事件的情况下,它认为下一步会发生什么,它的输出分布将近似于普通人认为这些事件之后会发生什么的分布。太好了--我们有了一个有用的世界模型。

“但是等等!”您说,“各种实验表明,GPT-3在世界建模方面经常失败,仅仅猜测添加更多参数就能解决问题就是一个巨大的飞跃!”如果你是这么想的,那你就完全正确了。我所做的最大也最有可能是错误的假设是,更大的模型将发展出更好的世界模型。因为当损失接近香农熵时,它的世界建模能力必须变得和互联网上的普通人一样好[3],这归结为两个问题:“我们真的能做出损失足够接近香农熵的模型吗?”以及“多近才算接近,才能拥有让这一切变得实用的世界建模能力?”

第一个问题的答案是“最有可能的”--这是GPT-3的主要内容。第二个问题的答案是…。没人知道。一些人已经展示了使GPT-3在世界建模方面做得更好的方法,但单凭这一点可能还不够。当具有1万亿,然后10万亿,然后100万亿参数的模型可用时,我们将有经验证据来检验这一假设是否正确。如果gpt-x展示了在现实世界中预测结果的不可思议的能力,那么这仅仅是

然而,仅靠世界模特并不能成为经纪人的代言人。[4]那么,怎样才能把世界模特变成经纪人呢?嗯,首先我们需要一个目标,比如“最大限度地增加回形针的数量”。然后,我们就问世界模特“我可以采取什么行动来最大限度地增加我的回形针数量?”很简单,对吧?实际上,不完全是。问题是,我们的世界模型可能无法很好地考虑接下来可能发生的所有事情,无法做出合理的答案。

那么我们能做些什么呢?那么,向世界模型索要在给定的世界状态下可以做的事情的列表可能不会超出足够强大的语言模型的能力范围(想一想:“我处于困境中。下面是我可以做的事情列表:“)。类似地,问世界模型你在某个假设的世界里会得到多少回报,在那里你采取了一系列的行动也是可能的-想象一下这样的问题:“我去易趣(EBay)。我查找回形针,按价格上涨排序。我在单子上的第一项花了100美元。我将有多少个回形针?“[5]这将让我们计算出代理在任何给定步骤(策略函数)中可以采取哪些操作,以及每个步骤序列将为代理带来多少回报(价值函数)。

所以现在,要估计任何动作的状态-动作值,我们可以简单地使用蒙特卡罗树搜索来估计状态-动作值!从给定的代理状态开始,我们可以使用世界模型推出操作序列。通过对所有推广进行集成,我们可以知道工程师考虑的每一项操作可预期获得多少未来预期回报。然后,例如,我们可以简单地使用具有状态操作值函数的贪婪策略来决定要采取的操作。

这些动作中的每一个都可能是非常高水平的,比如“想出最便宜的方式来买回形针”,但得益于语言的灵活性,我们可以用简短的记号序列来描述非常复杂的想法。一旦代理决定一个动作,要实际执行这些抽象动作,可以使用语言模型将该动作分解为更小的子目标,如“在Amazon上找出最便宜的回形针”,这类似于分层强化学习。根据模型的功能和操作的抽象程度,甚至可能只是将操作分解为详细的指令列表也是可行的。

我们也可以将代理状态表示为自然语言。由于代理状态只是观察的压缩表示,我们可以要求语言模型为其自己的内部世界状态总结任何观察的重要信息。语言模型也可以用来周期性地修剪(即忘记)其状态中的信息,以便为更多的观察腾出空间。

总而言之,这给我们带来了一个系统,在这个系统中,我们可以将来自外部世界的观察传递进来,花一些时间思考该做什么,并用自然语言输出一个动作。

要处理输入,您可以有一个输入模块,它可以将各种形式的观察转换为与当前座席状态相关的汇总文本。例如,您可以使用类似于iGPT的内容来输入摄像机图像或屏幕截图,或者从代理请求的网页中输入原始HTML。具体如何做到这一点与问题无关;重要的是输入都以某种方式转换为文本并添加到代理状态。我提供的例子只是为了让你们相信,这绝对不是不可逾越的。

最后,要让模型在实际应用中发挥作用,您可以再次使用语言模型将自然语言转换为代码,然后执行这些代码、shell命令、按键序列或其他许多可能的方式中的任何一种。与输入一样,解决输出问题的不同方法有无限种,哪一种最终被证明是最好的与我们的讨论完全无关;重要的是可以从纯文本代理中获得各种形式。[6]

这更多的是一个思想实验,而不是明天将要发生的事情;今天的GPT-3在世界建模方面还不够好。此外,这种方法在很大程度上依赖于至少一个主要假设-未来更大的模型将具有更好的世界建模能力-以及一系列其他较小的隐含假设。,这可能是我们最接近为AGI敲响火警的事情:现在有一条通往原始AGI的具体路径,它有一个不可忽视的工作机会。

感谢Zitterbewegung,realmeatyHuman,和Shawn Presser花时间对这篇博客文章的草稿提供反馈!

对于编码明确、复杂的概念来说,图像远不如文本好,除非您将文本放在图像中,但在这一点上,这只是额外步骤的语言建模。此外,图像可以编码复杂的想法,但以信息密度低得多的方式编码;我毫不怀疑,足够大的图像模型也可以通过图像了解关于世界的此类信息,但成本很可能比具有同等世界建模能力的语言模型高出数个数量级。↩︎。

看待这一问题的另一种方式是打胆小球。大多数令人印象深刻的gpt-3演示展示了令人印象深刻的世界知识,但这告诉我们,模型需要改进大约log2(N)/L\log_2(N)/L log​2​​(N)/L位,其中N和L分别是达到该质量级别所需的cherryping数量和考虑的世代长度。换句话说,cherryping提供了一个窗口,让我们了解未来的模型会有多好;而且通常情况下,cherryped的样本在逻辑上要连贯得多。

在一个小语料库上训练的马尔可夫链文本生成器代表着对随机性的巨大飞跃:人们可能只需要生成数百万个样本就可以得到几个连贯的页面,而不是必须生成无数千万亿个样本;通过增加其n元语法的n的深度,这可以改进到数百或数万个。[…]。但对于GPT-3,一旦拨入提示符,比例似乎已经下降到更接近1:5-甚至可能低至1:3!格温。

↩︎。

尽管那些关于普通网民智力的过于常见的嘲讽言论会让你相信,但这实际上并没有那么糟糕!↩︎!

纯世界模型在很多方面都类似于Oracle AIS的思想,特别是预报器。这些基于LM的世界模型是否足够强大,能够模拟它们自己输出的影响,还有待观察。↩︎

我们可以用一种更复杂的方式来做这件事,通过微调模型,或者使用较小的模型来操纵它,等等,让模型输出我们需要的东西,如果只是善意地询问并提供例子,比如GPT-3今天是如何使用的,结果证明还不够好。↩︎。

如果有一个足够强大的代理,可能甚至不需要赋予它在现实世界中实际行动的能力。基于LM的代理可能(希望如此?)。不过,不会变得这么强。↩︎