新方法挑战比自己高30倍的大参数模型,力证参数并非越大越好,这一新方法是什么?
1
训练验证器:从错误中学习的模型
像GPT-3这样的大型语言模型有许多惊人的技能,包括模仿多种写作风格,自动编程、自然对话、语义搜索等。然而,它们很难完成需要精确的多步骤推理的任务,比如解决小学数学应用题。
「小明每半小时喝一瓶水。一个普通的数独难题要花他45分钟。一个极难的数独需要4倍的时间。做一道极难的数独的时间他喝了多少瓶水?」
在这样的数学题中,GPT-3要匹配人类在复杂逻辑领域中的表现,一味提高参数,是解决办法的长远之策吗?
并不!OpenAI在新方法中提到,为什么不让模型学会识别自己的错误呢?从许多候选的解决方案中选择出最佳方案!
为此,OpenAI训练了验证器(verifier),来评估所提出的解决方案是否正确。可比通过更新模型参数,最小化所有训练token的交叉熵损失的方法要多一个思路。
增加一个“验证”模块,通过反复试错,学习,再计算,原先微调无法解决的GPT-3逻辑推理能力,在新方法中得到进步。
对于两种思路,OpenAI通过新的GSM8K数据集来测试两种方法:
高质量:GSM8K中的问题都是人工设计的,避免了错误问题的出现。
高多样性:GSM8K中的问题都被设计得相对独特,避免了来自相同语言模板或仅在表面细节上有差异的问题。
中等难度:GSM8K中的问题分布对大型SOTA语言模型是有挑战的,但又不是完全难以解决的。这些问题不需要超出早期代数水平的概念,而且绝大多数问题都可以在不明确定义变量的情况下得到解决。
自然语言解决方案:GSM8K中的解决方案是以自然语言而不是纯数学表达式的形式编写的。模型由此生成的解决方案也可以更容易被人理解。此外,OpenAI也期望它能阐明大型语言模型内部独白的特性。
GSM8K中的三个问题示例,红色为计算的注释
在GSM8K数据集上,OpenAI测试了新方法验证(verification)和基线方法微调(fine-tuning)生成的答案。
即4种不同的解决方案:6B微调、6B 验证、175B 微调和 175B 验证。
在性能展示中,OpenAI提供了十个数学题实例,其中一个是的解决方案如下:
小明种了 5 棵树。他每年从每棵树上收集 6 个柠檬。他十年能得到多少柠檬?
3
写在最后
通过OpenAI所展现出的10个数学实例是看出,使用验证方法比单纯扩大参数要更加智能,但缺点是并不稳定。比如在另一个问题实例中,仅有175B验证模型输出正确结果:小明是一所私立学校的院长,他有一个班。小红是一所公立学校的院长,他有两个班,每个班的人数是小明班级人数120人的1/8。问两所学校的总人数是多少?
AI发展道阻且长,目前绝大多数的机器学习仍依赖于数据堆砌,缺乏根本性的技术突破,存在一定的发展瓶颈。Google 工程总监 Ray Kurzweil 曾表示,直到 2029 年,人类才有超过 50% 的概率打造出 AGI 系统,还有一部分专家表示至少要到2099年或2200年。
现下,通过在一些简单的领域试验新路径,识别和避免机器学习的错误是推动模型发展的关键方法,比如这种简单的小学数学题。最终当我们试图将模型应用到逻辑上更复杂的领域时,那些不被了解的黑箱子将变得越来越透明。
参考链接:https://openai.com/blog/grade-school-math/
https://zhuanlan.zhihu.com/p/427877874
雷锋网
相关文章
猜你喜欢