LoRA 低秩微调
把一个几百亿参数的大模型微调到你的新任务上,如果每个权重都更新,既费显存又费时间,还得为每个任务存一整份模型。LoRA 的巧思是:把原来的大权重矩阵冻住完全不动,只在旁边训练一个“低秩补丁”——用两个又瘦又长的小矩阵 A、B 相乘得到一个修正量 ΔW = A·B,加到原权重上。因为 A、B 很小,要训练的参数从 d×d 骤降到 2×d×r(r 很小,比如 4、8)。一个几 GB 的模型,补丁可能只有几 MB。拖动维度和秩,看要训练的参数少了多少。
灰=冻结的原权重 W(不训练),蓝=要训练的小矩阵 A、B。它俩相乘得到金色的修正 ΔW,加到 W 上。真正训练的只有蓝色那点。
冻结原权重
大矩阵 W 一个数都不改,省去对它求梯度、存优化器状态的开销。
只训低秩补丁
用两个瘦长矩阵 A·B 表达修正,参数从 d² 降到 2dr——常常省 99% 以上。
一基座多补丁
不同任务训不同的小补丁、共用同一个大模型,切换任务只换补丁,几 MB 而已。