从群体偏好到解构对齐:大模型强化学习从GRPO到DAPO的“认知”进化
1. 引言:DPO–>GRPO–>DAPO
DPO的出现,通过一个巧妙的数学变换,将复杂的在线RL过程简化为一个等效的、离线的、类似SFT的微调任务,极大地提升了LLM对齐的稳定性和易用性。但DPO的核心是基于**成对偏好(pairwise preference)**的,即“在回答A和B中,人类更喜欢A”。
这种简化的模型虽然有效,但忽略了两个深刻的现实:
- 偏好的复杂性:现实中的选择往往不是二选一,而是在一群候选中选出最好的一个。
- 偏好的多维性:我们判断一个答案的好坏,并非基于一个单一的“好”或“坏”的标量,而是基于多个维度的综合考量,比如:它是否准确?是否安全?是否简洁?是否共情?这些维度甚至可能相互冲突。
GRPO和DAPO的演进,正是为了解决这两个问题,推动所有LLM应用的对齐过程向着更精细、更真实、更可控的方向发展。
2. 回顾基石:DPO (Direct Preference Optimization)
在深入GRPO和DAPO之前,必须先理解DPO。
- 核心思想:DPO认为,一个经过SFT的模型,本身就是一个“隐式”的奖励模型。它通过对比人类偏好的答案对
(chosen, rejected)
,直接优化模型参数,使其增大chosen
答案的概率,减小rejected
答案的概率。 - 概率模型:其背后是Bradley-Terry模型,该模型假设两个选项被偏好的概率,与它们各自的“实力”(在这里是隐式奖励)的差值相关。
- 损失函数:
Loss_DPO = -log(σ(β * (r(chosen) - r(rejected))))
其中r(answer)
是模型对答案的隐式奖励(通过计算policy model和reference model的log-probabilities差值得到),β
是超参数。 - 优点: 稳定、高效、无需显式训练奖励模型。
- 局限: 每次学习的信号只有一个比特——“A优于B”,信息量有限。
3. 第一站进化 (GRPO): 从“二人对决”到“群体冠军”
GRPO (Group Relative Policy Optimization) 的出现,是为了解决DPO“信息量有限”的问题。
3.1 GRPO的核心动机:现实世界的偏好是“群体选择”
在很多场景下,我们会让模型生成K个候选答案,然后由人类标注员或奖励模型选出其中最好的一个(Best-of-K)。这种**“1 vs K-1”的偏好数据,蕴含的信息远比“1 vs 1”的成对偏好丰富。它不仅告诉我们chosen
比某个rejected
好,而是告诉我们chosen
比所有其他**的rejected
都要好。
3.2 原理详解:从Bradley-Terry到Plackett-Luce
如果说DPO的数学基石是Bradley-Terry(处理成对比较),那么GRPO的基石就是Plackett-Luce模型(处理群体排序)。
- Plackett-Luce模型: 该模型描述了从一个集合中,某个特定项目被选为“最佳”的概率。这个概率正比于该项目的“实力”(隐式奖励)指数,并由集合中所有项目实力指数之和进行归一化。
- GRPO的损失函数:
Loss_GRPO = -log(P(chosen is best in group)) = -log( exp(β * r(chosen)) / Σ_y_in_group exp(β * r(y)) )
这个损失函数的形式,非常类似于一个分类任务的交叉熵损失。它的目标是最大化模型将chosen
答案的隐式奖励r(ch