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

LLM场景下的强化学习【GRPO】

关于PPO可以参考:LLM场景下的强化学习【PPO】-CSDN博客

一、RLHF-PPO的缺陷与GRPO的改进

1. 奖励欺骗问题

在RLHF-PPO中,人类偏好数据是非常重要的,它能帮助模型按照我们的期望去有针对性的更新策略,生成更符合我们需求的答案。但是,这样可能会导致模型学习“刷分”行为,也就是堆砌Reward Model偏好的关键词但破坏逻辑连贯性,出现每一步奖励都高,但过程和结果都错的情况。

GRPO选择抛弃SFT环节(并不是完全抛弃,还是需要SFT解决cold-start问题),不引入人类偏好数据,仅对最终的答案评估一次奖励,让模型自己去摸索中间的思考过程,这种方式更能激发模型的推理能力。

总的来讲,就是PPO方法太专注于让模型学习人类的思维模式了,而GRPO成功让模型学习出更适合AI的一套思维方式。

将策略模型当做学生,将奖励模型当做老师。

RLHF-PPO相当于单人辅导,只有一位老师(Value Model)和一位学生(Actor Model),这位学生为了能在模拟考中取得高分(一次模拟考代表一次奖励过程),会把每次模拟考的题目以及解法都背下来(更新策略),并且也会学习思考,即使题目有一些变化,它也能成功解决。但是,这样的学生无法超越老师,比如一道数学题有四种解法,但是老师也只会三种,那么学生大概率只能学会这三种解法,只有较低概率能泛化学习到第四种解法,并且即使学习到新的解法,还是会倾向使用老师教的方法。这样的学生在高考中表现可能就会下降,因为高考有新的题型,更加考验推理能力。

(需要解释下,PPO实际是在完整轨迹结束后才更新策略,而不是每次状态转移都更新,上述的例子在这个概念上存在歧义)

GRPO采取了另一条路线,它不再需要老师(Value Model),只会招来一群学生(多个策略)。GRPO会告诉这群学生,你们的目标就是在高考中取得高分,但是没有老师教你们,只会给你们一堆撕掉了答案的模拟考试卷(无监督数据),你们自己去琢磨这些题目怎么做。当高考出分的那一刻,这些学生才知道自己一直以来学习到的策略是否正确。但是没有老师教的学生第一年大概率考不好,所以会让其中考得比平均分高的学生复读(迭代),其余学生直接退学,并且重新招收一批新学生。在新的一年,学生们会根据自己上一年高考分数调整学习的策略(策略更新),以求取得更高的分数。直至某一年,有个学生成功考上清北,证明诞生了非常优秀的策略,所有学生终于能从高中毕业啦!

此外,如果我们直接让幼儿园学生来自学然后高考,可能需要花太长时间(迭代次数过多),所以会先让老师将学生培养到初中生水准(SFT训练,解决Cold start问题),再让学生们去高中自学。

2. 资源开销问题

        PPO需要维护四个模型,其中两个模型需要更新,并且每个模型的参数量都不小,对资源的要求比较高。

        GRPO直接去掉了Value Model,只需要更新Policy Model,然后奖励的计算也从每一次状态迁移都计算,变成了仅在最后计算一次奖励。值得注意的是,GRPO依赖多个并行策略,每个策略只计算一次奖励,最后奖励计算次数等于策略数目,不过这个过程可以通过并行计算减少开销。

二、GRPO算法细节

1、原理上的变化

从上述学生与老师的例子中,已经展现了GRPO相对于PPO的几个重要改进点。

  • 删去Value Model(不需要老师):注意Reward Model还是需要的,相当于要有个高考的评卷人。

  • 多策略并行(招收多个学生):GRPO并没有采取PPO一样的基于梯度的优化策略,而是采取了“优胜劣汰”的优化策略。换句话说,就是PPO努力让一个学生越来越优秀,而GRPO则是直接从一群学生中选择最好的。

  • 无监督训练(撕掉了答案的模拟卷):GRPO并非全程都是无监督,它还是需要先用一批监督数据,训练出Reward Model,以及使用带有长思维链标注的数据来训练初始的Policy Model,解决cold-start问题。在后续的训练过程中,则是使用大规模无监督数据进行训练,训练好的Reward Model用于给模型答案进行打分。

  • 不计算中间奖励,仅计算最终奖励(模拟考不评分,高考才评分):PPO会对每个动作(生成新的token)都计算一次动作价值与状态价值,并进一步计算优势。而GRPO仅计算每个策略的最终奖励,也就是在一次迭代中,每个策略只会在生成完整答案后计算一次奖励。

2、目标函数的变化

先来看PPO的目标函数,包含三部分,第一部分是策略模型的目标函数,第二部分是价值模型的目标函数,第三部分是用于鼓励策略模型探索新策略而引入的熵奖励项。

多数文章中可能只有前两项,不过既然上面的例子中提到了PPO存在“难以学习新的解法”的问题,所以这里也简单提及一下,引入熵奖励项算是一种缓解问题的方案。

策略模型与价值模型这两项如何解读,可以看置顶参考文章。

PPO目标函数

再来看GRPO的目标函数,第一项是计算某个策略相比其他策略的优势,此处优势的计算策略很简单,首先会计算每一个策略的最终奖励 R(\tau),并计算一个群体平均奖励 \bar{R},策略的优势就是最终奖励与平均奖励的差值,再经过一个 \sigma函数。

第二项是KL正则,就是传统的KL惩罚项,作用是强制新策略在基础能力上不退化(例如语言生成能力),保证在高中自学过程中不忘记初中知识。

GRPO目标函数

后续待更新ing 

http://www.xdnf.cn/news/1105039.html

相关文章:

  • 在线重装 Proxmox VE
  • DeepSeek模型分析及其在AI辅助蛋白质工程中的应用-文献精读148
  • C语言文件读写操作详解:fgetc与feof函数的应用
  • RestTemplate动态修改请求的url
  • C++前缀和与差分的深度探索
  • 信号量机制
  • Python-正则表达式-信息提取-滑动窗口-数据分发-文件加载及分析器-浏览器分析-学习笔记
  • Windows GNU Radio避坑
  • 【牛客刷题】dd爱科学1.0
  • 计算机网络第三章(6)——数据链路层《网桥交换机》
  • PHT-CAD 笔记
  • 深入MyBatis:CRUD操作与高级查询实战
  • Visual Studio Code 的 settings.json 配置指南
  • K8s Service 终极解析:源码、性能、故障排查全攻略
  • 深入解析 TCP 连接状态与进程挂起、恢复与关闭
  • ROS1学习第三弹
  • Web安全 - 基于 SM2/SM4 的前后端国产加解密方案详解
  • Web安全-Linux基础-01-初识Linux
  • 牛客周赛 Round 99
  • 每日算法刷题Day45 7.11:leetcode前缀和3道题,用时1h40min
  • 浏览器重绘与重排
  • LDO选型
  • # Day31 Java方法02 方法的定义和调用
  • netdxf—— CAD c#二次开发之(netDxf 处理 DXF 文件)
  • Apache Cloudberry 向量化实践(三)重塑表达式构建路径:Gandiva 优化实战
  • Java外包怎么选?这几点不注意,项目可能血亏!
  • CompletableFuture 详解
  • ICCV2025接收论文速览(1)
  • OpenCV多种图像哈希算法的实现比较
  • 代码随想录|图论|10水流问题