点击上方“视学算法”,选择加"星标"或“置顶

重磅干货,第一时间送达

论文标题:

ELLE: Efficient Lifelong Pre-training for Emerging Data

论文链接

https://openreview.net/forum?id=UF7a5kIdzk

代码链接

https://github.com/thunlp/ELLE

论文动机

当前的预训练语言模型(PLM)通常使用固定的、不更新的数据进行训练,但在现实世界场景中,各种来源的数据可能会不断增长,如果我们想让 PLM 同时掌握旧数据和新数据中的知识,就需要让它能够持续地整合各个来源的知识。这个目标固然可以通过对所有新老数据重新大规模训练来实现,但这样的过程太过低效和昂贵。而如果我们只让模型在新数据上进行训练,它又很容易忘记旧数据中的知识,这种现象被称为灾难性遗忘。

为此,我们提出了 ELLE 框架,旨在对新来的数据进行高效的持续预训练,让模型在快速学习来自新领域的知识的同时,不忘记已经学过的来自旧领域的知识。具体来说,ELLE 包括 (1) 维持网络功能的模型扩展,它能够灵活地扩展现有 PLM 的宽度和深度,以提高知识获取的效率;(2) 在不同领域的文本前预先加入不同的领域提示词(domain prompt),从而让模型在预训练期间更好地区分从不同领域学到的知识,在下游任务中更准确的激发相应领域的知识。我们在 BERT 和 GPT 上使用来自 5 个领域的数据来试验,结果表明 ELLE 在预训练效率和下游性能方面优于各种传统的持续学习方法。

任务类型

假设从 N 个领域(如新闻文章、商品评价和学术论文)中依次收集一个语料库构成一个数据集流:

模型需要依次在这批语料库上进行预训练,在每个语料库上,模型都只有有限的训练资源(如在特定显卡上的训练时长),且模型只有有限的记忆来保留以前语料库的少部分数据进行回忆。我们的目标是当模型在第 i 个语料库上训练完成后,不应该忘记前面 i-1 个语料库的知识。

具体方

3.1 维持网络功能的模型扩展

在实验中我们发现,小模型能力有限,容易知识饱和,即在学习新知识时容易忘记旧知识。因此,当模型完成在第 i 个语料库上的预训练并进入到下个语料库的预训练时,为了提高模型的能力和训练效率,我们采用 function preserved model expansion (FPE) 来扩展模型的宽度和深度。相比于将模型中新增的参数随机初始化,FPE 能使模型在扩展后更大程度保留原来模型的知识。具体分为三部分:

3.1.1 宽度拓展

我们使用 Bert2Bert 中的 function preserving initialization (FPI) 进行宽度拓展。FPI 在拓展 dense 层新维度时,并非随机初始化,而是随机挑选一个旧维度复制其参数,并在复制后将这些参数相同的维度同除以重复次数,以保证 dense 层输出的结果不变:

另外,我们发现新维度在复制参数后加上一些随机噪声会防止新维度学习到和旧维度太过相似的知识,从而避免冗余,加速训练。

3.1.2 深度拓展

以往的方法在扩展模型的深度时直接将小模型复制后堆叠,但这样只能拓展整数倍的深度,不够灵活。我们发现,每次随机选择还未复制过的一层,复制后插入到原来该层的后面,如(1234 -> 12234->122344),有很好的效果。这种插入不会打乱模型处理特征的顺序,也保证了每一层的功能都能得到扩展。

3.1.3 拓展后的功能恢复

由于噪声的添加和深度的拓展,上述模型扩展不能精确保证新旧模型输出完全相同,不可避免地会导致功能损失和性能下降。因此,在每次拓展后,我们会让新模型在储存了少量旧数据的 memory bank 上进行少许训练,即 function recovering warmup (FRW)。实验证明极少的训练步数就能让新模型恢复到和老模型相同的水平,且有利于防止新模型忘记旧知识。

3.2 领域提示词

为了促进模型在预训练时不同领域知识的获取和在下游任务微调时抽取对应领域的知识,我们在每个领域的文本前预先植入了一个可学习的领域提示词 (domain prompt,如<News>) 来区分领域和指导模型的学习:

当模型在每个领域对应的下游任务上微调时,我们也会在任务句子前添加对应领域的提示词。

训练细节

我们从五个领域中依次收集了五个语料库作为数据流:WikiPedia&BookCorpus (WB),News Articles (Ns), Amazon Reviews (Rev), Biomedical Papers (Bio) 和 Computer Science Papers (CS),每个语料库大小约为 17G,其中我们从每个语料库随机采样 1G 文本作为 memory。

我们分别采用 6 层,宽度为 384 的 BERT 和 GPT 模型作为初始模型,经过四次 FPE,最终变成 12 层,宽度为 768 的模型。我们在保证每个领域上预训练时间相同的情况下,和不同的持续学习基线方法进行了对比,包括基于正则的方法:EWC、MAS、A-GEM,基于回忆的方法:ER、Logit-KD;基于扩展的方法:PNN。

实验结果

我们分别比较了不同方法在预训练和下游任务上的表现。

5.1 更高效的预训练

预训练时,我们使用了两个基于 PPL 的指标:

其中 AP 体现了模型在已经训练过的领域上的整体水平,AP+表现了模型对旧知识的遗忘程度,两个指标都是越低越好。

可以看到,除了 PNN(渐进式神经网络)对遗忘旧知识免疫,我们的方法比所有基线模型都有显著提升。在更好地掌握所有领域知识的情况下,ELLE 遗忘的旧知识也最少。

5.2 下游任务

我们在每个领域上都挑选了一个对应的下游任务,分别是 MNLI (WB domain),HyperPartisan (Ns domain), Helpfulness (Rev domain), ChemProt (Bio domain), ACL-ARC (CS domain),并用不同方法预训练的 BERT 模型在这些任务上进行微调。

可以看到,在各个预训练阶段后,由于更好的记住了学过的知识,ELLE 在各个领域下游任务上的表现也显著优于其他基线方法。

总结

在本文中,我们提出了 ELLE 框架,它通过逐步扩展模型来让 PLM 有效地获取新领域地知识和避免遗忘旧领域的知识,实现高效的持续预训练。ELLE 还在不同领域的训练文本前植入不同的领域提示词,利用它们来让模型区分不同领域的知识和刺激模型提取下游任务所需的知识。实验结果表明,ELLE 在预训练效率和下游性能上均优于各种持续学习基线方法。利用 ELLE,面对源源不断出现的新领域数据,我们可以让 PLM 持续而高效地吸收它们,且最终有可能形成一个巨大的通用模型。我们也希望有更多关注高效持续预训练问题的工作出现。

点个在看 paper不断!

