Motivation

        之前的预训练模型大多是在Transformer模型输出时,加入Multi-Task,通过大量语料无监督预训练,提取到文本中的某种"知识"。如Bert中的Mask Token Prediction 和 Next Sentence Prediction任务。但上述方法有一个明显的缺点,即在每次需要添加某种新的"知识"时,又需要重新预训练整个模型,这可能会导致之前"知识"的遗忘。

        本文将固定住前面的BackBone部分,即Roberta模型的参数不微调。对每一种"知识"定义一种新的Adapter,并定义不同的预训练任务,每次训练对应的Adapter。这样每种"知识"都可以通过其对应的Adapter学习到。

[论文阅读笔记 --- 12] K-ADAPTER: Infusing Knowledge into Pre-Trained Models with Adapters
模型结构

Experiments

Adapter结构如下

[论文阅读笔记 --- 12] K-ADAPTER: Infusing Knowledge into Pre-Trained Models with Adapters
Adapter

Adapter Layer由三部分组成,包括一个全连接层 + N层Transformer Encoder Layer + 一个全连接层。

将Roberta除最后一层以外的每一层的输出,传给Adapter对应的层,(即M层Transformer Layer,则存在K层Adapter Layder)。

对于单个Adapter的情况,最后将Roberta 最后一层的特征与Adapter最后一层的特征拼接,传给预训练任务。

而对于多个Adapter的情况,以两个为例,将Roberta 最后一层的特征与Adapter1和Adapter2的最后一层的特征拼接,传给预训练任务。

实验时,采用N = 2, M = 24, K = {0, 11, 23},可能是每一层或每两层Roberta Transformer Layer过一层Adapter Layer。

文中定义了两种不同的Adapter: 

  • Factual Adapter: 在T-REx的数据集上预训练。关系分类任务,输入为句子,输出为整个句子的特征(由Roberta 最后一层的特征和Adapter最后一层的特征拼接而成)。取出其中给定的两个的entity的特征,并过一层pooling layer,最后拼接两个entity的特征,并执行Relation Classification任务。
  • Linguistic Adapter: 预训练任务,dependency relation prediction,即预测给定句子中每一个单词的父节点位置,输入为句子,输出为整个句子的特征(由Roberta 最后一层的特征和Adapter最后一层的特征拼接而成)。对于每一个单词的特征,接一个线性层,完成多分类任务。

相关文章:

  • 2021-04-26
  • 2021-09-09
  • 2021-04-27
  • 2021-12-23
  • 2021-07-15
  • 2021-10-29
  • 2021-09-05
  • 2022-12-23
猜你喜欢
  • 2021-09-06
  • 2022-02-19
  • 2021-10-17
  • 2021-11-21
  • 2021-06-27
  • 2021-07-16
  • 2021-10-30
相关资源
相似解决方案