S1: 仅 1k 样本,测试时扩展超越 OpenAI o1-preview 性能
随着大型语言模型的涌现,如何通过优化算法和策略来提高这些模型的性能成为了业界和学术界关注的热点。OpenAI 的 o1 模型展示了测试时扩展(Test-time Scaling)方法在提升语言模型性能方面的潜力。本文介绍了一种名为 s1 的简约测试时扩展方法,该方法旨在通过精心设计的数据集和创新的预算强制(Budget Forcing)策略,实现性能上的显著飞跃,甚至超越了 OpenAI 的 o1-preview 模型。
一、背景与动机
测试时扩展是一种利用额外测试时计算能力来提高模型性能的方法。这种方法的核心思想是,在测试阶段给予模型更多的计算资源,以便它能够更深入地处理输入信息,从而作出更准确的预测。OpenAI 的 o1 模型已经证明了这种方法的有效性,但如何在保持方法简约性的同时实现性能的最大化提升,仍然是一个挑战。
传统的模型训练往往侧重于参数量的增加或预训练数据的扩充,而测试时扩展则关注推理阶段的动态计算分配。这种范式转变对于解决复杂推理任务尤为重要,因为它允许模型在遇到难题时'多思考一会儿',而不是直接输出初始猜测。
二、s1 方法概述
s1 方法主要围绕两个核心部分展开:精心策划的小数据集 s1K 和创新的预算强制策略。
(一)s1K 数据集
s1K 是一个包含 1000 个问题的数据集,每个问题都配有详细的推理轨迹。这些数据集的选择基于三个关键标准:难度、多样性和质量。
- 难度:数据集应具有一定的挑战性,要求显著的推理努力。为了确保这一点,s1K 从多个来源收集了初始的 59029 个问题,并通过两个不同规模的模型(Qwen2.5–7B-Instruct 和 Qwen2.5-32B-Instruct)进行评估,以筛选出那些能够反映模型推理能力的难题。
- 多样性:数据集应涵盖不同的领域,以覆盖不同的推理任务。为了实现这一点,s1K 从现有的数据集(如 NuminaMATH、AIME problems、OlympicArena、AGIEval)中筛选数据,并创建了两个新的数据集(s1-prob 和 s1-teasers)来增加定量推理问题的多样性。
- 质量:数据集应具有高质量,避免格式错误、不存在的图像引用或不一致的问题编号等问题。为了确保数据质量,s1K 在初始收集后进行了多轮筛选和过滤,最终确定了 1000 个高质量样本。
(二)预算强制策略
预算强制是 s1 方法的另一个核心组成部分,它通过控制测试时的计算量来优化模型的性能。具体而言,预算强制策略包括两个方面:最大思考令牌数限制和最小思考令牌数要求。
- 最大思考令牌数限制:当模型试图结束其思考过程时,通过强制附加一个'结束思考'令牌和'最终答案:'字符串来提前退出思考阶段,并使模型提供其当前的最佳答案。这种方法可以防止模型过度思考,浪费计算资源。
- 最小思考令牌数要求:当模型试图过早结束思考时,通过抑制'结束思考'令牌的生成,并可选地向模型的当前推理轨迹附加'等待'字符串来鼓励模型反思其当前生成。这种方法可以促使模型进行更深入的思考,从而有可能发现之前的错误并进行修正。
三、实验与结果
为了验证 s1 方法的有效性,我们进行了大量的实验,并将结果与 OpenAI 的 o1-preview 模型进行了比较。
(一)实验设置
- 训练:我们使用 s1K 数据集对 Qwen2.5-32B-Instruct 模型进行了监督微调,得到了我们的模型 s1–32B。
- 测试:在测试阶段,我们应用了预算强制策略,并记录了模型在不同计算量下的性能表现。
(二)性能表现
实验结果表明,s1–32B 模型在竞赛数学问题(如 MATH 和 AIME24)上的性能表现显著优于 o1-preview 模型。具体而言,s1–32B 在这些问题上的准确率提高了高达 27%。这一结果证明了 s1 方法的有效性,特别是在处理需要深入推理的任务时。
此外,我们还发现,通过调整预算强制策略中的最大和最小思考令牌数限制,我们可以灵活地控制模型的性能表现。这表明 s1 方法具有良好的可控性和灵活性,可以根据实际需求进行调整和优化。
四、讨论与分析
(一)s1 方法的优势
- 简约性:s1 方法保持了方法的简约性,没有引入复杂的算法或模型结构。相反,它依赖于精心策划的数据集和创新的预算强制策略来提高性能。
- 高效性:实验结果表明,s1 方法在处理需要深入推理的任务时表现出色。这得益于其能够充分利用测试时的计算资源来进行更深入的思考和推理。


