LoRA/QLoRA 参数高效微调 · PEFT
全参微调要更新所有参数,7B 模型光优化器状态就要 56GB 显存(Adam 两份动量),单卡 24G 根本装不下。
LoRA 的洞见:微调时权重的变化 ΔW 是低秩的——可以用两个小矩阵 A、B 近似,ΔW ≈ B×A,其中 A、B 远小于 W。只训 A、B,参数量从 7B 降到几十 M,显存从 56GB 降到 16GB。效果接近全参,成本降到 1/10。
QLoRA 再进一步:把冻结的 W 量化到 4bit(显存再砍 4 倍),只训 A、B 用 fp16。13B 模型单卡 24G 就能微调。这是为什么 2023 年后"人人能微调大模型"——技术把门槛打下来了。
选模型大小,看全参 / LoRA / QLoRA 三种方法的显存、可训参数、时间、效果差距。
一个常见坑:LoRA 效果不如全参,多半是数据太少或 r 太小。先确认数据够(几千条起步),再调 r,别一上来怀疑方法。多数"LoRA 没用"的案例,问题在数据不在方法。