大模型微调入门:LoRA 与 QLoRA
理解为什么需要微调、全参微调为何昂贵,以及 LoRA/QLoRA 如何用极低成本实现高效微调。
当通用大模型在你的领域表现不佳时,微调是提升效果的关键手段。但全参微调成本高昂,LoRA 与 QLoRA 给出了高效解法。
为什么需要微调
通用模型的局限在于「知识通用、领域不精」。微调(Fine-tuning)让模型在特定领域的数据上继续训练,从而:
- 学会领域术语与格式;
- 遵循特定的输出风格;
- 补齐通用模型的短板。
全参微调为何昂贵
传统微调要更新模型所有参数(几十亿到上千亿),需要大量显存与算力,普通团队难以承受。
LoRA:冻结主干,只训增量
LoRA 的核心洞察是:微调时的参数变化可以低秩近似。它冻结原模型权重,只在旁边加一个「低秩增量矩阵」来训练:
W' = W + ΔW = W + A·B
其中 A、B 是两个小矩阵,参数量远小于 W。微调只需训练 A、B,显存需求骤降。
QLoRA:再叠加量化
QLoRA 在 LoRA 基础上,把原模型权重量化到 4bit 存储,进一步压缩显存。结果是:
原本需要多张 A100 才能微调的模型,现在单张消费级 GPU 即可。
这让个人开发者也能微调大模型。
实践要点
- 数据质量 > 数据数量:少量高质量标注数据胜过海量噪声;
- 选择合适的秩 r:r 越大越接近全参,但成本越高;
- 控制学习率:LoRA 通常需要比全参更大的学习率。
结语
LoRA/QLoRA 把微调「民主化」了。理解「冻结主干 + 低秩增量」的思想,你就能用可控的成本,让通用模型变成你的领域专家。