只微调 value bias:这篇 ACL 论文用 0.01% 参数在低数据上追平 LoRA

2026-08-12

attention 里只有 value bias 值得微调(key bias 因 softmax 平移不变性是空操作);只调它用 0.01% 参数,在低数据上追平 LoRA。

这篇在解决什么

参数高效微调(PEFT)这条线已经有 LoRA、prefix tuning、adapter 一堆方案,它们都在解决同一个问题:全量微调一个预训练模型太贵,能不能只动一小部分参数就把下游任务做好。

偏置微调(bias-only fine-tuning)是其中最朴素的一支。代表方法 BitFit(Zaken et al., 2022)只更新模型里所有的偏置项,在低数据场景下能追平全量微调,而且不用引入任何额外的重参数化结构,拿来即用。问题是:Transformer 的 attention 模块里有三组偏置,分别挂在 query、key、value 三个投影上(bq、bk、bv)。这三组偏置对下游性能的贡献是不是一样?此前没人说清楚。BitFit 直接全微调,等于默认它们等价;而已有的「该选哪些偏置」的判据,只看偏置变化幅度、或者用 Fisher 信息,给出的结论还互相打架,且和实测对不上。

这篇论文把这个问题钉死了。

方法

这个结论可以直接从 attention 的数学推出来。attention 的核心是 softmax(QK^T/√d)·V,Q/K/V 分别由输入乘权重矩阵再加偏置得到。把三组偏置逐一代入,会看到三种完全不同的命运:

这套推导把「该微调哪个偏置」从经验问题变成了可证明的问题:动 bv。

为了让结论不只停留在直觉,作者还提了一个度量偏置变化的方法。BitFit 只看偏置变化的大小(magnitude),得出的结论是 bq 变得比 bv 多,这和「bv 效果更好」的实测矛盾。作者在幅度之外加上方向(angular change):把微调前后的偏置做投影再归一化,同时考虑变了多少、往哪个方向变。用这个度量给三组偏置排序,稳定是 bv > bq > bk,而且会随数据量变化动态调整(数据越多,bv 和 bq 的差距越小),和性能曲线吻合。Magnitude 方法始终错选 bq,Fisher 方法的排序是静态的,新度量把这两个毛病都修掉了。

不过要注意:这套度量是用来「发现」结论的工具,最终落地的做法不需要它,也不用任何事后评估,直接微调 bv 就行。

结果

主实验在 BERTBASE 上跑 GLUE,分低/中/高三档数据量。低数据档(如 SST-2 用 1000 条)的 GLUE 平均分:bv 64.5%、bq 57.8%、bk 53.5%。bk 在 CoLA 上只有 6.5%,在 QQP 中等数据档直接是 0.00,基本坍塌成随机,和「空操作」的预测一致。

设置(bv / bq / bk)SST-2CoLAGLUE 平均
BERTBASE 低数据85.8 / 80.0 / 77.243.2 / 30.8 / 6.564.5 / 57.8 / 53.5

参数效率是另一个看点。在 RTE 低数据上,只微调 bv 只要 0.01% 的参数,全 bias 微调(BitFit)要 0.09%(约 9 倍),全量微调是 100%。运行时间上 BEFT 132.9 秒,全 bias 144.9 秒,全量 206.1 秒。同样只动 0.01% 参数但随机选偏置,只有 50.4 分,远低于 BEFT 的 58.5 分,证明起作用的是选对 bv,参数少本身解释不了这个差距。

扩展性上结论一致。换到 OPT-1.3B / 6.7B 这类自回归模型,GLUE、SuperGLUE、SQuAD、DROP 上 bv 稳定优于 bq、bk,且和 LoRA、prefix tuning 打平,参数量只有 LoRA 的 1/30、prefix 的 1/10。比如 OPT-1.3B 在 SST-2 上 bv 拿 93.1 分,LoRA 93.6 分,差 0.5 分但参数少 30 倍。对 LLaMA2-7B 这种 attention 里本来就没有偏置的「无偏模型」,手动往里加一组 bv 再只微调它,SST-2 上 94.9 分、SQuAD 89.4 分,和 LoRA 的 95.6 / 90.4 基本同档,参数仍少 30 倍。bv 还能直接塞进 LoRA/VeRA/DoRA:SST-2 上 bv+LoRA 85.0 分 > bq+LoRA 82.6 > bk+LoRA 76.9。统计显著性也过了,配对 t 检验 p < 0.05,SST-2 跑 10 个种子时 p = 1.44×10⁻⁶。

为什么重要

对从业者来说,这是一个拿来即用、几乎零配置的低数据微调开关。BitFit 本来就以「不用重参数化」著称,这篇进一步告诉你连微调全部偏置都不必,只挑 value bias 就够。在标注数据只有几百到一千条、又不想引入 LoRA 那套秩和 alpha 配置的场景下,比如垂直领域的分类、少量样本的领域适配,bv-only 是一个参数更少、调起来更简单的选项。

它也是一份对 attention 内部结构的解释性工作,把「偏置该放哪」从实验试错提升到了可证明的结论。这和同期 gated attention 研究「门控放在 value 投影之后最有效」的发现互相印证,说明 value 这条通路确实是 attention 里表达力最宽的出口。

局限与存疑

作者自己列了三条:只覆盖标准 softmax attention,没碰 linear attention;只分析了 attention 的 q/k/v 投影,没管 LayerNorm(现在有 DyT 等方案在替代它)和 FFN(也有低维非线性映射想替代它);没有讨论偏置对超叠加(superposition)和 scaling law 的影响。

读完之后还有几点值得保留意见。第一,这是个低数据的故事:随数据量增大,bv 对 bq 的优势在收窄(SST-2 高数据档 bv 88.1 对 bq 85.8,差距比低数据档小得多)。数据充足时直接全量微调或上 LoRA,bv-only 的边际好处不大。第二,评测集中在 GLUE/SuperGLUE 分类加少量 QA,BERT、OPT-1.3B 这类基座也偏老,没有在当代指令或对话模型、真实生成任务上验证,它的实际效用能不能外推到现在的 LLM 微调实践,还得打个问号。第三,bk 是空操作这件事,严格说只是「对 attention 权重没有贡献」,实验里 bk 那点残值来自分类头本身被训练,这点论文没有特别强调,容易让人误以为 bk 还有一点点用。

术语

原文与代码

社区讨论

全部论文解读