type
status
password
date
slug
summary
category
URL
tags
icon
RHLF
1、初始化
- 使用奖励模型(token-level)初始化Critic Model;
- LLM初始化Actor Model以及Ref Model
2、数据预处理
基于prompt+response生成prob_old、prob_ref、value_old、reward数据。
3、奖励
3.1、奖励值
奖励值=-(KL散度)+奖励(reward模型输出)
3.2、优势函数
4、更新Actor
generate—>actor—>prob_new
因为有时候无法获得,此时我们可以使用进行近似。
5、更新Critic
generate—>critic—>value_new
DPO
其中,表示人类偏好的响应,表示人类拒绝的响应 ;是参考策略,让尽量接近;是一个超参数控制偏离的程度。
GRPO
1、背景
PPO 中的值函数通常是一个与策略模型大小相当的模型,这带来了显著的内存和计算负担。此外,在 LLMs 的上下文中,值函数在训练过程中被用作优势计算中的Baseline,但通常只有最后一个 token 会被奖励模型赋予奖励分数,这可能使得值函数的训练变得复杂。
为了解决这些问题,我们提出了 Group Relative Policy Optimization (GRPO),不再需要像PPO那样加入额外的价值函数近似,而是直接使用多个采样输出的平均奖励作为Baseline,显著减少了训练资源的使用。

2、核心思想
GRPO的核心思想是通过组内相对奖励来优化策略模型,而不是依赖传统的批评模型(critic model)。具体来说,GRPO会在每个状态下采样一组动作,然后根据这些动作的相对表现来调整策略,而不是依赖一个单独的价值网络来估计每个动作的价值。
2.1、奖励
通过奖励模型或者基于规则的奖励机制。
2.2、目标函数
其中和是超参数;是参考模型;是优势值,通过每组输出对应的一组奖励计算得出:
策略更新:根据相对优势更新策略模型的参数,增加高奖励输出的概率,减少低奖励输出的概率。同时,通过KL散度约束确保策略更新的稳定性。
3、计算流程
- 采样动作组:对于每个输入提示,模型根据当前策略生成一组不同的输出。这些输出的多样性为后续的相对奖励计算提供了基础。
- 奖励评估:使用奖励模型对每个输出进行评分,这些评分可以基于任务的特定标准,如数学题的正确性、代码的可运行性等。
- 计算相对优势:将每个输出的奖励值进行归一化处理,得到相对优势。这一过程通过比较同一输入下的多个输出,减少了策略更新的方差。
- 策略更新:根据相对优势更新策略模型的参数,增加高奖励输出的概率,减少低奖励输出的概率。同时,通过KL散度约束确保策略更新的稳定性。