0%

论文阅读 [粗读]-BitFit: Simple Parameter-efficient Fine-tuning for Transformer-based Masked Language-models

这一篇工作和前两篇是另一种思路,对模型结构不做任何改变,只是在 fine-tune 时改变一点点参数:bias

ACL 2022 的短文,方法其实就没啥,但揭示出来的道理不少。

方法

作者把 BERT 模型中所有的 bias 进行训练

  • attention 中的 qkv 矩阵里的 bias
  • feed-forward 层中的 bias

同时剩下的参数全部锁定,在下游任务上做 fine-tune

实验

可以看出,在下游任务上 BitFit 和正常 Fine-tune 比并不差

有意思的是,作者又做了几个实验

所有 bias 的重要性对比

作者观察了不同的 bias 类型的训练后改变的差值,发现:

  • key bias 基本不变
  • query bias 和 intermediate bias 改变很多

感觉这一点还有很多可挖掘的地方?但作者并没有进一步分析原因

随机

作者试着随机选择模型的一些参数,和 bias 数量一致,结果发现

  • 随机选其实效果也还行
  • 如果选择连着的行或者列的元素,表现会更好。但是选 bias 是最特殊的

少数据

类似的,作者也发现 BitFit 在少数据中表现更好

我的思考

这个文章就更简单,但相比于方法,我对文章中提到的一个观点更感兴趣:

fine-tune 的过程不是让模型适应另外的数据分布,而是让模型更好的应用出本身的表征能力

另外,作者没有提到的小细节我觉得可以引发很多思考:

  • 随机选模型的 0.01% 的参数进行 fine-tune,也能达到全参数 fine-tune 的大概 99% 的效果
Powered By Valine
v1.5.2