机器之心报道
简单的小学数学应用问题,对于人类来说不算什么,但对于模型来说,可能是有难度的。
比如问题:安东尼有 50 支铅笔。他把 1/2 的铅笔给了布兰登,剩下的 3/5 铅笔给了查理。他保留了剩下的铅笔。问安东尼保留了多少支铅笔?
像 GPT-3 这样的大型语言模型虽然取得了许多令人印象深刻的技能,包括模仿人的多种写作风格、20 分钟内完成论文等等。然而,类似 GPT-3 这样的模型很难执行需要进行准确多步推理的任务。就如上述问题让模型给出准确答案还是困难的。
尽管类似 GPT-3 这样的模型可以推导出正确解决方案大致内容,但也经常会产生严重的逻辑错误。
为了在复杂逻辑领域可以达到与人类相媲美的性能,模型必须具有判别自身错误的能力,并谨慎地执行之后的过程。但是,模型如何判别解决方案是否正确,来自 OpenAI 的研究者提出了一个训练验证器(verifier)来判断模型完成的正确性。
在测试阶段会生成许多候选解决方案并选择排名最高的一个。证明验证(verification)显着提高了 GSM8K 的性能,此外也为这一观点(随着数据的增加,验证比微调基线更有效)提供了强有力证据。
具体来说,该研究训练了一个解决小学数学问题的系统,其准确率约是经过微调的 GPT-3 模型的两倍。它能像真正的学生一样可以解决 90% 的数学应用问题:在提供的数据集中进行了小样本测试,结果表明 9-12 岁的学生测试得分为 60%,该研究所提系统在相同的问题上测试得分 55%。
这一结果非常重要,因为今天的 AI 在常识性多步推理方面仍然很弱,即使对小学生来说也很容易,但 AI 还是存在很大的缺陷。该研究通过训练模型来识别其错误,以便它可以反复试错,直到找到可行的解决方案。
论文地址:https://arxiv.org/pdf/2110.14168.pdf
数据集地址:https://github.com/openai/grade-school-math
下面展示了该研究所提新方法生成的解决方案其中一个案例:
Tim 种了 5 棵树。他每年从每棵树上收集 6 个柠檬。他十年能得到多少柠檬?
175B Verification:正确
6B Verification:正确
GSM8K 数据集
OpenAI 基于四个设计原则创建了 GSM8K 数据集:高质量、高多样性、中等难度和自然语言解决方案。
GSM8K 数据集由 8.5K 个高质量小学数学应用题组成。每个问题需要 2 到 8 步解决,解决方案主要涉及使用加减乘除等基本算术运算执行一系列基础计算以获得最终答案。微调后的 SOTA 模型在该数据集上表现不佳,主要是问题的高度多样性导致的。与此同时,GSM8K 解决方案仅依赖于基本概念,因此实现高测试性能是一个容易实现的目标。
GSM8K 数据集中的三个示例问题。
值得注意的是,GSM8K 中的解决方案是用自然语言而不是纯数学表达式编写的。通过坚持使用自然语言,模型生成的解决方案更容易被人类解释。OpenAI 的方法保持相对领域不可知。
方法
OpenAI 研究了两种解决 GSM8K 问题的方法:微调和验证。微调是基线方法,它使用与 GPT-3 中生成式预训练相同的语言建模目标(Brown 等人,2020 年)。在测试时,OpenAI 通过自回归采样单个低温解决方案并检查最终答案是否正确来判断性能。相比之下,验证包括对多个高温解决方案进行采样,为每个解决方案分配一个分数,并输出排名最高的解决方案。验证器被训练来判断解决方案的正确性,其中训练信号完全取决于解决方案是否获得了正确的最终答案。
对于这两种方法,OpenAI 使用 GPT-3 系列模型作为初始化,主要关注 175B 和 6B 大小的模型。175B 模型最大,产生的结果最令引人瞩目,而 6B 模型更易于实现研究目。
微调
OpenAI 通过更新模型参数来进行微调,以最小化所有训练 token 的交叉熵损失。下图 2 显示了对 20 个 epoch 时不同大小的训练集进行微调后的测试性能。
结果不出所料,可以看到 175B 模型明显优于较小的模型。假设一个对数线性趋势,我们可以简单地推断这些结果,以估计当使用完整的 GSM8K 训练集时,需要具有 10^16 个参数的模型才能达到 80% 的求解率。尽管如此,175B 模型似乎需要至少两个额外数量级的训练数据才能达到 80% 的求解率。
训练验证器既可以在全部的生成解决方案里进行单个标量预测(single scalar prediction),也可以在解决方案的每个 token 后进行单个标量预测,OpenAI 选择后者,即训练验证器在每个 token 之后进行预测。实验结果如图 6a 所示,它们分别标记为「解决方案级别」和「token 级别」。
在图 6b 中,通过消融实验验证训练验证器中使用目标(objective)的作用, OpenAI 将使用两个目标与仅使用验证目标进行比较。
在图 6c 中,OpenAI 对生成器和验证器的大小进行了实验,研究发现使用大的生成器、小的验证器组合性能显著优于小的生成器、大的验证器组合。
花粉社群VIP加油站
猜你喜欢