第44篇-DAPO动态采样-推理任务的采样优化

发布时间:2026/9/21 22:32:53
第44篇-DAPO动态采样-推理任务的采样优化
【Agentic RL 智能体强化学习】第 44 篇DAPO 动态采样 — 推理任务的采样优化本系列定位从强化学习数学基础出发系统讲解 LLM 对齐RLHF/DPO/GRPO到 Agentic RL多轮智能体强化学习的全链路以 OpenRLHF 框架为实战主线。本篇你将学到DAPO 的核心思想多采样 动态过滤n_samples_per_prompt 的设置策略动态过滤范围只保留有信息量的样本Oversampling 策略一、DAPO 动机在推理 RL 中如数学同一题生成 N 个回答。如果全部正确或全部错误这 N 个样本对 RL 更新没有信息量——因为组内没有对比。DAPODynamic filtering的思想过滤掉全对或全错的 prompt只保留有分歧的样本。全对无信息全错无信息有分歧高信息量有分歧Prompt 18个采样: 8对0错❌ 过滤Prompt 28个采样: 0对8错Prompt 38个采样: 3对5错✅ 保留训练Prompt 48个采样: 5对3错二、DAPO 关键参数参数说明推荐值--rollout.n_samples_per_prompt每 prompt 采样数8-16--algo.dynamic_filtering_enable启用动态过滤✅--algo.dynamic_filtering_range保留的分数范围0.0 1.0--rollout.vllm_generate_batch_size生成批次大小可 rollout.batch_size2.1 动态过滤的范围--algo.dynamic_filtering_range0.01.0这意味着只保留组内正确率 0% 且 100% 的 prompt。范围效果0.0 1.0排除全对和全错标准 DAPO0.0 0.5只保留多数错误的 prompt0.25 0.75只保留高度分歧的 prompt三、Oversampling3.1 思想生成比训练所需更多的样本然后通过过滤保留最有价值的# 生成 256 个但只训练 128 个--rollout.vllm_generate_batch_size256--rollout.batch_size128--train.async_enable# oversampling 需要 async 模式3.2 效果策略生成量训练量利用率效果无过滤128128100%有信息量样本少DAPO 过滤128~8063%全是高信息量Oversampling 过滤256~12850%高信息量 满批次四、DAPO 与算法的配合算法DAPO 配合原因REINFORCE±baseline✅ 最佳组内对比需要分歧GRPO✅ 适合组标准化需要分歧RLOO✅ 适合留一基线需要分歧PPON1❌ 不适用无组内对比本篇小结知识点核心内容DAPO 核心过滤全对/全错的无信息样本动态过滤--algo.dynamic_filtering_enable rangeOversampling生成多于训练所需适合场景推理任务数学/代码 组基线算法下篇预告第 45 篇奖励黑客与对齐税 — RL 训练的阴暗面如果本篇内容对你有帮助欢迎点赞收藏有任何疑问欢迎在评论区交流。