Skip to content

🎓 LoRA 微调原理

全参数微调要几十GB显存,LoRA 只要几GB——这就是门槛降低的秘密

什么是微调

微调 = 拿预训练好的大模型 + 用你的数据再训练一下 → 变成你的专属模型。

比如拿 Qwen2.5-7B,用 500 份合同审查数据微调,变成"法眼合同审查专用模型"。


全参数微调 vs LoRA

全参数微调

训练时更新模型的所有参数。7B 模型有 70 亿个参数,全参数微调需要:

  • 显存:约 60GB+(模型 + 优化器状态 + 梯度)
  • 至少 A100 80GB 级别

LoRA(Low-Rank Adaptation)

只训练一小部分额外参数,原始模型参数冻结不动。

全参数微调LoRA
可训练参数量70亿几百万(约 0.1%)
显存需求(7B)60GB+16GB
训练速度
效果理论上限高多数场景够用
存储保存完整 14GB 模型只保存几 MB 的 LoRA 权重

LoRA 怎么工作的

不改变原模型参数,在注意力层的权重矩阵旁"挂"两个小矩阵 A 和 B:

原权重: W (冻结不动)
LoRA:   W + A × B (只训练 A 和 B)

A 和 B 加起来只有原权重的千分之一大小,所以训练快、显存省。

rank 是什么

LoRA 的 rank(秩)控制 A 和 B 的大小:

rank可训练参数效果
4极少简单任务够用
8较少推荐值
16中等复杂任务
64较多接近全参数微调

rank 越高效果越好,但训练越慢。一般从 rank=8 开始试。


QLoRA:更省显存

QLoRA = LoRA + 4-bit 量化。原模型用 4-bit 存储,再加上 LoRA 训练。

LoRAQLoRA
显存需求(7B)16GB8GB
训练速度较快稍慢(量化有开销)
效果略差但够用

一句话:显卡 24GB 以上用 LoRA,16GB 以下用 QLoRA。


什么时候微调有用

  • ✅ 垂直领域知识(法律、医疗、金融)—— 训练自己的术语和规则
  • ✅ 特定风格(客服语气、品牌调性)—— 比写 prompt 更稳定
  • ✅ 小语种或方言 —— 预训练模型覆盖不好的语言
  • ❌ 通用知识问答 —— 微调不如直接换更强的基础模型
  • ❌ 数据不足 100 条 —— 太少学不到东西

微调 vs RAG vs Prompt

Few-shot PromptRAG(检索增强)LoRA 微调
实施难度⭐⭐⭐⭐⭐
知识注入上下文长度限制检索+生成内化到模型
准确性高(有引用源)
成本每次推理消耗 token中等一次训练持续受益
场景临时问答知识库问答专业领域专属模型

风哥的法眼项目——合同审查需要理解法律术语和审查规则——最适合用微调。


🎯 本章要点

  • LoRA 只训练千分之一参数,7B 模型微调只需 16GB 显存
  • QLoRA 再加 4-bit 量化,8GB 显存就能微调 7B 模型
  • rank 控制 LoRA 参数量,从 8 开始调,越高效果越好但越慢
  • 微调适合专业领域+有足够标注数据;数据不足用 RAG 更合适
加载练习题中...

有问题或补充?欢迎留言