叶小钗

DeepSeek与强化学习:从PPO到GRPO的浅显解析

关注公众号回复1

获取一线、总监、高管《管理秘籍》

DeepSeek-R1-Zero依赖于GRPO强化学习框架,他采用“组内相对策略优化”的方式,使模型能够在不需要明确标签数据的情况下,通过组内比较和优化来提升推理策略。

然后,模型会对生成结果进行筛选和微调,以确保输出内容更符合人类的期望和偏好。

与传统的训练方式不同,R1摒弃了微调环节,直接通过强化学习来增强推理能力。

所以,基于一个不错的预训练模型,直接使用强化学习可能是一条非常有效的模型训练路线。

于是这里有一个问题:作为AI上层应用的各位来说,比如你要做个AI医生、AI律师,需要了解强化学习吗?

了解强化学习的必要性

各个行业都有很多“黑话”,比如医疗中有火重与发炎、法律中有包子与容易上手案件。

而从行业拉近到一个公司,各种项目代号,各种“专有名词”,这就导致了一个结果:

行业内的一些名词(与外部有冲突的名词)会被模型“误解”从而产生幻觉:比如瓜在一般理解中是水果;在各位眼中可能就是八卦了。

而私有知识库这里的知识隔离会更严重,跳出公司环境,你根本不知道他在说什么,比如公司内部的客服系统需要耐心对用户进行产品说明。

而为了解决行业“幻觉”以及内部知识库不被模型识别的问题,有两个技术路径会被提出来:

第一,模型API + 知识库

这条路径实践下来其实也挺好的,但他面临一个难以解决的问题:公司内部数据外泄问题。

因为想要用上AI的能力,直接导致公司多年积累的各种数据外泄,这其实是得不偿失的,特别是医疗、法律、金融等行业。

除去数据安全性,我认为在工程层面,类RAG技术已经是最优解了,并且可以随时更换基座模型。

第二,私有模型训练

这条路径在DeepSeek之前一般被认为是“错误的路径”,原因很简单:费钱...

无论是预训练需要的数据还是微调需要的高质量任务数据,还是后期需要的人工反馈数据,都很费钱。如果再加上训练所需GPU花费,多数公司就望而却步了。

但DeepSeek出来后情况有些变化,训练的成本被拉到一个大家可以接受的数字是其一,各种云平台工具继承,进一步降低了切入门槛是其二,这造成了一个结果:模型训练真香。

真香的核心是模型可私有化部署,这部分解决了数据外泄的问题,这里只需要计算更换模型时的训练费用即可。

而因为第一条路径已经很清晰了,我们反而需要进一步了解强化学习相关知识,这块后续大概率用得上。

而之前对GRPO做了很多介绍,今天重点介绍下PPO,先从基本概念开始。

强化学习

RLHF:Reinforcement Learning with Human Feedback 基于人类反馈的强化学习,他是一种让模型通过人类的指导来提升其表现的方法。

在这种方法中,模型不仅根据自己的经验进行学习,还根据人类对其输出的反馈来调整和优化自己的行为。

为了帮助各位更好的理解,这里举个实际的例子:假设我们正在开发一个AI医生,它的任务是根据患者的症状提供可能的诊断结果。

这个过程可以通过RLHF来优化,以便让AI不仅可以根据患者的描述给出正确的诊断,而且能根据患者和医生的反馈不断改进自己的表现,这里与RHLF相关的有四个模块:

第一,Actor模型(演员模型):

就是AI医生本身,它根据患者输入的症状描述生成一个诊断结果。

例如,患者说:“我有头痛、发烧,感觉有点恶心”,演员模型会生成一个诊断,比如“流感”。

它通过从大量的医学数据中学习,训练出如何根据症状生成可能的疾病。

第二,Reference模型(参考模型):

参考模型是演员模型的复制版本,它的作用是为后续评估提供标准。

这个模型并不直接参与学习,而是作为一个“参考答案”来比较演员模型的输出结果是否合理。

比如,在患者输入症状后,参考模型可能会给出一个标准的诊断建议,比如“流感”,作为对比标准。

第三,Reward模型(奖励模型):

这是一个评估模型表现的工具,它根据医生或患者的反馈来给演员模型提供奖励或惩罚。

例如,如果演员模型的诊断正确,医生反馈说“这是一个很好的诊断”,奖励模型就会给演员模型一个高分(奖励)。如果诊断错误,奖励模型则会给一个低分(惩罚)。

