Training Verifiers to Solve Math Word Problems翻译

您所在的位置:网站首页 solove翻译中文 Training Verifiers to Solve Math Word Problems翻译

Training Verifiers to Solve Math Word Problems翻译

2023-11-17 05:52| 来源: 网络整理| 查看: 265

摘要

最优的语言模型可以在许多任务中匹配人类性能,但它们在执行多步数学推理上仍然困难。为了诊断当前模型的缺陷,并支持科学研究,我们引入了GSM8K,是一个高质量的8.5k大小的小学数学单词问题的数据集。我们发现即使是最大的transformer模型也无法达到高的测试集性能,尽管该问题分布的概念很简单。为了提高性能,我们提出训练verifiers来判断模型解答的正确性。在测试期间,我们生成许多候选解决方案,并选择verifiers排名最高的解决方案。我们证明,verifiers能显着提高模型在GSM8K上的性能,我们提供了强大的经验验证,用以表明当增加比FineTuning基线更多的数据时,verifiers更加有效。

1.介绍

近年来,大型语言模型在许多不同的任务中表现出令人印象深刻的性能。Kaplan et al. (2020) 描述了增加模型大小和性能增加具有一致性的趋势,这些趋势在许多任务上都有效。但是,即使是最大的模型在执行多步数学推理上也仍然困难。模型样本经常含有灾难性错误,即使在模型被适当的finetune之后。因此,数学推理揭示了现代语言模型中的关键缺陷。   数学推理中的一个重大挑战是对个体错误的高敏感性。当生成一个解决方案时,自回归模型没有机制来纠正自己的错误。这种偏离的解决方案很快就会变得无法恢复。如果我们纯粹地依靠生成方法并从当前趋势推断,我们将需要一个过高的参数统计,以实现甚至在分布上实现好的性能,这在数学数据集的具有挑战性。这些证据强烈激发了对具有更好的方法的搜索。   类似于Shen et al. (2021a) 的当前工作,我们提出训练verifiers来评估模型生成的解决方案的正确性。在测试期间,我们将采样固定数量的候选解决方案,并选择由verifiers排名最高的解决方案。通常,verification与generation相比是一个简单的任务。   为了促进研究,我们开源了GSM8K,这是一个高质量的8.5k大小的多年级学校数学单词问题的数据集。我们设计了该数据集,以具有丰富的语言多样性,同时依靠相对简单的小学数学概念。最好的语言模型在此数据集上难以实现高性能,主要原因是由于问题的高度多样化。与此同时,GSM8K解决方案只取决于基本概念,因此实现高测试性能是一个易达到的目标。   我们的主要贡献如下:

我们提出了一个8.5k大小的小学数学问题DataSet和自然语言解决方案,可用于探讨大型语言模型的非形式化推理能力。我们表明,与FineTuning基线相比,verifiers的使用能产生与基线30倍参数大小大致相同的性能提升,并且随着数据的增加,verifiers明显更好。我们展示了dropout能作为强大的正则化器,显着提高了FineTuning和验证的性能。 2.Dataset

在这里插入图片描述   GSM8K由human problem writers构建的8.5K高质量的小学数学问题组成。我们将这些分为7.5K训练集和1K测试集。这些问题需要2到8个步骤来解决,解决方案主要涉及使用基本算术运算(+ - ×÷)执行一系列基本计算来达到最终答案。一个聪明的中学生应该能够解决每个问题。   我们根据以下设计原则创建了GSM8K。

High Quality。我们不使用error-prone scraping procedures,而是依靠人工构建问题。在基于人工的答案进行广泛的质量控制之后,我们估计只有不到2%的问题包含错误。High Diversity。我们在问题中争取构建高多样性。我们努力避免设计从同一语言模板中抽取的问题,或者仅在表面细节中不同,这是许多其他数据集中普遍的问题。 通过创建每个问题与相对独特的问题相对独特,所持的测试性能成为一个更相关的度量。Moderate Difficulty。我们选择一个对大型最优语言模型具有挑战性而不是完全无法解决的问题分布。GSM8K将帮助我们更好地了解不同模型和方法的性能变化趋势。问题不需要超出早期代数水平的概念,并且可以在不明确定义变量的情况下解决绝大多数问题。Natural Language Solutions。我们以自然语言形式收集解决方案而不是纯粹的数学表达式。我们认为这是最普遍有用的数据格式,我们希望它阐明了大语言模型的内部的属性。我们指定问题编写者尽可能地解释他们的工作,但我们允许他们以自己多样化的语言风格写出解决方案。

全GSM8K数据集可以在https://github.com/openai/gradeschool-math找到。示例问题如图1所示,我们在附录A中讨论其他数据集详细信息。

3.相关工作 3.1 Related Datasets

早期数学单词问题数据集相对较小,并且不适合测试现代语言模型的限制。Dolphin18K是一个较大的数据集,包含18k问题,但仅以方程式或最终答案的形式提供解决方案。Aqua-RAT包含100k的问题,但这个数据集具有自然语言形式的高度问题模板,并且质量较差。MathQA是最近发布的Aqua-RAT子集,重点是纠正这些错误,但即使是纠正的数据集也具有数据质量问题,约有30%的数据具有不一致。APE210K是最大的公共数据集,由210K中文学校级数学问题组成。但是,由于语言障碍和缺乏自然语言解决方案,我们无法在此数据集上评估我们的方法。   最近开发的ASDIV数据集包含2.3K数学词问题,通过确保问题具有高多样性和高质量来解决先前数据集中的公共缺陷。我们在创建GSM8K中共享这些设计原则。但是,我们注意到GSM8K提供了更大的,自然语言形式的解决方案,并且该数据集还包括需要更多步骤才能求解的问题。MATH数据集比GSM8K更大,更复杂,但高难度使得难以使用最新的语言模型来进行准确测量。   其他与推理相关的数据集专注于数学符号推理,阅读理解(LogiQA)和常识问答(CommonsenseQA)。类似于CommonsenseQA,GSM8K包括需要基本背景知识的问题,如一周内的天数。类似于LogiQA,这需要混合阅读理解和逻辑推理,GSM8K的主要困难在于,通过多个步骤正确地解释问题和推理问题。

3.2 Related Methods

以前的工作已经尝试使用循环seq2seq模型及其变体来解决经典数学单词问题。最近的工作通过设计专业的编解码器架构,从而具有更高的性能。目前,最好的结果通常依赖于来自BERT系列的大型预训练编码器。   其他最近的工作推荐适应额外的预训练任务,以进一步提高基于大型transformer模型的数学推理技巧。Hendrycks et al. (2021) 提出了由Khan学术问题和Mathematica脚本得到的AMPS语料上的预训练模型。同样,Shen et al. (2021b) 提出从互联网抽取的大学课程语料进行预训练,Peng et al. (2021) 通过预测来自表达式树的屏蔽子表式达来预训练。   类似于验证,其他方法通过微调一种语言模型,以在许多模型解答中进行选择。Nichols et al. (2020) 提出了一种采样排序的方法,通过培训来自人工编写者的偏好信号,来改善大型语言模型的协作能力。与我们工作密切相关的一个同时期工作,Shen et al. (2021a) 应用了类似的方法来解决数学单词问题,联合训练一个生成和答案排序的模型。我们的工作与他们的方法共享了许多基本相似之处,尽管我们在几个关键方面不同。首先,我们将注意力集中在自然语言解决方案的空间上,因为这是比纯数学表达式更丰富和更通用的解决方案格式。此外,这种选择使我们的模型能够发展口头分析技能,并产生人类更容易解释的解决方案。其次,我们提供了证据,即使用额外数据训练verifiers要比基线方法更有利。最后,我们使用单独的generator和verifiers网络,以防止generator过度拟合。

4.方法

我们调查了解决GSM8K中问题的两种方法:finetuning和verification。对于微调,我们的基线方法使用与GPT-3中的相同语言建模目标来进行生成预训练。在测试时,我们通过自回归采样单个具有低temperature的求解序列并检查最终答案是否正确。相比之下,verification包括采样多个高温解决方案,并分配每个解决方案的分数,然后输出最高排名的解决方案。Verifiers被训练以判断解决方案的正确性,训练信号仅通过是否匹配正确的最终答案来确定。   对于这两种方法,我们使用GPT-3系列的模型作为我们的初始化,主要关注175B和6B模型尺寸。175B型号是最大的,生成了最令人印象深刻的结果,而6B模型对于研究目的而言明显更方便。 我们在附录B中讨论超参的选择。   我们的模型经常无法准确执行计算。虽然较大的模型比较小型模型生成更少的算术错误,但这仍然是一个常见的错误来源。要缓解此问题,我们通过将由计算器产生的计算注释加入训练集来训练所有模型。在测试期间,当模型选择使用这些注释时,计算器将覆盖采样结果。详情可以在附录C中找到。

