Open R1 Update #2: OpenR1-Math-220k 数据集和推理洞察
Hugging Face 发布了 OpenR1-Math-220k,这是一个大规模数学推理数据集,旨在复制 DeepSeek R1 的蒸馏能力。此发布是更广泛的 Open R1 项目的一部分,旨在开源用于创建高性能推理模型的训练管道和合成数据生成方法。
OpenR1-Math-220k 数据集
OpenR1-Math-220k 数据集为通过蒸馏将高级推理能力转移到更小的模型提供了基础,填补了原始 DeepSeek R1 蒸馏中使用的非公开推理轨迹留下的空白。
数据生成管道
Hugging Face 使用 512 块 H100 GPU 在本地生成了该数据集,利用 vLLM 和 SGLang 生成推理轨迹。转向 SGLang 使速度提升了近 2 倍,使每 H100 每小时的吞吐量从 15 增加到 25 个解决方案,从而实现每天生成 180k 条轨迹。
生成过程的关键技术规格包括:
- 源材料:基于 NuminaMath 1.5,这是 NuminaMath-CoT 的改进版本。
- 规模:为 400k 个问题生成了 800k 条 R1 推理轨迹(每个问题两到四个解决方案)。
- 提示:DeepSeek R1 被提示 "逐步推理,并将最终答案放入 \boxed{} 中"。
- Token 限制:每次生成设置了 16k 的 token 上限,因为分析表明 25% 的问题需要超过 8k tokens。
自动过滤和质量控制
为了确保高质量的推理轨迹,Hugging Face 采用了混合验证系统:
- 基于规则的验证:使用 Math Verify,团队提取了最终答案并将其与真实数据进行比较。55% 的问题至少有一个正确答案。
- 基于 LLM 的评估:对于真实答案格式错误或为空的情况,Llama-3.3-70B-Instruct 充当判断者,以确定模型的解决方案是否与参考答案等效,从而恢复了之前被拒绝的 28,000 个问题。
最终数据集包含 220k 个带有验证过的推理轨迹的问题。它提供两种划分:default 划分(94k 问题)和 extended 划分(131k 问题)。在进行监督微调(SFT)后,default 划分表现出最佳性能。
性能基准
在 default 划分上对 Qwen2.5-Math-Instruct 进行 3 轮微调(学习率 5e-5,为了 32k 上下文长度将 RoPE 频率提高到 300k),得到的 OpenR1-Qwen-7B 模型在与 DeepSeek-Distill-Qwen-7B 的对比中表现出竞争力:
| Model | MATH-500 | AIME24 | AIME25 |
|---|---|---|---|
| DeepSeek-Distill-Qwen-7B | 91.6 | 43.3 | 40 |
| OpenR1-Qwen-7B | 90.6 | 36.7 | 40 |
| OpenThinker-7B | 89.6 | 30.0 | 33.3 |
Math-Verify 改进
Hugging Face 更新了 Math-Verify (v0.5.2),以更健壮地处理复杂的数学表达式。主要改进包括:
- 增强了对纯文本答案和答案列表的解析。
- 支持在单个 LaTeX 环境中包含多个框选答案。
- 引入了有序元组,以根据金答案区分集合和元组。
- 支持关系表达式(例如,$1 < x < 2$)和区间(例如、$(1,2)$)。
社区关于推理和 GRPO 的见解
最近的社区发展凸显了在开放模型中 eliciting 推理能力的方式发生了转变。
GRPO 和基础模型能力
- 基础模型推理:在 Qwen2.5-0.5B 基础模型上进行的 GRPO 实验相比 Instruct 版本在 GSM8k 上提高了 10 分。一些研究人员认为,DeepSeek-R1 中描述的 "啊哈" 时刻可能是基础模型固有能力的症状,而不仅仅是 RL 过程本身的结果。
- 效率:Unsloth 已优化 GRPO,使最多 15B 参数的模型仅需 15GB VRAM 即可进行训练。
- 不可验证领域:GRPO 已成功应用于诗歌,展示了其在传统可验证任务(如数学和代码)之外的实用性。
数据效率和潜在空间推理
- 小规模高质量数据:对如 s1K(1,000 样本)和 LIMO(817 样本)等数据集的研究表明,如果模型具有足够的预训练知识,那么少量高质量、结构良好的示例就能解锁高级推理。
- 潜在空间推理:一篇最近的论文提出通过在潜在空间中使用循环语言模型进行隐式推理来扩展测试时计算,这比生成大量自然语言 "思考" tokens 更具计算效率。
链式思维(CoT)长度控制
- 预算强制:此技术通过追加 "Wait" 或结束思考标记来延伸或截断推理,允许在测试时进行扩展,其中增加的思考时间与更高的准确性相关联。
- 余弦奖励:一种新额函数,用于激励正确答案时更长度错误答案的更长 CoT,以稳定 RL 训练并防止奖励黑客行为(模型通过重复增加 CoT 长度以获取奖励)。
Sources
- OriginalOpen R1: Update #2