DPO-ST: 自我训练与直接偏好优化的结合提升链式思维推理能力

引言 📚

在人工智能领域,语言模型(Language Models, LMs)在许多任务中展现出了强大的能力,尤其是在数学推理方面。然而,如何高效地提升小型语言模型在复杂推理任务中的表现依然是一个未被充分探索的问题。我们提出了一种名为“DPO-增强自我训练(DPO-ST)”的方法,该方法结合了自我训练和直接偏好优化(Direct Preference Optimization, DPO),旨在提高小型语言模型的链式思维推理能力。与依赖于大型封闭模型的传统方法不同,我们的方法通过模型自身的生成数据进行学习,不仅提升了性能,还显著降低了计算成本。

背景 📖

数学文字问题求解

数学文字问题求解是一项需要将自然语言转化为计算过程的任务,通常可以表述为一个序列到序列的任务,其中输入是一个问题,输出是推导出答案的推理过程。为了解决此类问题,语言模型需要在大量高质量的标注数据上进行训练。然而,获取这种数据既昂贵又耗时,因此自我训练和知识蒸馏成为改善模型性能的两种主要策略。

自我训练

自我训练是一种半监督学习方法,通过利用模型自己生成的伪标签来增强模型的学习能力。具体而言,首先用带标注的数据训练一个教师模型,然后使用该模型为未标注数据生成伪标签,最后用标注数据和伪标签一起训练学生模型。尽管这一方法在许多自然语言处理任务中表现良好,但其效果依赖于伪标签的质量。

直接偏好优化

直接偏好优化(DPO)是一种新兴的优化方法,通过直接对模型进行微调,来提升其与人类偏好的匹配度。与传统的强化学习方法不同,DPO避免了对奖励模型的显式训练,这样可以直接利用人类偏好数据来指导模型的学习过程。这一方法的引入为自我训练提供了新的视角,使得模型能够在每次迭代中生成更高质量的伪标签。

方法论 🔍

DPO-增强自我训练

我们的DPO-ST方法由两个主要部分组成:热身阶段和迭代步骤。热身阶段通过在标注数据上对基础模型进行微调,确保模型能够处理基本的数学问题。随后在迭代步骤中,分别进行DPO步骤和自我训练步骤。

热身阶段

在这一阶段,我们对基础模型进行监督微调,使其能够生成合理的推理过程。微调后,我们假设模型能够处理某些数学问题,并生成相应的推理和答案。

迭代步骤

  1. DPO步骤:在这一阶段,我们从微调后的模型中生成多个推理,以构建DPO训练数据集。通过对比生成的推理与真实答案,我们将正确的推理标记为“胜利”完成,而将错误的推理标记为“失败”完成。接下来,我们使用DPO目标对模型进行优化,以便生成更高质量的推理。
  2. 自我训练步骤:该步骤利用DPO步骤生成的伪标签数据集,进行新的伪标记数据构建。我们将伪标记数据与原始标记数据结合,重新训练模型,从而迭代优化模型性能。

通过这种方式,我们不断提升模型的推理能力,同时有效利用自身生成的数据,避免了对大型封闭模型的依赖。

与外部计算器的批量解码结合

在推理过程中,整合外部计算器可以显著提高模型的数学推理能力。我们提出了一种高效的方法,以支持更大的推理批量大小,通过对模型生成的输出进行修改,从而实现更快速的推理。

实验结果 📊

实验设置

我们在多个数学推理任务上评估了DPO-ST方法的有效性,主要基于GSM8K数据集。实验结果显示,DPO-ST方法在多项任务中均优于传统的自我训练和监督微调方法。

主要结果

在GSM8K数据集上,DPO-ST方法的表现超越了所有基线方法,证明了其在数学推理任务中的有效性。这一结果不仅体现在准确率上,同时在计算成本上也表现出了良好的效率。

图表展示了我们的方法与其他基线的比较,清晰地表明DPO-ST在多个任务中均取得了优异的成绩。

| 方法                  | 基础模型         | GSM8K  | MultiArith | ASDiv | SVAMP |
|---------------------|----------------|--------|------------|-------|-------|
| 监督微调               | Flan-T5-Base  | 18.1   | 54.2       | 26.2  | 19.5  |
| 自我训练               | Flan-T5-Base  | 25.9   | 73.8       | 28.2  | 24.2  |
| DPO-增强自我训练 (我们的方法) | Flan-T5-Base  | 27.2   | 74.3       | 29.2  | 22.6  |
| 监督微调               | Flan-T5-Large | 30.8   | 77.2       | 38.1  | 33.6  |
| 自我训练               | Flan-T5-Large | 35.6   | 86.2       | 42.5  | 34.8  |
| DPO-增强自我训练 (我们的方法) | Flan-T5-Large | 37.4   | 89.0       | 42.8  | 36.8  |

结论 🎯

通过对传统自我训练方法的扩展,我们提出的DPO-ST方法有效提升了小型语言模型在数学推理任务中的表现。该方法不仅在准确性上表现出色,还显著降低了计算成本与数据标注需求。未来的研究可以进一步探索如何将该方法推广至其他推理任务,同时优化无标注数据的使用效率。

参考文献

  1. Tianduo Wang, Shichen Li, Wei Lu. Self-Training with Direct Preference Optimization Improves Chain-of-Thought Reasoning. ACL 2024.
  2. Rafailov, R., et al. (2023). Direct Preference Optimization: Your language model is secretly a reward model. NeurIPS.
  3. Cobbe, K., et al. (2021). Training verifiers to solve math word problems. arXiv preprint.
  4. Gulcehre, C., et al. (2023). Reinforced self-training (rest) for language modeling. arXiv preprint.
  5. Yuan, Z., et al. (2023). Scaling relationship on learning mathematical reasoning with large language models. arXiv preprint.

发表评论

Only people in my network can comment.