题目
请说明 QLoRA 与 AdaLoRA 各自对 LoRA 做了哪些改进,适用场景有何不同。
参考答案
回顾 LoRA:冻结原权重 ,加可训练低秩矩阵 ( 初始化为 0、 高斯初始化),仅训 、。
QLoRA(Quantized LoRA,Dettmers 2023):
核心创新 = 4-bit 量化基座 + LoRA 微调,让 65B 模型能在单张 48GB 显卡上微调。
- NF4(NormalFloat 4-bit):基于正态分布分位数的 4-bit 量化格式,比普通 INT4 信息损失更小(假设权重大致服从正态分布)。
- Double Quantization:连量化常数本身也量化,进一步省显存。
- Paged Optimizer:用 NVIDIA 统一内存把优化器状态在 CPU/GPU 间分页,避免显存峰值 OOM。
- 计算时反量化:4-bit 权重前向时反量化为 BF16 参与计算,梯度只回传到 LoRA 的 、(基座保持 4-bit 冻结)。
效果:质量接近全参 BF16 微调,显存降至 1/4 以下;7B 模型 6GB、65B 模型 48GB 可训。
AdaLoRA(Adaptive LoRA):
核心创新 = 动态分配秩 ,让重要层用更大秩、次要层用更小秩。
- LoRA 给所有层统一秩 ,但不同层对任务的贡献不同,浪费预算。
- AdaLoRA 把 、 之间插入一个对角矩阵 :, 的对角元素反映该”虚拟奇异值”的重要性。
- 训练中按重要性评分动态修剪:不重要的奇异值置 0(等效降秩),把预算让给重要层。
- 类似 SVD 的思想,让 LoRA 的秩自适应分配。
对比表:
| 方法 | 基座 | 秩 | 显存(7B) | 质量 | 适合 |
|---|---|---|---|---|---|
| LoRA | FP16/BF16 | 固定 | ~16GB | 良 | 通用 |
| QLoRA | 4-bit NF4 | 固定 | ~6GB | 接近全参 | 消费级显卡 |
| AdaLoRA | FP16/BF16 | 动态 | ~16GB | 略优于 LoRA | 秩预算紧 |
面试加分点:
- QLoRA 解决的是”显存门槛”,AdaLoRA 解决的是”秩分配效率”,二者可叠加(4-bit 基座 + 动态秩)。
- QLoRA 的 NF4 是关键——普通 INT4 在大模型上掉点明显,NF4 几乎无损。
- 实践中 QLoRA 是消费级显卡微调 70B 模型的唯一可行方案,是开源社区的重要赋能。
出处:CSDN《【AI产品经理面试必看】大模型面试 SFT 必考》、QLoRA 论文《QLoRA: Efficient Finetuning of Quantized LLMs》。
内容来源
整理自 CSDN《大模型面试:SFT 必考》及 QLoRA 论文
本站内容整理自公开面经与开源仓库,仅供学习交流,严禁杜撰。