← 返回题库
训练与微调中等

LoRA 的原理是什么?为什么能省显存?

#低秩适配#参数高效微调#显存优化

题目

请说明 LoRA(Low-Rank Adaptation)的原理,并解释它为什么能显著节省微调显存。

参考答案

核心思想:假设模型权重的更新具有”低秩”特性,即 ΔW\Delta W 可以用两个小矩阵的乘积近似:

ΔW=BA,ARr×k, BRd×r, rmin(d,k)\Delta W = B A,\quad A \in \mathbb{R}^{r\times k},\ B \in \mathbb{R}^{d\times r},\ r \ll \min(d,k)

微调时冻结原权重 WW,只训练新增的 AABB。前向为 y=Wx+BAxy = Wx + BAx

为什么省显存

  1. 可训练参数极少:以 d=k=4096, r=8d=k=4096,\ r=8 为例,单层全参需训练 1600 万参数,LoRA 仅需 6.5 万,约为 0.4%。
  2. 无需优化器状态:原权重冻结,不产生对应的 FP32 主副本和 Adam 矩、二阶矩,省去约 12× 的优化器显存。
  3. 梯度只针对 A/B:梯度与优化器状态都仅作用于低秩矩阵。

显存对比(7B 模型)

  • 全参微调:~112GB
  • LoRA:单卡 ~16–24GB 即可(视上下文长度)
  • QLoRA(4-bit 量化 + LoRA):~6–10GB,消费级显卡可跑

面试加分点

  • 初始化AA 用高斯随机,BB 初始化为 0,保证训练开始时 ΔW=0\Delta W = 0,不破坏原模型。
  • 合并:推理时可将 BABA 合并回 WW,无额外延迟。
  • 局限:低秩假设可能限制对原模型大幅改动的场景。

出处:开源仓库 wdndev/llm_interview_note、CSDN 大模型面经。

内容来源

整理自开源仓库 wdndev/llm_interview_note 及 CSDN 大模型面经

本站内容整理自公开面经与开源仓库,仅供学习交流,严禁杜撰。