Lora为什么没有减少多少显存

  • 在使用 PEFT(Parameter-Efficient Fine-Tuning) 方法(如 LoRA、IA³ 等)时,你可能会观察到:即使只微调了少量参数,模型的显存占用却比预期高很多。这通常是因为:
  • lora的lora.linear输出的feature map和原始的是一样大小的,而且和原始的可能要通过参数设置来融合到一起,送到后面。

计算图(Autograd Graph)依然完整构建,导致中间 feature map 无法被及时释放。

在这里插入图片描述
在这里插入图片描述

几种Freeze的设置方式

torch.no_grad

  • 不会产生计算图,这个更加节省显存

require_grad=False

  • 不一定避免计算图,只是不申请空间放grad或者不回传grad了

eval()

  • 梯度的设置上和require_grad类似,但是对于BN/Dropout的设置和training存在一定的差异
Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