AI专业术语
LoRA
Low-Rank Adaptation
低秩适配 · 用极少参数撬动大模型微调
模型训练LLMPEFT
LORA
- 定义
- LoRA(Low-Rank Adaptation)是AI领域的专业术语。LoRA 在预训练模型的线性层旁边插入两个低秩矩阵(降维 + 升维),只训练这部分新增参数,原始权重完全冻结。
最后更新:2026-03-29
什么是LoRA?
LoRA 在预训练模型的线性层旁边插入两个低秩矩阵(降维 + 升维),只训练这部分新增参数,原始权重完全冻结。一个 7B 模型全量微调需要 60GB+ 显存,LoRA 可以把可训练参数压缩到不足 1%,在单张消费级 GPU 上完成同等质量的微调。
- 可训练参数不足全量的 1%,显存占用降低 3-5 倍
- 训练完成后适配器可合并回原模型,推理零开销
- 2024 年衍生出 DoRA、PiSSA、LoRA-XS 等变体,生态持续扩展
LoRA详解
LoRA 的核心思想来自微软 2021 年的论文:大模型微调时的权重更新矩阵本质上是低秩的,不需要更新全部参数。它将权重更新分解为 W = BA(B 降维、A 升维),秩 r 通常取 8-64。训练时只更新 A 和 B,推理时将 BA 合并回原权重,不增加延迟。这一方法已成为 Hugging Face PEFT 库的默认微调策略,广泛应用于 LLaMA、Mistral、Qwen 等开源模型的领域适配。局限在于对秩 r 的选择敏感,且在需要大幅改变模型行为的场景下效果可能不如全量微调。
公式提示
ΔW = BA,其中 B ∈ R^(d×r),A ∈ R^(r×k),r ≪ min(d,k)
LoRA的应用场景
正式定义
一种参数高效微调方法,通过在冻结的预训练权重旁注入可训练的低秩矩阵对来实现模型适配。
应用场景
- 用特定领域数据微调开源 LLM
- 在消费级 GPU 上定制聊天机器人风格
- 为同一基座模型训练多个任务适配器并按需切换
常见误区
- LoRA 不是量化——它不改变模型精度,只减少可训练参数量
- 秩 r 越大不一定越好,过大会增加过拟合风险且收益递减
实际案例
📌 医疗问答微调
在 LLaMA-3 8B 上用 LoRA(r=16)微调医疗 QA 数据集,单张 RTX 4090 训练 2 小时,医学问答准确率从 41% 提升到 68%,接近全量微调的 71%。
LoRA的参考来源
- 论文LoRA: Low-Rank Adaptation of Large Language ModelsEdward Hu et al. · 2021-06
- 文档
关于LoRA的常见问题
- LoRA 和全量微调有什么区别
- 全量微调更新模型所有参数,LoRA 只训练旁路插入的两个小矩阵,可训练参数不到全量的 1%,显存占用降低 3-5 倍,效果接近。
- LoRA 的秩 r 怎么选
- 通常取 8-64。r 越大拟合能力越强但参数越多,简单任务用 8-16 即可,复杂领域适配可尝试 32-64。