SPIN自我博弈微调
一句话总结
SPIN(Self-Play fINe-tuning)让当前模型与上一版本模型博弈,用SFT真实数据作为胜者信号,通过多轮迭代逐步提升模型质量。
核心概念
SPIN的工作流程:将人类标注的SFT数据作为「真实分布」的代表;当前模型(主玩家)尝试生成无法与真实数据区分的回答;上一轮的模型(对手)生成的回答作为负样本。具体实现类似DPO的偏好优化:正样本是人类标注数据,负样本是上一轮模型的生成结果。每轮迭代后模型生成质量更接近人类数据分布,当模型无法区分自己的输出和人类标注数据时达到纳什均衡并收敛。
为什么重要
SPIN不需要额外的偏好标注或奖励模型,仅用现有SFT数据就能获得类似RLHF的对齐效果。它提供了一种简单、低成本的迭代改进框架,大幅降低了对齐训练的门槛。实验显示SPIN可在MT-Bench等多个基准上持续提升2-3轮。
实践要点
通常2-3轮迭代后收敛,更多轮次收益有限甚至可能退化;每轮需要重新用当前模型生成负样本,注意生成时的温度设置;SFT数据的质量是性能上限;学习率需要随迭代逐步降低以确保稳定收敛。建议监控生成文本与真实数据的分布距离。
常见误区
误区一:SPIN可以超越SFT数据的质量上限——它的目标是逼近人类数据分布,不能超越数据本身的质量。误区二:无限迭代可以无限提升——一般3轮后即达到饱和,继续训练无明显收益。