这是一个很自然的直觉,但结论恰恰相反:LoRA 改变的参数量少,并不等于微调的作用小。 这里有几个关键点需要拆开来看。
LoRA 通常只训练原模型参数的 0.1%–1% 左右,但它的作用可以非常大。原因在于:
打个比方:一辆车的发动机很强大,但你只需要轻轻转动方向盘(很小的参数变化),就能让它从直行变成转弯。方向盘的角度变化很小,但作用不小。
预训练模型确实已经很强,但它的强是通用能力。微调的作用通常不是教它全新的知识,而是:
这些变化不需要改动大部分参数,因为能力本身已经存在,只是需要被引导到正确的方向。LoRA 正是在做这种“引导”。
LoRA 背后的核心假设是:微调时权重的更新量 ΔW 具有低内在秩。也就是说,虽然 W 很大,但完成特定任务所需要的调整方向并不多。
这个假设在实验中得到了广泛验证。很多任务上,LoRA 用极少的参数就能达到甚至接近全量微调的效果。这说明:
大模型的能力不是靠微调“重新学出来”的,而是靠预训练“已经学好了”,微调只是选择性地激活和组合这些能力。
说“LoRA 作用很大”也不意味着它能替代所有全量微调。它的局限包括:
所以在实践中,LoRA 往往用于指令微调、风格对齐、领域轻量适应等场景;而需要深度改造模型时,仍可能选择全量微调或其他方法。
可以把预训练模型想象成一个已经读过海量书籍、具备广泛推理能力的人。微调不是让他重新上学,而是:
这些“叮嘱”本身信息量不大,但能显著改变他的表现。LoRA 就是把这些“叮嘱”编码成一小组参数,挂在原模型上。
所以,LoRA 改变参数少,不是因为微调作用小,而是因为大模型本身太强、太冗余,以至于少量精准的调整就能产生很大的效果。
评论专区
评论加载中...登录后即可发表评论