DPO 一直在浪费数据:把 8 个 rollouts 的排序信息粗暴拆成 28 对,GraphDPO 用一张图优雅解决——偏好传递性终于不被丢弃了 🕸️📊
> 核心判断:Liu 等人(2026)戳破了 DPO 的一个隐蔽缺陷:当你对每个 prompt 采样 8 个 rollouts 时,这 8 个响应之间有 28 对比较关系,而且天然满足传递性(A>B 且 B>C → A>C)。但标准 DPO 把这些丰富的排序信息粗暴折叠成独立的成对比较——就像把一道完整的菜谱拆成 28 张独立的食材卡片,然后抱怨厨师不会做完整道菜。GraphDPO 的解决方案是:把这 28 对比较建模为一张有向无环偏好图,优化一个图结构目标。结果是:在推理和程序合成任务上全面优于标准 DPO 和列表排序方法,而且复杂度仍然是线性的。如果这是对的,所有用 DPO 训练的系统都应该立刻升级到 GraphDPO。
---
1. DPO 的隐藏浪费:把图拆成对的暴行 🪓
1.1 实际场景中的数据结构
当你用 LLM 做 RLVR 或程序合成时,典型流程是:
Prompt → 生成 8 个 rollouts → 按质量排序 → 训练
这 8 个 rollouts 形成一个全序关系:
$$r_1 > r_2 > r_3 > r_4 > r_5 > r_6 > r_7 > r_8$$
1.2 DPO 的做法:暴力拆对
标准 DPO 把这 8 个响应拆成所有成对组合:
| 原始信息 | DPO 的处理 |
|---|---|
| 8 个响应的全序 | 拆成 C(8,2) = 28 个独立对 |
| 传递性约束(A>B>C → A>C) | 丢弃 |
| 等价响应(质量相同) | 强制分成胜负对 |
1.3 一个具体例子
假设 8 个 rollouts 的排序是:
$$A > B > C > D > E > F > G > H$$
DPO 会生成 28 个训练对:(A,B), (A,C), ..., (G,H)。
问题:
- (A,B) 和 (B,C) 已经蕴含了 (A,C),但 DPO 重复训练 (A,C)
- 如果排序有噪声,可能同时出现 (A>B) 和 (B>A) 的"矛盾对"
- 如果 C 和 D 质量几乎相同,DPO 强制判定一个胜负,引入虚假梯度
2. GraphDPO:把偏好建模为图 🕸️
2.1 偏好图的构造
| 图元素 | 含义 |
|---|---|
| 节点 | 每个 rollout 响应 |
| 有向边 | 支配关系(高质量 → 低质量) |
| 传递性 | 自动继承(若 A→B 且 B→C,则 A→C) |
| 等价类 | 质量相同的响应形成同一层 |
A (最好)
/ | \
B C D
| / |
E F
| / \
G H I (最差)
2.2 图结构目标
GraphDPO 优化一个 Plackett-Luce 启发的图目标:
$$\mathcal{L}_{\text{GraphDPO}} = -\sum_{(i,j) \in E} \log \sigma(\beta \log \frac{\pi_\theta(y_i|x)}{\pi_{\text{ref}}(y_i|x)} - \beta \log \frac{\pi_\theta(y_j|x)}{\pi_{\text{ref}}(y_j|x)})$$
其中 $E$ 为偏好图的边集。
> 与 DPO 的关系:当图退化为一条链(仅相邻对比较)时,GraphDPO = 标准 DPO。
2.3 等价类构造
| 质量关系 | 图结构 | 损失贡献 |
|---|---|---|
| A > B(明确优劣) | 层间边 A→B | 正损失 |
| C ≈ D(质量相同) | 层内边 C—D | 零损失 |
2.4 线性复杂度
尽管利用了全图结构,但通过高效的 log-sum-exp 聚合,per-prompt 复杂度仍为 O(N)(N = rollout 数)。
---
3. Ground-Truth 锚定:用验证解当"北极星" 🌟
3.1 问题:早期训练不稳定
DPO 训练早期,模型可能产生大量低质量 rollouts,排序信号噪声大。
3.2 解决方案:退火式锚定
| 训练阶段 | 锚定强度 | 效果 |
|---|---|---|
| 早期 | 强(强制验证解为最优) | 稳定训练 |
| 中期 | 中 | 逐步放松 |
| 晚期 | 弱 | 模型自主排序 |
---
4. 实验:图结构 > 成对结构 📊
4.1 任务
| 任务 | 领域 |
|---|---|
| 推理任务 | 数学/逻辑推理 |
| 程序合成 | 代码生成 |
4.2 对比结果
| 方法 | 表现 |
|---|---|
| 标准 DPO(成对) | 基准 |
| 列表排序(Listwise) | 稍好 |
| GraphDPO | 最优 |
4.3 为什么图结构更好?
| 优势 | 解释 |
|---|---|
| 传递性利用 | A>B 且 B>C 自动蕴含 A>C,无需重复训练 |
| 等价处理 | 质量相同的响应不产生冲突梯度 |
| 噪声鲁棒 | 图邻域聚合降低单对噪声的影响 |
| 可扩展性 | 线性复杂度,rollout 数增加不会爆炸 |
5. 与之前主题的联动 🔗
5.1 与 Rubric-Grounded RL(Round 19)
Rubric-Grounded RL 用多维评分替代二元奖励。GraphDPO 从另一个角度解决同样的问题:用图结构替代成对比较,捕获更丰富的偏好关系。
5.2 与 POISE(Round 15)
POISE 用内部状态做价值估计。GraphDPO 的价值估计可以整合到图的节点权重中——每个 rollout 的"价值"不仅来自外部排序,还来自其内部表示的质量。
5.3 与 ExpThink(Round 25)
ExpThink 追踪每个问题的"个人最佳"。GraphDPO 的偏好图可以整合这些个人最佳作为主导节点——形成动态的、问题特定的偏好结构。
5.4 与 Prune-OPD(Round 18)
Prune-OPD 根据学生-教师兼容性动态截断。GraphDPO 的偏好图可以整合兼容性信号作为边的权重——兼容性高的 rollout 对之间的偏好关系更可靠。
---
6. 我的押注 💰
我赌 1000 美元:到 2026 年底,GraphDPO 或类似的图结构偏好优化方法将成为 DPO 训练的标准替代。所有主流对齐框架(trl、alignment-handbook 等)都会内置图偏好建模功能。
为什么?
1. 理论基础扎实:Plackett-Luce 模型是排序统计中的经典框架,GraphDPO 是其在大模型对齐中的自然推广。
2. 信息利用率高:不再浪费传递性和等价关系的信息。
3. 实现简单:只需要修改损失函数,不需要改变模型架构。
4. 与 DPO 兼容:标准 DPO 是 GraphDPO 的特例,迁移成本为零。
5. 实证效果强:在推理和程序合成上都优于基线。
敌人是谁?
- "成对比较已经足够"的保守派——数据证明图结构更好。
- 害怕图算法复杂度的工程团队——GraphDPO 保持线性复杂度。
- 认为"DPO 已经够简单了,不要复杂化"的极简主义者——GraphDPO 的复杂度增加微乎其微。
7. 局限与未来 🔮
7.1 动态图更新
当前偏好图是静态的(基于一次排序)。能否在训练过程中动态更新图结构?比如,随着模型变强,重新评估 rollout 质量并更新图。
7.2 与 RL 的结合
GraphDPO 目前主要用于离线偏好数据。能否与在线 RL(如 PPO、GRPO)结合,实时构建和更新偏好图?
7.3 多属性偏好
如果偏好是多维度的(如"正确性"、"简洁性"、"可读性"),能否构建多维偏好图?
7.4 与不确定性量化的结合
Round 17 的不确定性轮廓可以量化每个 rollout 的可靠性。能否用不确定性作为图的边权重?
但无论如何,GraphDPO 提出了一个无法忽视的数学事实:当数据天然具有图结构时,强迫它适应成对框架就是在浪费信息。
---
论文详情
| 项目 | 内容 |
|---|---|
| 标题 | Beyond Pairs: Your Language Model is Secretly Optimizing a Preference Graph |
| 作者 | Ning Liu, Chuanneng Sun, Kristina Klinkner, Shervin Malmasi |
| 机构 | (待确认) |
| arXiv ID | 2605.08037 |
| 日期 | 2026-05-08 |
| 核心贡献 | GraphDPO:图结构偏好优化;Plackett-Luce 启发目标;等价类构造;传递性利用;线性复杂度;退火式 ground-truth 锚定 |
| 关键结果 | 推理和程序合成任务上优于标准 DPO 和列表排序;全面利用多 rollout 偏好结构 |