lora微调,如果不考虑 int4/8 量化, 微调后会降低显存占用吗

LoRA 微调本身不改变原模型大小,但通过只更新低秩参数,训练时显存需求大幅下降(全参数微调相比,显存需求少很多);推理时显存变化不明显,量化是额外手段,不是必需。


1️⃣ LoRA 微调的基本机制

LoRA 的核心公式:

image

  • 原模型权重 W 不动
  • LoRA 只新增 低秩矩阵 A/B
  • A/B 的参数量通常远小于原模型(几十倍或上百倍差距)

所以:

  • 训练时

    • 前向/反向都需要存梯度
    • 原模型梯度可冻结(freeze),只更新 A/B
    • 所以显存占用远低于全参微调
  • 推理时

    • LoRA 参数可被直接叠加在 W 或通过 PEFT Adapter 机制应用
    • 不需要梯度 → 显存几乎不增加

2️⃣ 显存占用分析

场景 显存占用情况
全参微调 原模型 + 梯度,显存需求最大
LoRA 微调(训练时) 原模型冻结,只有 A/B 参数梯度 → 显存大幅下降(通常只需原模型 1/10~1/5)
LoRA 微调(推理时) 原模型 + 小矩阵 → 基本不增加显存
LoRA + int4/int8 量化 可以进一步压缩原模型显存,但不是 LoRA 自身必须条件

核心结论:不考虑 int4/8 量化,LoRA 微调训练和推理都比全参微调显存低,但原模型本身的存储大小不会减少。


3️⃣ 小结

  • 训练时显存降低:因为冻结原模型权重,只存 LoRA A/B 的梯度
  • 推理时显存降低不明显:原模型权重仍然加载在显存,只是 LoRA 参数很小
  • 量化不是必须:显存占用降低主要是因为“只微调低秩参数”,量化只是额外压缩原模型
posted @ 2026-01-05 16:41  向着朝阳  阅读(4)  评论(0)    收藏  举报