GRPO的RL要领存于缺陷:
GRPO将多个奖励乞降后,经由过程组内相对于上风预计举行计谋更新。GRPO原本为单奖励优化设计,直接迁徙到多奖励场景时未被验证合理性。正如上期文章先容的《强化进修中的熵坍缩》:

以下图左,于RL的练习早期(无熵干涉干与的RL练习),模子的熵会急剧降落。跟着熵的降落,正确率会迎来一个快速增加期。可是,跟着熵的迅速耗尽会致使模子过分自傲,摸索能力随之削弱。
GRPO的奖励旌旗灯号坍缩(Reward Collapse)当GRPO运用在多奖励场景时,会致使差别奖励组合映照为不异上风值,丢掉要害信息,体现以下:
信息丢掉:以下图左侧例子,例如两个二元奖励(0/1)的场景中,GRPO会将(0,1)、(0,2)、(1,2)等差别奖励组合,同一映照为(-0.7071, 0.7071)的上风值,没法区别“满意1个奖励”及“满意2个奖励”的差异。

其焦点思惟是解耦每一个奖励的归一化历程:防止先乞降再归一化致使的信息坍缩,经由过程“零丁归一化→乞降→批次不变”的流程,保留差别奖励组合的相对于差异。

如图图,假定使命有 n 个奖励方针,每一个问题天生 G 个rollout,GDPO的上风计较分3步:
步调1-解耦:单奖励组内归一化对于每一个奖励 rk(k = 1..n)零丁举行组内归一化,消弭差别奖励的量纲差异,同时保留组内相对于好坏:

将所有归一化后的单奖励上风相加,获得总上风:

对于批次内所有rollout的总上风举行归一化,确保数值规模不变,不随奖励数目增长而膨胀:

:防止分母为0的微小值;

GDPO 于有没有批量上风规范化环境下的练习不变性
上述试验证实去失这一步会致使偶然收敛掉败。
GRPO vs GDPO代码上的差异https://github.com/NVlabs/GDPO/blob/main/trl-GDPO/trl-0.18.0-gdpo/trl/trainer/grpo_trainer.py

GRPO

GDPO
从上述代码可以看出,其差异较小,二者的素质区分于在多奖励的处置惩罚挨次:
GRPO:先将多奖励加权归并为单一总奖励,再对于总奖励举行组内一次归一化。GDPO:先对于每一个奖励自力举行组内归一化(解耦焦点),再加权乞降,末了举行批次级二次归一化(不变性保障)。GDPO奖励优先级优化(扩大设计)这个挺实用的,针对于“差别奖励难度差异年夜”的场景(如长度约束易优化,正确性难优化),提出两种优先级调解计谋:
计谋1:奖励权重调解:为高优先级奖励分配更年夜权重wk,但需留意:难度差异过年夜时,需极年夜权重才能抵消难度误差,效果有限。计谋2:前提奖励设计:让易优化奖励依靠在难优化奖励(如长度奖励仅于正确性达标时生效,强迫模子优先满意高优先级(难)方针。):
结论:与 GRPO 比拟,GDPO 于多奖励强化进修中是一种更不变、更正确且偏好对于齐的最优化要领。

东西挪用使命




本文转载自年夜模子天然语言处置惩罚 作者:老余
©著作权归作者所有,如需转载,请注明来由,不然将究查法令责任-本文由开云·Kaiyun(中国)官方网站-科技股份有限公司-www.kaiyun.com(kaiyun.com)技术部原创提供,更多官方资讯请认准本站(dysp777.com)。