4.1 Finetuning

在这里插入图片描述   我们通过更新模型参数来执行finetuning,以最大限度地减少所有训练字符的交叉熵损失。图2显示了在20个epoch内训练不同尺寸的训练集后的测试性能。我们将相同的数据视为训练集大小的函数和模型大小的函数。 测试性能由每个测试问题的单个低温(T = 0)样本确定。不出所料,我们看到,175B模型显着优于较小的模型。假设趋势呈对数线性,我们可以天真地推断这些结果以估计使用完整的GSM8K训练集时需要 1 0 1 6 10^16 1016个参数的模型来达到80%的求解准确率。沿数据维度以外仅推断是困难的,因为效果似乎遵循对数线性趋势。尽管如此,175B模型可能需要至少额外两倍的训练数据达到80%的解决率。   在图3中,我们展示了6B模型的测试性能如何在100个训练epoch过程中变化。我们使用test@N来表示模型针对单个问题至少需要N个生成的候选猜测。我们使用低温(t = 0)来生成test@1个样本,我们使用更高的温度(t = 0.7)来生成test@100个样本。凭经验选择两个温度值以产生最佳效果。test@1性能大致单调地改善,即使我们在一开始就快速开始过拟合了测试损失。不幸的是,当我们增加epoch数量时,test@100性能比测试@1降低的更大。这是预期的:由于模型反复遇到相同的数据,因此在其预测中变得越来越不统计且过度自信。在测试时,这种过度自信导致答案空间的覆盖率差,因此当我们在测试时考虑多个样品时,它的效果边得更差。   选择具有良好覆盖范围的模型对于成功训练verifiers至关重要。凭经验,我们在前几个epoch内看到了test@100性能峰值。出于这个原因,我们使用培训的模型为2个epoch,为训练verifiers生成样本。我们在附录D中提供了来自6B和175B模型的几个示例解决方案。我们还注意到允许模型在输出最终答案之前生成完整的自然语言解决方案是很重要的。如果我们改为Finetune一个6B模型直接输出最终答案而没有任何中间步骤,性能从20.6%下降到5.2%。 在这里插入图片描述

4.2 Verification

在这里插入图片描述   为了提高FineTuning的基线,我们训练verifiers来判断模型生成解决方案的正确性,并在测试时间上搜索这些验证。基于问题和候选答案,verifiers输出这些解决方案是正确的概率。训练的解决方案仅根据是否达到正确的最终答案,来标记为正确或不正确。在实践中,一些解决方案将使用有缺陷的推理达到正确的最终答案,从而导致false positives。   如图4所示,我们如下训练verifiers:

在训练集上微调generator模型两个epoch。对于每个训练问题的generator样例采样100个候选,并将每个解决方案标记为正确或不正确。在此数据集中训练verifier单个epoch。

对于2个epoch的训练足以让generator学习该领域的基本技能。我们选择不训练更长时间,因为生成的解决方案的多样性在这一点之后开始崩溃,如图3所示。我们训练单独的generator和verifier模型,以限制generator的训练和防止过拟合,但原则上,它应该是可以组合这些模型。除非另有说明,否则我们对generator和verifier使用相同型号大小的模型。除了预测解决方案的正确性外,我们还在verifier上使用与generator相同的语言建模目标。这用作verifier的宝贵辅助目标。我们在附录E中讨论额外目标的verifier训练细节。   在测试时间,我们将为每个测试问题采样100个候选,并使用verifier对它们进行排序,然后将最高verifier分数的候选返回。6B和175B模型尺寸的verification和FineTuning之间的比较如图5所示。我们发现在低数据集大小使用verifier并不有利。我们相信这是由于对正确答案的压力来说是:用小型数据集,对正确答案的过你和比学习更广泛的正确推理的性质更快。但是,一旦我们使用足够大的数据集,我们就会从Verifiers看到强大的提升。   值得注意的是,175B verifiers比6B verifiers 需要更少的训练问题来超越FineTuning基线。请参阅附录D中通过Verifiers找到的解决方案,Appenix F中可视化了verifiers的置信度。 在这里插入图片描述

4.3 Verification Ablations

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3