这个模型的输出是一个数字分数,表示模型生成的诊断结果的质量。奖励模型的输出并不是“下一个词”的预测,而是“整个诊断的得分”。

第四,Critic模型(评论员模型):

评论员模型是奖励模型的一个副本,负责评估奖励模型的表现,它帮助演员模型优化自己的学习策略。

通过这个模型,AI医生可以更准确地调整自己的输出,使得奖励模型的反馈更加有用。

评论员模型实际上就是对奖励模型的反馈进行评估和调整,帮助整个过程更稳定和准确。

通俗解释

  1. AI医生生成诊断:AI医生(Actor模型)根据输入的症状生成诊断。
  2. 参考标准:参考模型提供一个对比标准,帮助判断是否生成了合理的诊断。
  3. 得到反馈:根据医生或患者的反馈,奖励模型给出一个分数,表明诊断是否合适。
  4. 改进输出:根据奖励模型的反馈,AI医生不断调整自己的行为,使得下次生成的诊断更加符合医生的标准。

在技术层面可以简单这样理解:

1、输出概率分布

AI医生(可能是基于DeepSeek的模型),会对输入进行一个概率分布输出,比如:

  1. 模型输出:假设输入是“我感到头痛,发烧”,演员模型将计算每个可能的下一个词(如“感冒”,“流感”,“发热”等)的概率分布。
  2. 生成的词:模型通常会从这个概率分布中采样出一个词(例如,“流感”),作为诊断的初步输出。

2、强化学习如何影响概率分布

在RLHF中,模型的目标是通过反馈信号不断调整自己的输出策略,而这个调整直接影响模型的参数,从而改变概率分布。

当模型生成输出后,奖励模型会根据反馈(可能来自医生或患者)给出一个“得分”或“奖励”。如果输出合适(比如诊断正确),奖励模型会给出一个高分。如果不合适,则给出低分。

例如,演员模型生成的诊断“流感”被医生评价为准确,奖励模型给出一个高的得分;如果诊断错误,则给出一个低分。

强化学习的关键在于利用奖励信号来调整模型的行为。具体而言,演员模型会通过以下步骤来优化其输出:

  • 第一、梯度上升/下降。

通过计算输出策略的梯度(即损失函数关于模型参数的偏导数),强化学习算法(如PPO、GRPO等)会调整模型的参数,使得未来生成的文本更有可能得到更高的奖励。

换句话说,如果某个输出(如“流感”)得到高分,模型会通过反向传播调整其参数,使得类似的输出在未来更有可能被生成。

  • 第二、调整概率分布

在强化学习中,演员模型生成的每个词的概率分布会随着优化而发生变化。

例如,原本生成“流感”的概率可能较低,但在反馈的作用下,演员模型会增加生成“流感”这一答案的概率,减少错误答案的概率。

策略梯度方法(如PPO)通过对模型输出的策略进行优化,使得最有可能得到高奖励的行为(在此例中即是正确的诊断)成为模型的首选。

  • 第三、通过反馈不断改进

随着训练的进行,模型会不断接收到反馈,逐步调整自己的概率分布,从而更精准地生成符合预期的结果。

例如,AI医生根据患者症状生成的诊断会逐渐与真实医生的判断一致,并且不再频繁犯错误。

奖励模型帮助强化学习过程,将人类的反馈转化为模型可用的信号,从而引导模型的学习过程。

通过这种方式,模型不仅依赖自身的经验(训练数据)来生成结果,还能结合人类的直觉和偏好进行优化。

3、影响模型底层概率分布

总结来说,RLHF的底层实现通过以下几个关键步骤来影响模型的概率分布:

  1. 模型通过生成条件概率分布来预测下一个词。
  2. 奖励模型根据输出的质量(人类反馈)为模型提供奖励信号。
  3. 强化学习通过策略梯度优化方法,调整模型参数,使得生成高奖励的输出更有可能。
  4. 结果是,模型的概率分布在不断优化过程中,逐步倾向于生成更符合人类预期的输出。

最终,这一过程会导致模型在生成每个词时,其概率分布会偏向那些在奖励反馈中得到更高分数的结果,增强了正确答案的概率,减少了错误答案的概率。

这里强调下:奖励模型的核心功能可以通过人类反馈来进行,但也可以通过更先进的模型来进行自动化评估。

这里最后说下PPO。

强化学习框架PPO、GRPO