清华刘知远组:​让预训练语言模型持续高效吸收新领域知识 | ACL 2022相关推荐

  1. 《预训练周刊》第33期:艾伦AI研究所等 | 预训练语言模型的高效分层域适应

    No.33 智源社区 预训练组 预 训 练 研究 观点 资源 活动 关于周刊 本期周刊,我们选择了9篇预训练相关的论文,涉及词汇迁移.常识问答.多模态训练.层次训练.对比学习.图像分割.图文模型.蛋白 ...

  2. PLM是做题家吗?一文速览预训练语言模型数学推理能力新进展

    ©作者 | 张北辰 单位 | 中国人民大学高瓴人工智能学院 数学推理能力是人类智能的一项非常重要又富有挑战性的能力.尽管在各类自然语言相关的理解和生成任务等中取得了良好的效果,预训练语言模型可以准确地 ...

  3. 西湖大学蓝振忠:预训练语言模型的前沿发展趋势

    蓝振忠,西湖大学助理教授 报告 | 蓝振忠 撰文 | 沈磊贤 我的报告主题为<预训练语言模型的前沿发展趋势>,主要从以下三个方面展开: ‍1.为什么全网络预训练模型如此重要? 2.为什么语 ...

  4. 是时候“抛弃”谷歌 BERT 模型了!新型预训练语言模型问世

    作者 | XLNet Team 译者 | 孙薇 责编 | Jane 出品 | AI科技大本营(ID: rgznai100) 近日,XLNet 团队发布了新型预训练语言模型 XLNet,这个新模型在各项 ...

  5. 清华研究登Nature子刊:面向大规模预训练语言模型的参数高效微调

    ©作者 | 机器之心编辑部 来源 | 机器之心 近年来,清华大学计算机系孙茂松团队深入探索语言大模型参数高效微调方法的机理与特性,与校内其他相关团队合作完成的研究成果"面向大规模预训练语言模 ...

  6. LegalAI领域大规模预训练语言模型的整理、总结及介绍(持续更新ing…)

    诸神缄默不语-个人CSDN博文目录 最近更新日期:2023.6.26 最早更新日期:2023.6.7 文章目录 1. 通用大规模预训练语言模型 2. 对话模型 3. 分句 4. 文本分类 5. 信息抽 ...

  7. 《预训练周刊》第13期:CPM-2:大规模经济高效的预训练语言模型、变换器作为编程语言...

    No.13 智源社区 预训练组 预 训 练 研究 观点 资源 活动 关于周刊 超大规模预训练模型是当前人工智能领域研究的热点,为了帮助研究与工程人员了解这一领域的进展和资讯,智源社区整理了第13期&l ...

  8. 基于预训练语言模型的检索- 匹配式知识图谱问答系统

    基于预训练语言模型的检索- 匹配式知识图谱问答系统 张鸿志 , 李如寐,王思睿,黄江华 美团, 北京市朝阳区 100020 {zhanghongzhi03,lirumei,wangsirui,huan ...

  9. 【论文写作分析】之三《基于预训练语言模型的案件要素识别方法》

    [1] 参考论文信息   论文名称:<基于预训练语言模型的案件要素识别方法>   发布期刊:<中文信息学报>   期刊信息:CSCD   论文写作分析摘要:本文非常典型.首先网 ...

最新文章

  1. Django3.0 +Python3 连接mysql遇到django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer
  2. pyCharm 当中使用VirtualEnv
  3. arcgis api for javascipt 加载天地图、百度地图
  4. 如何用阿里云容灾服务(HDR)为本地数据中心提供极致保护...
  5. 【NLP】全面详解 | 深度学习中的注意力机制(一)
  6. 【算法】快速排序/数组第K小的元素
  7. [转载]最完整PHP.INI中文版
  8. vue+axios+qs序列化 “三步解析”【含demo实例】- 代码篇
  9. 点击锚点链接时页面滚动的特效(Javascript Smooth Scroll)
  10. 面向机器学习的特征工程 七、非线性特征提取和模型堆叠
  11. [Linux]Linux系统调用列表
  12. MRFC-概念与功能
  13. 如何成功安装旧版本火狐,成功安装firebug和firepath插件
  14. mysql基于SpringBoot的“1818小酒馆”商城网站的设计与实现毕业设计源码192004
  15. NLP数据标注常用工具汇总
  16. ubuntu mysql卸载教程_ubuntu下安装mysql及卸载mysql详细教程/方法
  17. Java—企业微信网页版登陆认证详解
  18. The program 'roscore' is currently not installed. You can install it by typing: sudo apt install pyt
  19. 析构之后:万物重生! 小岚Rabbit_Radish(兔仔_萝卜)
  20. Launching app Install failed. Installation failed <a href=‘rerun‘>Rerun</a>

热门文章

  1. UITextView高度根据内容变化
  2. IOS问题汇总:2012-12-18 UIAlertView+UIActionSheet
  3. .NET判断字符串是否是数值型或xxx型
  4. ORB 特征检测与匹配
  5. 【Python】SyntaxError: unexpected EOF while parsing
  6. 【HDU】1305 Immediate Decodability(字典树:结构体数组,二维数组,链表/指针)
  7. AIoT的发展路上,英特尔如何通过边缘计算掀起产业变革
  8. 2021版Java知识体系详解!(赠视频)
  9. 反向R?削弱显著特征为细粒度分类带来提升 | AAAI 2020
  10. Cascade RPN,结构的艺术带来极致提升 | NeurIPS 2019