作者 | 灰墙 编辑 | NewBeeNLP
这些天冲浪?了一下Arxiv,粗翻了一下二月之后public的NLP文章(有很大一部分是准备投ICML的)。也拜读了张驰原dalao的新作《Exploring the Memorization-Generalization Continuum in Deep Learning》(实验真的做的很漂亮,但感觉有点 data-special 不知道能不能推广到 NLP)。
今天来讨论一下段楠老师和周明老师的这篇《K-Adapter: Infusing Knowledge into Pre-Trained Models with Adapters》[1]
为了讲清楚这篇文章,我们先来看下什么是Adapter
来自论文:Parameter-Efficient Transfer Learning for NLP. ICML 2019.[2]
在这个large pre-trained模型盛行的时代,Fine-tune可谓是再正常不过的操作。但实际上 Fine-tune 是一个代价很大的操作,虽然它一般能带来很好的效果。
试想一下,虽然我们用了 Adam 来随机采样一些 train data 来估计全局的梯度,用了很小的 lr.但实际上在每一个 batch 中,对于庞大的预训练模型的每一个参数我们都需要更新。每一个 epoch, 还得存储所有被更新的参数, 完全没有复用性, 这是很低效的。对于低资源的移动端或者高用户特异性的服务提供商 Pass, 这个问题尤为突出。
除了这一点之外:
于是一个很直观的想法, 能不能把最后的 task-special layer 放到模型中间,然后冻住预训练模型参数.
)
在模型的最后一层接一个线性层, 在分类任务 GLUE 和一些额外的分类任务上测试,基本上结果很接近 Fine-tune 的结果.
当然只在比较简单的 Classify Task 上测试, 说服力没有那么强。
既然两者结果很接近 是不是 Fine-tune 实际上并不需要更新那么多参数也能有那么好的结果呢?
这部分对比两个 baseline:
实际上,我们一口气给 24(BERT large)个 Transformer Layer 都加上了 Adapter, 那是不是每一个 Adapter 都很重要?
上述 Ablation 实验结果,我们可以发现:
除此之外,还测试了
等等修改,但是发现结果基本没有影响
来自论文:BERT and PALs: Projected Attention Layers for Efficient Adaptation in Multi-Task Learning.ICML 2019.[3]
同期还有一篇工作也是想尽可能减少 Fine-tune 时参数的更新量, 其将 Task-special Layer 移至 Transformer 两个 LN 之间。
通过先投影到到一个小维度,再连接 Attention 或者其他结构来完成 Fine-tune 的任务.
CS224n 2019 Final Project[4]中有两位同学对上述两种方法在 SQuAD 2.0 上做了相应的测试, 结果显示 PALs 结果掉的有点多, 而 Adapter-BERT 结果很接近 Fine-tune 结果.
而这篇文章更侧重于改进预训练过程中 Multi-task 这个过程
所以针对上述问题,本文提出了一个 Adapter-based 的模型来解决上述问题.
通过并行的 Adapter 层来获得不同类型的知识信息,最后通过 concatenate 来输出,互不影响.
实验对比了最近提出的一些列将知识融入预训练模型的方法.
相对于之前那篇 Adapter-BERT, 这篇的实验设计更能说明学习到知识的能力,实验结果也好于之前的工作(原先只是想接近 Fine-tune, 现在是超越)
「1、细粒度实体类型预测」
细粒度对于学习到词的表征要求提高了不少,需要模型能分辨出上下文结构对词义造成的差异.
在Entity周围加上@来表示边界。
「2、常识 QA 和开放域 QA」
印象里,RoREATa 在常识问答中比 BERT Large 能高 10 多个点,对比 Multi-task 的结果虽然提升不是很大,但还是有明显的提升.
「3、关系分类」
问答中在head entity周围加上@来表示边界,tail entity周围加上#
「4、刺探实验: LAMA(常识性填空问答)」
虽然比 RoBERTa 提升明显,但结果低于 BERT Large. 文中解释到, 主要是因为 RoBERTa 使用 byte-level 的 BPE, 而 BERT 使用 char-level 的 BPE.(但为什么之前都都好,就只有这个任务上会)
[1]
K-Adapter: Infusing Knowledge into Pre-Trained Models with Adapters: http://xxx.itp.ac.cn/abs/2002.01808
[2]
Parameter-Efficient Transfer Learning for NLP. ICML 2019.: https://arxiv.org/abs/1902.00751
[3]
BERT and PALs: Projected Attention Layers for Efficient Adaptation in Multi-Task Learning.ICML 2019.: https://arxiv.org/abs/1902.02671
[4]
CS224n 2019 Final Project: http://web.stanford.edu/class/cs224n/reports/default/15848417.pdf
[5]
ERNIE: https://arxiv.org/abs/1905.07129
[6]
LIBERT: https://arxiv.org/abs/1909.02339
[7]
SenseBERT: https://arxiv.org/abs/1908.05646
[8]
KnowBERT: https://arxiv.org/abs/1909.04164
[9]
WKLM: https://arxiv.org/abs/1912.09637
[10]
BERT-MK: https://arxiv.org/abs/1912.00147
- END -