深度学习自然语言处理 原创
作者:Winni
OpenAI最新研究 <Let’s verify step-by-step> 于昨天发布,引起了广泛关注。这个想法非常简单,可以用一句话来概括:
对于复杂的逐步推理问题,我们在每个步骤都给予奖励,而不仅仅在最后根据结果给予一个奖励。这种密集的奖励信号取得了更好的结果。
小时候老师就告诉过我们,做作业要写出解题过程,不写解题步骤会被扣分,看来这个想法确实有道理!
之前的研究已经发现,大语言模型 (LLMs) 可以通过逐步思考 (Chain of Thought, CoT) 解决多步推理任务。然而,即使是最先进的模型也常常会产生错误信息,编造出虚假的事实。
一种有效的解决方法是训练奖励模型来区分好的和不好的输出结果,并通过强化学习进一步优化。但最终模型的性能很大程度上依赖于奖励模型本身的质量。因此,我们需要研究如何有效地训练可靠的奖励模型。
为此,OpenAI提出过程监督方法 (process supervision),训练了一种新的奖励模型,在数学问题解决方面取得了新的突破。与仅仅奖励最终正确结果的结果监督 (outcome supervision) 不同,他们通过在每个推理步骤上给予奖励,使得模型的性能显著提升。
这种过程监督不仅在性能上有所改进,还对于模型的对齐性有重要意义。此外,这项研究还改善了GPT模型中的幻觉问题,即在不确定性情况下产生虚假信息的倾向。
需要注意的是,过程监督需要更多的人工标注。OpenAI公开了他们的人工反馈数据集,其中包含了12,000个MATH问题的75,000个解决方案,共计800,000个步骤级别的标签。
如果你想深入了解OpenAI的这项研究,我们为你准备了第一手的论文解读。让我们一起来看看过程监督方法的一些细节吧!
Blog: https://openai.com/research/improving-mathematical-reasoning-with-process-supervision
Paper: https://cdn.openai.com/improving-mathematical-reasoning-with-process-supervision/Lets_Verify_Step_by_Step.pdf进NLP群—>加入NLP交流群
实验方法
实验设置
作者进行了一项结果监督和过程监督的比较研究,在两种规模下进行了实验。其中,结果监督可以直接检查数学题的结果,不需要人类参与,而过程监督则需要人类标注者来标记每个步骤的正确性。
在大规模实验中,作者首先对所有GPT-4模型进行了微调,致力于训练最可靠的结果奖励模型 (outcome reward model, ORM) 和过程奖励模型 (process reward model, ORM)。然而,这些奖励模型的训练集无法直接进行比较。因此,作者还训练了一些小规模的模型来进行实验,同时使用大模型来指导小模型的训练,以减少人类标记成本。
在每个模型规模下,使用一个固定的模型(实验里用的是GPT-4)作为生成器(generator)来生成所有的解决方案。作者没有尝试通过强化学习(RL)来改进生成器,而是专注于训练最可靠的奖励模型。评估奖励模型的可靠性则通过对生成器产生的解决方案进行最佳N选1搜索,并根据最终答案进行自动评分来衡量的。更可靠的奖励模型会更频繁地选择正确的解决方案。
所有大规模模型都是从GPT-4模型进行微调的。该模型的预训练仅用于预测下一个标记,它没有经过任何来自人类反馈的RL训练(RLHF)。小规模的基础模型与GPT-4在设计上类似,但其计算量大约少了200倍。作为额外的预训练步骤,作者将所有模型在一个包含大约15亿个与数学相关的标记的数据集MathMix上进行微调。
生成器
为了更容易解析单个步骤,作者首先要训练生成器以按照换行符分隔的逐步格式生成解决方案。具体而言,作者首先少量生成MATH训练问题的解决方案,筛选出达到正确最终答案的解决方案,并对GPT-4模型在此数据集上进行一次微调。此步骤并不旨在教会生成器新的技能,而仅旨在教会生成器以所需的格式生成解决方案。
数据收集
为了收集过程监督数据,作者向大规模生成器抽样呈现MATH问题的逐步解决方案,供人类数据标注者标注。标注者的任务是为解决方案中的每个步骤分配正面、负面或中性的标签,如下图所示。正面标签表示该步骤是正确合理的,负面标签表示该步骤要么是不正确的,要么是不合理的,中性标签表示存在歧义。
作者仅从大规模生成器标记解决方案,将收集到的步骤级标签数据集称为PRM800K。PRM800K训练集包含了来自12,000个问题的75,000个解决方案中的800,000个步骤级标签。为了减少过拟合,作者将来自4,500个MATH测试问题的数据包含在PRM800K训练集中,仅在剩余的500个MATH测试问题上评估模型。
在数据收集过程中需要向数据标注者展示可能的解决方案。最直接的策略是均匀地展示生成器生成的解决方案。然而,如果展示明显错误的解决方案,获得的人工反馈就没有那么有价值。因此,研究团队选择性地展示给数据标注者某些解决方案——他们更愿意展示那些更有可能欺骗最佳奖励模型的解决方案。
此外,作者还在数据收集过程的几个时间点迭代地使用最新的数据重新训练过程奖励模型PRM。在每次迭代中,对每个问题生成N个解决方案,并仅向数据标注者展示得分最高的K个具有说服力的错误答案解决方案。作者尝试将此top-K过滤应用于问题级别(每个问题K个解决方案)或全局级别(总共K个解决方案,在问题之间不均匀分布)。
结果奖励模型ORM
作者从生成器中均匀抽样每个问题的固定数量的解决方案,并训练ORM来预测每个解决方案的正确性。在实践中,通常通过自动检查最终答案来确定正确性。在测试时,使用ORM在最后一个标记处的预测作为解决方案的整体得分。需要注意的是,用于确定ORM目标的自动评分并不完全可靠:通过错误的推理得出正确答案的假阳性解决方案会被误分。
过程奖励模型PRM
作者训练了过程奖励模型PRM来预测每个步骤中最后一个标记后的步骤的正确性。这种预测采用单个标记的形式,并且他们在训练过程中最大化了这些目标标记的对数似然。因此,PRM可以在标准语言模型流水线中进行训练,无需进行任何特殊调整。在测试时,他们只需对整个解决方案进行一次PRM前向传递,就可以确定步骤级别的预测。为了比较多个解决方案,他们需要为每个解决方案计算单个得分。这个过程是重要的,但也是直接的:他们将解决方案的PRM得分定义为在PRM下每个步骤都正确的概率,并实现为每个步骤的正确性概率的乘积。
下图是两个不同解决方案的大规模PRM得分。对于同一个问题的两个解决方案,通过PRM进行评分。左边的解决方案是正确的,而右边的解决方案是错误的。绿色背景表示高的PRM得分,红色背景表示低的得分。PRM正确地识别出了错误解决方案中的错误。
在提供过程监督时,他们有意选择只监督到第一个错误的步骤。这样做使得结果监督和过程监督之间的比较更加简单明了。对于正确的解决方案,两种方法提供相同的信息,即每个步骤都是正确的。对于不正确的解决方案,两种方法都揭示了至少存在一个错误,而过程监督还揭示了该错误的具体位置。如果他们在第一个错误之后提供额外的过程监督,那么过程监督将具有更大的信息优势。这个决策还保持了对人类的标注成本相似:在不依赖于易于检查的最终答案的情况下,确定解决方案的正确性等价于确定其第一个错误。
大规模监督学习
研究团队训练了大规模的PRM,使用PRM800K中的步级标签进行训练。为了确保大规模ORM基准线尽可能强大,他们从生成器中对每个问题进行了100次均匀采样进行训练。这意味着ORM训练集与PRM800K没有重叠,并且ORM训练集的规模比PRM800K大一个数量级。需要注意的是,仅在PRM800K解决方案上训练ORM可能存在问题,因为主动学习策略严重偏向了错误答案的解决方案。作者曾尝试在PRM800K解决方案的超集上训练ORM,通过混合均匀采样的解决方案,但发现这并没有提高ORM的性能。
下图显示了每个奖励模型的最佳N表现如何随N的变化而变化。由于多数投票被认为是一种强大的基准线,作者还将该方法作为比较的一个点进行了比较。虽然ORM的表现略优于多数投票基准线,但PRM明显优于两者。不仅在所有N值上PRM的性能更高,而且随着N的增加,性能差距越来越大。这表明,在搜索大量模型生成的解决方案时,PRM比ORM和多数投票更有效。
研究团队还尝试了使用RM加权投票来结合PRM和多数投票的优势,但并没有明显改善性能。
小规模合成监督学习
为了更好地比较结果和过程监督,需要分离出两个混淆因素。首先,ORM和PRM的训练集无法直接进行比较:PRM训练集是通过主动学习构建的,偏向于错误答案的解决方案,并且规模小了一个数量级。其次,最终答案的评分会给达到正确最终答案但推理过程错误的虚假解决方案提供正面标签。这可能会损害ORM的性能,而这种效果不能归因于一般的结果监督。由于收集人工反馈的成本很高,无法轻易地通过人工标注者去除这些因素。相反,作者使用大规模的PRM来监督较小的模型来进行相关的消融实验。这个设置可以以较低的成本模拟大量的数据收集。
过程监督与结果监督
作者们进行了直接比较过程监督和结果监督的实验。首先,他们从一个小规模的生成器中随机选取每个问题1到200个解决方案。针对每个数据集,他们提供三种监督方式:来自PRMlarge(即大规模PRM,以下简称PRMlarge)的过程监督、来自PRMlarge的结果监督以及来自最终答案检查的结果监督。这三种奖励模型之间唯一的区别就是监督方式,除此之外它们在相同的数据集上进行训练。
在下图a中,作者通过每个模型的500个最佳选择来评估每个奖励模型。结果显示,过程监督在所有数据收集规模上明显优于结果监督的两种形式。在下图b中,他们通过不同的N值评估每个系列中最佳奖励模型的最佳N表现。
结果显示,使用PRMlarge进行结果监督明显比最终答案检查更有效。这可以解释为PRMlarge为达到正确的最终答案但使用了错误推理的解决方案提供了更好的监督。目前尚不清楚PRMlarge还是最终答案检查更适合作为结果监督的基准。虽然最终答案监督更明确地基于结果,但其主要缺点(存在错误的正例)在MATH数据集中可能被过分强调。由PRMlarge提供的结果监督更好地代表了在不容易出现错误正例的领域中的结果监督。
主动学习
最后,作者研究了主动学习的影响,使用一种小规模的奖励模型PRMselector,对每个问题从样本中选择一份进行训练,并使用该模型对每个问题评分1000个样本。为了训练较大规模奖励模型,作者从每个问题选择N个样本,其中80%是最令人信服的错误答案样本,20%是剩下的最令人信服的样本(正确或错误答案)。作者使用PRMlarge对所选样本进行评分并基于这些评分进行训练。这个过程确保所有样本在PRMselector下都相对令人信服,并且大部分已知包含至少一个错误,并且整体数据集不会过分偏向错误答案的解决方案。这种数据标记方案的性能如图4a所示。通过比较具有和不具有主动学习的最佳拟合线的斜率,估计这种形式的主动学习比均匀数据标记大约高效2.6倍。注意基于最大主动学习数据集(每个问题200个样本)训练的模型似乎略低于预期的趋势线。这一观察的最佳解释是,200个样本代表了整体选择池(1000个样本)的相当大比例,这种相对缺乏多样性限制了主动学习的潜在优势。
泛化能力
为了衡量样本外的泛化能力,作者在一个包含224个STEM问题的保留集上评估了大规模ORM和PRM,这些问题来自最近的AP物理学、AP微积分、AP化学、AMC10和AMC12考试。这些测试是在预训练数据集编制之后发布的,因此可以高度确信模型没有见过这些问题。结果表明PRM的表现优于ORM和多数投票。这说明PRM具有较好的泛化能力,能够在新的测试问题上表现出色。
讨论
信用分配
过程监督相比结果监督有一个明显的优势,那就是它提供了比结果监督更精确的反馈。通过结果监督训练的奖励模型面临着一个困难的信用分配任务——为了良好地泛化,它必须确定错误解决方案的具体错误之处。这对于难题来说尤其困难:大多数由模型生成的解决方案都存在某种错误,因此结果监督中负标签的边际价值较低。相比之下,过程监督提供了更丰富的信号:它不仅指定了前几个步骤中有多少是正确的,还精确定位了错误步骤的位置。
对齐影响
过程监督在与人工智能对齐相关的方面比结果监督具有几个优势。过程监督更有可能产生可解释的推理,因为它鼓励模型遵循人类认可的过程。过程监督本质上更安全:它直接奖励对齐思维链,而不是依赖结果作为对齐行为的代理。相比之下,结果监督更难以审查,传达的偏好也不够精确。在最坏的情况下,使用结果作为不完美的代理可能导致模型在学习利用奖励信号后变得不对齐。在某些情况下,为了安全的AI系统可能会导致性能降低,这是已知的对齐税。一般来说,任何对齐税都可能妨碍对对齐方法的采用,因为存在部署最强大模型的压力。过程监督实际上产生了负面的对齐税。这可能会导致过程监督的广泛采用,这将产生积极的对齐副作用。
测试集污染
MATH数据集的测试集包含了在多个在线场合讨论过的问题,很可能其中一些问题出现在模型的预训练数据集中。作者尝试使用字符串匹配的启发式方法从MathMix数据集中删除所有MATH问题,但由于人们可以在网上发布难以检测到的问题改写,很难对MathMix和MATH数据集之间的重叠部分做出强有力的保证。在检查模型生成的解决方案时,作者没有明显发现模型记住了MATH问题的迹象。然而,依旧无法排除可能会逃过手动检查的细微记忆形式,而且仍然有可能某种程度的污染会稍微夸大模型在MATH测试集上的表现。即使在这种情况下,我们预计任何污染都会在所有方法中表现出类似的情况,并且在整个工作中进行的相对比较大部分不会受到影响。此外,PRM经常提供一些在生成器下的解决率很低的MATH问题的正确解决方案。生成器的低解决率进一步表明它没有通过测试集污染遇到过这些问题。
总结
这篇研究表明,在数学推理领域,通过过程监督可以训练出比结果监督更可靠的奖励模型。同时,通过主动学习,可以仅呈现最有价值的模型完成,从而降低了人工数据收集的成本。研究团队发布了名为PRM800K的完整数据集,其中包含用于训练最先进奖励模型的人工反馈数据。他们希望通过消除这一重要的研究门槛,推动相关领域对大型语言模型的对齐研究。他们认为,目前对过程监督的研究还不够深入,期待未来的工作能更全面地探索这些方法的普适性。
进NLP群—>加入NLP交流群