onpostexecute 中更新adapter 事变_2020|通过知识适配器向预训练模型中注入知识

K-Adapter是一种向预训练模型(如RoBERTa)注入知识的方法,通过知识特定的适配器,允许持续学习且不破坏原始表示。论文提出两种类型的适配器:Factual Adapter用于事实知识(基于Wikipedia和Wikidata),Linguistic Adapter用于语言学知识(基于依存分析)。实验显示,K-Adapter在捕获事实和常识知识方面优于RoBERTa。
摘要由CSDN通过智能技术生成

d8ebed1dba9f2072860b30f88cd69227.png

Title: K-ADAPTER: Infusing Knowledge into Pre-Trained Models with Adapters

K-Adapter: Infusing Knowledge into Pre-Trained Models with Adapters​arxiv.org
Org.: MSRA, Fudan University. Publish: 2020, unpublished.

1. Motivation

本文研究问题:向大型预训练(语言)模型中注入知识。

尽管预训练模型(GPT、BERT、XLNET等模型)取得了很大的进展,最近的一些研究[1][2][3]表明,以无监督方式训练的语言模型很难捕获丰富的知识;

先前的工作[4][5][6][7][8][9]主要集中与通过设计 knowledge-driven 的训练目标来增强standard LM的训练目标,然后通过多任务学习的方式更新模型的全部参数;

这样的方式存在几点限制:

1无法进行终身学习(continual learning)

  • 模型的参数在引入新知识的时候需要重新训练
  • 对于已经学到的知识来说,会造成灾难性遗忘(catastrophic forgetting);

2模型产生的是耦合的表示(entangled representations)

  • 为进一步探究引入不同知识的作用/影响带来困难;

Note:这篇文章中Related Work部分对于向PLM中注入知识这一方向进行了很好的梳理,推荐阅读原文Sec. 2,相关工作的区别主要在于 a) knowledge sourcesb) training objective

8d260666ff0e1b5385c86e763c076893.png
Table-1:K-Adapter 和 先前工作的对比

2. This Work

基于上述问题,本文提出了 K-Adapter,一种灵活、简便的向PLM中注入知识的方法,可以进行持续知识融合以及产生解耦的表示,保留了PLM产生的原始表示,可以引入多种知识;

Adapter:可以看做是一个 knowledge-specific 模型,可以作为一个插件,加在PLM外部,输入包含PLM中间层输出的隐状态,一种知识类型对应于一个Adapter,一个PLM可以连接多个Adapter;

本文引入的知识类型(具体引入知识的任务形式,在模型部分进行介绍):

  • factual knowledge,将Wikipedia文本对齐到Wikidata三元组;
  • linguistic knowledge,对web文本进行依存分析得到;

本文贡献:提出了一个K-Adapter模型;

  • 通过知识适配器可以同时引入factual knowledge和linguistic knowledge;
  • 相应地,最终的模型包含一个PLM和两个Adapter;
  • 在下游任务(包含),以及在LAMA上的实验表明,与RoBERTa相比,K-Adapter 可以捕获更丰富的factual和commonsense知识;

本文工作与先前工作的3个不同之处:

  1. 同时考虑了fact-related和linguistic-related的目标函数(为了同时引入两种类型的知识);
  2. 在注入知识的过程中,原始的PLM参数没有变化;
  3. 可以支持持续学习,不同的知识适配器的学习是解耦的(独立的),后续再加入知识不会对已加入的知识产生影响;

3. K-ADAPTER

本文中的PLM使用RoBERTa;
图:(a) 基于多任务学习向PLM引入知识的框架,(b) 本文通过知识适配器引入知识的框架;

b7ca9131813556e6e248a4ca16cc20bf.png

3.1 Adapter结构

Adapter的内部结构如下图所示:

0b21714ee5bb5a68ce124378a4b2322b.png

每个Adapter模型包含K个adapter层,每个adapter层包含:

  • N 个transformer层;
  • 2 个映射层;
  • 1 个残差连接;

与PLM的连接位置:将adapter层连接到PLM中不同的transformer层上;

