DPO、PPO、GRPO的原理,区别与联系

大模型向量数据库云安全

以下是 DPO、PPO 和 GRPO 三种强化学习优化算法的原理、区别与联系的系统性对比,结合其在大型语言模型(LLM)微调中的实际应用场景:

一、核心原理

1. PPO(近端策略优化)

picture.image

在这里插入图片描述

  • 原理 :基于 Actor-Critic 框架,通过限制策略更新幅度保证稳定性。
  • 裁剪机制 :限制新旧策略的差异(概率比裁剪),防止更新过大导致训练崩溃。
  • KL 散度惩罚 :约束新策略与参考模型的偏离程度。
  • 价值网络(Critic) :额外训练一个模型估计状态价值,用于计算优势函数(如 GAE)。
  • 训练流程
    1. 生成响应样本(Rollout);
    1. 奖励模型(RM)打分;
    1. 计算优势函数(GAE);
    1. 更新策略和价值网络。

2. DPO(直接偏好优化)

  • 原理 :绕过奖励模型,直接利用人类偏好数据优化策略。
  • 偏好建模 :基于 Bradley-Terry 模型,将偏好比较转化为概率优化问题。

  • 损失函数

其中

为优选样本,

为劣选样本,

控制策略偏离参考模型的程度。

  • 训练流程
    1. 准备偏好数据(Prompt + Chosen + Rejected);
    1. 对比当前模型与参考模型的输出概率;
    1. 更新策略模型。

3. GRPO(组相对策略优化)

picture.image

在这里插入图片描述

picture.image

在这里插入图片描述

picture.image

在这里插入图片描述

  • 原理 :通过分组采样和组内奖励归一化替代价值网络。
  • 分组生成 :对同一输入生成多个响应(如 5-8 个)。
  • 相对优势计算 :以组内平均奖励为基线,计算每个响应的相对优势(如

)。

  • 无价值网络 :直接使用相对优势更新策略,降低计算开销。
  • 训练流程
    1. 分组生成响应;
    1. 奖励模型或规则打分;
    1. 计算组内相对优势;
    1. 更新策略(含 KL 约束)。

二、区别与联系对比

| 维度 | PPO | DPO | GRPO | | 优化目标 | 最大化奖励 + 限制策略变化 | 直接匹配人类偏好概率 | 组内相对奖励最大化 | | 模型需求 | 需奖励模型 + 价值网络 | 需参考模型,无需奖励模型 | 需奖励函数,无需价值网络 | | 计算效率 | 低(多模型交互,显存占用高) | 高(类似监督学习) | 中(分组采样增加开销) | | 稳定性 | 中等(依赖 KL 约束) | 高(训练更鲁棒) | 高(动态梯度正则化) | | 数据依赖 | 需 RM 评分数据 | 需高质量偏好对 | 需可验证奖励(如数学答案) | | 适用任务 | 通用对话、主观任务 | 偏好对齐、简单微调 | 数学/代码等可验证推理任务 | | 核心优势 | 泛化性强,支持在线探索 | 实现简单,训练快速 | 显存占用低,鼓励推理多样性 |

联系

  • 共同目标 :三者均用于对齐 LLM 与人类偏好,提升生成质量。
  • 技术演进
  • • DPO 是 PPO 的简化版(省去 RM 和 RL 循环);
  • • GRPO 是 PPO 的改进版(分组优化替代价值网络)。

三、典型应用场景

PPO

  • • 通用对话系统(如 ChatGPT),需长期奖励建模的场景。

DPO

  • • 快速微调(如医疗问答),偏好数据充足且任务较简单时。

GRPO

  • • 复杂推理任务(如 DeepSeek-Math),资源受限或需过程验证的场景。

四、总结与选择建议

  • 资源充足 & 通用任务 → PPO :稳定性高,但需大量计算。
  • 偏好数据丰富 & 快速迭代 → DPO :简化流程,但对初始模型质量敏感。
  • 推理任务 & 高效训练 → GRPO :显存占用降低 40%,在数学/代码任务中效果显著(如 DeepSeek-R1 的 pass@1 提升 55%)。

💡 技术趋势 :GRPO 因高效性成为大模型 RLHF 新主流(如 DeepSeek、Qwen 采用),而 DPO 逐渐聚焦轻量化场景。未来方向包括结合过程奖励(如链式思考)和动态正则化(如 DAPO)。

参考文献

点个「赞」+「在看」❤️

