近期来,大型语言模型在各种自然语言处理任务中取得了显着的突破,特别是在需要进行复杂思维链(CoT)推理的数学问题上
比如在GSM8K、MATH 这样的高难度数学任务的数据集中,包括GPT-4 和PaLM-2 在内的专有模型已取得显著成果。在这方面,开源大模型还有相当的提升空间。为了进一步提高开源大模型处理数学任务的CoT 推理能力,一种常见的方法是使用注释/ 生成的问题- 推理数据对( CoT 数据)对这些模型进行微调,这些数据对会直接教导模型如何在这些任务中执行CoT 推理。
最近,西安交通大学、微软和北京大学的研究人员在一篇论文中探讨了一种提升思路,即通过逆向学习过程(即从LLM的错误中学习)来进一步提高其推理能力
就像一个开始学习数学的学生一样,他首先会通过学习教科书上的知识点和例题来提升自己的理解。但同时,他也会进行练习来巩固所学的知识。当他在解题时遇到困难或者失败时,他会意识到自己犯了哪些错误,并且学会如何改正这些错误,这样就形成了一个“错题本”。正是通过从错误中学习,他的推理能力得到了进一步的提高
受这个过程的启发,这项工作探讨了 LLM 的推理能力如何从理解和纠正错误中受益。
论文地址:https://arxiv.org/pdf/2310.20689.pdf
具体而言,研究人员首先生成了错误-修正数据对(称为修正数据),然后利用修正数据对LLM进行微调。在生成修正数据:需要进行重写的内容时,他们使用了多个LLM(包括LLaMA和GPT系列模型),以收集不准确的推理路径(即最终答案不正确),随后使用GPT-4作为“修正器”,为这些不准确的推理路径生成修正
生成的修正包含三条信息:(1) 原始解法中不正确的步骤;(2) 解释该步骤不正确的原因;(3) 如何修正原始解法以得出正确的最终答案。在过滤掉最终答案不正确的修正后,人工评估结果表明,修正数据在后续的微调阶段表现出了足够的质量。研究者使用 QLoRA 对 CoT 数据和修正数据微调了 LLM,从而执行了「从错误中学习」(LEMA)。
研究表明,目前的LLM可以采用逐步推进的方法来解决问题,但这种多步骤生成过程并不意味着LLM本身具有强大的推理能力。这是因为它们可能只是模仿人类推理的表面行为,而没有真正理解所需的底层逻辑和规则
这种不理解会导致在推理过程中出现错误,因此需要「世界模型」的帮助,因为「世界模型」对现实世界的逻辑和规则具有先验意识。从这个角度来看,本文中 LEMA 框架可以看成是采用了 GPT-4 作为「世界模型」,教导更小的模型遵守这些逻辑和规则,而不仅仅是模仿 step-by-step 的行为。
现在,让我们来了解一下这项研究的具体实施步骤
请看下图1(左),显示了LEMA的整体流程,包括生成修正数据:需要进行重写的内容和微调LLM这两个主要阶段。而图1(右)展示了LEMA在GSM8K和MATH数据集上的性能表现
生成修正数据:需要进行重写的内容
给定一个问答示例、一个修正器模型 M_c 和一个推理模型 M_r,研究者生成了错误修正数据对,其中表示问题 q_i 的不准确推理路径,c_i 表示对的修正。
修正不准确的推理路径。研究者首先使用推理模型 M_r,为每个问题 q_i 采样了多个推理路径,然后只保留那些最终得不出正确答案 a_i 的路径,如下公式(1)所示。
为错误生成修正。对于问题 q_i 和不准确的推理路径,研究者使用修正器模型 M_c 来生成一个修正,然后在修正中检查正确答案,如下公式(2)所示。
这里的 P_c 包括了四个带有注释的错误修正示例,可以指导修正器模型在生成的修正中包含哪种类型的信息
具体而言,带有注释的修正包括以下三类信息:
请看下图,图示1简要展示了生成修正所使用的提示
生成修正的人工评估。在生成更大规模的数据之前,研究者首先手动评估了生成修正的质量。他们以 LLaMA-2-70B 为 M_r、以 GPT-4 为 M_c,并基于 GSM8K 训练集生成了 50 个错误修正数据对。
研究人员对修正进行了分类,分为三个质量等级,分别是优秀、良好和糟糕。以下是三个等级的示例
评估结果发现,50 个生成修正中有 35 个达到了优秀质量、11 个为良好、4 个为糟糕。根据这一评估结果,研究者推断使用 GPT-4 生成修正的整体质量足以进行进一步的微调阶段。因此,他们生成了更多大规模的修正,并将所有最终得出正确答案的修正用于需要进行微调的是LLM。
需要进行微调的是LLM
在生成修正数据:需要进行重写的内容之后,研究者微调了 LLM,从而评估这些模型是否可以从错误中学习。他们主要在以下两种微调设置下进行性能比较。
一是在思维链(CoT)数据上微调。研究者仅在问题原理(question-rationale)数据上微调模型。尽管每个任务中有带注释的数据,但他们额外采用了 CoT 数据增强。研究者使用 GPT-4 为训练集中的每个问题生成了更多推理路径,并过滤掉最终答案错误的路径。他们利用 CoT 数据增强来构建一个强大的微调基线,该基线仅使用 CoT 数据,并有助于对控制微调的数据大小进行消融研究。
二是在 CoT 数据 + 修正数据上微调。除了 CoT 数据,研究者还将生成的错误修正数据用于微调(即 LEMA)。他们同样进行了控制数据大小的消融实验,以减少增量对数据大小的影响。
附录 A 中的示例 5 和示例 6 分别展示了用于微调的 CoT 数据和修正数据的输入 - 输出格式
研究人员通过实验结果证明了LEMA在五个开源LLM和两个具有挑战性的数学推理任务上的有效性
LEMA 在各种 LLM 和任务中都能持续提升性能,与仅在 CoT 数据上进行微调相比。例如,使用 LLaMA-2-70B 的 LEMA 在 GSM8K 和 MATH 上分别取得了 83.5% 和 25.0% 的成绩,而仅在 CoT 数据上进行微调则分别取得了 81.4% 和 23.6% 的成绩
此外,LEMA 与专有 LLM 兼容:带有 WizardMath-70B /MetaMath-70B 的 LEMA 在 GSM8K 上实现了 84.2%/85.4% 的 pass@1 准确率,在 MATH 上实现了 27.1%/26.9% 的 pass@1 准确率,超过了众多开源模型在这些挑战性任务上取得的 SOTA 性能。
随后的消融研究表明,在相同的数据量下,LEMA 仍然优于 CoT-alone 微调。这表明,CoT 数据和校正数据的有效性并不相同,因为两种数据源的结合比使用单一数据源能产生更多的改进。这些实验结果和分析强调了从错误中学习在增强 LLM 推理能力方面的潜力。
如需查看更多研究细节,请参阅原始论文
以上是GPT-4 做「世界模型」,让LLM从「错题」中学习,推理能力显着提升的详细内容。更多信息请关注PHP中文网其他相关文章!