微调之后还能做什么?大模型后训练全链路技术解析

简介: 本文探讨了后训练的重要性、方法以及最新进展。文章将包含理论分析与实际操作指南,适合希望深入了解并应用这些技术的开发者。

什么是后训练?

后训练(Post-Training)是指在预训练模型的基础上,针对特定的任务或数据集进行额外的训练。这个阶段通常涉及到微调(Fine-tuning)和对齐 (Alignment),即调整预训练模型的参数以适应新的任务。

黑色: 预训练阶段

红色: 后训练阶段

紫色: 推理测试阶段


为什么要进行后训练?

Post-training重要性-后训练扩展律Post-training scaling laws 已经出现

Pre-traing阶段的scaling law

  • 计算量C,模型参数量N ,数据大小D,当不受其它两个因素制约时,模型性能与每个因素均呈幂等关系,三者满足

  • 随着模型尺寸的逐渐增大,预训练阶段参数扩展带来的边际收益开始递减,基于RL的post-trainging将会成为下一个突破点;
  • 自回归模型在数学推理问题上很难进步的一点在于没有办法进行回答的自主修正,仅依靠生成式方法和扩大参数规模,收益有限,需要寻找额外的Scaling Laws;

GPT(Generative Pretrained Transformer)系列是典型的自回归语言模型。在 GPT 模型中,它的生成过程是基于自回归机制。例如,在文本生成任务中,给定一个初始的输入文本序列(可以是一个单词、一个句子或一段话),模型会预测下一个单词出现的概率分布。假设输入序列是 “The cat”,模型会计算在这个序列之后不同单词(如 “runs”“jumps”“sleeps” 等)出现的概率,然后从这个概率分布中采样一个单词作为下一个生成的单词。

  • 新的扩展维度:Al能力的提升不再局限于预训练阶段,还可以通过在 Post-Training 阶段中提升RL训练的探索时间增加模型推理思考时间来实现性能提升,即Post-Training Scaling Laws 以及  Test-time scaling Resoning ;

随着训练时的计算量和测试时的计算量的增加,模型性能也会随之提升。

常见大模型后训练流程

这里以Llama 3来示例:

1.持续通过人工标注或机造方式生成偏好pair样本,训练Reward Model

2.基于当前能力最好的模型,随机采集一批 {Prompt} ,每个Prompt拿最好的模型做 K 次数据生成采样,每个Prompt就得到 K 条 <Prompt,Responsek> 数据;

3.拒绝采样:对第2步采样 K 个 <Prompt,Responsek> 数据,用Reward Model打分,并从中选取打分最高 topN 条样本。作为指令微调的精选样本,训练SFT Model;

4.训完SFT Model,再通过持续收集的偏好对样本(同步骤1)做对齐学习(Llama使用的是DPO)。最终得到了一个比当前模型更好的模型;

5.持续做步骤1~步骤4,飞轮迭代优化模型。

训练数据

SFT data

采样模型多次,让RM选出最好的回复,作为SFT data的一部分。部分细节如下:

  • 采样什么模型?两种情况。迭代中表现Avg score最好的模型,或者在某个particular capability上表现最好的模型。
  • 采样多少次?K=10~30,即一般采样10-30次。
  • prompt哪来?人工标注的prompts。并在后训练迭代后期引入特殊的system prompts。

Preference data

  • 采样什么模型?部署多个不同数据配比和对齐方法训练的模型,针对每个prompt选取两个不同的模型进行采样。原因:不同模型能够在不同的能力维度上表现出差异,数据质量和多样性更好。
  • 偏好等级?四个等级:显著更好(significantly better),更好(better),稍微更好(slightly better),略微更好(marginally better)。
  • 允许修改:标注同学可以进一步优化chosen response,最后edited > chosen > rejected。
  • 迭代式难度:最后随着模型改进逐步提高prompt复杂度。


微调 Fine-tuning

微调是指在预训练模型的基础上,使用特定任务的数据集进行进一步训练,以使模型适应特定任务或领域。其目的是优化模型在特定任务上的性能,使模型能够更好地适应和完成特定领域的任务。

SFT (Supvised Fine tuning ) 微调方法

全量微调 VS 部分微调

全量微调 Full Fine-Tuning,FFT

是指在预训练模型的基础上,使用特定任务的数据集对模型的所有参数进行进一步训练,以使模型更好地适应特定任务或领域的过程。

部分微调 PEFT(parameter-efficient fine-tuning)参数高效微调

