文章核心总结
一句话概括: 本文提出了一种名为 SPIN (Self-Play fIn- tu- Ning) 的新型微调方法,使大型语言模型(LLM)能够通过“与自身对弈”的方式,在完全不依赖额外人工标注数据或更强AI反馈的情况下,实现自我提升,将弱模型转化为强模型。
1. 研究问题与动机
-
核心问题:能否让一个已经过监督微调(SFT)的LLM,仅使用已有的SFT数据集,无需额外数据,就能进一步提升性能?
-
背景痛点:
-
传统SFT在数据集上训练后会达到性能瓶颈,继续训练甚至会下降。
-
强化学习微调(如RLHF/DPO)需要额外的偏好数据(通常由人类或GPT-4标注),成本高昂。
-
-
核心思想:受AlphaGo Zero等“自对弈”机制启发,让LLM通过与自身前一个版本“对抗”来迭代进化。
2. 核心方法:自对弈微调 (SPIN)
SPIN将微调过程建模为一个双人博弈,博弈双方是同一LLM在不同迭代时刻的版本:

3. 与DPO等方法的区别
| 特性 | SPIN (本文方法) | DPO (直接偏好优化) |
|---|---|---|
| 所需数据 | 仅需SFT数据(真实响应 yy) | 需要偏好数据(胜出/失败响应对) |
| 数据来源 | 利用模型自身生成拒绝响应 | 需外部反馈(GPT-4或人类)标注 |
| 训练范式 | 天然迭代,逐步逼近数据分布 | 通常是单次训练 |
| 损失函数 | 可灵活选择(逻辑损失、合页损失等) | 基于Bradley-Terry模型的逻辑损失 |
4. 理论贡献
作者提供了严格的理论保证(定理5.2 和 5.4):
-
充要条件:证明SPIN的优化过程当且仅当模型分布完全等于目标数据分布(pθ=pdatapθ=pdata)时才会停止并达到全局最优。
-
收敛方向:定理5.4进一步阐明,每次迭代的更新会自动调整模型概率:若某个响应的概率低于真实数据分布,则提升它;反之则降低它。这确保了模型逐渐向真实数据分布靠拢。
5. 实验验证
-
基础模型:zephyr-7b-sft-full (基于Mistral-7B微调)。
-
数据集:仅使用Ultrachat200k的50k子集(无需额外偏好数据)。
主要实验结果:
-
显著超越SFT瓶颈:
-
在HuggingFace Open LLM Leaderboard上,平均分从 58.14 → 63.16(提升5分)。
-
在GSM8k和TruthfulQA上提升超10%。
-
在MT-Bench上得分从 5.94 → 6.78。
-
-
媲美甚至超越DPO:
-
SPIN迭代0的性能就与使用了额外62k GPT-4偏好数据的DPO训练相当。
-
SPIN迭代1后,在多个任务上超过了DPO训练模型。
-
-
迭代的必要性:
-
在单次迭代中训练更多轮次很快会遇到性能上限,而进入下一次迭代能带来新的显著提升。这证明了SPIN迭代机制的关键作用。
-
-
数据规模效应:
-
随着SPIN使用的合成数据量增加(14k→50k),性能持续提升,而传统SFT在多轮训练后性能停滞甚至下降。
-
6. 局限性与未来方向
-
性能天花板:当前方法的目标是拟合固定的人类数据分布 pdatapdata,因此性能受限于人类数据质量。未来可探索动态变化的目标分布,以超越人类水平。
-
计算成本:每次迭代都需要用当前模型生成50k合成数据,存在一定的计算开销。
论文巧妙地将GAN的对抗思想和AlphaGo的自对弈范式引入LLM对齐,首次证明了模型可以仅靠“左右手互搏”来持续进化,在无需任何外部监督信号的情况下突破SFT的性能瓶颈,是对齐领域一个极具启发性的低成本、自演进方案。
这里是自己的论文阅读记录,感兴趣的话可以参考一下,如果需要阅读原文的话可以看这里,如下所示:

项目地址在这里,如下所示:

