章节 01
导读 / 主楼:使用GRPO训练7B语言模型数学推理能力的开源实现
本项目完整复现了DeepSeek-R1论文中的推理训练流程,通过两阶段训练(SFT冷启动+GRPO强化学习)让Qwen2.5-7B模型学会逐步推理解决数学问题,无需人工偏好标签即可实现可验证的奖励信号优化。
正文
本项目完整复现了DeepSeek-R1论文中的推理训练流程,通过两阶段训练(SFT冷启动+GRPO强化学习)让Qwen2.5-7B模型学会逐步推理解决数学问题,无需人工偏好标签即可实现可验证的奖励信号优化。
章节 01
本项目完整复现了DeepSeek-R1论文中的推理训练流程,通过两阶段训练(SFT冷启动+GRPO强化学习)让Qwen2.5-7B模型学会逐步推理解决数学问题,无需人工偏好标签即可实现可验证的奖励信号优化。
章节 02
本项目是一个完整复现DeepSeek-R1论文推理训练流程的开源实现,目标是通过Group Relative Policy Optimization (GRPO) 技术,教会7B参数的语言模型逐步推理解决数学问题。与需要人工标注偏好数据的PPO不同,GRPO通过组内相对奖励消除了对独立评判网络的需求,显著降低了计算开销。
该实现基于Qwen2.5-7B-Instruct模型,在单张NVIDIA H100 NVL(99.9GB VRAM)上完成训练,为中小型团队提供了可复现的推理能力增强方案。
章节 03
目标:在启动强化学习之前,先让模型学会"思考"的输出格式。
训练数据包含约27,000个示例:
关键训练配置:
训练结果:训练损失0.3357,token准确率92.5%,耗时约2小时。
章节 04
核心创新:GRPO不需要独立的critic网络,而是利用组内相对奖励作为baseline。
奖励函数设计(可验证的三元组):
| 奖励维度 | 权重 | 判定逻辑 |
|---|---|---|
| 正确性 | 1.0 | 解析的最终答案与标准答案匹配 |
| 格式 | 0.5 | 包含有效的<think>...</think>标签结构 |
| 长度惩罚 | -0.1(软性) | 响应超出500-800 token范围时的惩罚 |
关键超参数:
章节 05
使用lm-evaluation-harness在相同设置下评估三个模型阶段:
| 基准测试 | Instruct基线 | SFT检查点 | GRPO最终 |
|---|---|---|---|
| GSM8K 8-shot | 82.64% | 75.51% | 75.66% |
| MATH 500 4-shot | 20.60% | 24.20% | 24.20% |
| ARC-Challenge 25-shot | 67.06% | 62.97% | 62.80% |
章节 06
1. GSM8K分数下降是评估artifact
SFT训练改变了模型的输出格式——现在模型会先生成<think>推理链再给出答案,而lm-evaluation-harness的GSM8K解析器是为原始Instruct模型的直接回答风格校准的。这并不意味着推理能力倒退。
2. MATH基准+3.6%是真实能力提升
模型从未在MATH问题上训练过(训练数据只有GSM8K和NuminaMath),但从20.60%提升到24.20%表明SFT成功安装了一个可泛化的推理格式,而非简单的模式匹配。
3. GRPO提升有限的原因:奖励饱和
项目作者发现了一个重要的技术现象:由于SFT冷启动已经非常成功(GSM8K rollout大多正确),组内4个rollout经常获得相同奖励,导致优势信号(advantage)接近零。
测量数据显示:frac_reward_zero_std平均为0.63,意味着63%的batch产生了接近零的梯度信号。这是DeepSeek-R1论文中提到的课程过滤要解决的问题——应该选择模型只有1-2个rollout正确的中等难度问题,而非80%都正确的简单问题。
章节 07
LoRA只更新低秩适配器的少量参数,适合增量学习。但冷启动的目标是安装一个全新的行为先验(结构化CoT格式),全参数微调给模型更大的分布偏移容量。H100的99GB VRAM足够容纳7B模型的全参数训练。
章节 08
GRPO需要可验证的奖励信号——答案必须是可程序化检查的。GSM8K的答案是干净的数值,而NuminaMath竞赛题有更复杂的答案格式,会增加奖励函数错误率。