当前位置: 首页 > 科技观察

语言模型自己学会使用搜索引擎了吗?MetaAI提出API调用自监督学习方法Toolformer

时间:2023-03-19 00:59:40 科技观察

在自然语言处理任务中,大型语言模型在zero-shot和few-shotlearning上取得了骄人的成绩。然而,所有模型都有固有的局限性,这些局限性通常只能通过进一步扩展部分解决。具体来说,该模型的局限性包括无法访问最新信息、关于事实的“信息错觉”、难以理解低资源语言、缺乏执行精确计算的数学技能等等。解决这些问题的一个简单方法是为模型配备外部工具,例如搜索引擎、计算器或日历。然而,现有的方法通常依赖于大量的人工注释,或者将工具的使用限制在特定的任务设置中,使得语言模型和外部工具的结合难以泛化。为了打破这个瓶颈,MetaAI最近提出了一种名为Toolformer的新方法,可以让语言模型学会“使用”各种外部工具。论文地址:https://arxiv.org/pdf/2302.04761v1.pdfToolformer很快引起了人们的关注。有人认为这篇论文解决了当前大型语言模型的诸多问题,并称赞:“这是本周最重要的一篇论文”。有人指出,Toolformer非常灵活高效,可以让大型语言模型以自监督的方式学习使用一些仅用少量样本的API和工具:甚至有人认为Toolformer会让我们更接近通用人工智能(AGI)又近了一步。Toolformer获得如此高评价的原因是它满足了以下实际需求:大型语言模型应该以自我监督的方式学习工具的使用,而无需大量的人工注释。这很关键。人工标注成本高只是一方面。更重要的是,人类认为有用的可能与模型认为有用的不同。语言模型需要更全面地使用不受特定任务约束的工具。这无疑打破了前面描述的瓶颈。让我们详细看看Toolformer的方法和实验结果。Toolformer方法基于具有上下文学习(ICL)的大型语言模型从头开始生成数据集(SchickandSchütze,2021b;Honovichetal.,2022;Wangetal.,2022):只需给出一些Withjust一些人类使用API的样本,LM可以用潜在的API调用注释一个巨大的语言建模数据集;然后使用自监督损失函数来确定哪些API调用实际上有助于模型预测未来的标记;最后基于对LM本身有用的API调用进行微调。由于Toolformer对所使用的数据集不可知,因此它可以用于与预训练模型完全相同的数据集,从而确保模型不会失去任何通用性和语言建模功能。具体来说,这项研究的目标是让语言模型M能够通过API调用使用各种工具。这要求每个API的输入和输出都可以表示为文本序列。这允许将API调用无缝插入到任何给定的文本中,并用一个特殊的标记标记每个此类调用的开始和结束。该研究将每个API调用表示为一个元组,其中a_c是API的名称,i_c是相应的输入。给定具有相应结果r的API调用c,该研究将API调用的线性化序列表示为不包括和包括其结果:其中和“→”是特殊标记。如下图1所示,这种方法可以让LM学会控制各种工具,并为自己选择何时以及如何使用哪种工具。给定一个数据集,该研究首先将该数据集转换为一个通过API调用增强的数据集C*。这是分三步完成的,如下图2所示:首先,研究利用M的in-context学习能力对大量潜在的API调用进行采样,然后执行这些API调用,然后检查获得的响应是??否有用用于预测Future令牌用作过滤条件。过滤后,该研究结合了对不同工具的API调用,最终生成了一个数据集C*,在该数据集上对M本身进行了微调。实验和结果该研究对各种下游任务进行了实验,结果表明,基于6.7B参数预训练的GPT-J模型(学习使用各种AP??I和工具)的Toolformer在各种上明显优于更高级的工具任务。大型GPT-3模型和其他几个基线。该研究在LAMA基准测试的SQuAD、GoogleRE和T-REx子集上评估了几个模型。实验结果如下表3所示:为了测试Toolformer的数学推理能力,在ASDiv、SVAMP和MAWPSbenchmarks上进行了研究。进行了一个实验。实验表明,Toolformer在大多数情况下使用计算器工具,明显优于OPT(66B)和GPT-3(175B)。在问答方面,该研究在三个问答数据集上进行了实验:WebQuestions、NaturalQuestions和TriviaQA。Toolformer明显优于相同大小的基线模型,但低于GPT-3(175B)。在跨语言任务方面,本研究将Toolformer与所有基线模型在MLQA上进行了比较,结果如下表6所示:测试了几个模型。Toolformer优于所有基线,但不是与TEMPLAMA日历工具。除了验证各种下游任务的性能改进外,该研究还希望确保Toolformer的语言建模性能不会因微调API调用而降低。为此,该研究在两个语言建模数据集上进行了实验,以评估模型的困惑度,如下表8所示。对于没有任何API调用的语言建模,添加API调用是没有成本的。最后,研究人员分析了随着语言模型规模的扩大,寻求外部工具帮助的能力对模型性能的影响。分析结果如下图4所示。感兴趣的读者可以阅读论文原文了解更多研究细节。