当前位置: 首页 > news >正文

强化微调技术与GRPO算法(1):简介

大语言模型(LLM)已经彻底改变了我们与技术互动的方式。但一个基础模型,无论多么强大,都只是一个“通才”。为了让它在特定任务上(无论是按特定风格写作、以某种安全级别回答问题,还是生成高质量代码)真正发挥作用,我们必须对其进行微调。

长期以来,监督微调(Supervised Fine-Tuning, SFT) 一直是主流方法。然而,SFT有其固有的局限性。这时,强化学习(Reinforcement Learning, RL) 应运而生,它提供了一种强大的范式,通过反馈而非简单的模仿,来使LLM的行为与我们的期望对齐。

这篇博客将带您走过从SFT到前沿强化学习技术的演进之路。我们将深入探讨:

  • 监督微调(SFT)的基础知识。

  • 强化学习(RL)的核心思想及其在LLM中的应用。

  • 流行的RL算法,如RLHF和DPO。

  • 一种强大的新型方法——组相对策略优化(Group Relative Policy Optimization, GRPO),它克服了许多前辈算法的挑战。

一、 奠基石:监督微调(SFT)

SFT本质上是一种“从演示中学习”的过程。你通过向LLM展示大量高质量的任务示例,来教会它一项新技能。

SFT 的工作流程

SFT的核心是一个在标注好的“提示-补全”数据集上进行的两步循环。

  1. 前向传播 (Forward Pass): LLM接收来自训练集的提示词,并生成一个预测的输出。

  2. 反向传播 (Backward Pass): 将这个预测输出与数据集中的“正确”答案进行比较。两者之间的差异被计算为损失(Loss)误差(Error)。然后,模型的内部权重会被调整以最小化这个误差,使其在下一次更有可能产生正确的输出。

通过重复这个过程成千上万次,模型就能学习到潜在的模式,并能为新的、未见过的提示生成符合期望的输出。

使用SFT实现推理

你甚至可以通过在补全中包含“思维链”来教授复杂的、多步骤的推理。通过将推理步骤用特殊标签(如 <think>)包裹,并将最终答案用 <answer> 标签包裹,模型可以同时学会逐步推理的逻辑和期望的输出格式。

  • 简单的SFT数据集:

  • 包含推理过程的SFT数据集:

监督微调的局限性

尽管SFT行之有效,但它有两个显著的局限性:

  1. 严重依赖标注数据: SFT需要成千上万个高质量、准确标注的示例。创建这些数据集通常耗时、昂贵,并需要大量的人力投入。

  2. 过拟合 (Overfitting): 模型可能会过于擅长“背诵”训练样本,学习到过于特定的模式,导致它无法很好地泛化到新的、略有不同的输入上。它精通了“模拟考”,却在“真实世界”中表现不佳。

这些挑战促使我们寻找一种更灵活的训练方法——一种能够引导模型走向期望行为,而不仅仅是依赖一套固定的“正确答案”的方法。

二、 新范式:用于LLM的强化学习(RL)

强化学习提供了这种灵活性。智能体(Agent) 不再从静态数据集中学习,而是通过与环境(Environment) 互动,并因其动作(Actions) 获得奖励(Rewards) 来学习执行任务。其目标是在一段时间内最大化总奖励。

为了更好地理解这个概念,让我们来看一个生活中的例子:训练一只小狗。

在这个例子中:

  • 智能体 (Agent): 小狗。

  • 环境 (Environment): 它的主人和周围的环境。

  • 动作 (Action): 小狗可以执行很多动作,比如坐下、打滚,或者捡回主人扔出的树枝。当它执行“捡回树枝”这个技巧时,就是在执行一个动作。

  • 奖励 (Reward): 当小狗执行了我们期望的动作后,主人会给它一个零食作为奖励。这个奖励信号是正向的。如果它执行了别的动作,则可能得不到奖励。

  • 观察 (Observation): 小狗观察到“捡回树枝”这个行为带来了奖励,而其他行为则没有。它会更新自己的“记忆”,从而在未来更倾向于执行能带来奖励的动作。

 这个过程完美地诠释了强化学习的核心循环。

这个概念可以完美地映射到LLM上:

  • 智能体 (Agent): LLM本身。

  • 环境 (Environment): 上下文,包括用户的提示词。

  • 动作 (Action): LLM生成的回复。

  • 奖励 (Reward): 一个评估回复质量的分数。

