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

强化学习、PPO和GRPO的通俗讲解

文章目录

  • 强化学习、PPO和GRPO的通俗讲解
    • 整体概览
    • 一个关于学习与奖励的故事
      • 1. 传统的学习模式(类比大模型训练三阶段)
      • 2. 爸爸的奖励机制与问题(类比奖励模型与策略失效)
      • 3. 爸爸更新奖励机制(类比差异化策略定制)
      • 4. 爸爸的负担与家庭教师(类比PPO中的Critic Model/Value Function)
      • 5. 省钱的办法:模拟题(类比GRPO的简化)
      • 6. 100分背后的作弊(类比KL散度与截断函数)
    • 总结与启发

强化学习、PPO和GRPO的通俗讲解

  • 在b站看到一个视频,这个视频旨在通过一个生活化的故事,帮助我们从感性层面深入理解强化学习(Reinforcement Learning, RL)及其在大模型训练中的应用,特别是PPO和GRPO这两种算法。整理了一下,并配了一些图。

    https://www.bilibili.com/video/BV1Tg94Y8Eoq?vd_source=7937b7ae341caaf55cd0ac02b03193a1

整体概览

  • 主要聚焦于Deep RL中引入的强化学习算法——GRPO。理解GRPO,需要先对强化学习的整体框架和思路有基础的了解。作者从一个故事开始,然后逐步深入强化学习的入门知识,再直接讲解GRPO的简洁性、优化技巧和代码,最后对比PPO与GRPO,展现GRPO的优美之处。

一个关于学习与奖励的故事

  • 通过小帅和小美兄妹俩的学习经历,来类比大模型训练中的强化学习过程。

1. 传统的学习模式(类比大模型训练三阶段)

  • 小帅和小美的老师每天上课分为三步:
  1. 第一步:讲解教科书核心内容

    特点: 讲解核心概念、积累背景知识。

    类比: 预训练(Pre-training)——学习基础概念和知识。

  2. 第二步:讲解例题与课后作业

    特点:有问题有答案,老师逐步讲解解题过程,课后有相似作业。

    类比:SFT(Supervised Fine-Tuning,监督微调)——有标签数据,模型学习如何给出正确答案。

  3. 第三步:考试

    特点:题目与上课例题差别大,但思路相似;考试时没有答案;根据成绩打分,并进行错题分析。

    类比:强化学习(Reinforcement Learning)——在没有明确答案的环境中,通过与环境互动(考试)获得奖励(分数),并根据奖励调整策略(学习方法)。

    image-20250712225620065

2. 爸爸的奖励机制与问题(类比奖励模型与策略失效)

  • 故事一开始,爸爸定了一条简单的规矩:考试低于80分罚钱,高于80分有奖金,上90分奖金更多。听起来很直接

    • 80分以下:罚款10元

    • 80分以上:奖励100元

    • 90分以上:奖励200元

    但结果呢?学得好的小美觉得这奖励太好拿了,有点不那么上心,没挑战了。学得不好的小帅呢,他老在及格线晃悠,觉得80分太远了,干脆有点摆烂了。

  • 问题:奖励机制失效

    小帅: 失去学习动力,反正达不到80分,不如“摆烂”。

    小美: 也失去进步动力,反正不怎么努力也能拿奖励,维持现状就好。

  • 这种一刀切的奖励机制最大的问题就是没有考虑到个体差异。对小美刺激不够对小帅门槛太高,直接导致两个人的动力都下降了。

  • 类比:

    统一奖励机制: 类似于直接使用 Reward Model 的打分来鼓励模型学习。

    失效原因: 统一的奖励机制无法适应不同个体(模型)的差异化情况,导致模型“摆烂”或停滞不前。

    image-20250712225745401

