DeepSeek采用的GRPO算法数学原理及算法过程浅析

人工智能
PPO:通过奖励和一个“评判者”模型(critic 模型)评估每个行为的“好坏”(价值),然后小步调整策略,确保改进稳定。GRPO:通过让模型自己生成一组结果(比如回答或行为),比较它们的相对质量(优势),然后优化策略。它的特点是不需要额外的“评判者”模型(critic 模型),直接用组内比较来改进。

先来简单看下PPO和GRPO的区别:

source@xsource@x

  • PPO:通过奖励和一个“评判者”模型(critic 模型)评估每个行为的“好坏”(价值),然后小步调整策略,确保改进稳定。
  • GRPO:通过让模型自己生成一组结果(比如回答或行为),比较它们的相对质量(优势),然后优化策略。它的特点是不需要额外的“评判者”模型(critic 模型),直接用组内比较来改进。

个人理解记录,供参考。

1. GRPO目标函数的数学原理

GRPO的目标函数如下:

图片

这个函数看起来复杂,但我们可以将其拆解为几个关键部分,逐一分析其作用和意义。GRPO的目标函数由两大部分组成:策略梯度更新项和KL散度正则化项。我们分别分析它们的作用。

1.1 策略梯度更新项

策略梯度部分是目标函数的主要成分,形式为:

图片

1.2 KL散度正则化项

2. GRPO算法的整体工作流程

source@Xsource@X

GRPO是一种基于组奖励的策略优化算法,其工作流程可以分为以下几个步骤:

整个流程通过迭代优化实现:从输入问题到生成响应,再到奖励分配和优势计算,最后更新策略,形成一个闭环。

3. 为什么GRPO算法有效?

  • GRPO通过消除传统强化学习算法(如PPO)中需要的一个单独价值函数模型,显著提高了效率。这个模型通常需要额外的内存和计算资源,而GRPO的做法降低了这些需求,使其更适合处理大型语言模型。 稳健的优势估计
  • GRPO采用基于群体的优势估计方法。它为每个提示生成多个响应,并使用群体的平均奖励作为基准。这种方法无需依赖另一个模型的预测,提供了一种更稳健的政策评估方式,有助于减少方差并确保学习稳定性。
  • GRPO直接将Kullback-Leibler(KL)散度纳入损失函数中。这有助于控制策略更新,防止策略与参考策略偏离过多,从而保持训练的稳定性。

4. 几个GRPO复现deepseek-R1-zero的流程代码repo

责任编辑:武晓燕 来源: 大模型自然语言处理
相关推荐

2025-01-03 11:46:31

2023-03-03 08:06:37

2022-04-22 12:36:11

RNN神经网络)机器学习

2010-06-11 08:52:17

并行计算

2019-04-10 09:23:10

梯度下降机器学习算法

2022-08-28 20:50:29

算法模型机器学习

2017-03-02 10:49:37

推荐算法原理实现

2017-05-11 11:59:12

MySQL数据结构算法原理

2024-06-07 09:26:30

模型数学

2009-07-06 09:23:51

Servlet定义

2025-01-16 07:10:00

2009-08-11 13:54:54

约瑟夫环算法C#算法

2018-07-27 08:39:44

负载均衡算法实现

2019-07-24 10:32:12

机器学习人工智能计算机

2010-04-21 15:06:37

负载均衡算法

2011-07-11 16:05:42

MySQL索引

2018-02-09 11:08:49

区块链算法主流

2020-12-16 05:46:58

算法加密算法MD5

2023-08-08 14:56:27

ParcelRustDemo

2025-02-07 13:45:58

点赞
收藏

51CTO技术栈公众号