摘要
利用人类标注数据的力量,通过监督微调(SFT)来推进大型语言模型(LLMs)的发展至关重要。在本文中,我们深入探讨了在无需获取额外人类标注数据的情况下,从一个弱模型培育出强LLM的可能性。我们提出了一种新的微调方法,称为自对弈微调(SPIN),该方法从一个已监督微调的模型开始。SPIN的核心是一种自对弈机制,其中LLM通过与自身实例对抗来精炼其能力。更具体地说,LLM从其先前的迭代中生成自身的训练数据,通过区分这些自身生成的响应与从人类标注数据中获得的响应来优化其策略。我们的方法逐步将LLM从初始模型提升为强大的模型,从而释放出用于SFT的人类标注演示数据的全部潜力。在理论上,我们证明了只有当LLM的策略与目标数据分布一致时,我们方法的训练目标函数才能达到全局最优。在实证上,我们在多个基准数据集上评估了我们的方法,包括HuggingFace Open LLM Leaderboard、MT-Bench和Big-Bench的部分数据集。我们的结果表明,SPIN能够在各种基准上显著提高LLM的性能,甚至优于通过直接偏好优化(DPO)并辅以额外GPT-4偏好数据训练的模型。这揭示了自对弈的前景,使得LLM无需专家对手即可达到人类水平的性能。
1 引言
大型语言模型(LLM)开启了通用人工智能(AGI)的开创性时代,在需要复杂推理和专业知识的广泛领域展现出了非凡的能力。这些模型在数学推理/问题解决、代码生成/编程、文本生成、摘要和创意写作等领域表现出色。LLM的一个重大进步是在预训练后与更理想的行为进行对齐,这一过程通常依赖于昂贵的人类标注数据。典型的对齐方法包括基于人类演示的监督微调(SFT),以及基于人类偏好的从人类反馈中进行强化学习(RLHF)。
所有上述对齐方法都需要大量的人类标注数据。因此,人们越来越关注开发能够有效利用人类数据、从而简化对齐过程的微调方法。这促使我们研究在微调数据集之外无需额外人类标注数据的LLM微调。我们的研究也与在不要求额外训练数据的情况下将弱模型转化为强模型的更广泛目标相关,这是机器学习中的核心兴趣点,可以追溯到提升算法。自训练算法也被证明能够在混合模型中将弱学习器转化为强学习器,而无需额外的标注数据。然而,在无外部指导的情况下自主增强弱LLM的追求既引人入胜又研究不足。这引出了以下问题:
我们能否使一个弱LLM在无需获取额外人类标注数据的情况下自我提升?

与我们工作同时,Singh等人提出了在自训练中使用带有二元反馈的合成数据,以减少对人类数据的依赖。相比之下,由于自对弈机制,我们的方法无需来自人类或额外奖励模型的额外二元反馈。此外,Burns等人采用弱LLM模型作为指导,以弱到强生成的方式训练更强的LLM。与Burns等人需要弱监督者和强模型不同,我们的SPIN可以仅凭单个LLM有效运作。

2 相关工作
自对弈。 自对弈,即算法通过与自身对抗来学习,由于其在多智能体强化学习中的有效性而获得了显著关注。这种方法涉及智能体与自身的副本进行交互,从而在学习环境中实现递增的挑战级别和复杂性。自对弈领域的基础工作是AlphaGo Zero,它利用自对弈学习方案展现了对人类棋手的卓越表现。后续研究扩展了自对弈的概念,探索了各种改编和实现。我们的方法采用了类似于AlphaGo Zero的自对弈方法,可以在无需额外人类标注数据的情况下将弱模型转化为强模型。虽然自对弈在多智能体强化学习中的有效性已得到充分证实,但据我们所知,我们的工作是将这种方法应用于LLM增强的首例。
用于LLM的合成数据。 在LLM的监督微调(SFT)背景下,人工制作的数据已被证明是极其有效的数据来源,能提升LLM在代码生成和数学推理等任务上的性能。虽然人类数据通常质量很高,但获取足够数量的此类数据在成本上构成挑战。鉴于此考虑,使用合成数据作为人类数据的代理变得越来越流行。这种方法主要利用如GPT系列等先进的LLM作为指导来生成高质量数据。最近的研究还强调了LLM在提示重述方面的能力,以获得更好的LLM响应,以及增强合成数据以实现更有效的SFT。与先前在预训练或微调目标模型时使用更先进模型生成合成数据的研究不同,我们的方法直接从目标模型自身生成合成数据。
3 问题设定与预备知识

3.1 监督微调

3.2 强化学习微调
强化学习微调提供了另一种增强通用预训练模型特定能力的方法。通常,强化学习微调在SFT之后使用,以实现LLM更好的对齐。