将RL应用于LLM微调

现在,让我们将这个思想应用到LLM上。训练过程变成了一个动态的反馈循环:

  1. 一个prompt(提示词)被输入到LLM(智能体)。

  2. LLM 生成一个回复(动作)。

  3. 这个回复被评估,并得到一个奖励分数。该分数可以基于质量、正确性、人类偏好或任何其他可编程的指标。

  4. 奖励信号被用来更新LLM的权重,鼓励它在未来产生能获得更高奖励的回复。

这种方法允许模型通过试错来探索和学习什么构成“好”的回复,超越了简单模仿的范畴。

三、 流行的LLM对齐强化学习算法

目前,有几种主流的强化学习算法被用于微调LLM。

算法一:基于人类反馈的强化学习 (Reinforcement Learning with Human Feedback, RLHF)

RLHF是早期像ChatGPT等模型背后著名的、多阶段的流程。它利用人类的偏好来创建一个奖励信号。

RLHF的4步工作流:

  1. 生成回复: 对于给定的提示词,LLM生成多个候选回复(例如A, B, C, D)。

  2. 获取人类反馈: 人类标注员将这些回复从最好到最差进行排序(例如,C > D > A > B)。这会创建一个偏好数据集。

  3. 训练奖励模型: 在这个偏好数据上训练一个独立的模型。它的工作是预测任何给定“提示-回复”对的人类偏好分数。

  4. 更新LLM: 使用像PPO这样的RL算法对原始LLM进行微调。LLM生成回复,奖励模型对其评分,然后LLM的权重被更新以最大化该分数。

算法二:直接策略优化 (Direct Policy Optimization, DPO)

DPO是一种更新、更高效的算法。它通过去除独立的奖励模型,简化了RLHF的流程。

DPO的工作流:

  1. 生成回复: LLM为每个提示生成两个回复(A和B)。

  2. 获取人类反馈: 人类只需选择更偏好的那个回复(例如,“B比A好”)。

  3. 创建偏好数据集: 这会创建一个由(提示词, 偏好的回复, 不偏好的回复)组成的数据集。

  4. 直接更新LLM: DPO算法使用这些偏好数据直接更新LLM的权重。它调整权重以增加生成“偏好回复”的概率,同时降低生成“不偏好回复”的概率。

RLHF与DPO面临的挑战

尽管这些方法很强大,但它们都有共同的挑战,如下表所示。关键在于,这两种方法都严重依赖昂贵的人工标注偏好数据

挑战RLHFDPO
所需数据用于奖励模型的排名生成成对的偏好标签 (如 A > B)
计算/内存非常高 (需要多个模型副本)中等 (比RLHF更高效)
训练稳定性通常不稳定,有奖励被“黑”、模型崩溃的风险更稳定,但仍需大量标签
局限性不教授新任务,只引导偏好不教授新任务,只引导偏好

四、 GRPO:强化微调的下一步

组相对策略优化 (Group Relative Policy Optimization, GRPO),由DeepSeek团队开发的,是一种旨在解决RLHF和DPO局限性的前沿算法。

核心创新:可编程的奖励

GRPO的精妙之处在于它完全摆脱了对人类偏好标签的依赖。取而代之的是,它依赖一个或多个你自定义的可编程奖励函数。这些函数可以检查你关心的任何事情:

  • 最终答案的正确性。

  • 是否遵循特定格式(如JSON)。

  • 是否包含引文。

  • 是否包含有害内容。

GRPO的3步循环
  1. 生成回复: 与RLHF类似,LLM为单个提示生成一个组的候选回复。

  2. 分配分数: 你自定义的奖励函数会自动为该组中的每个回复打分。这会产生一系列分数(例如,0.6, 0.7, -0.1, 0.7)。

  3. 更新LLM权重: GRPO算法将这些分数作为直接的训练信号。它更新LLM的权重,以:

    • 提升生成组内高于平均分的回复的概率。

    • 降低生成组内低于平均分的回复的概率。

通过重复这个循环,GRPO直接在你关心的指标上对模型进行微调,即使在人类标签稀缺或无法获得的情况下,也能释放强化微调的力量。

结论

