s1: Simple test-time scaling
https://arxiv.org/pdf/2501.19393
几个Feature:
完全SFT(1000条数据)
在qwen2.5-32B-Instruct上做的
主要是挑选数据的工作,并且验证了long-cot的TTS作用
提出的TTS方法比较简单
具体实现:
首先找到了初始的59K的数据,主要是下面几个:
NuminaMATH (LI et al., 2024) with 30,660 mathematical problems from online websites
https://huggingface.co/datasets/AI-MO/NuminaMath-CoT
Historical AIME problems (1983-2021)
OlympicArena (4250) https://huggingface.co/datasets/GAIR/OlympicArena
OmniMath (4,238) https://huggingface.co/datasets/KbsdJames/Omni-MATH
AGIEval (2,385)
他们还从斯坦福的概率学专业PHD考试中找了一些数据:To complement these existing datasets, we create two original datasets. s1-prob consists of 182 questions from the probability section of Stanford University’s Statistics Department’s PhD Qualifying Exams
数据过滤:
1)质量:数据初筛:就是用一些规则的方法将数据里面包含有图片的,或者ascii art diagram的,还有一些其他的脏数据的。
2)难度:当qwen2-7B和qwen2-32B都做对的数据,我们认为这个数据比较简单,把他去掉。(这一步最后只剩下25K)
3)多样性:用的是分类体系将数据按照 Mathematics Subject Classification (MSC) system,然后用claude来分类每条数据
注意多样性的时候不是每种类别选,而是先随机选一个domain,然后从这个domain里面按照思维链的长度选一条数据,重复这个过程直到都选出来了。最后50个domain。
训练方法
既然是主打小数据好效果,所以作者用了一个budget来定义怎么算是test time scaling: 思考的越长,越能说明Scaling。
所以:
1)限制长度:强制在模型输出到具体长度的tokens的时候加一个 Final Answer,来停止思考。
2) 增加长度:在模型输出的时候,如果结束的token(end-of-thinking)概率很大,则用一个wait替代这个token继续输出。
实验
有两种scaling的方法:
sequential scaling: 即现在正常人理解的scaling,就是不断输出更多tokens
parallel:其实就是SC,where computations run independently (e.g., majority voting)
也对比了提出的数据的效果:
LIMO: Less is More for Reasoning
https://arxiv.org/pdf/2502.03387v1
跟刚才的工作差不多,但是主要有几个特点:
1)数据更少了 817条
2)验证了泛化性能(即除了数学的哪些榜单还有别的任务的,比如考试)
3)文章花了很大的篇幅介绍了为什么只用SFT就可以:核心还是预训练已经把所有知识都囊括了,后面只是Induce
数据源:也是从一些开源的数据出发开始构造,跟S1差不多
过滤:只要qwen2.5-7B-Math做对的就去掉,或者其他的大模型的准确率(应该是SC)低于一定的程度
CoT产生:是用多个模型采样产生的,最后人工校验。。。(all the authors conducted a comprehensive analysis of these filtered solutions through collaborative examination)
他们还对好的数据进行了定义:
最后的效果:
他们还对着817条数据定义了不同的类别1-5,5是最高
不过最新的发现他们这个在AIME2025的比赛中效果还挺好的
回复列表: