Improving Chain-of-Thought Reasoning through Direct Preference Optimization in Self-Training

💡 原文英文,约100词,阅读约需1分钟。
📝

内容提要

本文提出了一种名为Step-DPO的方法,通过优化推理步骤而非整体答案,显著提高大型语言模型在数学推理任务中的准确性。实验结果显示,模型在MATH和GSM8K测试集上表现优异,超越多种闭源模型。此外,研究探讨了训练与推理的权衡,为提升模型性能提供了新见解。

🔎

延伸解读

Step-DPO 的核心思路:优化步骤而非整体答案

Step-DPO 将每个推理步骤作为优化单位,而不是对最终答案进行整体评估。这种方法通过构建步骤级的偏好数据,让模型在推理过程中逐步改进。文章指出,自动生成的数据比人类或 GPT-4 生成的数据更有效,仅需 10K 个偏好数据对和少于 500 个训练步骤,就能让超过 70B 参数的模型在 MATH 数据集上准确率提升近 3%。

实验表现:在数学推理任务上超越闭源模型

将 Step-DPO 应用于 Qwen2-72B-Instruct 后,模型在 MATH 和 GSM8K 测试集上分别达到 70.8% 和 94.0% 的分数。这一结果超过了包括 GPT-4-1106、Claude-3-Opus 和 Gemini-1.5-Pro 在内的一系列闭源模型。这表明,通过步骤级偏好优化,开源模型可以在复杂推理任务上取得领先性能。

数据收集与训练方法:MCTS 与结果验证结合

研究采用蒙特卡洛树搜索(MCTS)迭代收集偏好数据,将实例级奖励分解为步骤级信号。为了增强中间步骤的一致性,方法结合了结果验证和逐步自我评估,不断更新新生成数据的质量评估。然后使用直接偏好优化(DPO)根据这些步骤级偏好数据更新语言模型策略。

训练与推理的权衡及方法扩展

文章探讨了训练和推理计算的权衡关系,为方法如何有效提升性能提供了见解。此外,研究还涉及对 DPO 损失函数的改进,以缓解低质量响应和约束处理之间的权衡问题。这些扩展表明,Step-DPO 不仅关注准确性提升,也注重训练效率和模型行为的平衡。

❓

Q&A

Step-DPO方法是如何提高数学推理准确性的?

Step-DPO通过优化推理步骤而非整体答案,显著提高大型语言模型在数学推理任务中的准确性。

在MATH和GSM8K测试集上,Step-DPO的表现如何?

Step-DPO在Qwen2-72B-Instruct模型上,在MATH和GSM8K测试集上分别达到70.8%和94.0%的分数,超越多种闭源模型。

如何收集偏好数据以支持Step-DPO方法?

通过蒙特卡洛树搜索(MCTS)收集偏好数据,结合结果验证和逐步自我评估,增强中间步骤的一致性。

Step-DPO方法在训练与推理之间的权衡是什么?

研究探讨了训练与推理的权衡,为提升模型性能提供了新见解。

Step-DPO方法如何解决低质量响应的问题?

提出了一种新的DPO损失函数,以缓解低质量响应和约束处理方面的权衡问题。

iLR-DPO在Step-DPO中有什么作用?

iLR-DPO解决冗长问题,并验证其在与GPT-4相媲美的性能上的有效性。

🏷️

标签

➡️

继续阅读