L18: LoRA Without Regret (Guest: John Schulman)
Week 9 · Thu Mar 05 2026 08:00:00 GMT+0800 (中国标准时间)
L18: LoRA Without Regret
- 授课: John Schulman (Guest Lecture)
- 日期: Mar 5, 2026 (Week 9)
Slides
- Slides 未公开(Guest Lecture)
核心知识点
LoRA 回顾
- Low-Rank Adaptation: 冻结预训练权重,仅训练低秩分解矩阵 A, B
- 参数高效微调(PEFT)的代表方法
📐 LoRA 的完整数学结构
LoRA 参数化:对预训练权重矩阵 ,注入低秩扰动:
其中 ,,秩 。
初始化:,(确保训练开始时 ,不破坏预训练权重)。
前向传播(带缩放 ):
- 是固定超参(通常等于 ),控制学习率与秩无关
- 推理时合并:,零推理开销
参数量对比(GPT-3 175B,,):
| 组件 | 原始参数量 | LoRA 参数量 | 节省比例 |
|---|---|---|---|
| (每层) | 1500x | ||
| 全模型 | 175B | ~4.7M(,仅 ) | 37000x |
梯度分析:反向传播只流经 , 梯度不积累也不存储 → Adam 状态减少同样比例。
📚 已收录至 拓展阅读知识库
🔢 低秩近似的数值直觉
假设 ,秩为 :
SVD 分解得奇异值:
保留前 2 个奇异值的低秩近似误差(Frobenius 范数):
而总能量 ,低秩近似保留了 的信息。
关键洞察:预训练权重的更新矩阵 内在维度(intrinsic dimensionality)非常低——这解释了为什么 LoRA 有效:任务适应所需的”新信息”体积很小。
💡 为什么低秩有效?
预训练大模型捕获了通用知识,微调只是”调整方向”。类比:一位钢琴家学习弹奏一首新曲,不需要重学手指运动的所有肌肉协调(预训练知识),只需微调特定曲目的节奏和力度(低秩 )。
Aghajanyan et al. 2021 的实验:在预训练模型上做任意下游任务,其实只需要 的低维子空间就能近似最优性能——这是 LoRA 的理论依据。
“Without Regret” 的语境(John Schulman 的视角):LoRA 的局限在于秩固定,而任务复杂度未知。自适应 rank(AdaLoRA)和 rank 增长策略(类似 AdaGrow 的思路)可能弥合与全参数微调的差距而不增加推理代价。
⚠️ 常见误区
-
误区:rank 越大越好 → 正确:rank 增大到某点后性能不再提升但内存/时间增加,通常 已足够, 基本等同全参微调。
-
误区:LoRA 只能用于注意力层 → 正确:可应用于任意线性层(FFN、embedding),但实验表明 通常比 更重要。
-
误区:LoRA 合并后等同于全参微调 → 正确:合并后的 秩受限于 ,而全参微调的更新矩阵可以是满秩的,在复杂任务上仍有差距。
LoRA 的局限性
- 低秩约束限制了表达能力
- 在复杂任务上可能与全参数微调存在差距
- Rank 选择和初始化策略的敏感性
”Without Regret” — 弥合 LoRA 与全量微调的差距
- 探索如何在保持参数效率的同时不牺牲性能
- 可能涉及自适应 rank、动态扩展等策略
推荐阅读
- Hu et al. 2022 — LoRA: Low-Rank Adaptation of Large Language Models
- 相关 LoRA 变体: QLoRA, DoRA, AdaLoRA
关联概念
个人笔记
-
John Schulman (OpenAI/Anthropic 联合创始人) 做 LoRA 主题的 guest lecture 值得关注