PPO(Proximal Policy Optimization,近端策略优化)是一种强化学习(RL)算法,广泛应用于训练智能体在复杂环境中执行任务。

那么与GRPO相比,在工程应用上有何不同呢?

工程启示

PPO通常适用于以下几种工程应用场景:

  1. 任务简单,动作空间小:PPO在机器人控制和游戏AI中表现优秀,特别适用于较简单的任务(如机械臂抓取、平衡任务),这些任务通常具有较小的动作空间且容易优化。
  2. 计算资源有限,要求实现简单:PPO实现简洁,易调试,适合计算资源有限的环境。例如,金融风险预测和智能客服系统,PPO能够提供稳定且高效的训练。
  3. 训练时延短,优化效率高:PPO的裁剪机制通过限制策略更新幅度,避免过大更新带来的不稳定,适合需要快速反馈的任务,如自动驾驶,能够在多个环境中快速学习和稳定优化。

GRPO适合以下场景:

  1. 任务复杂,涉及多个策略优化:GRPO通过组内相对优化处理多个策略,适合多智能体任务或复杂仿真环境中的优化。例如,机器人协作和工业自动化任务,多个智能体协同工作时,GRPO能够保持良好的策略平衡。
  2. 高稳定性需求:GRPO适用于对训练稳定性要求高的任务,如医疗决策系统。通过策略组内相对优化,GRPO可以避免单一策略更新过大导致的训练不稳定。
  3. 联合优化多个模型:在金融投资组合优化等任务中,GRPO能够协调多个策略或模型的优化,避免策略过大更新导致的系统不稳定。

总结来说,PPO适用于简单任务和资源有限的情况,而GRPO适合复杂、多策略优化的任务,尤其在多智能体和高稳定性需求的环境中表现更好。

为什么

从技术层面来看,PPO和GRPO之所以适用于不同的任务场景,主要是由于它们在策略更新机制、多智能体优化、以及稳定性管理方面的设计差异。

这些设计决定了它们在不同复杂度和需求的任务中如何进行有效的优化。

PPO算法的设计目标之一就是提高训练的稳定性和优化效率。

它通过引入一个策略裁剪机制,限制每次策略更新的幅度,避免大幅度的策略调整导致训练的不稳定。

在这个机制下,PPO能够有效地控制更新步伐,确保在复杂环境下的稳定训练。

裁剪机制:PPO算法通过限制当前策略和新策略之间的比值(即概率比率)在一个小区间内(通常是1±ϵ),避免了策略的剧烈变化。这个设计使得PPO在简单任务和资源受限的环境中表现出色。

PPO适用的任务通常具有相对固定和有限的任务范围,因此它能够在确保稳定性的同时,在较短时间内通过简单的策略更新有效地找到近似最优解。

适用的典型场景包括简单的机器人控制、某些游戏AI应用以及智能客服系统等。

与PPO的简单高效不同,GRPO(组内相对策略优化)通过组内相对优化机制优化多个策略之间的相互影响。

GRPO的设计侧重于处理那些多智能体或多策略协同工作的复杂任务,特别适用于那些对训练稳定性要求极高的场景。

组内相对优化:GRPO采用这种机制的核心目的是为了让多个策略之间能够进行相互协调和优化。

与PPO直接优化单一策略的目标不同,GRPO关注如何在多个策略之间平衡优化,使得每个策略能够相互配合地提升整体系统的表现。

这一机制确保了在多智能体系统或复杂环境中的策略协调,避免了其中某个策略的过度更新影响到其他智能体的表现,从而保证了系统的稳定性和协同效果。

简而言之,PPO适用于那些简单且资源有限的任务,而GRPO适合那些需要多个策略协同的复杂任务。

GRPO在多智能体协作、复杂仿真环境和高稳定性需求任务中,展现出了强大的优势,而PPO则在执行简单任务和高效利用计算资源方面表现优异。

结语

最后,强化学习,正在为AI模型的优化和应用开辟新的路径。

无论是PPO这种适用于简单任务和资源有限场景的算法,还是GRPO在复杂、多智能体任务中的出色表现,都展现了强化学习在不同领域中的巨大潜力。

在行业应用中,如何通过强化学习提升模型的推理能力,同时解决数据安全性和隐私保护等挑战,将成为推动AI技术落地的关键。

随着技术的不断进步,未来无论是AI医生、AI律师还是其他领域的智能体,都有望通过强化学习不断优化,提供更加精准、可靠的服务。

Image