论文分享,Reinforcement Learning for Reasoning in Large Language Models with One Training Example
这个论文看起来挺有意思,比较反常识,代码开源:https://github.com/ypwang61/One-Shot-RLVR。
在Math500上,让Qwen2.5-Math 1.5B 性能翻倍,从36%提升到73.6%。 让Qwen2.5-Math 7B,从51% 提升到79.2%。
仅需要1个样本进行强化学习训练即可达到。如下图,最终收敛跟蓝色线(一个1000多个样本的数据集)训练出来的效果差不多。
那这个样本到底是个什么神仙样本呢?他们不是非常难的样本,模型还是有可能答对正确步骤,并且实际正确答案可能存在一些误差。
高端的算法往往只需要普通的选数据的方法。论文中就是看一下历史训练过程中,样本准确率的波动情况,如果波动大,意味着这个样本模型的不确定性高,就可以拿来作为 one-shot的样本。
这个策略,在不同的模型,不同的强化学习算法上都是有效的,但是好像都是一些小模型。
训练到最后,那个训练样本的推理过程有点混乱了。但是不影响评估集。
甚至只用一个entropy loss(意思是,只有一个鼓励模型积极探索的约束。)训练都有巨大的提升。
论文还有一些实验,比如跨域表现也很好,模型推理过程中,会加大rethink之类的深度思考的词汇频率。
总的来说,没有花里胡哨的方法。用一个训练样本就可以激活模型的推理能力,在各个任务上媲美大规模数据集训练出来的模型。