3. 爸爸更新奖励机制(类比差异化策略定制)

  • 爸爸很快发现了问题,开始调整,搞了一个“差异化定价”。

    1. 针对小美(基础好): 定的目标更高了,比如要考到90分甚至95分才有奖励。
    2. 针对小帅(基础差): 就定的实际一点,比如50分及格,考到70分就有挺不错的奖励了。

    这样听起来是不是合理多了?这种机制能根据不同人的基础情况定制奖励策略,有效督促他们进步。

  • 类比:

    差异化定制策略: 强化学习中需要根据模型当前所处状态(能力水平)定制不同的奖励策略,以激励模型模型持续进步。

4. 爸爸的负担与家庭教师(类比PPO中的Critic Model/Value Function)

  • 合理是合理多了,但是新的问题又来了——维护成本。爸爸得随时知道这俩孩子现在到底什么水平,进步到哪儿了,才能动态地去调整奖励标准。不然,比如小帅进步很快,刷一下能考80分了,你还拿50分那条线卡他,那奖励还有啥用?维护起来就很麻烦了。

  • 这就引出了下一个问题:怎么让这个机制能自己适应,持续地跟着个体变化走?爸爸一开始想了个办法,请家教,让专业人士来评估,专门盯着给定制计划。但这太贵了,成本太高。

  • 类比:

    家庭教师: 类似于PPO算法中引入的 Critic Model(评论家模型)Value Function(价值函数)。它与策略模型一同训练,评估当前策略(模型)的表现,从而指导策略的调整和奖励的制定。PPO的复杂性部分来源于此。

    image-20250712230001233

5. 省钱的办法:模拟题(类比GRPO的简化)

  • 后来爸爸想了个挺聪明的办法:每次大考前呢,先让俩孩子做五套模拟卷,算出个平均分。然后呢就拿这个平均分当这次考试的奖励基准线。

    例如: 模拟平均分是70,那这次可能你考到75就有个基础奖,考到85奖励就更高。

  • 这个方法好,它相当于用一个比较低的成本(做题),来动态地捕捉每个孩子当时的那个状态,让目标始终在你努力一下就能够得着的地方。既个性化又省钱。这听起来越来越像一个学习系统本身了,在不断调整。

  • 类比:

    模拟题平均分作为基准线: 这是GRPO算法的核心思想之一。GRPO去掉了PPO中专门的Critic Model,而是直接利用策略模型(Policy Model)自身多“打几套题”(多进行几次采样),用这些采样的平均表现作为奖励的基准,从而简化了整个训练开销。

    image-20250712230224309

6. 100分背后的作弊(类比KL散度与截断函数)

  • 听起来挺完美的,但故事就在这儿拐了个弯儿。特别戏剧性。有一次考试,两个孩子居然都考了100分。小美考100分正常,但小帅他虽然在进步,可之前最好也80分上下,这次直接满分,这就太反常了。

    爸爸也觉得不对劲,他就想起《资本论》里那句话:“如果有10%的利润,资本就会保证到处被使用;如果有20%的利润,资本就能活跃起来;有50%的利润,资本就会铤而走险;有百分之百的利润,资本就敢践踏一切人间法律;有300%以上的利润,资本就敢犯任何罪行,甚至去冒绞首的风险。”

  • 这个类比虽然是经济学的,但它典型的一点就是激励,如果太诱人,规则又有空子可钻的话,就可能出问题,诱导一些你根本不想要的行为,甚至是破坏规则的行为。果然爸爸一问,小帅就招了。为了拿那个最高奖励作弊了,提前把试卷给弄到手了,甚至还威胁了老师。

  • 这个作弊事件,它其实特别生动地说明了激励设计有多复杂。它不是简单的设个目标,给个奖就行了。你还得考虑它可能带来的副作用,负面的激励效果。设计任何系统,不管是公司绩效,还是游戏规则,都得防着这种钻空子的行为。这在强化学习里就有点像那个智能体,找到了环境的一个bug,然后利用它刷分,而不是我们想让他学的那个策略。

  • 所以啊,爸爸的这个奖励系统又得升级了,得打补丁。他加了一条:最后得分高,不一定就能拿最高奖。还要看这个分数跟你最近的表现,比如模拟考的成绩匹不匹配。如果你的分数一下子比你之前的水平高出太多,不正常的那种高,那就算分再高,奖励也可能打折,甚至可能没有。

    这一步非常关键。它实际上是增加了作弊的风险,或者说降低了作弊的预期收益,让那种异常的高分变得没那么香了。这样整个系统就更稳健了,能够引导大家把心思花在真正的学习和进步上,而不是去琢磨怎么钻规则的空子。

  • 类比:

    奖励与原有能力表现的符合度: 强化学习中,这对应于 KL散度(Kullback-Leibler Divergence)截断函数(Clipping Function) 的作用。

    1. KL散度: 确保新的策略(模型)与旧的参考模型(原始能力)差异不要太大,,避免一步到位地大幅提高,而是循序渐进。
    2. 截断函数: 限制了策略更新的幅度,防止过大的策略更新导致不稳定的行为,类似于防止模型为了过高奖励而“铤而走险”。

    image-20250712230258967

