像OpenAI的GPT-3这样的大型语言模型是大规模的神经网络,可以生成类似人类的文本,从诗歌到编程代码。这些机器学习模型使用大量互联网数据进行训练,获取少量输入文本,然后预测接下来可能出现的文本。
但这并不是这些模型所能做到的全部。研究人员正在探索一种称为上下文学习的奇怪现象,其中大型语言模型在只看到几个例子后就学会完成一项任务——尽管事实上它没有针对该任务进行训练。例如,有人可以向模型提供几个例句和他们的情绪(正面或负面),然后用一个新句子提示它,模型可以给出正确的情绪。
通常,像GPT-3这样的机器学习模型需要为此新任务使用新数据重新训练。在此训练过程中,模型在处理新信息以学习任务时会更新其参数。但是通过上下文学习,模型的参数不会更新,因此模型似乎在没有学习任何东西的情况下学习新任务。
来自麻省理工学院、谷歌研究院和斯坦福大学的科学家正在努力解开这个谜团。他们研究了与大型语言模型非常相似的模型,以了解它们如何在不更新参数的情况下学习。
研究人员的理论结果表明,这些庞大的神经网络模型能够包含埋藏在其中的更小、更简单的线性模型。然后,大型模型可以实现一个简单的学习算法来训练这个较小的线性模型以完成新任务,仅使用较大模型中已包含的信息。其参数保持固定。
这项研究是理解上下文学习背后机制的重要一步,为围绕这些大型模型可以实现的学习算法的更多探索打开了大门,计算机科学研究生EkinAkyürek说,他是一篇探索这种现象的论文的主要作者。通过更好地了解上下文学习,研究人员可以使模型完成新任务,而无需昂贵的再培训。
“通常,如果你想微调这些模型,你需要收集特定于领域的数据并进行一些复杂的工程设计。但是现在我们可以给它一个输入,五个例子,它就完成了我们想要的。因此,上下文学习是一个非常令人兴奋的现象,“Akyürek说。
该论文发表在arXiv预印本服务器上。
加入Akyürek论文的是谷歌大脑的研究科学家,阿尔伯塔大学计算科学教授DaleSchuurmans;以及资深作者雅各布·安德烈亚斯,麻省理工学院电气工程与计算机科学系X联盟助理教授,麻省理工学院计算机科学与人工智能实验室(CSAIL)成员;斯坦福大学计算机科学与统计学助理教授马腾宇;以及谷歌大脑的首席科学家兼研究总监DannyZhou。该研究将在学习表征国际会议上发表。
模型中的模型
在机器学习研究界,许多科学家开始相信大型语言模型可以执行上下文学习,因为它们是如何训练的,Akyürek说。
例如,GPT-3有数千亿个参数,并且是通过阅读互联网上的大量文本来训练的,从维基百科文章到Reddit帖子。因此,当有人展示新任务的模型示例时,它可能已经看到了非常相似的东西,因为它的训练数据集包含来自数十亿个网站的文本。它重复在训练期间看到的模式,而不是学习执行新任务。
Akyürek假设,上下文学习者不仅匹配以前看到的模式,而且实际上正在学习执行新任务。他和其他人通过使用合成数据为这些模型提供提示进行了实验,这是他们以前在任何地方都看不到的,并发现这些模型仍然可以从几个例子中学习。Akyürek和他的同事们认为,也许这些神经网络模型内部有更小的机器学习模型,这些模型可以训练这些模型来完成一项新任务。
“这可以解释我们在这些大型模型中看到的几乎所有学习现象,”他说。
为了验证这一假设,研究人员使用了一种称为变压器的神经网络模型,该模型具有与GPT-3相同的架构,但经过专门针对上下文学习的训练。
通过探索这种变压器的架构,他们从理论上证明了它可以在其隐藏状态下编写线性模型。神经网络由处理数据的多层互连节点组成。隐藏状态是输入层和输出层之间的层。
他们的数学评估表明,这个线性模型写在变压器最早的层中的某个地方。然后,转换器可以通过实现简单的学习算法来更新线性模型。
从本质上讲,该模型模拟和训练自身的较小版本。
探测隐藏层
研究人员使用探测实验探索了这一假设,他们观察变压器的隐藏层,试图恢复一定数量。
“在这种情况下,我们试图恢复线性模型的实际解决方案,我们可以证明参数是在隐藏状态下写入的。这意味着线性模型在某个地方,“他说。
基于这一理论工作,研究人员可能能够通过向神经网络添加两层来使转换器能够执行上下文学习。Akyürek警告说,在此之前仍有许多技术细节需要解决,但它可以帮助工程师创建可以完成新任务的模型,而无需使用新数据进行重新训练。
“这篇论文揭示了现代大型语言模型最显着的属性之一——它们能够在没有明确训练的情况下从输入中给出的数据中学习。使用线性回归的简化案例,作者从理论上展示了模型如何在读取输入时实现标准学习算法,以及经验上哪些学习算法最符合他们观察到的行为,“FacebookAIResearch的研究科学家MikeLewis说。“这些结果是理解模型如何学习更复杂的任务的垫脚石,并将帮助研究人员为语言模型设计更好的训练方法,以进一步提高其性能。
展望未来,Akyürek计划继续探索上下文学习,其函数比他们在这项工作中研究的线性模型更复杂。他们还可以将这些实验应用于大型语言模型,以查看它们的行为是否也由简单的学习算法描述。此外,他希望更深入地挖掘可以实现上下文学习的预训练数据类型。
“通过这项工作,人们现在可以想象这些模型如何从例子中学习。所以,我希望它能改变一些人对情境学习的看法,“Akyürek说。“这些模型并不像人们想象的那么愚蠢。他们不只是记住这些任务。他们可以学习新的任务,我们已经展示了如何做到这一点。