英语原文共 14 页,剩余内容已隐藏,支付完成后下载完整资料
有限记忆下的高效元终身学习
摘要:
当前的自然语言处理模型在单个任务上工作得很好,但它们往往无法在终生重新训练的过程中不断学习新任务而不忘记以前的任务,这是一种被称为终身学习的挑战。最先进的终身语言学习方法将过去的例子存储在情景记忆中,并在训练和推理时重放它们。然而,正如我们在后面的实验中所展示的,有三个显著的障碍:(1)需要不切实际的大内存模块来实现良好的性能,(2)出现负迁移,(3)每个测试示例需要多个局部自适应步骤,这会显著降低推理速度。在本文中,我们确定了终身学习方法的三个共同原则,并提出了一个有效的元终身框架,以协同方式将它们结合起来。为了达到样本效率,我们的方法训练模型的方式是学习更好的初始化,以便进行局部自适应。在文本分类和问答基准测试上的大量实验证明了我们的框架的有效性,只需使用1%的内存大小即可实现最先进的性能,并通过多任务学习缩小了差距。我们进一步证明,我们的方法同时缓解了灾难性遗忘和负迁移。
- 简介
人类一生都在学习,通过利用过去的经验快速适应新环境并获得新技能,同时保留旧技能并不断积累知识。然而,最先进的机器学习模型依赖于数据分布是固定的,在这种终身学习环境中难以学习不同的任务(Parisi等人,2019年)(正式定义见第2节)。特别是,他们既不能有效地重用以前获得的知识来帮助学习新任务,也不能在学习新任务时忘记以前的技能。这两种现象分别被称为负迁移(Wang等人,2019年)和灾难性遗忘(McCloskey和Cohen,1989年)。这些缺点限制了现有模型在动态演化的现实环境中的应用。由于其潜在的实际应用,人们对终身学习的研究兴趣激增,尤其是在视觉领域(Rusu等人,2016年;Kirkpatrick等人,2017年;Zenke等人,2017年;Lopez Paz and Ranzato,2017年;Y oon等人,2018年;Sprechmann等人,2018年;Chaudhry等人,2019年)。然而,它在语言学习中的应用研究相对较少。虽然大规模无监督预训练(Devlin等人,2019年;Radford等人,2019年;Liu等人,2019年;Yang等人,2019年;Raffel等人,2020年)的进展最近推动了自然语言处理(NLP)领域的重大进展,这些模型需要大量领域内的培训数据,在接受新任务培训时容易发生灾难性遗忘(Y ogatama et al.,2019),妨碍了它们在工业或其他不断出现新任务/领域的现实环境中的部署。实现终身学习的一个成功方法是使用情景记忆模块增强学习模型(Sprechmann et al.,2018)。其基本思想是,首先将之前看到的训练示例存储在内存中,然后在训练新任务时使用它们进行经验回放(Rolnick et al.,2019)或导出优化约束(Lopez Paz and Ranzato,2017;Chaudhry et al.,2019)。最近,dAutume等人(2019年)提议使用这种记忆模块在语言领域进行稀疏体验重放和局部适应,在文本分类和问答任务方面实现最先进的终身学习成果。尽管该方法取得了成功,但它有三个关键的缺点,我们将在稍后的实验中演示:
bull; 它需要一个不切实际的大内存模块,即存储所有培训示例,以实现最佳性能。
bull; 虽然该模型可以缓解灾难性遗忘,但其局部适应步骤容易出现负迁移,因此在没有任何终身学习规则的情况下,它在最近的任务中的表现比原始基线更差。
bull; 由于每个测试示例都需要大量的局部适应步骤,因此其推理速度非常慢。
在本文中,我们解决了这些局限性,并解决了有效的终身语言学习问题。也就是说,我们专注于在内存中存储有限的训练示例。我们的贡献有三个方面:首先,我们确定了终身学习方法的三个共同原则。我们试图在语言学习中描述它们的特点,并收集关于现有方法被忽视的缺点的见解。其次,基于这一分析,我们提出了一个统一这三个原则的元终身框架。我们的方法是dAutume等人(2019)的直接扩展,它明确地元学习模型,作为更好的局部适应初始化。最后,我们进行了大量实验,以证明我们提出的方法可以使用确定的三个原则来实现有效的终身语言学习。我们发现,我们的框架比以前的方法性能更好,同时使用的内存存储量减少了100倍。此外,我们还证明了我们的方法可以有效地缓解灾难性遗忘和负迁移,缩小了与多任务学习上限的性能差距。它还可能获得22倍更快的推理速度。
2 背景:终身语言学习的原则
在之前的工作(dAutume et al.,2019)之后,我们考虑了终身学习环境,其中模型需要通过一系列没有任务描述符的培训示例,按顺序学习多个任务,也就是说,模型不知道示例在培训和测试期间来自哪个任务。这种设置在实践中无处不在,因为环境不断演化,而不发送明确的信号。形式上,在训练期间,该模型对训练示例流进行单次传递,该训练示例流由N个任务组成,按顺序排列,Dtrain={D1train,····,DNtrain},其中Dttrain={(xit,yit)}nti =1来自第t个任务的特定任务分布Pt(X,Y)。总的来说,目标是学习预测因子ftheta;:X→ Y例如神经网络,由theta;参数化isin; RP,将所有N项任务的平均预期风险降至最低:
l是具体的任务损失。请注意,虽然平均风险通常在模型看到所有任务后进行评估,但我们也可以在不同阶段评估特定任务,以展示模型的训练行为,并评估其对灾难性遗忘和负迁移的稳固性。
虽然已经开发了不同的方法来优化等式(1),但我们从它们的具体假设中抽象出来,而是专注于确定共同原则,其中我们强调以下三点与语言学习最相关:
通用表示法。源于转移学习(Weiss等人,2016;Ganin和Lempitsky,2015),跨不同任务转移知识的一个关键想法是学习一种通用表示法(如神经网络编码器),该表示法能够对所有任务的有用信息进行编码。例如,基于正规化的终身学习方法(Kirkpatrick等人,2017年;Zenke等人,2017年;Schwarz等人,2018年;Chaudhry等人,2019年)增加了一个额外的约束,以防止在培训新任务时模型参数theta;急剧偏离,从而学习旧任务的通用模型。在语言领域,由于语言模型已被证明能够成功地为许多语言理解任务生成高度通用的表示(Y ogatama et al.,2019;Raffel et al.,2020),dAutume et al.(2019)和Sun et al.(2020)都提议使用预训练语言模型(Devlin et al.,2019;Radford et al.,2019)来初始化参数,并进一步在Dtrain上训练模型。
体验排练。受互补学习系统(CLS)理论(McClelland et al.,1995)的启发,即人类依赖情景式537记忆来存储过去的经验并进行经验排练,我们还可以针对之前看到的任务重新训练终身学习模型,以减少遗忘。虽然之前的方法使用内存来定义优化约束(Lopez Paz和Ranzato,2017;Chaudhry等人,2019;Sodhani等人,2020),但最近的工作使用存储的示例(Sprechmann等人,2018)或生成的合成数据(Shin等人,2017;Sun等人,2020)来执行经验回放。此外,dAutume等人(2019年)表明,学习新例子的重放率只有1%,这足以实现终身语言学习。
特定于任务的微调。在多任务学习中,注入特定于任务的参数并对单个任务进行微调已被证明对不同的语言理解任务(Houlsby等人,2019年)甚至多种语言(Bapna和Firat,2019年)有效。之前的工作(Rusu等人,2016年;Y oon等人,2018年)利用这一想法扩展了终身学习环境中新任务的模型参数。然而,所有这些方法都需要一个任务描述符,以便知道何时添加新参数。当不存在此类信号时,局部自适应(Sprechmann et al.,2018)使用每个测试示例的K个存储最近邻,在推理时执行额外的微调。最近的研究(dAutume et al.,2019;Khandelwal et al.,2020)表明,预训练模型产生的句子嵌入可用于有效测量查询相似性,局部自适应可提高文本分类、问答和语言建模的性能。
3 拟议框架
考虑到这些原则,我们接下来将讨论如何实现高效的终身学习。为了激励我们提出的框架,我们首先回顾了最先进的方法,即改进的MbPA(drsquo;Autume等人,2019),并展示了这些原则如何帮助我们识别局限性。
3.1基于模型的参数自适应
一个值得注意的例子是,最近的一项工作(Sprechmann等人,2018年;dAutume等人,2019年;Khandelwal等人,2020年)成功地将情景记忆模块用作一般语言推理的关键构建块。具体而言,改进的基于模型的参数自适应(MbPA )(drsquo;Autume et al.,2019)由三个主要组件组成:(i)预测网络ftheta;,(ii)关键网络gphi;,以及(iii)记忆模块M。最终目标是训练ftheta;,以便在所有任务中都能很好地概括,如等式(1)所示。为了学习通用表示法,MbPA 使用任何最先进的文本编码器(如BERT)来初始化预测网络ftheta;和关键网络gphi;。在每个时间步,模型都会收到一个训练示例(xit,yit)isin; 通过优化任务损失来训练和更新参数theta;:
为了确定是否应该将训练示例添加到内存模块M中,以预设的概率绘制一个伯努利随机变量,用于控制内存大小。
对于体验排练,根据重播示例与学习新示例的设定比率,随机选择M的子集S(即,针对每个ntr培训示例重新访问nre示例)。为了避免灾难性遗忘,该模型随后更新以下重播损失,以使theta;适应所看到的任务:
在推理时,在训练期间固定的密钥网络gphi;用于将示例输入编码为密钥,以获得第i个测试示例xi的K最近邻上下文Nxi。L然后执行局部自适应梯度更新,以实现以下目标的特定任务微调:
其中lambda;l是一个超参数。然后,使用预测网络f〜theta;i输出第i个测试示例的最终预测。
尽管MbPA 非常有效,但它的性能提高是以大内存存储和较慢的推理速度为代价的。这种效率低下的根源在于该方法的非协同性质——这三个原则是独立执行的,没有密切的相互作用。特别是:(i)学习到的通用表示没有针对局部自适应进行优化,因此需要更多的步骤来实现稳健的性能;(ii)随机选择内存模块,缺乏有效减小其大小的系统选择方法,(iii)对于每个测试示例,局部自适应只利用几个邻居,因此当内存较小时,容易出现过度拟合和负迁移。
3.2协同元终身框架
我们注意到MbPA 中的培训和测试之间存在差异。具体来说,在测试时,通用表示在局部适应后进行预测时,直接根据等式(2)中的任务损失进行训练。因此,模型总是过度适应它所看到的最新任务,而且它永远不会学会如何有效地结合经验排练。然而,根据CLS理论(McClelland et al.,1995),人类学习系统本质上是互补的——我们学习结构化知识的方式使我们能够快速适应情节信息。因此,为了解决MbPA 的训练测试差异,我们将泛型表征的训练目标从如何更好地完成当前任务转变为如何有效地适应情景记忆。特别是,我们提出了MbPA 的一个扩展,它利用元学习范式将三个关键原则交织在一起:(i)为了解决训练测试缺口,我们的框架学习为本地适应量身定制的通用表示,(ii)为了实现稳健的本地适应,内存模块使用基于多样性的选择标准来减少内存大小,(iii)为了适应较小的内存,该框架利用粗略的局部适应来缓解负迁移。算法1概述了整个框架,下面我们详细介绍了如何以系统的方式实例化每个原则。
通用表示法。我们将局部适应融入到训练泛型表征中。特别是,我们利用元学习的思想,将局部适应作为基本任务,表征学习作为元任务。也就是说,对泛型表征进行训练,使其在局部适应(又称学习适应)后表现良好。因此,对于每个培训示例(xit,yit)isin; Dtrain,我们将等式(2)中的任务损失表示为元任务损失,如下所示:
其中alpha;是当前的学习率。请注意,微分需要计算梯度的梯度,这可以通过现代自动微分框架实现。直观地说,我们首先使用梯度步长近似局部自适应,然后优化自适应网络。
体验排练。基于与元任务损失类似的原理,我们将等式(3)中的记忆重放损失重新表述为元重放损失:
目的是促进所有任务的有效局部适应。
我们使用与MbPA 相同的重播比率来保持元重播稀疏。此外,我们还提出了一个基于多样性的选择标准,以确定一个训练示例(xi 剩余内容已隐藏,支付完成后下载完整资料
资料编号:[589773],资料为PDF文档或Word文档,PDF文档可免费转换为Word
课题毕业论文、外文翻译、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。