Entropy-Preserving Reinforcement Learning (REPO / ADAPO)¶
会议: ICLR 2026
arXiv: 2603.11682
代码: 无
领域: 强化学习 / LLM 训练
关键词: 熵保持, 策略梯度, LLM后训练, GRPO, 探索
一句话总结¶
本文揭示了策略梯度 RL 算法在 LLM 后训练中系统性导致策略熵坍缩的理论根因(优势函数与对数概率的正相关性),并提出两种互补的解法:REPO(通过修改优势函数去相关)和 ADAPO(自适应非对称裁剪),在交互式工具使用任务上实现 SOTA 性能。
研究背景与动机¶
- 领域现状:GRPO、PPO、RLOO 等策略梯度算法被广泛用于 LLM 推理能力的 RL 后训练。DAPO 提出非对称裁剪来隐式保持熵,GSPO 使用序列级裁剪。
- 现有痛点:策略梯度更新系统性地坍缩策略熵——模型将概率集中在已经高概率的正确解上,忽略其他同样正确但概率较低的解。后果:pass@1 提升但 pass@k 下降;探索能力丧失;无法在新任务上继续微调(sequential learning 失败)。
- 核心矛盾:当模型已经对奖励"校准"(高概率动作获得高奖励),策略梯度更新天然锐化分布,减少熵——这是策略梯度的内在属性而非 bug。
- 切入角度:从理论上精确刻画每步更新的熵变化量,发现它正比于优势函数与对数概率的相关性——打破这个相关性即可保持熵。
- 核心 idea 一句话:通过修改优势函数(减去与 log-prob 成比例的项)来去除导致熵坍缩的相关性,同时保持策略改进方向。
方法详解¶
整体框架¶
分析策略梯度更新的熵动态 → 识别熵变化的驱动因素 → 设计两种控制机制(REPO 修改优势函数 / ADAPO 自适应裁剪边界)→ 自适应控制器维持目标熵水平。
关键设计¶
- 理论分析(Theorem 1):
- 做什么:精确刻画每步策略梯度更新后的熵变化。
- 核心思路:\(\Delta\mathcal{H} \propto -\mathbb{E}_{a \sim \pi}[A(\mathbf{s},a) \cdot L(\mathbf{s},a) \cdot \pi(a|\mathbf{s})]\),其中 \(L\) 是均值中心化对数概率。当优势 \(A\) 与 \(L\) 正相关时(高概率动作获高奖励),熵下降。
-
设计动机:提供了精确的干预目标——打破 \(A\) 和 \(L\) 的相关性。
-
REPO-R(Rescale 变体):
- 做什么:修改优势函数使高概率的正确动作奖励增大、低概率的错误动作惩罚减小。
- 核心思路:\(A_{\text{REPO}}(s,a) = A(s,a) - \beta \cdot L(s,a)\)。实用变体 REPO-R 设 \(\beta = \zeta \cdot |A|\),对正优势:\(A^+ = A(1 - \zeta\log\pi)\)(稀有正确动作被增强);对负优势:\(A^- = A(1 + \zeta\log\pi)\)(稀有错误动作被减轻惩罚)。
-
自适应控制器:如果当前熵 < 初始熵,\(\zeta\) 翻倍;如果 > 初始熵,\(\zeta\) 减半。支持双向调控。
-
ADAPO(自适应非对称裁剪):
- 做什么:动态调整 DAPO 的非对称裁剪参数 \(\epsilon_{\text{high}}\)。
- 核心思路:Theorem 2 证明 PPO 的裁剪约束熵变化在 \([(1-\epsilon_{\text{low}})\mathcal{H}, (1+\epsilon_{\text{high}})\mathcal{H}]\) 范围内。如果熵太低就增大 \(\epsilon_{\text{high}}\)(允许更多熵增),太高就减小。
-
设计动机:DAPO 的固定非对称裁剪在某些设置下导致熵失控增长(+298%),需要双向调控。
-
BF16 精度问题(Theorem 3):
- 做什么:发现并修复 BF16 计算中的隐藏偏差。
- 核心思路:BF16 中计算重要性比率 \(r = \pi_\theta / \pi_{\text{old}}\) 存在向上的乘性偏差,等效于在熵减少方向产生非对称裁剪——与 DAPO 的设计意图相反!修复:用全精度计算 log-prob。
损失函数 / 训练策略¶
REPO 可以叠加在任何策略梯度算法(GRPO、RLOO、DAPO)之上,零额外内存开销,兼容 Cut Cross-Entropy。
实验关键数据¶
主实验¶
AppWorld(交互式工具使用)— Qwen-3-32B:
| 算法 | Test Normal↑ | Test Challenge↑ | 熵变化 |
|---|---|---|---|
| GRPO | 0.67 | 0.46 | -57% |
| DAPO | 0.73 | 0.52 | +298% (失控) |
| RLOO (FP16 修复) | 0.79 | 0.71 | -36% |
| ADAPO | 0.78 | 0.58 | +102% |
| REPO-R | 0.73 | 0.54 | +7% |
AIME 2024/2025(数学推理)— Qwen-3-8B:差异较小(0.43-0.47),因基线模型已高度优化。
消融实验¶
| 发现 | 说明 |
|---|---|
| BF16→FP16 修复 | 定性改变 DAPO 行为(熵坍缩→熵增长) |
| 累积熵与最终性能正相关 | "关键是旅程而非目的地"——训练中保持高熵的模型最终性能更好 |
| 序列学习能力 | GRPO 训练的模型(熵坍缩)在新任务上灾难性失败,REPO/DAPO 模型成功迁移 |
| 显式熵奖励 vs REPO | 显式 \(\beta\mathcal{H}\) 需要 logit 物化(不兼容 CCE),REPO 更高效 |
关键发现¶
- 严格 on-policy 的 RLOO(修复精度问题后)实际上是最强基线,引发疑问:熵坍缩主要是 off-policy 训练引入的?
- DAPO 在大模型上熵增失控(+298%),ADAPO 通过双向调控解决
- 熵保持对探索密集型任务(AppWorld)帮助大,对已充分优化的任务(AIME)帮助小
亮点与洞察¶
- 理论驱动的实践改进:Theorem 1 精确刻画了熵坍缩的机制(A-L 相关性),REPO 直接干预这个相关性——理论指导实践的典范。
- BF16 偏差的发现意义重大:一个影响 <0.1% token 的精度问题就能定性改变训练动态。这对所有使用 BF16 的 RL 训练都有警示意义。
- 序列学习能力评估提供了新的评测视角:不仅看单任务最终性能,还要看模型是否保留了继续学习新任务的能力。
局限性 / 可改进方向¶
- AIME 上改善有限,说明对已充分优化的领域效果不明显
- 自适应控制器使用启发式倍增/减半,无收敛保证
- 所有实验用 LoRA 微调,全量微调效果是否一致未知
- 一阶 Taylor 近似和 score function 正交性假设在深度 Transformer 中不一定成立
相关工作与启发¶
- vs GRPO: GRPO 熵坍缩 -64% (8B) / -57% (32B),是最严重的;REPO 可直接叠加在 GRPO 上修复
- vs DAPO: DAPO 的固定非对称裁剪不够灵活(可能失控),ADAPO 自适应调控更稳定
- vs 显式熵奖励: REPO 通过 REINFORCE 估计达到等价效果但零额外内存
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ 从理论到实践完整链条——分析问题根因→设计干预→修复精度 bug→实验验证
- 实验充分度: ⭐⭐⭐⭐ 在 AppWorld 上效果显著,AIME 上改善有限;缺少非 LoRA 实验
- 写作质量: ⭐⭐⭐⭐⭐ 理论推导严谨且与实验发现紧密对应
- 价值: ⭐⭐⭐⭐⭐ 对 LLM RL 训练中的熵管理提供了理论基础和实用工具