机器学习笔记(23.1): MMedAgent-RL

可能更好的阅读体验 Jeefy's Blog: MMedAgent-RL

整体设计:

GP --> specialist --> GP

训练的部分是前后的 GP

在 LLM 的强化学习中利用 GRPO 是比较合理的想法,所以这篇关于多智能体的 RL 也是用了 GRPO 作为一个组件。

由于存在 “难度” 问题,部分问题很难,需要更多的训练,我们可以将与 “难度” 相关的某个指标作为损失的一部分,联合优化,而本文所选的就是回答的 logits 熵。

\[H_t = - \sum_{j = 1}^V p_{t, j} \log p_{t, j} \]

其中 \(V\) 是词表大小,表示对于每一个 token 输出概率求一个熵(离散分布的 Shannon 熵),这指的是回答的一个 token 的熵。

熵越大,代表着模型生成的 token 概率越摊平,模型生成下一个 token 时越 “不确定”,概率质量分散在更多候选上,探索性强。

这里其实和 Swarm-LLM 都用了熵,但是实际上作用不一样。Swarm-LLM 基于 “确定性 \(\approx\) 正确性” 的基本思想,学习到的正确知识越好,那么产生正确答案的概率越高,除非出现系统性偏差。
在这个场景下,其实是有 ground-truth 作为纠偏的信号的,所以并不需要一个新的指标进行纠偏。

对于完整的损失(?)函数,采用的是:

\[\arg \max_{\theta} J(\theta) = E[J_{GRPO}(\theta) + \gamma_s \cdot H_t(\pi_{\theta_{GP}^{attend}})] \]

文章中出现了符号混乱的情况,这里通过 “奖励” 的视角讲述。需要同步的修改 \(J_{GRPO}\) 的正负号。

对于越难的题,\(\gamma\) 设置越大,则熵的奖励越大,意味着模型的探索能力更强,越可能逃出模型偏见,而不是让 GRPO 锁定到模型偏见上。


  • GRPO 为什么会锁定到模型偏见上?

从机制上讲,GRPO 的 rollout 来自当前策略 \(\pi_{\theta}\) 本身,如果模型已经偏向某个错误答案了,采样就会以很高概率产出这个错误答案。正确路径即使存在,概率也极低,几乎采不到。

并且对于全错样本,在 std 归一化后,梯度直接消失。根本没有信号进行训练。

根据 Wang et al. 2025b "Beyond the 80/20 rule",GRPO 的过程中,GRPO 训练过程常常意味着熵下降,持续把概率质量集中到已验证的正确 token 上,使得 “探索性” 消失,锁定到偏见上。

并且,GRPO 中的 KD 损失,让模型输出锁定在参考模型上,依旧被原策略偏见锚定。

综上所述,会出现该问题。


所以这篇文章解决方案就很好了:

  • 对于全错样本:采用 CL,先学 easy,然后到 medium,最后到 hard。
  • 对于熵下降,那就在下降的时候,通过额外的奖励项补回去,增强探索性
  • 对于 KL 损失锚定,那就分阶段调整 KL 系数。

对于第一点,论文的解释是,分段学习的难度比全部学习更容易,具体原因是:
相邻阶段的最优解距离之和为 \(K=\Omega\Big(\frac{1}{\mu\eta}\sum_{j=0}^{J-1}\log\frac{L_2^2\|\theta_j^\star-\theta_{j+1}^\star\|_2^2}{\mu\epsilon_1}\Big)\) 而不是 \(\| \theta_0^* - \theta_J^*\|\)。
就是将大跳变成有目的的小跳(:

对于第三点,论文叙述其实存在一个张力:

  1. KL 损失系数大 --> 高锚定,限制更新步长,更稳定
  2. KL 损失系数小 --> 低锚定,探索意愿更强,更多样
    而实际上有一个熵代替了 KL 损失系数小的时候,进行探索意愿的奖励,所以这里自然的有高难度 --> 高熵奖励和高 KL 锚定,增强探索意愿的同时,使得训练更稳定。
posted @ 2026-09-26 21:06  jeefy  阅读(3)  评论(0)    收藏  举报