2026/1/12 3:48:22
网站建设
项目流程
移动应用网站开发阶段作业,上海到北京高铁最快2个小时,vantage wordpress,学校做网站方案简介
文章解析大模型强化学习的三种核心方法#xff1a;PPO#xff08;高质量高成本#xff09;、DPO#xff08;简化流程需高质量数据#xff09;和GRPO#xff08;组内排名降低计算需求#xff09;。介绍了各方法原理、优缺点及适用场景#xff0c;强调强化学习对齐模…简介文章解析大模型强化学习的三种核心方法PPO高质量高成本、DPO简化流程需高质量数据和GRPO组内排名降低计算需求。介绍了各方法原理、优缺点及适用场景强调强化学习对齐模型偏好的重要性帮助开发者根据实际需求选择合适方法。关于大模型强化学习网上已经有太多的硬核推导。但这篇不一样。我会用最直白的大白话和逻辑图带你彻底搞懂 PPO、DPO 和 DeepSeek 背后的 GRPO 到底是怎么回事。一、为什么SFT之后模型就能用了还要上强化学习因为 SFT 只是模仿。模型知道“112”也知道“一加一等于二”。但是 SFT 无法告诉模型哪一个更好。这个时候强化学习的作用就是让模型知道前面的 112 是更符合我们人类从小学习数学的阅读习惯大部分情况下是比后面的好的。它不仅是为了校准模型的回答格式比如偏好简洁的“112”更关键的是要教会模型在面对危险提问时懂得拒绝安全对齐以及在面对复杂逻辑时学会推理深度DeepSeek-R1。二、SFT 的局限它是个概率选择机SFT 的本质是 Next Token Prediction 预测下一个 token。它的训练目标是模仿拟合你喂给模型的训练数据及其分布。举个例子你问模型一道数学题想要专业风格的回答“求解方程3x520”。在 SFT 阶段因为模型在预训练数据里见过各种各样的网页、教材和作业它脑子里可能会蹦出好几条路而且它觉得这些都是对的路径 A直接蹦答案“答案是 x5。”概率 30%。这种回答虽然对但对于复杂问题容易算错且无法检查。路径 B口语化唠嗑“嗯我们可以先把5移到右边变成15然后再除以3就算出来了是5。”概率 30%。这种回答虽然逻辑对但太口语了缺乏专业性。路径 C标准步骤“解移项得3x20-5合并得3x15解得x5。概率 30%。这是我们最想要的但 SFT 并不认为它比前两个更高贵。路径 DPython 代码print((20-5)/3)概率 10%。也没错但如果我是要数学辅导这就不合适。对 SFT 模型来说这四个答案都是“正确答案”它只是根据概率在掷骰子。三、强化学习的作用注入偏好这时候强化学习RL就登场了。它的作用不再是让模型学会算数预训练完就会而是对 SFT 产生的概率分布进行“挤压”和“拉伸”。强化学习通过奖励机制Reward Model告诉模型“嘿虽然路径 A 和 B 也没算错但我给路径 C 打 99 分下次再遇到这种题把路径 C分步骤推理的概率给我拉满把直接蹦答案的还有说外语解题的回答概率给我压低”这就是为什么现在的模型如DeepSeek-R1不仅仅是“算出答案”而是学会了展示“思考过程”——这正是 RLHF/RL 在背后施加的魔法。四、再强调一遍RL 的本质是对齐你想要的意图意思是强化学习并不是非要教出一个死板的老学究。假如这次你的产品定位不是数学辅导软件而是一个温柔的教学老师或者是一个语音助理你完全不需要那种冷冰冰的标准步骤路径 C。这时候你只需要修改奖励函数Reward Function的规则“嘿这次我们要亲切一点给路径 B口语化唠嗑打 100 分那个写公式的路径 C 太严肃了给它 0 分”经过这轮训练模型就会立刻调转车头明白“哦原来训练师这次想要这种风格”从而把唠嗑模式的概率拉满。这就是强化学习的灵活性它不定义什么是绝对的好它只负责把模型变成你心中想要的样子。OK 下面就正式讲解这三个 O 了。五、PPO不计成本的特训班PPO (Proximal Policy Optimization) 是 ChatGPT 早期版本的功臣。虽然现在大家嫌弃它显存占用大、训练慢但它是理解强化学习的基石。在 PPO 的架构里为了教好这一个模型我们需要同时维护四个模型。没错是四个这就是为什么它只有 OpenAI 等厂家玩得起的原因占显存贵啊以及用了好多个数据外包团队造高质量 RL 数据。接下来先介绍一下这四个模型分别是什么用来干嘛的再看图理解I. Actor需更新参数角色主角。这就是我们正在训练、希望它变符合我们预期的那个模型。任务负责根据问题生成回答。II. Reference Model 参考模型冻结参数角色SFT 后的原始模型副本。任务它不参与打分而是作为约束。它时刻提醒 Actor“你别为了拿高分就乱说话要保持原本的语言能力不要偏离太远计算 KL 散度。”III. Reward Model 奖励模型冻结参数一般用什么通常直接拿 SFT 训练好的模型比如 Llama-3-8B-Instruct 或 Qwen3-14B-Instruct来改。角色代表人类偏好的判卷人。任务它是个哑巴平时不说话只有等 Actor 把整句话写完了它才给出一个最终分数比如 8.0 分。IV. Critic 评判模型更新参数一般用什么和 Reward Model 一样通常也是由 Actor 同款的 Transformer 改出来的比如 Actor 是 7BCritic 通常也是 7B。维度的大不同Critic 的独特之处在于它输出的形状它的最终输出是[Batch_Size, Seq_Len, 1]也就是 Actor 的每一个token都会有一个当下分。举个例子结合理解四个模型是如何配合写出一封“拒绝信”的这大概是初学者最大的疑惑Reward Model 既然能打分还要 Critic 干嘛为了彻底理解这四个模型是如何配合的我们来模拟一次 PPO 的训练过程。题目 (Prompt)“请帮我给重要客户写一封邮件礼貌地解释发货延迟的原因。”假设模型此次的回答是“尊敬的王总关于订单延迟我们深表歉意原因是我完全忘了这事。”第一阶段Actor 开始推理Actor 开始一个字一个字地推理第 1-5 步“尊敬的王总关于订单延迟…”Critic (评判模型) 看着前几个字心里想“嗯称呼得体直奔主题这种开头通常能拿高分。”Critic 打分[5.0, 5.2, 5.5, 5.8, 6.0] (分数稳步上升)第 6-10 步“…我们深表歉意原因是…”Critic (评判模型)“态度诚恳接下来只要给出一个合理的理由比如物流积压这题就稳了。”Critic 打分[6.2, 6.5, 6.7, 6.8, 7.0] (7 分对 5 分优势在我)第 11-12 步 (突然崩坏)“…我完全忘了这事。”Critic (评判模型) 瞬间崩溃“什么这种大实话能跟客户说吗这属于极度不专业要扣大分”Critic 打分[7.0, -8.0, -8.2, …] ( 分数暴跌)第二阶段Reference Model 默默注视Ref Model 全程也在计算概率。它发现 Actor 在输出“我完全忘了”这几个字时概率和自己SFT 模型差别极大。因为 SFT 模型受过职业训练在这个语境下通常会说“由于物流不可抗力”。Ref Model 的作用虽然它不说话但它计算出的KL 散度瞬间飙升。这意味着 Actor 这一步不仅会被扣分还会因为偏离职业人设被额外罚分。第三阶段Reward Model 秋后算账Reward Model (奖励模型) 终于拿到整个模型回复了“尊敬的王总关于订单延迟我们深表歉意原因是…我完全忘了这事儿。”RM 的动作读完最后判定为严重公关事故直接打低分。RM 打分 (Reward)-10 分 (最终标量)。第四阶段PPO 怎么更新Critic 与 Reward 的区分在复盘Backpropagation的时候对于前半段“尊敬的王总…”Reward Model 给了 -10 分总分很差。 但 Critic 会站出来帮 Actor 辩护“R 老师这学生前 10 个字写得挺好的啊那时候我预测能得 7 分呢是好苗子”结论Actor 不需要修改前 10 个字的策略那是好动作需要保留。对于后半段“我完全忘了…”Critic 指着第 11 步说“就是从这个‘我’字开始我的预测分从 7 分直接跳水到了 -8 分”结论Advantage (优势) 实际得分(-10) - 预期得分(7) -17。最终结果模型会受到一个巨大的负向梯度尽量压低在“原因是…”后面接“我完全忘了”的概率。下次它就会学乖改成接“由于物流高峰”了。这就是 Critic 的意义它像心电图一样精准定位了“病情”发生的那一瞬间而不是让 Actor 对着一张 0 分的卷子一脸懵逼不知道自己前面写的那句“尊敬的王总”到底是对还是错。PPO 流程图以及公式有了上面的铺垫这个时候再上流程图和公式就不会一脸懵逼了。PPO 流程图忘了之前在哪里看过的说一本书或者一篇文章只要加一条数学公式就会失去 90% 的读者再加一条就是继续损失剩下的 90%。但没办法上面讲得这么清楚了不结合公式还是不够完整数学公式就是我上面用文字描述这个过程的最简约表示。我尽量用大白话给各位解释清楚。当然如果不感兴趣就可以直接下拉到 DPO 章节。PPO 的核心公式其实就是个分段函数。它的目标是最大化以下内容1. 首先是 r_tθ比率 Ratio****π**_θ当前正在更新的 Actor 模型新策略。****π**_θold更新这一步之前的 Actor 模型旧策略。注意这里不是 Ref Model 的输出还是 Actor 模型只不过是上一轮没更新梯度前的 Actor。****作用用来衡量参数更新后产生当前动作的概率变成了原来的多少。这就是 Critic 和 Reward Model 联手算出来的那个数。正数表示是好动作负数-表示是坏动作。代表梯度更新方向。公式不解释了总之它的作用就是算差值用来衡量你刚才那一步操作到底是比我预期的更好A 为正还是更差A 为负从而决定对参数是该奖励还是惩罚。ϵ限制范围 Epsilon通常设为 0.2。意思是允许你变动 20%。4. clip函数clip r_tθ1-ϵ1ϵclip 函数的核心作用是截断。它将新旧策略的概率比率 r 强制限制在 [1−ϵ,1ϵ] 这个区间内。这意味着我们只允许模型在旧策略的基础上进行小步调整防止模型因为一次性更新幅度过大步子迈太大而导致训练崩溃扯着蛋从而保证了强化学习过程的稳定性。代码解释# 所谓的截断其实就是把比率 r 强行锁在 [0.8, 1.2] 之间假设 epsilon0.2 r_clipped min(r, 1.2) # 上限就算你进步神速最多也只算你进步了 20% r_clipped max(r_clipped, 0.8) # 下限就算你退步很大最多也只算你退步了 20% # 在实际 PyTorch 代码中通常直接用一句话搞定 r_clipped torch.clamp(r, 0.8, 1.2)5. 大写的 E在数学公式里E 代表数学期望Expectation。说这么复杂其实在写代码的时候它的意思极其简单粗暴就是mean()求一下平均值。PPO 的流程就是不断重复 “旧模型采样 - 算优势 - 新模型学习 - 强制截断防更新太多” 的过程。它用最简单的数学技巧Clip解决了强化学习中最难的稳定性问题。现在推荐再翻上去看看 PPO 流程图应该理解会更深。PPO 的痛点太™奢侈了。你想想要训练一个 70B 的 Actor训练过程中你需要同时把 Actor、Ref Model、Reward Model 和 Critic 这四个 70B 全部塞进显卡里。这意味着训练一个 70B 的模型你实际上需要准备近乎 4 倍的显存资源这还没算上 Actor 和 Critic 训练所需的梯度、优化器状态以及所有模型在推理时产生的激活值这个大头。这种四倍带来的恐怖硬件门槛和复杂的工程维护成本直接把绝大多数普通实验室和中小公司拒之门外只有那几个钞能力公司才玩得转。这份完整版的大模型 AI 学习和面试资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】六、DPO穷哥们的福音DPODirect Preference Optimization说白了就是为了省显存省算力省钱把 PPO 优化后的产物。斯坦福的研究人员发现其实我们不需要 Critic也不需要显式的 Reward Model。既然我们想要的是“让好答案的概率变大坏答案的概率变小”那为什么不直接对着概率下手呢最大的变革省硬件DPO 最大的贡献在于它把 PPO 里的 Reward Model 和 Critic 全都干掉了。 现在你只需要维护两个模型Actor还是需要训练负责学习。Ref Model依旧保持冻结负责当参照物防止学偏。哈现在知道为什么要大力气的讲解 PPO 了吧Actor 和 Ref Model 都一样的意思。都是一个师傅教的要破招你也得先学辟邪剑法→ →。DPO 的核心方法没有对比就没有伤害DPO 不再给单个答案打分而是拿出一对答案Chosen好答案 y**_w**Rejected坏答案 y_l它的目标非常简单粗暴让模型生成 y_w 的概率远远大于生成y_l 的概率。DPO 流程图这里又有个数学公式别怕看结论就行。DPO 直接利用概率的比值来作为隐式奖励也就就是最大化好答案相对于基座模型的提升量 - 坏答案相对于基座模型的提升量。OK继续公式解释不想看的跳到 GRPO 章节就行。1看那个比率π_θ/π_ref************这的意思和 PPO 里一样“对于这个答案现在的我Actor比起刚出厂的我Ref是更想说了还是更不想说了”2β这是一个超参数通常设为 0.1你可以把它理解为严厉程度。β 越大模型就越保守稍微偏离 Ref Model 一点点算出来的数值就会被放大导致巨大的惩罚不敢乱改。β 越小模型就越放飞自我允许偏离 Ref Model 更多。3看括号里的减法左边对于好答案 y_w我希望现在的我比原来的我概率更高数值越大越好。右边对于坏答案y_l我希望现在的我比原来的我概率更低数值越小越好。中间的减号好答案的优势 - 坏答案的优势 差距。4σ(Sigmoid) 函数括号里算出来的差距是一个没有边界的数字可能是 -0.1也可能是 10000甚至是 98456782645872634856237。但是后面的 Loss 函数只接受 0% 到 100% 的概率。这时候就需要 Sigmoid 函数登场了它的公式是但你不用记公式只需要记住它是一个映射函数把 σ(x)的值映射到[0, 1]之间。5翻译成人话公式背后的“拔河”逻辑别被这四个数学符号吓到它们其实构成了 DPO 的三道关卡。首先括号里的减法就像一场拔河我们希望好答案的分数越高越好坏答案的分数越低越好甚至是负无穷这样两者算出来的差距就会极大。接着Sigmoid 函数 (σ) 充当裁判负责把这个分差转化成“好答案的胜率”范围 0-1。如果分差很大胜率就接近 100%如果分差很小或为负胜率就惨不忍睹。最后最外层的 -log 是机器学习中经典的负对数似然Negative Log Likelihood。它的作用是将概率转化为优化所需的损失值Loss如果裁判判定胜率接近 1Loss 就趋近于 0模型参数保持稳定但如果胜率很低接近 0-log 会让 Loss 数值瞬间激增趋向无穷大。这种指数级的惩罚机制会产生巨大的梯度驱动模型剧烈调整参数。这就是 DPO 的核心逻辑通过极端的损失惩罚逼迫模型在概率空间里把好答案和坏答案彻底拉开距离从而在不用 Reward Model 的情况下实现直接对齐。TIP为什么公式最前面要加一个负号因为 log() 函数里面的值越大最终的结果也越大然后我们的优化器只用来算最小化 Loss 的最大变最小加一个负号就搞定。为什么 DPO 要同时看 Rejected只学好答案不行吗如果你只告诉模型“学这个好的”模型可能会偷懒——它会简单粗暴地把所有看起来像人话的句子概率都提高或者找到一种讨巧的通解比如只学会了说漂亮的车轱辘话但不管逻辑对错。DPO 的本质是对比学习。Rejected 答案坏答案通常是模型很容易犯的错比如一本正经地胡说八道。DPO 通过负向梯度告诉模型“看清楚了这种语气虽然很像你平时说话的风格但是内容是错的下次遇到这种情况把这句话的概率给我狠狠压下去”只有同时看到了“正解”和“错误”模型才能真正学会分辨是非而不仅仅是模仿语气。DPO 为什么要用同分布数据在搞 DPO 时很多人会踩一个坑拿 GPT-5 的数据去 DPO 一个 7B 的小模型结果发现效果并不好。为什么这里就涉及到一个核心概念同分布On-Policy / Near-Policy。通俗点说DPO 的数据最好是自己改自己的错题集。别人的错题分布差异大如果你拿 Gemini3 Pro 生成的“坏答案”给 7B 小模型看小模型可能会一脸懵逼“这句坏答案写得文采飞扬、逻辑复杂有没可能虽然它是错的但我本来就写不出来啊”既然模型本来生成这句话的概率就极低那你再去压低它的概率对模型来说就是无效补课梯度几乎为 0。自己的错题同分布只有拿模型自己或者能力相近的模型生成的坏答案它才会恍然大悟“哎呀这确实是我经常忍不住想说的那句蠢话原来这是错的我改”所以DPO 想要效果好最好是用当前模型去采样数据然后让人类或强模型去标注好坏。这种量身定做的错题集才是提分的关键。老样子看完这里就翻上去看 DPO 流程图此时理解会更深。DPO 的痛点天下没有免费的午餐它DPO的成本实际上全部转移到了数据构造这个隐形大坑上。你必须准备极其高质量的偏好对数据Chosen vs Rejected这远比单纯收集 SFT 语料要难得多因为 DPO 对数据噪声极度敏感一旦你的数据里“好答案”其实没那么好。或者“坏答案”和“好答案”差距不明显甚至标注人员手滑标反了DPO 这种强力算法就会立刻把模型带到沟里去。可以说PPO 考验的是你的显卡财力而 DPO 考验的是你的数据清洗能力。七、GRPODeepSeek 的潘朵拉盒子好了终于到了2025年初大火的 GRPOGroup Relative Policy Optimization。这是 DeepSeek-R1 能够在此刻惊坐全球的关键技术。如果说 PPO 是请私教DPO 是做改错本那 GRPO 就是内部赛马机制。1告别 Critic拥抱 GroupDeepSeek 团队心想PPO 的 Critic 太贵DPO 需要配对数据还要标注哪个好哪个坏太麻烦。有没有一种既省钱又不用搞配对的方法GRPO 的逻辑是我不要绝对的裁判我要相对的排名。它的操作流程是这样的输入问题比如“9.11 和 9.8 哪个大”群发 (Sampling)让模型一口气生成一组答案比如 8 个。* 有的回答9.11 大。 * 有的回答9.8 大。 * 有的回答一样大。 * ……对于理科题Math/Code用规则硬解这是 DeepSeek-R1 最擅长的部分规则打分器 (Rule-based Reward)不需要神经网络写个脚本就行。数学答案是 9.8 就是 1 分否则 0 分。代码能通过 Test Case 就是 1 分报错就是 0 分。特点快、准、狠。对于文科题Text请外援打分如果是写摘要、写小说这种没有标准答案的任务脚本没法判断对错怎么办模型打分器 (Model-based Reward)这时候就可以直接调用一个已经训练好的 Reward Model或者用更强的模型如 GPT-5来当裁判。它会读一遍这 8 个回答然后给每个回答打个分比如 0.9, 0.6, 0.3。2组内归一化全靠同行衬托GRPO 不关心你考了多少分只关心你在这一组 8 个答案里排第几。它计算每个答案的优势Advantage是基于组内平均值的如果这一组里大家都很烂都得 0 分你的 A****_i 就是 0模型参数基本不动。****如果这一组里7 个都错了就你 1 个对了。那你的 A****_i 会非常巨大正向其他 7 个是负向。****模型更新的逻辑变成了“为了让这一组的平均分变高我要拼命提高那个高分答案的概率同时把那些拖后腿的低分答案的概率狠狠踩下去”3GRPO 的目标公式有了上面的优势 A_iGRPO 实际上就变成了一个省去了 Critic 模型的 PPO。它的最终优化目标公式如下是不是看着很眼熟别怕都到这了我们继续拆解这个公式它其实只做了三件事1. 平均化1/G Σ不再是盯着一个数据点看而是把这一组Group里生成的 G 个样本放在一起看。通过最大化这一组的综合表现来优化策略。这里的 PPO 遗产Clipping截断DeepSeek 的研究员非常清醒他们知道强化学习最怕的就是Roller Coaster过山车效应。如果某一次模型运气好猜对了一次我们不能让它立刻把这个策略奉为真理一下走太深。所以这里保留了 PPO 的 clip 机制也就是公式里的 min 和 clip 部分限制策略更新的幅度通常在 (1-ϵ, 1ϵ) 之间熟不熟悉。确保模型是小步快跑而不是从悬崖上跳下去。这里的 DPO 遗产KL 散度Regularization虽然 GRPO 没有 Critic 模型但它依然保留了 Reference Model 的 KL 散度约束。公式最后的 -βKL 就是为了提醒模型“你可以创新可以去探索解题的新路径但你的语言风格、基本语法不能偏离原本锚定的模型太远。你可以内部赛马可以创新但还是不能大步扯着蛋。”总结一下 GRPO 的公式逻辑“大家Group一起上根据刚才算出来的相对排名Advantage好的奖励、差的惩罚。但是奖励和惩罚都别太激动Clip而且千万别把原来的语言底子给丢了KL。”GRPO 流程图这个时候再看流程图应该就很清晰了。为什么 GRPO 这么强省显存它彻底扔掉了 Critic 模型和 Actor 一样大的评判模型。这意味着你只需要训练 Actor 自身这一个模型。相比 PPO 那种需要同时把 Actor 和 Critic 塞进显存里进行梯度更新的富贵仗GRPO 的显存占用直接砍半还多。这对于像 DeepSeek 这种 671B 的巨型模型来说省下的钱都是真金白银。基线更稳PPO 的 Critic 还需要训练有时候 Critic 自己都看不准。而 GRPO 的基线是当下生成的这一组的平均分这是最真实的当前水平。适合推理对于数学和代码这种非黑即白的任务只要生成的一组里有一个“开窍”了做对了GRPO 就能敏锐地捕捉到这个正向信号并迅速放大。GRPO 的痛点GRPO 虽然被称为“穷哥们的福音 Pro 版”但它也不是万能的它其实是用时间换空间。采样成本极高 (High Inference Cost)虽然你省去了 Critic 模型的显存但训练过程中 Actor 的负担变得超级重。PPO 可能只需要生成 1 个答案就开始算梯度了而 GRPO 每一轮训练都必须针对同一个问题生成 G 组比如 8 个或 16 个长答案。这就好比以前是“写完一份卷子就改”现在是“必须一口气写完 16 份卷子才能算一次分”。这会导致训练时的推理等待时间变得非常长虽然显存没爆但训练时长可能会被拉长。对冷启动要求高GRPO 的核心逻辑是矮子里拔将军。但如果你的 SFT 模型太烂生成的 8 个答案全都是错的全是 0 分那怎么办平均分是 0标准差是 0。公式里的 A****_i 就算不出来或者没有意义。****模型这一步就学不到任何东西。所以GRPO 非常依赖 SFT 阶段模型就已经具备了一定的答对率比如至少要有 10% 的概率蒙对如果模型基础太差GRPO 就会原地空转。怎么解决这里就看你模型 Mid-training 了结尾有彩蛋。3. 奖励函数的难设计性DeepSeek-R1 的成功主要集中在数学和代码领域因为这两者的奖励非常客观对就是对错就是错。一旦切换到“写创意”、“写文案”这种主观领域GRPO 就又得依赖一个额外的 Reward Model 来打分。这时候Reward Model 如果不准比如甚至不如 Actor 聪明那么 GRPO 就会陷入盲人骑瞎马的困境甚至可能因为过度优化这一组的排名导致模型开始钻牛角尖Reward Hacking。GRPO 的进阶DeepSeek-V3.2 的稳定魔改GRPO 虽然牛但当你把 RL 算力推到预训练的 10% 以上时问题就来了梯度容易炸策略偏移像脱缰野马MoE 模型还爱抽风。DeepSeek 团队在 V3.2 里对 GRPO 动了手术加了四个补丁让它在巨型规模下稳如老狗。这些优化是针对实际痛点来的。下面我们一个一个拆。1. 无偏 KL 估计别让梯度炸锅标准 GRPO 的 KL 散度上面有写它有个毛病如果当前策略 π_θ 对某个词的概率超级低远低于参考模型 π_ref梯度就会像气球一样炸开导致训练崩盘。DeepSeek 的解法是加个重要性采样比率用旧策略 π_old 修正让梯度变成无偏的。公式是这样的说人话就是外面的比率π_θ / π_old像个保险丝把里面的分母1/π_θ约掉防止梯度无限大。结果训练更稳尤其在数学这种极端分布的任务上甚至可以把 KL 罚项调弱或干脆去掉还能提性能。2. Off-Policy 序列掩码别学前任的错大规模 RL 里数据生成用旧策略 π_old和训练用当前 π_θ往往脱节——推理引擎和训练框架精度不一样一次生成大批量数据再分 mini-batch 更新就容易 off-policy教非所学。DeepSeek 加了个掩码 M只针对“坏样本且偏移太大”的序列捂眼睛。公式里的 GRPO Loss 改成其中掩码还是说人话如果这个序列的分数负坏样本且当前模型觉得它太离谱KL δ就直接忽略。直觉好样本尽管学坏样本如果是旧策略犯的错你本来就不爱犯就别费劲纠错了——这会引入噪声。结果对 off-policy 更包容训练不抖了。3. Keep RoutingMoE 别抽风MoE 模型混合专家在推理时挑专家路由但训练时参数一变路由就可能跳槽导致训的不是用的。DeepSeek 的招采样时记下路由路径训练时强制锁死确保训谁用谁。这招从 V3-0324 就开始用了是 MoE RL 的定心丸。4. Keep Sampling MaskTop-p 别作妖用 top-p/top-k 采样时推理会砍掉低概率词尾但训练 KL 算全词表就违反重要性采样了。DeepSeek 的解采样时记下掩码训练时同步套上确保动作空间一致。结果语言一致性稳了采样质量不崩。这些魔改加起来让 DeepSeek-V3.2 的 RL 能放心烧算力推理能力直追 GPT-5。核心哲学稳定性大于一切别让小偏差酿大祸。08后记PO 家族还在进化强化学习的PO家族还在增加就在大家还在消化 GRPO 的时候工业界和学术界又针对它的痛点搞出了新花样1. DAPOGRPO 的补丁包DAPO (Dynamic sAmpling Policy Optimization) 的出现是因为有人发现 GRPO 有点浪费。在实际训练里GRPO 有时候因为 Clip设置得太死板或者长文本的梯度被稀释了导致很多原本有用的训练信号被扔掉了。DAPO 的作用就是做一个精打细算的管家通过动态调整采样策略把这些被浪费的信号重新捡回来让模型学得更有效率。2. GSPOMoE 模型的镇静剂GSPOGroup Sequence Policy Optimization主要是为了解决 MoE混合专家模型架构水土不服的问题。研究人员发现用 GRPO 训练 MoE 时因为它是盯着每一个 Token 算比率容易导致训练过程极其不稳定方差爆炸。GSPO 索性就把格局打开不再纠结单个 Token 的得失而是直接看整条序列Sequence 的表现。这种抓大放小的策略成功治好了 MoE 训练时的狂躁症。3. SAPOQwen 团队的蓄意轰拳这是 Qwen 团队针对 Qwen3 系列提出的 SAPO (Soft Adaptive Policy Optimization)。它觉得 PPO 和 GRPO 用的那种硬截断Hard Clip超过 20% 就一刀切太暴力了。SAPO 提出了一种“软门控”Soft Gating用平滑的曲线代替生硬的墙让梯度衰减得更自然。同时它还搞了个双标对待非对称温度对好答案宽容对坏答案严厉。据说在 Qwen3 的数学和多模态任务上比 GRPO 更稳更强。八、总结一下RL 的进化速度比我写文章的速度还快。但万变不离其宗无论是 P、D、G 还是 S核心逻辑依然是在“怎么更稳、更省钱地让模型学会人类的偏好”这件事上不断微调。掌握了 PPO 和 GRPO 的核心思想后面这些新出的 X-PO 你一眼就能看懂它的思想。在 PPO/GRPO 之前大模型都在偷偷做 Mid-training细心的同学可能发现了无论是 Llama 技术报告中提到的 “Annealing”退火阶段还是 DeepSeek-V3/R1 强调的 “Cold Start”冷启动阶段大模型在进入 SFT 和强化学习之前似乎都多了一个神秘的步骤。业界通常称之为 Mid-training。为什么大家不直接拿预训练模型去跑 RL因为没学会走之前是没法通过强化学习教它跑的。Mid-training 并不是单纯的过渡它是连接“读万卷书”Pre-train和“行万里路”RL的关键桥梁机制视角目标不变数据质变Mid-training 的核心训练目标依然是 Next Token Prediction预测下一个词这点和预训练Stage 1一样。但关键变量在于数据Stage 1 是广撒网式的海量数据Web Crawl目的是覆盖语言统计规律说人话就是灌水让模型学会说话。Mid-training 则是通过清洗、合成、精选将数据变成了高密度的教科书级语料。在这一阶段模型不再是漫无目的地看网页而是开始大量阅读高质量的合成数据、STEM理工科习题。在 Stage 1 是在学语文在 Stage 2 则是在学逻辑。梯度视角从抗噪到提纯Llama 的论文中专门提到了这个阶段对梯度的影响。 从梯度噪声尺度 (Gradient Noise Scale) 的角度看Stage 1 的数据量大但噪声极其高梯度方向是发散的模型在嘈杂的集市里艰难辨认规律。Stage 2 的数据经过了严苛的清洗数据质量极高High Signal。 这就像炼丹到了最后一步火候学习率调小原料数据极纯。规整的数据让梯度更新方向高度一致使得模型能够快速收敛到更优的局部极小值。能力视角为 RL 打地基这与我们要讲的 GRPO 息息相关Pre-train 追求的是广度模型记住了“112”也记住了“地球是圆的”。Mid-training 追求的是深度推理。通过引入包含思维链CoT的合成数据模型开始学习“遇到问题 - 先拆解 - 再分步计算 - 最后得出结论” 的模式。为什么要专门做这个 因为如果模型在进 RL 之前连基本的 CoT思维链都写不出来那 GRPO 就算想奖励它也采不到正确的样本全是错的奖励个寂寞。Mid-training 就是为了给 RL 提供一个稍微懂点事的 Base Model。效率视角长窗口的最佳窗口期为什么不在一开始就做 128K 甚至 1M 的长文本训练还不是因为穷。 根据 Attention 机制 ON² 的复杂度在 T 量级的 token 上跑超长上下文是烧钱机器。Mid-training 是做 Context Extension上下文扩展 的黄金时段 此时数据量相对较少相比几 T 的预训练数据这里可能只有几百 B但质量极高。配合 YaRN 等插值技术开发者可以在可控的算力成本下高效地将模型的注意力距离拉长。九、如何学习AI大模型我在一线互联网企业工作十余年里指导过不少同行后辈。帮助很多人得到了学习和成长。我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限很多互联网行业朋友无法获得正确的资料得到学习提升故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。这份完整版的大模型 AI 学习和面试资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】第一阶段从大模型系统设计入手讲解大模型的主要方法第二阶段在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用第三阶段大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统第四阶段大模型知识库应用开发以LangChain框架为例构建物流行业咨询智能问答系统第五阶段大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型第六阶段以SD多模态大模型为主搭建了文生图小程序案例第七阶段以大模型平台应用与开发为主通过星火大模型文心大模型等成熟大模型构建大模型行业应用。学会后的收获• 基于大模型全栈工程实现前端、后端、产品经理、设计、数据分析等通过这门课可获得不同能力• 能够利用大模型解决相关实际项目需求 大数据时代越来越多的企业和机构需要处理海量数据利用大模型技术可以更好地处理这些数据提高数据分析和决策的准确性。因此掌握大模型应用开发技能可以让程序员更好地应对实际项目需求• 基于大模型和企业数据AI应用开发实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能 学会Fine-tuning垂直训练大模型数据准备、数据蒸馏、大模型部署一站式掌握• 能够完成时下热门大模型垂直领域模型训练能力提高程序员的编码能力 大模型应用开发需要掌握机器学习算法、深度学习框架等技术这些技术的掌握可以提高程序员的编码能力和分析能力让程序员更加熟练地编写高质量的代码。1.AI大模型学习路线图2.100套AI大模型商业化落地方案3.100集大模型视频教程4.200本大模型PDF书籍5.LLM面试题合集6.AI产品经理资源合集获取方式有需要的小伙伴可以保存图片到wx扫描二v码免费领取【保证100%免费】