LoRA(Low-Rank Adaptation)通过在预训练权重旁边加入低秩矩阵来微调模型,只训练新增的极少量参数,让在消费级 GPU 上微调 70B 级别大模型成为可能,成为目前最流行的参数高效微调方法。

| 类型 | 参数高效微调(PEFT) |
| 提出者 | Hu et al., Microsoft,2021 |
| 常用秩 r | 4 / 8 / 16 / 32 |
2021 年微软的 Hu et al. 提出 LoRA,背后假设是:微调时权重矩阵的更新 ΔW 是低秩的(信息密集在少数方向上)。因此不直接训练完整的 ΔW(d×k 的矩阵),而是将其分解为两个小矩阵 A(d×r)和 B(r×k)的乘积,其中秩 r 远小于 d 和 k(通常 r=8 或 16)。
推理时,把 LoRA 增量 BA 加回原权重即可,不增加推理延迟。训练时,A 随机初始化,B 初始化为零(确保训练开始时 ΔW=0,即从预训练权重出发)。一个 7B 模型全量微调需要 70GB 以上显存,LoRA 只需约 16GB,可以在单张 RTX 4090 上完成。[1]
LoRA 几乎成为开源 LLM 微调的事实标准。HuggingFace 的 PEFT 库封装了 LoRA 及其变体,数千个基于 LoRA 的微调模型在 HuggingFace Hub 上共享。Stable Diffusion 社区更是把 LoRA 用到极致:用 100-500 张图片训练一个 LoRA,就能让基础模型学会特定画风、人物或概念。
后续改进版本:QLoRA(2023)在 4-bit 量化的基础模型上挂载 LoRA,进一步把 65B 模型的微调显存需求压到单张 48G 显卡;DoRA(2024)分离权重的方向和幅度分别更新,在某些任务上超过全量微调;LoRA+ 发现对 A 和 B 矩阵用不同学习率效果更好。秩 r 的选择是关键超参:太小欠拟合,太大则接近全量微调但没有明显优势,r=8 在多数情况下是起点。

| 类型 | 参数高效微调(PEFT) |
| 提出者 | Hu et al., Microsoft,2021 |
| 常用秩 r | 4 / 8 / 16 / 32 |
登录 后参与讨论
暂无讨论,来发表第一条评论吧