首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >AI训练策略:SFT、DPO与GRPO技术演进全解析

AI训练策略:SFT、DPO与GRPO技术演进全解析

作者头像
索旭东
发布2026-03-04 21:05:14
发布2026-03-04 21:05:14
4670
举报
文章被收录于专栏:具身小站具身小站

1

基础概念解释

SFT : Supervised Fine-Tuning,监督微调

SFT是让一个已经通过海量数据预训练的大模型(它只是学会了语言的统计规律,像个只会接龙的“初学者”)学习如何理解和执行人类的具体指令。

  • 核心思想:模仿学习。通过向模型展示大量高质量的“问题-标准答案”对,让它学会从输入到输出的映射关系。
  • 训练方式:这是一种有监督学习。训练时,我们冻结(或部分冻结)预训练模型的参数,然后在一个新的、包含特定任务(如对话、翻译、总结)的数据集上继续训练它。模型的优化目标就是最小化其生成答案与标准答案之间的差距(例如,使用交叉熵损失函数)。
  • 关键特点:SFT是实现模型对齐的基础和第一步,技术成熟,训练稳定,能让模型快速具备基本的任务处理能力。但它本质上是在“背答案”,模型并不真正理解回答的好坏,容易受到训练数据中偏见或错误的影响,且可能缺乏泛化能力

DPO : Direct Preference Optimization,直接偏好优化

DPO的提出是为了解决传统基于人类反馈的强化学习(RLHF)流程复杂、训练不稳定的问题。它跳过了训练一个独立的奖励模型这一步。

  • 核心思想:直接对比学习。DPO的核心洞察在于,它发现最优的强化学习策略与奖励函数之间存在一个可以直接推导的数学关系。因此,可以直接利用人类的偏好数据(哪个回答更好,哪个更差)来优化语言模型本身。
  • 训练方式:对于同一个提示,DPO需要一组偏好数据:一个“更优回答”和一个“更差回答”。训练时,模型的目标是最大化“更优回答”和“更差回答”被生成概率的差距。这通过一个特殊的损失函数实现,该函数会同时提高模型生成好答案的概率,并降低生成坏答案的概率。训练过程中,通常需要一个参考模型(通常是SFT后的模型)来约束,防止模型为了迎合偏好而偏离原有能力太远。
  • 关键特点:DPO训练流程大大简化,稳定且高效,不需要复杂的强化学习库。它对数据的质量要求极高,偏好数据的优劣直接决定了模型对齐的效果

GRPO : Group Relative Policy Optimization,群组相对策略优化

GRPO是DeepSeek团队提出的一种更高效的强化学习算法,是对PPO的一种改进。它特别适合数学推理等可以通过规则或结果自动评分的任务。

  • 核心思想:群体内比较学习。传统的PPO算法需要一个与策略模型规模相当的“评论家”(Critic)模型来评估每个生成步骤的好坏,这带来了巨大的计算开销。GRPO的创新之处在于,它直接抛弃了Critic模型。
  • 训练方式:对于同一个问题,GRPO让当前策略模型生成多个不同的回答,构成一个“小组”。然后,根据一个预定义的规则(如数学答案是否正确)或奖励模型对这组回答进行评分。接着,计算每个回答的相对优势——即该回答的得分与组内平均分的差值,再除以组内得分的标准差。这样,得分高于组平均水平的回答就会获得正向的“优势”,引导模型向它们学习;而得分低的回答则获得负向“优势”,模型会远离它们。
  • 关键特点:GRPO的最大优势是显存占用低,因为它不需要加载一个同样巨大的Critic模型。训练过程也相对稳定。但它需要一次生成多个回答,这会增加推理成本。此外,它依赖一个可靠的评分机制,对于无法用规则自动评分的开放式任务(如创意写作),仍需一个额外的评分模型

2

横向对比

为了更直观地对比,用一个表格来总结:

特性维度

SFT

DPO

GRPO

核心思想

模仿学习:学习标准答案

对比学习:学习辨别好坏答案

相对比较:在组内竞争中学习

所需数据

大量的“问题-标准答案”对

“好-坏”成对出现的偏好数据

单个问题+评分规则或奖励模型,无需成对数据

关键特点

训练稳定,是实现对齐的基础

流程简单,无需强化学习,高效稳定

无需Critic模型,显存占用低,适合客观任务

主要优势

快速让模型学会基本指令遵循

简化RLHF流程,直接优化偏好

计算效率高,训练稳定,DeepSeek的创新

主要局限

模型是模仿者,缺乏判断力,可能过拟合

对偏好数据的质量和格式要求极高

依赖组内多样性,生成多个回答的推理成本高

经典比喻

跟着标准答案背书的学生

通过改错本学习的学生

在小组PK中成长的学生

3

案例解释(用“ 驾校学车 ”来打个比方)

SFT:模仿教练的标准动作

SFT,全称监督微调,就像 在驾校里跟着教练学车 。教练会给你一套标准动作:“看到这个点就打方向盘,在那个杆子前停车”。

  • 核心含义:这是一种有监督的学习过程。我们收集大量的“人类提问-理想回答”这样的高质量示例数据,然后让模型反复学习这些“标准答案”。
  • 主要作用:通过SFT,一个只会做“文本接龙”的预训练基础模型,能够学会基本的对话格式和指令遵循能力,变成一个初步“听得懂人话”的聊天助手。它就像是给模型打下了与人对话的基础。

