点击下方 卡片 ,关注“ 慢慢学AIGC ”
前言
人工智能随着 DeepSeek R1 的发布迈出了重要的一步,这是一款开源模型,在高级推理任务上对 OpenAI 的 o1 发起了挑战。 DeepSeek R1 采用了一种创新技术——群体相对策略优化(Group Relative Policy Optimisation,GRPO),并结合多阶段训练方法,在数学、编程和通用推理等领域树立了新的基准 。
DeepSeek R1 的独特之处在于,它能够以惊人的准确性和推理深度解决复杂任务,同时保持高效的训练流程。本篇博客将深入探讨其基础方法、训练流程及创新点,以展示 DeepSeek R1 在人工智能研究中的卓越表现。
理解群体相对策略优化(GRPO)
群体相对策略优化(Group Relative Policy Optimisation,GRPO)是推动 DeepSeek R1 具备卓越推理能力的核心创新点。 这一强化学习算法最早在 DeepSeekMath 论文中提出,通过重新设计奖励分配和优化方式,提升了模型训练的效率。 GRPO 取代了传统方法(如 PPO ,即近端策略优化),为大语言模型提供了一种更简单、高效的优化策略。
GRPO 的关键特性
- 无价值函数模型 :与 PPO 不同,GRPO 不需要单独的价值函数模型,从而简化了训练流程,降低了内存消耗,提高了训练效率。
- 基于群体的优势计算 :GRPO 针对每个输入生成一组输出,并将该组的平均得分作为基准奖励。这种群体化的方法使奖励模型训练更加稳定,特别适用于推理任务。
- 直接优化 KL 散度 :PPO 将 KL 散度作为奖励信号的一部分,而 GRPO 则直接将 KL 散度整合进损失函数,从而在优化过程中提供更精细的控制。
GRPO 的工作流程
-
采样(Sampling) :模型使用当前策略为每个提示生成多个输出。
-
奖励评分(Reward Scoring) :使用奖励函数对每个输出进行评分,评分方式可以基于规则(如格式或准确性)或基于结果(如数学或编程任务的正确性)。
-
优势计算(Advantage Calculation) :群体的平均奖励作为基准,每个输出的相对优势基于该基准计算,并在群体内进行归一化。
-
策略优化(Policy Optimisation) :模型利用计算出的优势来更新策略,以最大化表现。同时,KL 散度项被直接纳入损失函数,确保模型在探索新策略和保持稳定性之间取得平衡。
深入解析 GRPO
如果你只是想了解一个大致概览,可以跳过这一部分——前面的内容已经足够。我不希望你感到信息过载,所以如果不需要深入理解,也无需勉强阅读本节内容。
群体相对策略优化(GRPO)详解
群体相对策略优化(GRPO) 是 近端策略优化(PPO) 的一种变体,在提升数学推理能力的同时,还优化了 PPO 的内存使用效率。
GRPO 的全面解析
1. PPO 与 GRPO 的对比
PPO(近端策略优化)与 GRPO(群体相对策略优化)的核心区别在于 优势估计方式 和 计算效率 。
- PPO 依赖单独的价值模型 来评估策略的优势,而 GRPO 去除了这一依赖 ,改用 基于群体的相对优势估计 。
- 这一改进 降低了内存占用和计算成本 ,使得 GRPO 在处理复杂推理任务时更加高效。
2. 图示概览
在上图所示的结构中:
PPO(近端策略优化)
- 策略模型(Policy Model)针对输入 q 生成输出 O。
- 独立的 价值模型(Value Model) 预测基准值 v,并结合 广义优势估计(GAE) 计算优势 A。
- 奖励 r 由 奖励模型(Reward Model) 计算,并包含基于参考模型的 KL 罚项。
- 由于额外的价值模型和 KL 计算,该架构导致 较高的资源消耗 。
GRPO(群体相对策略优化)
- 每个输入q 生成 多个输出 {o_1, o_2, …, o_G},并通过奖励模型计算它们的奖励{r_1, r_2, …, r_G}。
- 通过 群体计算 对这些奖励进行归一化,计算出相对优势A_1, A_2, …, A_G, 无需价值模型 。
- KL 散度 直接添加到损失函数中,使训练过程更加简单高效。
PPO 的数学公式
PPO 是一种强化学习算法,它通过最大化 代理目标函数(Surrogate Objective Function) 来优化策略模型,同时使用 剪切约束(Clipping-Based Constraints) 来保证训练稳定性。其关键组成部分如下:
PPO 的关键要点
- 优势计算(Advantage Calculation) :PPO 采用 广义优势估计(GAE) 来减少A_t的方差,并使用 学习到的价值函数 V_{\psi} 作为基准值。
- 剪切正则化(Clipping Regularization) :代理目标函数中的 剪切(Clipping) 机制可确保训练稳定性,并防止策略更新幅度过大。
- KL 散度正则化(KL Divergence Regularization) :奖励中的 KL 罚项 避免策略偏离参考模型过多,从而促进稳定学习。
GRPO 的数学公式
群体相对策略优化(GRPO) 通过移除 价值模型(Value Model) 并使用 基于群体的相对奖励 进行基准估计,从而简化了 PPO。GRPO 旨在高效地微调大语言模型(LLMs),同时降低计算成本。
GRPO 的关键要点
- 去除价值模型(Eliminates the Value Model) :GRPO 用 基于群体的奖励归一化 取代了计算成本高昂的价值模型,大幅降低了资源消耗。
- 利用群体比较(Leverages Group Comparisons) :通过在群体内部对奖励进行归一化,GRPO 与大多数奖励模型的 成对比较机制 更加契合,确保更精确的相对奖励估计。
- 简化 KL 正则化(Simplifies KL Regularization) :GRPO 直接在 损失函数 中对策略进行 KL 散度正则化,避免了在奖励中引入复杂的 KL 罚项。
基于 GRPO 的结果监督强化学习(Outcome Supervision RL with GRPO)
基于 GRPO 的过程监督强化学习(Process Supervision RL with GRPO)
GRPO 训练包括 迭代更新策略模型和奖励模型 以保持对齐。具体步骤如下:
PPO 与 GRPO 的主要区别
- 价值模型(Value Model) :PPO 依赖 价值模型 进行优势估计,而 GRPO 去除了价值模型 ,转而使用 群体归一化奖励 。
- KL 正则化(KL Regularization) :PPO 在奖励中包含 KL 罚项,而 GRPO 直接在损失函数中 进行 KL 散度正则化。
- 奖励粒度(Reward Granularity) :PPO 直接计算 令牌级(Token-Level)奖励,而 GRPO 基于群体的相对奖励 ,在采样输出之间进行归一化。
- 计算效率(Computational Efficiency) :GRPO 更高效 ,因为它移除了价值模型,并简化了优势估计方法。
DeepSeek R1 的多阶段训练
训练一个 高级推理模型 (如 DeepSeek R1)不仅需要强大的计算能力,还需要 精心设计的训练流程 。为了提升模型的 推理能力和连贯性 ,DeepSeek 团队采用了一种 多阶段训练方法 ,结合 监督微调(SFT) 和 基于 GRPO 的强化学习(RL) ,有效克服了强化学习训练初期的不稳定性,确保模型能够在多种任务上表现出色。
第一阶段:基础模型到监督微调(SFT)
训练开始于 DeepSeek V3 基础模型 ,并使用 高质量的思维链(CoT)数据 进行微调。
- 数据收集:
- 由 R1-zero 模型 和 人工标注 生成 最长 10K tokens 的推理补全(CoT)。
- 训练重点:
- 提高模型输出的 可读性、连贯性和逻辑流畅度 。
- 阶段成果:
- 强化学习的稳固基础 ,减少后续训练中的不稳定性。
第二阶段:基于 RL 的推理优化
在该阶段,引入 GRPO 以提升模型在 数学、编程和结构化问题求解 方面的推理能力。
- 规则奖励(Rule-Based Rewards) :
- 强调 准确性 (如解决编程问题、验证数学结果)。
- 设定 格式化规则 ,确保清晰表达(如用特定标签
<reasoning>
包围思考过程)。
- 新奖励信号(New Reward Signal) :
- “语言一致性”奖励 ,鼓励模型在整个输出过程中保持相同语言风格。
- 阶段成果:
- 推理能力显著提升 ,在 AIME 2024 竞赛中 pass@1 分数提升至 71.0% 。
第三阶段:拒绝采样与 SFT
为拓展模型能力,团队采用 拒绝采样(Rejection Sampling, RS) 方法,生成了大规模的合成数据集。
- 数据集构建:
- 第二阶段模型 生成 60 万条推理相关样本 。
- 额外生成 20 万条 通用任务 (如写作、角色扮演)样本。
- 数据来源:DeepSeek V3 SFT 数据集,或基于 思维链(CoT) 重新生成。
- 训练重点:
- 扩展模型能力 ,使其不仅擅长推理任务,还能处理 创意类和通用任务 。
- 阶段成果:
- 模型在更广泛任务上的通用性和连贯性增强 。
第四阶段:基于 RL 的“有帮助性”优化
最后,GRPO 训练的重点从 推理能力 扩展到 有帮助性(helpfulness)和无害性(harmlessness) 。
- 奖励模型的结合(Combination of Reward Models):
- 规则奖励 :确保推理能力和准确性持续提升。
- 基于结果的奖励 :鼓励模型生成 有帮助且安全 的输出。
- 阶段成果:
- 模型在复杂推理任务中保持清晰度、安全性,并符合用户需求 。
多阶段训练的核心见解
- 早期 SFT 稳定 RL 训练:
- 在强化学习前进行 监督微调 可 减少训练不稳定性 ,加速收敛。
- 规则奖励机制高效:
- 简单、针对性的奖励 (如准确性、格式要求)往往 比复杂奖励模型更有效 。
- 拒绝采样提升模型适应性:
- 通过 拒绝采样生成合成数据 ,可以 增强模型的泛化能力 ,适应不同任务。
通过 在 SFT 和 RL 之间 交替训练 ,DeepSeek 团队成功 解决了强化学习的冷启动问题及任务过拟合问题 ,使 DeepSeek R1 在推理和更广泛的应用场景中都能表现卓越。
扫描下方 二维码 ,关注“ 慢慢学AIGC ”