一种针对大型预训练模型的微调技术,旨在减少训练参数的数量,从而降低计算和存储成本,同时保持或提升模型性能仅微调模型中的一小部分参数,常见方法如下:

  • 选择参数子集
  • 重新参数化
  • LoRA(Low-Rank Adaptation) 使用低秩表示重新参数化模型权重
  • 核心思想是将权重矩阵 W 分解为两个低秩矩阵 A 和 B 的乘积,即:

其中:

是预训练模型的原始权重矩阵。

A 和 B 是两个低秩矩阵,其维度远小于 W。

通过这种方式,LoRA 只需要更新 A 和 B 的参数,而不是整个 W。这显著减少了需要更新的参数数量,从而提高了微调的效率。

  • 添加额外的可训练的token
  • Prompt-tuning


对齐 Alignment

对齐是指通过各种技术手段,使模型的输出与人类的偏好和价值观对齐,确保模型的行为和决策符合人类社会的期望和标准。对齐技术旨在解决模型可能带来的潜在问题,如生成有害内容、不符合伦理的输出等。强化学习是实现模型对齐的核心工具,即可通过人类反馈强化学习(RLHF)(Reinforcement Learning from Human Feedback)的方式,通过训练奖励模型对齐模型输出与人类偏好,强化学习中需要用到的关键组成部分如下

1. 带有人类偏好反馈的标签数据

  • <input,accept,reject>

2. 奖励模型(Reward Model)-> 奖励信号

  • Rule-based RM
  • Model-based RM

3. 强化学习策略优化算法

  • DPO (Direct Preference Optimization) 直接偏好优化
  • PPO (Proximal Policy Optimization)近端策略优化
  • GRPO(Group Relative Policy Optimization)组内相关策略优化算法

强化学习策略优化算法 DPO VS PPO VS GRPO

RHLF即基于人类反馈的强化学习的训练流程中的涉及到的策略优化算法,常见的有以下几种:

  • PPO(Proximal Policy Optimization)近端策略优化
  • 是 OpenAI 在2017年提出的一种基于策略梯度(Policy Gradient)的强化学习算法。
  • 优化过程是构建一个损失函数, 需要根据奖励模型的奖励信号和新旧策略差异计算损失函数,并且会限制策略更新的幅度,保证了模型的稳定性。
  • 损失函数:

其中 是新旧策略概率之比,反映新旧策略的改进情况。

是优势估计值,反映智能体选择某个动作的好坏。

clip是剪辑机制,反映经过剪辑后的改进结果,防止进步过快或退步过多,保待稳定的训练过程。

选择最小值: 1)基于新策略直接计算出来的值,2)经过剪辑后的值,保持训练的稳定性。

  • DPO(Direct Preference Optimization)直接偏好优化
  • 优化过程相对直接。不需要训练一个单独的奖励模型。直接利用人类偏好排序数据(概率比)来构建目标函数并优化策略;
  • 目标: 最大化用户偏好数据的生成概率,同时减少用户非偏好数据的生成概率;
  • 无需明确的奖励模型,更多依赖于用户提供的偏好排序或比较数据,不需要同环境进行交互,适用于需要从静态数据(如用户的偏好反馈)中学习的任务 ,并且高度依赖用户反馈的数据质量;
  • GRPO(Group Relative Policy Optimization)组内相关策略优化算法

  • 与PPO相比,无需额外训练价值模型,通过从同一问题的多个输出中计算平均奖励来替代价值函数的作用,从而减少了显存和计算负担,但依赖于奖励模型的评分来区分输出的好坏,这对于奖励模型的设计也提出了更高的要求。

强化学习 RM(Reward Model)奖励模型的优化思路

传统的强化学习RL框架中,智能体通过与环境的交互来学习,以最大化累积奖励。但这种方法有时会面临奖励设计困难和学习效率低下的问题。为了解决这些难题,RLHF (Reinforcement Learning from Human Feedback)引入人类作为奖励信号的来源。人类反馈可以采取多种形式,包括直接的奖励信号、排名反馈、偏好比较等。

  • LLM as a judge:判别式的RM的准确率不足,可以用于事实性,输出风格等的判定;
  • Generative RM:先CoT自然语言推断的,再给出奖励信号,Let's verfify step by step ;
  • Critic Model:随着大模型的不断迭代,其输出的内容越来越准确,错误也变得更加隐蔽,就算是专业的AI训练师也很难察觉那些错误所在,open ai训练了CriticGPT这种谈论家模型,用于加强RLHF,但注意用model去建模reward,可能会因为过度对齐人类的偏好而引入bias;
  • Outcome-based Reward Model(ORM) Process-based Reward Model(PRM) 向着模型能生成正确的推理能力的方式去优化
  • PRM:过程奖励模型,是在生成过程中,分步骤,对每一步进行打分,是更细粒度的奖励模型。
  • ORM:结果奖励模型,是不管推理有多少步,对完整的生成结果进行一次打分,是一个反馈更稀疏的奖励模型。

