当前位置: 首页 > news >正文

大模型微调之——PPO、DPO、GRPO 核心区别对比

文章目录

  • 为什么要做强化反馈学习
  • 一、核心定义与原理
      • 1. PPO (Proximal Policy Optimization,近端策略优化)
      • 2. DPO (Direct Preference Optimization,直接偏好优化)
      • 3. GRPO (Group Relative Policy Optimization,群体策略优化)
    • 二、关键维度对比表
    • 三、一句话总结

为什么要做强化反馈学习

  • 看看监督微调与强化学习的区别:
    监督微调是要准备一组特征值X和结果值Y(也就是所谓的标注/标签)组成的数据集 来进行训练,通过调整函数的权重参数,让它的预测值与结果值Y尽可能接近,它的核心目标就是要最小化预测值与真实标签的误差
    强化学习则不需要预先准备好结果值Y,它只要提供输入让函数模拟计算,再通过与环境的交互获得反馈(奖励或惩罚),通过调整参数尽可能获取奖励,它的核心目标是要能最大化长期累积奖励期望值。

一、核心定义与原理

1. PPO (Proximal Policy Optimization,近端策略优化)

  • 定位:经典on-policy Actor-Critic 强化学习,RLHF 早期标准方案。
  • 核心原理
    • Critic(价值网络)估计状态价值,计算优势函数(GAE)。
    • clip 裁剪约束策略更新幅度,防止训练崩溃。
    • KL 散度约束,避免偏离参考(SFT)模型。
  • 组件:策略(Actor)+ 价值(Critic)+ 奖励模型(RM)+ 参考模型。

2. DPO (Direct Preference Optimization,直接偏好优化)

  • 定位离线偏好学习,跳过奖励模型,直接用偏好对优化。
  • 核心原理
    • 基于 Bradley-Terry 模型,将偏好比较转化为对数概率优化。
    • 目标:提升Chosen(优选)概率、压低Rejected(劣选)概率。
    • 无 Critic、无显式奖励,单模型训练
  • 数据(Prompt + Chosen + Rejected)偏好三元组。

3. GRPO (Group Relative Policy Optimization,群体策略优化)

  • 定位on-policy 组级优化,PPO 简化版(无 Critic)。
  • 核心原理
    • 单 Prompt 生成N 个候选(组),用规则/验证器打分。
    • 组内均值为基线、组内标准差归一化,计算相对优势。
    • 保留 PPO 的 clip + KL 约束,但不需要价值网络
  • 数据:在线采样组(每组 4–16 条)+ 可自动验证的奖励。

二、关键维度对比表

维度PPODPOGRPO
训练范式on-policy(在线采样)off-policy(离线偏好数据)on-policy(在线组采样)
模型依赖Actor + Critic + RM + 参考仅 Actor + 参考Actor + RM/规则 + 参考(无 Critic)
优势估计Critic 网络(GAE)无(直接偏好对比)组内均值/标准差(无 Critic)
数据类型单样本绝对奖励打分偏好对(Chosen/Rejected)组内多候选 + 可验证奖励
训练效率低(多模型、计算密集)高(单模型、速度快 2–3 倍)中高(无 Critic、组可控)
显存占用高(多模型权重)低(单模型)中(少 Critic 权重)
稳定性高(多重约束)中(依赖数据质量、易过拟合)高(组归一化降方差)
适用场景复杂任务(多轮对话、长文本)轻量对齐、对话、内容生成数学推理、代码、可自动验证任务
优点理论成熟、鲁棒性强流程极简、资源省、易复现效率/稳定平衡、自动奖励友好
缺点复杂、样本效率低、成本高复杂偏好弱、难细粒度优化推理开销增 20–30%、组大小敏感

三、一句话总结

  • PPO:最稳但最贵,全流程强化学习
  • DPO:最便宜好用,直接学偏好、不用奖励模型
  • GRPO:PPO 简化版,组内对比、无 Critic、适合自动打分任务
http://www.jsqmd.com/news/561540/

相关文章:

  • 3大架构突破:深入解析MediaPipe TouchDesigner插件的实时视觉交互设计哲学
  • 自动潜航器的高效控制:修正C/GMRES算法探秘
  • 如何突破网盘限速?这款直链解析工具让下载速度提升10倍的秘密
  • 金三银四大模型岗,20+面试血泪教训!2026最新大模型上岸秘籍,面试官不敢告诉你!
  • DCT-Net新手入门:从镜像部署到生成第一个卡通头像的全流程
  • 别再混淆了!用大白话和3个实战案例,帮你彻底搞懂NLP/CV里的‘下游任务’
  • 中国蚁剑-antSword:开源Webshell管理工具的多场景实战指南
  • 交叉调整率差的5大根源—变压器、绕组、反馈、拓扑、元件
  • Mermaid:文本驱动的数据可视化工具解决方案
  • centos7.9上部署openstack(train版)——7. Dashboard--horizon
  • 探索开源AI代码助手:DeepSeek-Coder-V2如何重塑智能编程体验
  • 终极指南:如何用SillyTavern打造专业级AI角色聊天体验
  • 团结引擎发布小游戏区分不同平台
  • 模型微调实战:提升nanobot在OpenClaw中的任务准确率
  • PostgreSQL认证方法对比:从md5到scram-sha-256的升级指南
  • MacOS窗口管理效率工具Loop:从痛点到解决方案的完整指南
  • Python 测试详解:从原理到实践
  • zteOnu:中兴光猫命令行管理工具实战指南
  • 保姆级教程:用迪文屏官方工具生成30x30点阵汉字库,搞定界面文本显示
  • P1473 [USACO2.3] 零的数列 Zero Sum(DFS 回溯 + 状态维护+ 空格合并数字)
  • 实测才敢推!2026年超实用AI论文写作工具榜单,免费高效产出合规稿
  • SDMatte多风格背景合成效果展:商业级视觉作品创作
  • 【开题答辩全过程】以 个性化电影推荐系统为例,包含答辩的问题和答案
  • 消费级显卡轻松玩转百亿大模型微调?8步教你降维打击,显存成本打骨折!
  • GitHubDesktop2Chinese:颠覆式界面本地化工具,革新你的开发效率
  • centos软件包列表详解
  • Windows原生运行Android应用:APK Installer技术解析与使用指南
  • 保姆级教程:用YOLOv8+PyQt5打造你的番茄成熟度检测桌面应用(附完整源码与数据集)
  • 丹青幻境案例分享:我用它生成了这些绝美国风壁纸
  • Alt App Installer革新:突破微软商店限制的Windows应用安装解决方案