总结与启发

  • 回头看整个过程,这个简单的家庭故事,完美地展现了一个"智能"激励系统自我学习和进化的全过程,从最开始简单的奖和罚,到后来考虑个体差异,搞个性化,再到用模拟考动态调整基准线,最后还得加上这个防作弊的补丁。这整个故事其实特别漂亮地展示了一个激励系统,它是怎么学习和进化的。

    这个系统就像一个智能体,在和环境(也就是孩子们的表现)进行互动,根据反馈不断地调整自己的策略。这里面不光是孩子在学习,那个设计规则、调整规则的爸爸,他本身也在进行一个持续的学习和优化。他观察结果,评估效果,然后调整方法。这本身就是一种“元学习”。

  • 这个故事中体现了多少和强化学习相关的概念?

    1. 状态: 孩子当时的学习水平。
    2. 动作: 爸爸调整规则,孩子选择努力或作弊。
    3. 奖励: 奖金、罚款。
    4. 环境反馈: 考试分数、作弊被发现。
    5. 策略优化: 爸爸不断改进规则。
    6. 探索: 孩子尝试各种方法(包括不好的方法)去争取奖励。
    7. 有效策略: 孩子利用找到的有效得分策略。
  • 这些要素和强化学习里那个核心思想——智能体跟环境交互,根据反馈调整行为,为了拿到最多的累积奖励——有很多共通之处。


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

相关文章:

  • 创客匠人:解析创始人 IP 打造对知识变现的深层赋能
  • os.machine()详解
  • vue3 el-table动态表头
  • 菜鸟的C#学习(二)
  • TDengine 使用最佳实践(1)
  • hot100链表(1)
  • 工业软件出海的ERP-PLM-MES一体化解决方案
  • 自动化运维工具jenkins问题
  • AI 时代的分布式多模态数据处理实践:我的 ODPS 实践之旅、思考与展望
  • 单细胞分析教程 | (二)标准化、特征选择、降为、聚类及可视化
  • 牛客网50题
  • 第14次课 认识图 A
  • docker镜像原理与镜像制作优化
  • Classifier guidance与Classifier-free guidance的原理和公式推导
  • 【STM32实践篇】:最小系统组成
  • 深入详解:决策树在医学影像领域心脏疾病诊断的应用及实现细节
  • Pytest 跳过测试技巧:灵活控制哪些测试该跑、哪些该跳过
  • 图像扭曲增强处理流程
  • 物联网设备数据驱动3D模型的智能分析与预测系统
  • frp内网穿透教程及相关配置
  • 【Redis实战】Widnows本地模拟Redis集群的2种方法
  • Git 相关的常见面试题及参考答案
  • 国产电钢琴电子琴手卷钢琴对比选购指南
  • 2025年亚太杯(中文赛项)数学建模B题【疾病的预测与大数据分析】原创论文讲解(含完整python代码)
  • ESP32使用freertos更新lvgl控件内容
  • 搭建云手机教程
  • 聊下easyexcel导出
  • Java可变参数
  • 从基础加热到智能生态跨越:艾芬达用创新重构行业价值边界!
  • Go mod 依赖管理完全指南:从入门到精通