然而,SFT的局限性在于,模型可能只是死记硬背了训练数据,并不真正理解什么样的回答是更好的。

DPO:学会分辨回答的好坏

DPO,即直接偏好优化,则像是 从驾校毕业后的进阶训练 。现在副驾驶上坐着一位经验丰富的老司机,他会告诉你:“你看,刚才那种平稳的变道方式,比之前那种忽快忽慢的要好。”

  • 核心含义:DPO不需要训练一个额外的打分模型,而是直接利用“好回答”和“差回答”的对比数据,通过一个特殊的数学公式来优化模型本身。它的目标就是让模型在同样的提问下,生成“好回答”的概率变高,生成“差回答”的概率变低。
  • 主要作用:让模型学会判断回答的质量,建立起自己的“审美”和“是非观”。相比SFT,DPO能生成更多样化且高质量的回复,并且训练过程比传统的强化学习更简单、更高效。

DPO的优势在于,它不只是一个模仿者,更是一个能判断好坏的学习者。

GRPO:在群体比较中自我提升

GRPO,即群组相对策略优化,是一种更新、更高效的强化学习算法。DeepSeek-R1模型就是应用此技术的代表。如果用学车来比喻,GRPO就像是 没有教练,但你要和同车的小伙伴们互相切磋 。你们针对同一段路况各自开车,然后互相比较,谁的路线更优、谁的驾驶更平稳,你就向那个表现最好的人学习。

  • 核心含义:对于同一个问题,GRPO让当前模型生成多个不同的回答,形成一个“小组”。然后,算法会比较这组回答的质量(例如,通过一个规则或奖励模型打分),让模型向组内相对较好的回答方向优化,同时远离相对较差的。
  • 主要作用:GRPO最大的创新在于它抛弃了传统强化学习中常用的、与策略模型同等规模的“评论家”模型(这个模型用于评估状态的价值,非常消耗显存)。它通过组内比较来估算优化方向,极大地节省了内存开销,训练也更稳定。这就像DeepSeek团队用更少的资源,训练出了性能强大的推理模型。

三者的关系与对比

可以将它们理解为训练大模型的“三部曲”或不同路径:

  • 顺序关系:通常,我们会先对一个基础模型进行 SFT ,让它学会基本的对话能力。然后,再使用 DPO 或 GRPO 进行第二步的对齐训练,让它的回答更符合人类偏好。
  • 核心区别:SFT是让模型“照着样子做”,DPO是让模型知道“什么更好”,而GRPO是让模型在“小组PK”中学会变得更好。

特性

SFT (监督微调)

DPO (直接偏好优化)

GRPO (群组相对策略优化)

通俗比喻

驾校教练教标准动作

老司机指导分辨好坏

学员之间互相切磋比较

所需数据

大量高质量的“问题-答案”对

“好回答-差回答”的对比数据

对同一个问题的多个回答(可配合规则或奖励模型打分)

训练方式

让模型模仿标准答案

直接优化模型,提高好回答的概率

通过组内比较,向相对较优的回答学习

核心作用

建立基础的指令遵循能力

让模型学会判断和生成高质量回答

高效地进行强化学习对齐,节省显存

优缺点

简单高效,但可能缺乏判断力

流程简单,效果显著,但依赖数据质量

内存占用小,训练稳定,但算法相对复杂

4

不同视角下的对比

技术演进路径

从技术演进路径上看,还有一些著名的变体和相关技术:

  • RLHF (PPO) :这是DPO和GRPO试图改进的“前辈”,通过训练一个奖励模型来模拟人类偏好,然后使用PPO等强化学习算法来优化语言模型。它的流程复杂(通常需要四个模型),但能力强大,是InstructGPT等早期模型成功的关键。
  • DAPO :可以看作是GRPO的一个改进版本,由字节跳动提出。它引入了“动态采样”和“解耦裁剪”等技术,旨在解决长思维链推理场景下模型多样性和训练效率的问题。
  • ORPO :一种无需参考模型的偏好优化方法,通过修改损失函数,在微调过程中同时实现指令遵循和偏好对齐。

训练效率

从训练效率的角度看,还有一大类参数高效微调(PEFT)方法,它们专注于如何用更少的资源完成类似SFT的任务:

  • LoRA 及其变体 (如 QLoRA, VeRA, LoKr) :通过在模型的关键层旁添加可训练的低秩矩阵来微调,极大地减少了训练参数量和显存占用,是SFT的常用高效替代方案。

对齐范式

从对齐范式的角度看,最新研究还提出了无需训练的对齐(Training-free Alignment)方法:

这类方法不需要更新模型参数,而是通过在推理阶段进行干预来实现对齐,例如:

  • 解码时调整:在模型生成下一个词时,直接干预其概率分布,让生成结果更符合偏好。
  • 上下文学习:通过精心设计的提示词(Prompt),让模型“临时”按照要求的风格和价值观来回答问题。
  • 生成后修正:让模型对自己生成的答案进行检查和修正,使其更安全或更准确
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-03-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 具身小站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档