强化学习算法对比

DAPO vs GRPO

DAPO(Decoupled Clip and Dynamic Sampling Policy Optimization)双端裁剪和动态采样策略优化
GRPO(Group Relative Policy Optimization)组相对策略优化

dapo相比grpo的改进:

  1. 解耦剪切机制(Decoupled Clip)
    • GRPO 使用对称的裁剪区间(如 [1-ε, 1+ε])限制策略更新幅度;
    • DAPO 采用非对称裁剪区间(ε_low, ε_high),对正优势(advantage)Token 放宽梯度限制(允许更大幅度更新),缓解熵崩溃问题,增强探索性。
  2. 动态采样(Dynamic Sampling)
    • 过滤掉 “全对” 或 “全错” 的极端样本,保留 “中等难度” 样本(即模型对部分 Token 决策存疑的样本);
    • 确保每个训练批次都能提供有效梯度信号,提升训练稳定性和样本效率。
    • 相比离线过滤好处: 多轮训练时遇到之前acc=0或1的样本由于模型参数更新了,这些样本可能再次参与训练。
  3. Token 级策略梯度损失
    • GRPO 通常采用样本级损失汇总,长响应中的 Token 贡献被稀释;
    • DAPO 以Token 级计算损失,赋予每个 Token 相等权重,强化长推理链中复杂模式的学习,同时抑制低质量长响应。

其他关键优化

  • 移除 KL 散度约束:允许策略分布在复杂推理任务中更大幅度偏离初始模型,提升适配性;
  • 长度感知奖励塑形(overlong reward shaping):针对长响应设计特殊奖励机制,降低奖励噪声对训练的干扰。

veRL中GRPO实现时只有最后一个token由奖励模型分配奖励分数。DAPO是否有差别还需要再看下代码。

熵崩溃问题:策略熵在训练中发生快速、不可逆的暴跌,模型输出的 token 概率分布极度收敛,彻底丧失探索能力,最终陷入模式坍塌的现象。

  • 熵越高:token 概率分布越均匀,模型对不同 token 的选择越开放,探索能力越强;
  • 熵越低:token 概率分布越尖峰,模型越倾向于只选概率最高的少数 token,确定性越强,探索能力越弱;
  • 极端情况:熵趋近于 0,模型在该位置只会输出 1 个固定 token,完全失去其他选择的可能性。
------ 本文结束------
赞赏此文?求鼓励,求支持!
0%