与此同时,强化学习微调的主要挑战在于找到一个好的奖励函数。通常,该函数需要在偏好数据集上进行训练。此类数据集的构建需要大量资源,通常涉及由人类标注者(即从人类反馈中进行强化学习RLHF)或强大的AI智能体(即从AI反馈中进行强化学习RLAIF)进行的全面评估。
4 方法

4.1 自对弈微调(SPIN)

让我们考虑一个双人游戏,其中主玩家的目标是区分由LLM生成的响应和由人类生成的响应。与此同时,对手的角色是生成与人类响应无法区分的响应。我们方法的核心是自对弈机制,其中主玩家和对手都是同一个LLM,但来自不同的迭代。更具体地说,对手是来自前一次迭代的旧LLM,而主玩家是在当前迭代中要学习的新LLM。



4.2 SPIN与DPO的比较

在第4.1节中,我们提出了自对弈微调(SPIN),其每次迭代都有一个端到端的训练目标(4.7)。(4.7)与用于强化学习微调的直接偏好优化(DPO)有相似之处。然而,SPIN和DPO在根本上是不同的。

最近,Xu等人提出使用成对Cringe损失进行迭代偏好优化,并将DPO推广为迭代DPO。与我们工作同时,Yuan等人进一步提出了一个名为“自奖励语言模型”的框架,该框架利用LLM自身作为奖励模型来提供偏好反馈,并采用迭代DPO来训练LLM。与Xu等人和Yuan等人相比,SPIN的自我评估是隐式的,因为不需要中间奖励或偏好反馈。
5 理论分析


6 实验
本节提供了SPIN的详细实证分析。我们的发现强调了几个关键点:(1)SPIN通过突破SFT的限制,在广泛的评估基准上显著提升了模型性能;(2)即使没有引入新的人类标注数据,SPIN在迭代0时取得的性能也与使用了更多数据的DPO训练相当;(3)迭代训练是SPIN的必要组成部分,因为它突破了多轮训练的限制。
6.1 实验设置
模型与数据集。 在本研究中,我们采用zephyr-7b-sft-full作为我们的基础模型。该模型源自预训练的Mistral-7B,并由HuggingFace在SFT数据集Ultrachat200k上进行了进一步的微调。Ultrachat200k代表了更大的UltraChat语料库中一个高质量的200k子集,该语料库包含约140万个使用OpenAI的Turbo API生成的对话。我们从UltraChat200k中随机采样50k个提示,并使用基础模型生成合成响应。随后,我们按照第4.1节描述的优化方法进行进一步训练。在多次迭代中,我们利用来自最近一次迭代的合成数据,并将其添加到新生成的合成数据中,因此在迭代0时合成数据集大小为50k,在迭代1、2和3时为100k。在每次迭代中,我们训练模型2个轮次。
评估。 我们采用了广泛使用的Huggingface Open LLM Leaderboard作为我们的评估基准,并使用相同的Language Model Evaluation Harness库。该排行榜包含6个不同的数据集,每个数据集侧重于LLM的特定能力。这些数据集共同提供了一个全面的评估框架,评估LLM在常识推理(Arc, HellaSwag, Winogrande)、多任务语言理解(MMLU)、人类虚假模仿(TruthfulQA)和数学问题解决(GSM8k)方面的能力。我们将进一步的实现细节留到附录B,其中详细介绍了排行榜和我们实验均采用的评估设置。
6.2 SPIN有效提升基准性能