注意reward model可能会被hacking的问题,可以将不同的reward model混在一起训练, 让模型训多轮后也比较难找到RM的漏洞。

推理阶段(Test-time computation)的优化思路: 快思考 -> 慢思考

  • 系统1思维:一次性生成完整解法的方法
  • Next Token Prediction 缺乏详细的中间推理步骤,模型一开始可能会犯错,错误会传播导致最终生成的答案也是错的;
  • 系统2思维: 模仿人类通过更慢,更深的思考过程进行推理
  • CoT: Training-Free的方式, 通过分步的方式生成一系列中间推理步骤,从而提升模型推理能力;
  • Let's think step by step ;
  • Best of N ;
  • MCTS (Monte Carlo Tree Search  蒙特卡洛树搜索) : 在Token或字句级别分解建模成节点后提供奖励信息(Process-based-Reward-Model);
  • Token级别的节点:每个节点对应生成序列中的一个Token。通过MCTS,模型可以探索不同的Token序列,最终生成更连贯的响应;
  • 句子级别的节点:在复杂推理任务中,每个节点可以代表一个完整的句子或推理步骤,帮忙模型更好地处理多步推理任务;
  • STaR(Self - Taught Reasoner) :教会模型从内部深入思考问题与答案的关联;
  • STaR 的核心思路是利用 LLM 已有的推理能力,迭代式的引导模型产生合理推理过程 (Rationales) 的能力,井将 Rationales 融入到训练过程内,让模型学会进行推理;
  • 通过few shot example 来prompt模型生成答案和推理过程,过滤出正确的数据集生成微调数据集来微调;

  • deepseek-R1 强化学习训练时使用的prompt格式,要求模型将推理的过程的思路输出到<think>标签中,引导模型进行慢思考;

  • Quiet-STaR (Self - Taught Reasoner)
  • 通过控制模型在生成文本时自动生成推理步骤(即理由或rationales),从而提高模型的预测能力和推理性能;
  • 在训练阶段,先基于前序token停下,进行think阶段,产出从多个thought,选择某一个thought加上前序token,进行预测下一个token,然后经过奖励模型的评判,进行反馈学习;
  • 在推理阶段,利用think及talk对应的prompt来引导进入慢思考,在think结束后,再进行talk;

微调(SFT) VS 强化学习(RL)

SFT->示范给模型怎么样做是对的

RL->在环境中不断的试错,累积奖励,理论上RL能榨干模型,能突破人类的上限,但reward要能写好

SFT Memorizes, RL Generalizes: A Comparative Study of Foundation Model Post-training

  • RL 在泛化方面的优势:RL,特别是在基于结果的奖励下进行训练时,能够在基于规则的文本和视觉变体中实现泛化。这表明强化学习在处理不同情境和变化时具有更强的适应能力。强化学习通过与环境的交互不断调整策略,从而能够学习到更通用的知识和行为模式。
  • SFT 在记忆方面的倾向:SFT 则倾向于记忆训练数据,在分布外的场景中难以很好地泛化。这是因为监督微调主要是通过最小化预测与真实标签之间的误差来调整模型参数,容易使模型过度拟合训练数据。

SFT 对 RL 训练的重要性:尽管 RL 在泛化方面表现出色,但文章指出 SFT 对于有效的 RL 训练仍然至关重要。SFT 能够稳定模型的输出格式,为后续的 RL 训练奠定基础。没有经过 SFT 的模型可能在输出格式上不稳定,导致 RL 训练难以收敛或效果不佳。

以DeepSeek R1示例后训练

DeepSeek-R1

  • 对于test-time阶段的处理,提及对于RPM及MCTS等手段,未被证实有效果;
  • R1-ZERO仅使用RL,未使用SFT;
  • Reward Model未使用RPM等相对复杂的模型,而是仅使用的了rule-based的RM;
  • 强化学习算法使用的自家的GPPO,相对于PPO等,更加的简单,也更考验RM的设计能力;

给后续的推理模型后训练很多启发,仅RL也可以得到非常好的推理效果。

