7B模型凭什么比70B还能打?微调的魔法在这里
你肯定听过这些词——微调、LoRA、SFT、RLHF。听起来像是AI训练的四件套,但它们到底在说什么?为什么要"微调"而不是从零训练一个模型?LoRA凭什么能省下几百倍的算力?SFT和RLHF到底有什么区别?
别急,这篇文章用大白话把这些问题全部拆干净。
微调:站在巨人肩膀上继续学
想象你要训练一个厨师。传统做法是从找一块荒地开始,自己种菜、养鸡、打渔,然后慢慢学会做饭——这就是从零预训练一个模型。
但更高效的做法是什么?先去新东方学两年基础功,掌握炒、煮、蒸、煎的基本功——这相当于模型的预训练阶段。然后再把你店里的招牌菜、特色菜交给他练习——这就是微调(Fine-tuning) 。
微调的本质是:在已经学会通用能力的预训练模型基础上,用特定领域的数据继续训练,让模型适配你的任务。这比从零训练省了99%的时间和算力。
预训练阶段,模型读的是"万卷书"——互联网上几乎所有的文本。学的是语言规律、世界知识、基本推理能力。这个阶段参数量巨大,训练成本极高,通常是千卡级别跑好几个月的量级。
微调阶段,模型做的是"专项练习"——用标注好的问答对、特定格式的数据,让模型学会"遇到什么问题该怎么回答"。这个阶段数据量小得多,通常几千到几万条就够了。
一句话总结
微调是站在预训练模型肩膀上继续学习,用少量数据让模型适配特定任务,而不是从零开始训练整个模型。
全量微调 vs 参数高效微调:两种练法
微调有两条路:全量微调(Full Fine-tuning) 和 参数高效微调(PEFT, Parameter-Efficient Fine-Tuning) 。
全量微调好理解——把模型的所有参数都更新一遍。就像厨师学新菜,要重新调整颠勺的手法、火候的掌控、食材的处理方式,全身上下都得重新练。理论上效果最好,但代价也最大:7B参数的模型(70亿参数)需要80GB以上的显存,训练成本极高。而且还有个致命问题:灾难性遗忘——学新技能的同时,可能把原来的通用能力给忘了。
参数高效微调则是另一个思路:能不能只调整模型的一小部分参数,保持大部分参数不动?这样既省算力,又不会把原模型搞乱。
2025年的行业现状是:全量微调已基本被PEFT取代。据CSDN技术博客(2026年5月)报道,参数高效微调技术仅需极小的算力投入,就能实现全参数微调95%~99%的性能。
一句话总结
全量微调更新所有参数,效果好但成本高且容易遗忘;参数高效微调只更新少量参数,省算力且保持原模型能力——2025年PEFT已成为行业主流。
LoRA:只练"秘籍"不练"基本功"
LoRA(Low-Rank Adaptation,低秩适配)是目前最火的参数高效微调方法,2025年已成为微调的默认标准方案。
LoRA的核心思想很聪明:模型的原始权重 W(一个巨大的矩阵)不用改,直接冻住。然后训练两个小得多的矩阵 A 和 B,通过公式计算增量:ΔW = A × B
举个例子。假设原始权重矩阵 W 的维度是 4096 × 4096,这是一个1600万参数的大矩阵。如果设置低秩 r=8,那么矩阵 A 是 4096×8,矩阵 B 是 8×4096,总共只需要训练 65536 个参数。
缩减了多少?高达250倍。
LoRA的精妙之处在于:它不是让模型"重新学",而是让模型"长出"新的能力。原始权重 W 保留了模型预训练学到的所有知识,被"冻结"保护起来。新训练的 A 和 B 两个小矩阵,则像是一个"技能插件",专门负责适配新任务。
推理的时候,把增量 ΔW 加到原始权重上就行:W' = W + ΔW = W + A × B
为什么LoRA效果好成本低
- 冻结原始权重:预训练学到的知识和能力全部保留,不会被新数据冲掉
- 只训练新参数:参数量从千万级降到万级,显存占用大幅降低
- 低秩假设有理论支撑:研究者发现,模型适配新任务时,参数变化通常落在低秩子空间中——这意味着用小矩阵就能捕捉关键调整
- 可切换适配器:同一个大模型可以训练多个LoRA适配器,分别用于不同任务,推理时按需切换
QLoRA是LoRA的进阶版,在加载模型时采用量化技术(用更少的比特表示权重),进一步降低显存需求。据CSDN报道,QLoRA可以在单张48GB显存的GPU上微调70B参数的模型,在消费级GPU(12GB显存以上)上微调7B参数的模型。
一句话总结
LoRA冻结原始权重矩阵,只训练两个小矩阵的乘积,用250倍的参数量缩减实现接近全量微调的效果——是2025年AI从业者必备的技能。
SFT:让模型学会"怎么回答"
SFT(Supervised Fine-Tuning,监督微调)是微调流水线中的第一个阶段,也是最直观的一种。
SFT的做法很简单:准备一批标注好的问答对,让模型照着学。就像让学生做练习题:题目是"请解释什么是光合作用",标准答案是"光合作用是植物利用阳光将二氧化碳和水转化为葡萄糖和氧气的过程"。模型就学会遇到类似问题时该怎么回答。
SFT和预训练的区别
这里要区分两件事:学知识和学行为。
- 预训练:模型在学"这个世界是什么样的"。读的是海量文本,学的是语言规律、世界知识、因果推理。这个阶段没有标准答案,模型在学的是统计规律。
- SFT:模型在学"遇到问题应该怎么回答"。有明确的输入和期望输出,模型在学的是格式、风格、指令遵循。
打个比方:
- 预训练 = 读万卷书(积累知识)
- SFT = 做模拟题(学会考试技巧)
SFT能做什么
- 指令遵循:让模型理解"请解释"、"请总结"、"请写代码"这类指令
- 格式控制:让模型按照指定格式输出,比如JSON、Markdown
- 对话能力:让模型学会多轮对话的交互模式
- 安全边界:让模型学会拒绝恶意请求
SFT的数据来源有两类:人工标注(质量高但成本高)和AI生成(成本低但需要人工审核)。斯坦福大学的Alpaca项目就通过ChatGPT自动生成了52000条指令-答案样例用于训练。
SFT的局限
SFT学的是"模仿"——模型在复制训练数据中的回答方式。但模仿不等于理解,也不等于"好"。
举个例子:SFT可以教会模型"格式正确"地回答问题,但没法保证回答"有帮助"、"有礼貌"、"不偏颇"。模型可能学会用正确的格式输出有害的内容,或者用讨巧的方式绕过问题。
这就是为什么SFT之后还需要RLHF。
一句话总结
SFT用标注好的问答对训练模型,让模型学会指令遵循、格式控制和对话行为——本质是学会"怎么回答",而不是学会"什么是对的"。
RLHF:让模型学会"什么是好"
RLHF(Reinforcement Learning from Human Feedback,基于人类反馈的强化学习)是SFT之后的下一阶段。它的目标是解决SFT解决不了的问题:让模型不仅"会回答",还要"回答得好" 。
为什么SFT不够
SFT的局限在于:它只能模仿数据中的回答,但没法判断"哪个回答更好"。
举个实际例子。你让模型回答"怎么看待加班":
- 回答A:"加班是职场常态,年轻时多付出是应该的"
- 回答B:"加班应该基于自愿和必要性,长期加班对健康和效率都有负面影响"
如果训练数据里两种观点都有,SFT可能两个都学,最后输出一个不痛不痒的废话。或者更糟——模型学会了用"政治正确"的格式包装有害观点。
RLHF的思路是:不只告诉模型"怎么答",而是让模型知道"什么算好答案" 。
RLHF的三个阶段
RLHF的完整流程分为三步:
第一步:训练奖励模型(Reward Model)
收集人类偏好数据:给模型同一个问题,让它生成多个回答,然后让人工标注哪个更好、哪个更差。这些偏好数据用来训练一个奖励模型——专门预测"人类会觉得这个回答有多好"。
第二步:用强化学习优化策略
训练一个语言模型策略(policy),让它生成更多可能获得高奖励的回答。同时,为了防止模型"作弊"(比如学会取悦人类但内容空洞),引入一个参考模型(reference model)限制模型的更新幅度。
这一步通常使用PPO(近端策略优化)算法。PPO需要同时维护四个模型:当前策略、参考策略、奖励模型、价值网络——这就是为什么RLHF训练成本很高。
第三步:迭代优化
不断生成新的回答、收集新的偏好、更新奖励模型、优化策略,形成闭环。
一句话总结
RLHF通过人类偏好数据训练奖励模型,然后用强化学习让模型的输出更符合人类偏好——解决的是"怎么回答才对"的问题,而不是"怎么回答"的问题。
从预训练到RLHF:完整的训练流水线
把前面的概念串起来,一个现代大模型的训练流水线是这样的:
预训练(读万卷书)
↓
SFT(做模拟题,学会怎么回答)
↓
RLHF(老师批改后改进,学会什么是好答案)
预训练:打基础
用海量无标注文本训练,让模型学会语言规律、世界知识、基本推理。产出是"基础模型"(Base Model),能力全面但不知道怎么交互。
SFT:学交互
用标注好的问答数据训练,让模型学会遵循指令、按照格式输出。产出是"有监督微调模型"(SFT Model),能聊天、会写代码、能总结文章。
RLHF:对齐偏好
用人类偏好数据训练,让模型输出更有帮助、更诚实、更无害。产出是"对齐模型"(Aligned Model),也就是我们看到的ChatGPT、Claude这类产品的样子。
这个流水线有几个关键点:
- 阶段递进:预训练学知识,SFT学行为,RLHF学偏好。每个阶段目标不同,不可或缺。
- LoRA的位置:可以在SFT和RLHF阶段使用,大幅降低训练成本。
- SFT是必要前提:大多数RLHF实现都是基于SFT模型继续训练,而不是直接拿基础模型做RLHF。
行业新方向:DPO和GRPO
RLHF很强大,但也有痛点:训练复杂、成本高、需要同时维护多个模型。2023年以来,研究者提出了几个改进方向。
DPO(直接偏好优化)
DPO(Direct Preference Optimization)由斯坦福大学团队在2023年提出,是目前最广泛使用的RLHF替代方案。
DPO的核心洞察是:语言模型本身就可以作为隐式的奖励模型,不需要单独训练一个奖励模型。
传统RLHF:训练奖励模型 → 用PPO优化策略(两个阶段)DPO:直接用偏好数据优化策略(一个阶段)
但DPO也有局限:它更适合偏好数据分布相对稳定的场景,对于需要持续探索和自我改进的任务(如推理),传统RLHF或GRPO可能更合适。
GRPO(群组相对策略优化)
GRPO(Group Relative Policy Optimization),专门用于训练推理模型。
GRPO的核心创新是:用一组回答的相对表现替代价值模型,省去了PPO中价值网络(value network)的计算。
举个例子:让模型解一道数学题,生成8个答案。有些答对了,有些答错了。GRPO不需要训练一个"预估每个步骤得多少分"的价值模型,而是直接比较这8个答案——高于平均分的加强,低于平均分的削弱。
小结
| 概念 | 本质 | 作用阶段 | 核心特点 |
|---|---|---|---|
| 微调 | 在预训练模型基础上继续训练 | SFT之前 | 用少量数据适配新任务 |
| 全量微调 | 更新所有参数 | SFT/RLHF | 效果好但成本高 |
| 参数高效微调(PEFT) | 只更新少量参数 | SFT/RLHF | 省算力,保持原模型能力 |
| LoRA | 训练低秩矩阵增量 | SFT/RLHF | 250倍参数量缩减,2025年默认方案 |
| SFT | 监督学习标注数据 | RLHF之前 | 学"怎么回答" |
| RLHF | 强化学习+人类偏好 | 预训练之后 | 学"什么是好答案" |
| DPO | 直接偏好优化 | 替代RLHF | 更简单、更稳定 |
| GRPO | 群组相对策略优化 | 推理训练 | DeepSeek-R1关键技术 |
常见误区
误区1:微调可以让模型"学会"新知识
微调(尤其是SFT和RLHF)主要改变的是模型的行为模式,而不是知识储备。模型在预训练阶段已经学到了大量知识,微调只是让它学会怎么调用这些知识。
如果预训练数据里没有某方面的知识,指望通过微调"教会"模型是不现实的。这就像一个没学过量子物理的人,看再多解题技巧也无法真正理解量子力学。
误区2:LoRA效果一定比全量微调差
2025年的研究表明,在大多数实际应用场景下,LoRA等PEFT方法可以达到全量微调95%~99%的性能,同时大幅降低成本。
当然,对于需要模型学习全新领域知识或行为的场景,全量微调可能仍是更好的选择。但对于"让模型更好地完成已有任务"这类需求,LoRA是性价比最高的选择。
误区3:RLHF可以让模型"永远正确"
RLHF优化的是人类偏好,但人类偏好本身是复杂、矛盾、甚至有害的。RLHF可能放大某些偏见,也可能被"奖励黑客"——模型学会取巧而不是真正改进。
此外,RLHF的训练成本高、训练不稳定,在实际应用中是"能不用就不用"的选择。随着DPO等更简单方法的成熟,很多场景下DPO已经可以替代RLHF。
概念速查卡片
微调(Fine-tuning) :在预训练模型基础上用少量数据继续训练
全量微调(Full FT) :更新模型所有参数,效果好但成本高
参数高效微调(PEFT) :只更新少量参数,省算力
LoRA:最流行的PEFT方法,冻结原始权重,训练两个小矩阵
SFT:用标注问答对训练,让模型学会怎么回答
RLHF:用人类偏好数据训练,让模型学会什么是好答案
DPO:跳过奖励模型的简化版RLHF,稳定高效
GRPO:DeepSeek提出的推理训练方法,用群组相对比较替代价值模型
下一篇预告
下一篇我们聊:AI 怎么"动手"做事——Function Calling、Tool Use、Agent,大模型是怎么从"只会说话"变成"能动手做事"的。
这是「老开发的 AI 笔记」专栏的第 4 篇,用开发者听得懂的话讲 AI。觉得有用的话,点赞收藏走一波,后续持续更新。