让我们知道这份文字有温暖到你,也是 我们持续 创作的最大动力!

推荐

什么是 Classifier-Free Guidance?

Conditional Flow Matching : 连续标准流 Continuous Normalizing Flow

CFM 与 OT-CFM:条件流匹配与最优传输的碰撞

DPO损失实现

Conditional Flow Matching : 常微分方程ODE、欧拉方法和Neural ODE

当 Normalizing flow 遇上语音生成:AI 说话变 “真人” 的秘密在这里!

深度剖析:Kimi - Audio 中 BigVGAN 的神奇作用

为什么说分布变换是 Normalizing flow 的「灵魂操作」?

MATCHA-TTS 来了!条件流匹配让文本转语音效率飙升

从知识增长的角度提升RAG上下文的质量

MiniMax-Speech,零样本语音合成新突破,32 种语言轻松拿捏!

手把手教你创建 evol-instruct 数据集!附完整流程~

社交类聊天的 Query 分析与应答策略

SFT 中指令选择和响应选择哪个更重要?

角色扮演大模型技术分享2-超拟人模型的困境

最新!SpeechLLM 综述:架构、能力、挑战与未来全揭秘

如何低成本生成高质量指令微调数据?

从数量到质量:通过自引导数据选择来提升语言模型性能以实现指令调优

Kimi-Audio:开源音频基础模型全面解析

Kimi-Audio 的 TTS 效果如何?

Qwen 的训练数据是怎么做的?

GeForce RTX 3090, 4090, A10, A40, A100, A800, L20, L40 显卡性能对比

如何低成本生成高质量指令微调数据?

掌握RAG:投入生产前要评估的8个场景

掌握RAG:如何评估RAG的LLM

掌握RAG:如何在部署后观察您的RAG

掌握RAG:如何选择嵌入模型

基础模型中的新范式:为什么o1是不同的,以及它将如何改变LLM应用

Semantic token和连续特征在SLLM下的对比

从数量到质量:通过自引导数据选择来提升语言模型性能以实现指令调优

RLHF及其变体:进展和实际工程见解

胖东来与京东联手了

Freeze-Omni: 低延迟语音对话模型

Fully Sharded Data Parallelism (FSDP)

什么是置信度?置信度模型怎么做?

晦涩难懂的 Flow matching!图形化理解

中文指令微调数据,质量就是一切!

基于 LLM 的文本泛化

CosyVoice 2:基于大型语言模型的可扩展流式语音合成技术

Mini-Omni2: with Vision, Speech and Duplex Capabilities

FSQ的原理与VQ-VAE的区别和联系

大模型并行训练的一些知识——极简版

亲测有效!如何用 Address Sanitizer 精准定位内存漏洞?附保姆级操作指南

要用 AI 裁员 50% 的千亿独角兽,公开认错,重启招聘!

一些文档去重算法

single codebook和dual codebook在LLM中向量量化上有什么区别?

胖东来与京东联手了

一些文档去重算法

最佳的指令数据应当是什么样的?

Prefill-Decode分离

亲测有效!如何用 Address Sanitizer 精准定位内存漏洞?附保姆级操作指南

Simhash-文档去重算法简介

校园篇-北京信息科技大学2025

RLHF 入门,高手勿进!

最佳的指令数据应当是什么样的?

CosyVoice:一种基于监督式语义标记的可扩展多语言 Zero-Shot 语音合成器

Model Context Protocol (MCP)

MCP(模型上下文协议)是什么以及它是如何运作的

压力测试LLMs——大海捞针实现

不要对 2+3=?想太多:关于类 o1 大语言模型的过度思考

OPENCSG 中文语料库:一系列高质量的中文数据集,用于语言模型训练

picture.image

近日还在想要不要建个群呢?感觉自己是个i人,又懒,打理不来呀。但这个想法不自主的就冒出来了,还是要思考下。天人交战良久,得,一位朋友私我要入群,那就建一个吧,感谢。

欢迎入群,希望能有一个交流的地方。但群主是个i人,没事儿让他想静静,有事儿圈他。

群主不是万能的,不是万能的,不是能的,能的。

0
0
0
0
关于作者

文章

0

获赞

0

收藏

0

相关资源
火山引擎大规模机器学习平台架构设计与应用实践
围绕数据加速、模型分布式训练框架建设、大规模异构集群调度、模型开发过程标准化等AI工程化实践,全面分享如何以开发者的极致体验为核心,进行机器学习平台的设计与实现。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论