总结

  • RL -> deepseek R1 zreo
  • SFT+RL -> deepseek R1 llama3
  • SFT -> 蒸馏的一些小模型
  • test-time scaling -> openai o1

附:

来源  |  阿里云开发者公众号

作者  |  弯枝

相关文章
|
12天前
|
负载均衡 测试技术 调度
大模型分布式推理:张量并行与流水线并行技术
本文深入探讨大语言模型分布式推理的核心技术——张量并行与流水线并行。通过分析单GPU内存限制下的模型部署挑战,详细解析张量并行的矩阵分片策略、流水线并行的阶段划分机制,以及二者的混合并行架构。文章包含完整的分布式推理框架实现、通信优化策略和性能调优指南,为千亿参数大模型的分布式部署提供全面解决方案。
240 4
|
18天前
|
人工智能 机器人 人机交互
当AI学会“看、听、懂”:多模态技术的现在与未来
当AI学会“看、听、懂”:多模态技术的现在与未来
223 117
|
14天前
|
机器学习/深度学习 人工智能 物联网
【大模型微调】一文掌握5种大模型微调的方法
本文系统解析大模型微调五大核心技术:全参数微调、LoRA、QLoRA、适配器调整与提示调整,深入剖析其原理、优劣与适用场景,结合Transformer架构与资源需求,助力开发者在算力与性能间做出最优选择。
799 0
【大模型微调】一文掌握5种大模型微调的方法
|
14天前
|
人工智能 文字识别 自然语言处理
从“看见”到“预见”:合合信息“多模态文本智能技术”如何引爆AI下一场革命。
近期,在第八届中国模式识别与计算机视觉学术会议(PRCV 2025)上,合合信息作为承办方举办了“多模态文本智能大模型前沿技术与应用”论坛,汇聚了学术界的顶尖智慧,更抛出了一颗重磅“炸弹”——“多模态文本智能技术”概念。
73 1
|
20天前
|
监控 算法 测试技术
大模型推理服务优化:动态批处理与连续批处理技术
本文系统阐述大语言模型推理服务中的关键技术——动态批处理与连续批处理。通过分析传统静态批处理的局限性,深入解析动态批处理的请求调度算法、内存管理策略,以及连续批处理的中断恢复机制。文章包含完整的服务架构设计、核心算法实现和性能基准测试,为构建高性能大模型推理服务提供全面解决方案。
158 3
|
17天前
|
存储 缓存 算法
淘宝买家秀 API 深度开发:多模态内容解析与合规推荐技术拆解
本文详解淘宝买家秀接口(taobao.reviews.get)的合规调用、数据标准化与智能推荐全链路方案。涵盖权限申请、多模态数据清洗、情感分析、混合推荐模型及缓存优化,助力开发者提升审核效率60%、商品转化率增长28%,实现UGC数据高效变现。
|
21天前
|
存储 人工智能 搜索推荐
拔俗AI助教系统:基于大模型与智能体架构的新一代教育技术引擎
AI助教融合大语言模型、教育知识图谱、多模态感知与智能体技术,重构“教、学、评、辅”全链路。通过微调LLM、精准诊断错因、多模态交互与自主任务规划,实现个性化教学。轻量化部署与隐私保护设计保障落地安全,未来将向情感感知与教育深度协同演进。(238字)
|
2月前
|
人工智能 自然语言处理 IDE
模型微调不再被代码难住!PAI和Qwen3-Coder加速AI开发新体验
通义千问 AI 编程大模型 Qwen3-Coder 正式开源,阿里云人工智能平台 PAI 支持云上一键部署 Qwen3-Coder 模型,并可在交互式建模环境中使用 Qwen3-Coder 模型。
536 109
|
2月前
|
分布式计算 测试技术 Spark
科大讯飞开源星火化学大模型、文生音效模型
近期,科大讯飞在魔搭社区(ModelScope)和Gitcode上开源两款模型:讯飞星火化学大模型Spark Chemistry-X1-13B、讯飞文生音频模型AudioFly,助力前沿化学技术研究,以及声音生成技术和应用的探索。
189 2
|
2月前
|
人工智能 Java API
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
本文介绍AI大模型的核心概念、分类及开发者学习路径,重点讲解如何选择与接入大模型。项目基于Spring Boot,使用阿里云灵积模型(Qwen-Plus),对比SDK、HTTP、Spring AI和LangChain4j四种接入方式,助力开发者高效构建AI应用。
1041 122
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)

热门文章

最新文章