DeepSeek R1:了解GRPO和多阶段训练
📖阅读时长:20分钟
🕙发布时间:2025-01-31
近日热文:全网最全的神经网络数学原理(代码和公式)直观解释
欢迎关注知乎和公众号的专栏内容
LLM架构专栏
知乎LLM专栏
知乎【柏企】
公众号【柏企科技说】【柏企阅文】
随着DeepSeek R1的发布,人工智能取得了重大飞跃。DeepSeek R1是一个开放模型,在高级推理任务中挑战OpenAI的o1。DeepSeek R1采用一种称为组相对策略优化(GRPO)的创新技术和多阶段训练方法开发,为人工智能模型在数学、编码和一般推理方面设定了新的基准。
DeepSeek R1的独特之处在于,它能够以极高的准确性和推理深度解决复杂任务,同时保持精简的训练过程。本文将深入探讨其基本方法、训练流程以及让DeepSeek R1成为人工智能研究中卓越模型的创新之处。
了解组相对策略优化(GRPO)
组相对策略优化(GRPO)是推动DeepSeek R1卓越推理能力的核心创新技术。在DeepSeekMath论文中提出的这种强化学习算法,通过重新思考奖励和优化的处理方式,提升了模型训练效果。GRPO用一种更简单、更高效且专为大语言模型量身定制的方法,取代了近端策略优化(PPO)等传统方法。
如果你对PPO及类似方法不太熟悉,可以查看我之前的文章,了解它们是什么以及如何运作。
GRPO的关键特性
- 无需价值函数模型:与PPO不同,GRPO无需单独的价值函数模型。这简化了训练过程,降低了内存使用,使其效率更高。
- 基于组的优势计算:GRPO为每个输入利用一组输出,将基线奖励计算为该组的平均得分。这种基于组的方法与奖励模型训练更加契合,尤其适用于推理任务。
- 直接的KL散度优化:GRPO没有像PPO那样将KL散度纳入奖励信号,而是直接将其集成到损失函数中,在优化过程中实现更精细的控制 。
GRPO的工作原理一瞥
- 采样:模型根据当前策略为每个提示生成多个输出。
- 奖励评分:使用奖励函数对每个输出进行评分。这些评分可以基于规则(例如格式或准确性),也可以基于结果(例如数学或编码的正确性)。
- 优势计算:该组的平均奖励作为基线。根据这个基线计算每个输出的相对优势,并在组内对奖励进行归一化。
- 策略优化:利用计算出的优势,策略会自我更新以最大化性能。KL散度项直接纳入损失函数,确保模型在探索和稳定性之间取得平衡。
深入探究GRPO
如果你只是想了解个大概,可以跳过这部分内容,上一部分应该足够了。我不想让你感到不知所措,所以如果没有必要,无需深入这部分内容。
组相对策略优化(GRPO)是近端策略优化(PPO)的一种变体,它在优化PPO内存使用的同时,增强了数学推理能力。
组相对策略优化:全面解析
- PPO和GRPO的比较
近端策略优化(PPO)和组相对策略优化(GRPO)的关键区别在于它们对优势估计和计算效率的处理方式。PPO依赖于单独的价值模型,而GRPO消除了这种依赖,用基于组的相对优势估计取而代之,降低了内存和计算成本。
示意图概述
- PPO:策略模型根据给定输入q生成输出O;一个单独的价值模型预测基线v,与广义优势估计(GAE)一起用于计算优势A;奖励r包含使用参考模型和奖励模型计算出的KL惩罚项;这种架构会导致显著的资源开销。
- GRPO:对于每个输入q,生成多个输出{o1, o2, …, oG},并使用奖励模型计算它们的奖励{r1, r2, …, rG};组计算对这些奖励进行归一化,无需价值模型即可提供相对优势A1, A2, …, AG;训练后的策略与参考模型之间的KL散度直接添加到损失中,简化了训练过程。
- PPO的数学公式
PPO是一种强化学习算法,通过最大化代理目标函数来优化策略模型,同时通过基于裁剪的约束确保训练稳定性。主要要点如下:
- **PPO的要点**:PPO使用GAE来减少At的方差,利用学习到的价值函数Vψ作为基线;代理目标中的裁剪操作确保了稳定性,防止策略更新过大;奖励中的KL惩罚项可防止策略与参考模型差异过大,促进稳定学习。
- GRPO的数学公式
组相对策略优化(GRPO)通过去除价值模型并使用基于组的相对奖励进行基线估计,简化了PPO。它旨在高效微调大语言模型(LLMs),同时降低计算开销。
- **GRPO的要点**:GRPO用基于组的奖励归一化取代了计算成本高昂的价值模型,显著降低了资源需求;通过对组内奖励进行归一化,GRPO与大多数奖励模型的成对比较性质保持一致,确保更好的相对奖励估计;GRPO直接使用KL散度项对策略进行正则化,避免了在奖励中使用复杂的KL惩罚。
基于GRPO的结果监督强化学习
基于GRPO的过程监督强化学习
GRPO训练涉及迭代更新策略和奖励模型以保持一致性。具体步骤如下:
PPO和GRPO的关键区别
- 价值模型:PPO使用价值模型进行优势估计,而GRPO则取消了价值模型,依赖组归一化奖励。
- KL正则化:PPO在奖励中包含KL惩罚项;GRPO则直接使用KL散度项对损失进行正则化。
- 奖励粒度:PPO直接计算标记级别的奖励,而GRPO利用对采样输出进行归一化的组相对奖励。
- 计算效率:由于去除了价值模型并简化了优势估计,GRPO的效率更高。
训练像DeepSeek R1这样的高级推理模型,不仅需要强大的计算能力,还需要精心构建的训练流程。为了实现卓越的推理能力和连贯性,DeepSeek团队设计了一个多阶段训练过程,将监督微调(SFT)与使用GRPO的强化学习(RL)相结合。这种方法克服了强化学习训练早期不稳定等挑战,确保模型在各种任务中表现出色。
阶段1:从基础模型到监督微调(SFT)
训练从使用高质量的思维链(CoT)数据对DeepSeek V3基础模型进行微调开始。
- 数据收集:使用R1-zero模型和人工注释生成长达10,000个标记的推理补全(CoT)数据。
- 重点:提高模型输出的可读性、连贯性和逻辑流畅性。
- 结果:为强化学习奠定坚实基础,减少后续训练阶段的不稳定性。
阶段2:用于推理的强化学习
引入GRPO来提升模型在数学、编码和结构化问题解决等任务中的推理能力。
- 基于规则的奖励:侧重于准确性(例如解决编码问题、验证数学结果);执行格式规则以确保清晰性,例如将思维过程包含在特定标签(如“reasoning”)内。
- 新的奖励信号:“语言一致性”奖励鼓励模型在整个输出中保持相同的语言风格。
- 结果:推理性能显著提升,如2024年美国数学邀请赛(AIME)的通过率@1得分跃升至71.0%。
阶段3:拒绝采样和监督微调
为了扩展模型的能力,使用拒绝采样(RS)生成了一个大型合成数据集。
- 数据集创建:第2阶段的模型生成了600,000个与推理相关的样本;另外还有200,000个样本专注于写作和角色扮演等通用任务;数据来源包括DeepSeek V3的监督微调数据集或包含思维链的重新生成数据。
- 重点:将模型的专业能力从推理任务扩展到创造性和通用领域。
- 结果:模型在更广泛的任务中展现出更强的通用性和连贯性。
阶段4:用于提升实用性的强化学习
在最后阶段,再次应用GRPO,但更广泛地关注实用性和无害性。
- 奖励模型的组合:基于规则的奖励确保推理和准确性持续提升;基于结果的奖励鼓励实用且安全的输出。
- 结果:得到一个平衡的模型,能够处理复杂的推理任务,同时保持清晰性、安全性并符合用户需求。
多阶段训练的关键见解
- 早期监督微调稳定强化学习训练:在应用强化学习技术之前对基础模型进行微调,可以减少训练的不稳定性并加速收敛。
- 基于规则的奖励有效:简单且有针对性的奖励(如准确性、格式)往往比复杂的奖励模型表现更好。
- 拒绝采样提高通用性:通过拒绝采样生成的合成数据集增强了模型对各种任务的适应性。
通过在监督微调和强化学习之间进行策略性交替,DeepSeek团队克服了强化学习冷启动和任务特定过拟合的挑战。这个多阶段的训练流程确保了DeepSeek R1在推理和更广泛的应用中都能表现出色。
后续我们会持续带来更多相关技术的深度解析和实践案例,敬请关注公众号 柏企科技圈 和 柏企阅文
本文由mdnice多平台发布
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。