LLM微调的演变是一条从模仿到对齐的旅程。

  • SFT 通过从示例中学习,为我们奠定了坚实的基础。

  • RLHF 和 DPO 通过将模型与人类偏好对齐来增强这一点,但代价是高昂的标注和计算成本。

  • GRPO 代表了下一个前沿,它使用自动化的、可编程的奖励来实现强大的强化微调。这使得整个过程更具可扩展性、成本效益更高、也更易于实现,让开发者能够在没有大量人力投入的情况下,将LLM与复杂、客观的标准对齐。

参考资料

1. 监督微调 (SFT - Supervised Fine-Tuning)

SFT 是一个非常基础和广泛应用的概念,因此没有一篇单一的“SFT”开创性论文。它是在多篇里程碑式的论文中被提出和完善的。其中,Google的T5模型论文 对这种“指令微调”(Instruction-Tuning)的方法进行了系统性的探讨,是理解SFT思想的重要文献。

  • 论文标题: Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer

  • 核心思想: 提出了T5模型,并将几乎所有的NLP任务都统一为“文本到文本”的格式,通过在大量有监督的指令数据集上进行微调来激发模型的泛化能力。

  • 论文地址: https://arxiv.org/abs/1910.10683

2. 基于人类反馈的强化学习 (RLHF - Reinforcement Learning from Human Feedback)

RLHF技术因OpenAI的 InstructGPT 而闻名,这篇论文是理解现代LLM对齐(Alignment)的必读文献。

  • 论文标题: Training language models to follow instructions with human feedback

  • 核心思想: 详细描述了使用人类反馈来微调语言模型的三步流程:SFT、训练奖励模型和使用PPO算法进行强化学习,以使模型输出更符合人类偏好。

  • 论文地址: https://arxiv.org/abs/2203.02155

3. 直接策略优化 (DPO - Direct Policy Optimization)

DPO作为RLHF的一种更轻量、更稳定的替代方案,由斯坦福大学的研究者提出。

  • 论文标题: Direct Preference Optimization: Your Language Model is Secretly a Reward Model

  • 核心思想: 证明了可以跳过训练独立奖励模型的步骤,直接使用人类偏好数据(例如,A比B好)来优化语言模型的策略,过程更简单且效果相当甚至更好。

  • 论文地址: https://arxiv.org/abs/2305.18290

4. 组相对策略优化 (GRPO - Group Relative Policy Optimization)

GRPO是当前的最新技术,由 DeepSeek团队提出,旨在完全摆脱对人类偏好数据的依赖。

  • 论文标题: GRPO: Group Relative Policy Optimization for Large Language Model Alignment

  • 核心思想: 提出了一种无需任何人类偏好标注的对齐方法。它通过生成一组候选回复,并使用可编程的奖励函数对这组回复进行“相对”打分,然后直接优化模型策略,使其倾向于生成组内得分更高的回复。

  • 论文地址: https://arxiv.org/abs/2405.00934

相关文章:

  • 农田实时监测与管理系统开发
  • map()函数
  • IteraJudge-增量多维评判框架解读
  • 第十节 高频代码题-类型推断题
  • NXP S32K146 T-Box 携手 SDNAND(贴片式 TF 卡):驱动汽车智能革新的黄金组合
  • 接口测试不再难:智能体自动生成 Postman 集合
  • 计算机系统(6)
  • 翻译核心词汇
  • 软考-计算机硬件组成
  • 微信小程序渗透测试指北(附案例)
  • 小结:Spring AOP 切点表达式
  • python-生日悖论
  • OpenCV——图像金字塔
  • std::make_shared简化智能指针 `std::shared_ptr` 的创建过程,并提高性能(减少内存分配次数,提高缓存命中率)
  • 第30节 Node.js C/C++ 插件
  • ARXML可视化转换工具使用说明
  • C#实现无声视频的配音与字幕生成器
  • 接到数据分析任务后,怎么判断是分类还是回归?什么时候你该考虑换模型?
  • XML 注入与修复
  • Docker入门篇--从安装到使用
  • 英文做影评的网站/大连企业网站建站模板
  • 网站发布和收录怎么做/注册平台
  • 网络服务商是啥/网站seo快速
  • 咨询公司排行榜/优化seo招聘
  • 网站设计模板简约/百度知道登录入口
  • 贴吧网站开发需求分析/石家庄新闻头条新闻最新今天