Verl 框架下 GRPO 调参:GSM8K 实验记录(Qwen3-0.6B)
背景 初始Qwen3-0.6B在GSM8K的准确率不到20%,问题主要分为以下两种情况: 未能按照prompt的答案格式 输出 答案 未能计算出正确答案 经测试主要发现准确率低的原因是主要是前者导致,少部分是后者。本质上就是小模型的指令跟随和推理能力的不足。 如今LLM已经有大量不同的微调方式,如强化学习微调、SFT等方向,本实验为探索GRPO在LLM微调的效果上限与优势。 目标 通过 GRPO 微调 Qwen3-0.6B,寻找在 验证集上的最优超参数组合。 使用 Qwen32B 生成答案进行蒸馏 + LoRA 微调 Qwen3-0.6B,并与 GRPO 方案对比。 方法概览 框架:Verl 基座模型:Qwen3-0.6B 优化:GRPO 对比:Qwen32B 蒸馏 → LoRA on Qwen3-0.6B 调节的超参数 超参数 重要度 推荐范围 / 设定 当前值 影响 / 说明 学习率 (LoRA, actor.optim.lr) ⭐⭐⭐⭐⭐ 1e-5 ~ 5e-5 5e-5 直接影响收敛与最终性能,建议从小到大网格/二分搜。 响应数量 (rollout.n) ⭐⭐⭐⭐ 5 ~ 16 5 / 16 更多样本可提升 GRPO 信号质量,但显著增算力。 KL 系数 (kl_loss_coef) ⭐⭐⭐⭐ 1e-4 ~ 1e-2 1e-3 约束与参考模型偏离度;过大抑制探索、过小易漂移。 批次大小 ⭐⭐⭐⭐ train 64/128/256/512;mini 32/64/128;micro 4/8/16 128 / 64 / 16 更大批次更稳(受显存限制)。 采样温度 (temperature) ⭐⭐ 0.7 / 1.0 / 1.2 1.0 多样性与探索;高温度利探索但易噪声。 Top-p (top_p) ⭐⭐ 0.7 / 0.9 / 1.0 1.0 控制尾部截断;与温度配合调度探索强度。 实验计划 调整verl框架的GRPO的超参数,微调Qwen3-0.6B,探索最大验证集表现的超参数。 使用Qwen32B模型,蒸馏答案,Lora微调Qwen3-0.6B,并与上面方式对比。 实验过程 初始实验 首先在使用LLM生产了一组初始参数,并跑通。 ...