在图2中,我们使用HuggingFace Open LLM Leaderboard作为评估标准,展示了SPIN的有效性。在图3中,我们将通过SPIN在迭代0到3之后微调的模型与基础模型zephyr-7b-sft-full在排行榜包含的每个任务上的性能进行了比较。详细性能见表4(附录B)。我们可以观察到,SPIN在通过进一步利用SFT数据集来提升模型性能方面表现出显著的有效性,而基础模型已经在该数据集上进行了充分的微调。在迭代0,模型响应由zephyr-7b-sft-full生成,我们观察到平均得分总体提高了2.66%。在TruthfulQA和GSM8k基准上的提升尤为显著,分别超过5%和10%。在迭代1,我们按照算法1概述的程序,使用来自迭代0的LLM模型生成新的响应用于SPIN。这一迭代带来了平均1.32%的进一步提升,在Arc Challenge和TruthfulQA基准上尤其显著。随后的迭代在各种任务中继续保持这种逐步提升的趋势。同时,迭代t+1的提升自然小于迭代tt的提升。随着迭代训练的进行,提升的程度逐渐趋近于零,这表明模型在最后一次迭代中已达到极限点。
与DPO的比较。 zephyr-7b-beta是一个源自zephyr-7b-sft-full的模型,使用大约62k偏好数据通过DPO进行训练。该数据即UltraFeedback Binarized数据集,包含由GPT-4评估的选择和被拒绝的完成结果。我们注意到,DPO需要人类输入或高级语言模型反馈来确定偏好,这使得数据生成成为一个相当昂贵的过程。相比之下,我们的SPIN只需要初始模型本身。此外,与需要新数据源的DPO不同,我们的方法完全利用现有的SFT数据集。在图3中,我们展示了SPIN在迭代0和1(使用50k SFT数据)与从相同SFT检查点开始的DPO训练的性能比较。我们可以观察到,虽然DPO利用了来自新来源的更多数据,但基于现有SFT数据的SPIN在迭代0时已经可以达到与DPO训练相当的平均性能。从迭代1开始,SPIN甚至在排行榜基准上超越了DPO的性能。
6.3 消融研究
在本小节中,我们研究了合成数据集大小和迭代内训练轮次的影响。我们的分析证明了SPIN使用的合成数据相对于SFT数据的有效性,以及SPIN中迭代训练的必要性。在附录B中,我们展示了SPIN在额外基准任务上的评估。
训练规模。 我们研究了不同训练数据量对SPIN性能的影响。在图5中,我们展示了SPIN在迭代0期间训练数据量变化的影响,并将其与使用完整原始数据集的SFT进行了比较。具体来说,对于SFT基线,我们在Ultrachat200k上对Mistral-7B进行全面微调三个轮次,并在图中将第一轮次的性能报告为起点(x轴为0)。对于SPIN,我们将zephyr-7b-sft-full检查点报告为起点,该检查点也在Ultrachat200k上微调了一个轮次。我们将SPIN在迭代0的训练规模选择为14k、26k和50k,并相应地生成数据,确保较大的数据集包含较小的数据集。然后,针对每种训练规模,在1轮自对弈微调后评估SPIN的性能。我们可以观察到,随着训练规模的增加,SPIN带来了显著的改进,而SFT在后续的第2和第3轮次未能产生超过1%的提升。更多结果见附录B。
迭代训练 vs. 更多轮次训练。 我们进一步研究了迭代0内的训练,并将其与迭代1实现的性能进行比较,特别是将延长训练时长获得的测试性能与下一轮迭代的性能进行对比。图4描绘了SPIN在迭代0期间跨多个轮次训练的模型性能轨迹。很明显,最大的改进发生在前两个轮次,后续轮次仅带来微小的提升。值得注意的是,SPIN表现出鲁棒性和稳定性;延长训练时长不会降低性能,而是保持相当稳定的水平。尽管如此,这一观察结果表明单次迭代内可实现性能存在固有局限性,从而强调了迭代训练的必要性。如图中迭代1达到的测试性能所示,延长迭代0的训练无法达到与迭代1相比的性能。



7 结论与讨论
本文介绍了一种新颖的微调方法SPIN,通过释放人类标注数据的全部力量,将弱LLM转化为强LLM。该方法的核心是一种自对弈机制,其中主玩家(LLM)被微调以区分对手玩家(来自前一次迭代的LLM)的响应与目标数据分布,并且LLM被迭代地与目标数据分布对齐。因此,SPIN通过自对弈促进了LLM的迭代自我评估和增强。与监督微调和强化学习微调方法相比,SPIN使LLM能够在没有额外人类数据或来自更强LLM反馈的情况下自我改进。实证结果表明,SPIN在各种基准测试中显著提升了LLM的性能,甚至优于使用额外人类数据或AI反馈训练的模型。
局限性与未来工作。 我们的理论结果表明,当且仅当LLM的分布与pdata对齐时,SPIN的优化过程才收敛。因此,我们的研究聚焦于由人类生成的固定目标数据分布,这固有地对微调LLM的性能设置了一个上限。探索动态变化的目标数据分布是克服这一限制并将LLM性能提升到此上限之上甚至达到超人类水平的一个重要方向。此外,考虑到合成数据生成的资源需求,另一个有前景的进一步探索方向是减少所需合成数据的量。
1072

被折叠的 条评论
为什么被折叠?



