← 课程库
适配与对齐模块五 · 参数高效微调方法公式16 分钟

LoRA:低秩适配原理

只训两个小矩阵,就逼近全参微调

学完这节你能:
  • 理解 LoRA 的低秩假设
  • 写出 W' = W + BA 并说明各项
  • 算出可训练参数缩减比例

LoRA 的核心假设:微调带来的权重变化量 ΔW 是低秩的——不必更新整个大矩阵,用两个瘦长的小矩阵相乘去近似它就够。

W=W+ΔW=W+BAW' = W + \Delta W = W + BA
WRd×kW \in \mathbb{R}^{d\times k}(冻结),BRd×rB \in \mathbb{R}^{d\times r}ARr×kA \in \mathbb{R}^{r\times k},秩 rmin(d,k)r \ll \min(d,k)
可训练参数:d×kr×(d+k)d\times k \to r\times(d+k)
训练时 A 随机初始化、B 初始化为 0(保证起始 ΔW=0,不破坏原模型)。
参数缩减手算
d = k = 4096,r = 8
全参:4096×4096 ≈ 1677 万
LoRA:8×(4096+4096) ≈ 6.55 万
缩小 ≈ 256 倍,效果却接近全参微调

🔑 两个关键性质:① 推理时可把 B·A 合并回 W,不增加任何延迟;② 一个底座 + 多个 LoRA 小插件 = 多个任务专家,随时热插拔。

✗ 常见误解✓ 正确理解
LoRA 会修改并保存整个大模型。LoRA 冻结原权重,只训练并保存小矩阵 A、B(几 MB)。
自测LoRA 中 W' = W + BA,被训练的是:
自测变式(换数字再算):LoRA 作用于 d=k=2048 的权重、秩 r=16,可训练参数约为:
// 带走一句话

LoRA:ΔW=BA 低秩近似,冻结 W 只训 A、B,参数缩数百倍;A 随机/B 置零起步,推理可合并零延迟。

独立练习

做到这些,才算完成本节

  1. 对 4096×4096 线性层分别计算 r=4、8、16 时 LoRA 参数量与全参比例。
  2. 实现低秩旁路并验证零初始化 B 时,初始输出与原层完全一致。
  3. 不看正文重写公式,并逐项说明符号、形状和单位。
  4. 改变一个条件,判断公式结果应增大、减小还是不变。
学习记录

记录本节阅读进度

建议先独立回答自测。读完记录不等于已经掌握。

继续下一课
← 上一课
全参微调 vs 高效微调
下一课 →
Adapter、前缀微调、提示微调

学完不要急着赶进度:去练习自测,或完成对应的阶段实验