与PLM的连接方式

  • 当前adapter层的输入:a) transformer层输出的隐藏层,b) 前一个adapter层的输出,这两个表示进行concat;
  • Adapter模型的输出:a) PLM最后一层的隐藏层输出,和 b) 最后一个adapter层的输出,进行concat作为最终的输出;

预训练-微调阶段:

  • 不同的Adapter在不同的预训练任务上分别进行训练;
  • 对于不同的下游任务,K-Adapter采用和RoBERTa相同的微调方式;
    • 只使用一种Adapter时,Adapter模型的最终输出作为task-specific层的输入;
    • 使用多种Adapter时,将多个Adapter模型的输出进行concat作为task-specific层的输入;

预训练设置:

  • 使用RoBERTa-Large模型,335M参数;
  • adapter层中的transformer层数
    equation?tex=N%3D2 ,维度
    equation?tex=H_A%3D768 ,self-attention heads
    equation?tex=A_A+%3D+12
  • adapter层中的两个映射层维度分别是 1024 和 768;
  • adapter层连接在RoBERTa模型的
    equation?tex=%5C%7B0%2C11%2C23%5C%7D 层上;
  • 不同的adapter层之间不共享参数;
  • Adapter模型参数量:42M;

3.2 Factual Adapter

Factual Knowledge 主要来源于文本中实体之间的关系;

数据集:T-REx,将Wikipedia摘要和wikidata三元组进行了对齐;

数据集规模:5.5M句子,430种关系;

FacAdapter的预训练任务:关系分类,给定context和一对实体,对其间关系标签进行分类;

预训练任务相关的模块:引入了pooling层;

FacAdapter的参数随机初始化;

3.3 Linguistic Adapter

Linguistic Knowledge 主要来源于文本中词之间的依存关系;

数据集:BookCorpus,利用Standford Parser进行处理;

数据集规模:1M;

LinAdapter的预训练任务:依存关系分类,预测给定句子中每个token在依存分析结果中的father index;

预训练任务相关的模块:引入了pooling层;

LinAdapter的参数随机初始化;

4. Experiments

在三类下游任务上验证K-Adapter的性能:a) relation classification,b) entity typing,c) question answer;

主要关注在QA任务上的结果;

1e53f747e17dc7d3bf141bb2eed02b1d.png

针对LAMA query的生成(预测被Mask位置的词)结果;

d45c7b5ea2aafbc2ae4a623a6aa0f532.png

5. Summary & Analysis

  • 目前这版的K-Adapter模型,在融合多种知识的adapter产生表示上的方法比较heuristic
  • RoBERTa自身已经具备很强的general 语言知识/语言学知识,LinAdapter对于下游任务的提升并不明显,额外引入的知识和PLM自身的知识有复合的部分。
  • 两个训练K-Adapter的任务,是否适用于学到事实型知识和语言学知识?
  • 如何针对不同的知识设计不同的学习/预训练任务?

参考

  1. ^BERT is Not a Knowledge Base (Yet): Factual Knowledge vs. Name-Based Reasoning in Unsupervised QA. arXiv preprint arXiv:1911.03681, 2019.
  2. ^Negated LAMA: Birds cannot fly. arXiv preprint arXiv:1911.03343, 2019.
  3. ^oLMpics On what Language Model Pre-training Captures. arXiv preprint arXiv:1912.13283, 2019.
  4. ^ERNIE: Enhanced Language Representation with Informative Entities. In ACL, pp. 1441–1451, 2019.
  5. ^Informing unsupervised pretraining with external linguistic knowledge. arXiv preprint arXiv:1909.02339, 2019.
  6. ^Sensebert: Driving some sense into bert. arXiv preprint arXiv:1908.05646, 2019.
  7. ^Knowledge enhanced contextual word representations. In EMNLP, pp. 43–54, 2019.
  8. ^Integrating Graph Contextualized Knowledge into Pre-trained Language Models. In AAAI, 2020.
  9. ^Pretrained Encyclopedia: Weakly Supervised Knowledge-Pretrained Language Model. In ICLR, 2020.
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值