摘要: 近年来,随着信息技术的不断发展,各种数据呈现爆炸式的增长,传统的机器学习算法只有当测试数据与训练数据分布类似时,学习算法才能取得较好的性能,换句话说,它们不能在动态环境中连续自适应地学习,然而,这种自适应学习的能力却是任何智能系统都具备的特性.深度神经网络在许多应用中显示出最好的学习能力,然而,使用该方法对数据进行增量更新学习时,会面临灾难性的干扰或遗忘问题,导致模型在学习新任务之后忘记如何解决旧任务. 连续学习(continual learning, CL)的研究使这一问题得到缓解.连续学习是模拟大脑学习的过程,按照一定的顺序对连续非独立同分布的(independently and identically distributed, IID)流数据进行学习,进而根据任务的执行结果对模型进行增量式更新. 连续学习的意义在于高效地转化和利用已经学过的知识来完成新任务的学习,并且能够极大程度地降低遗忘带来的问题.连续学习研究对智能计算系统自适应地适应环境改变具有重要的意义. 基于此,系统综述了连续学习的研究进展,首先概述了连续学习的定义,介绍了无遗忘学习、弹性权重整合和梯度情景记忆3种典型的连续学习模型,并对连续学习存在的关键问题及解决方法进行了介绍,之后又对基于正则化、动态结构和记忆回放互补学习系统的3类连续学习模型进行了分类和阐述,并在最后指明了连续学习进一步研究中需要解决的问题以及未来可能的发展方向.
https://crad.ict.ac.cn/CN/10.7544/issn1000-1239.20201058#1
近年来,随着机器学习(machinelearning,ML) 领域的快速发展,机器学习在自然图像分类、人脸识 别等领域取得了一定的成果,深度学习的成功使机 器学习的发展达到了另一个新的高度.然而,在现实 世界中,机器学习系统总是会遇到连续任务学习问 题,因此,如何对连续任务进行有效学习是当前研究 的重点之一.现有的机器学习方法虽然可以在任务 上取得较高的性能,但只有当测试数据与训练数据 概率分布类似时,机器学习才能取得较好的性能.换 句话说,目前的机器学习算法不能在动态环境中持 续自适应地学习,因为在动态环境中,任务可能会发 生显著变化,然而,这种自适应的学习能力却是任何 智能系统都具有的能力,也是实现智能生物系统学 习的重要标志.
目前,深度神经网络在许多应用中显示出非凡 的预测和推理能力,然而,当通过基于梯度更新的方 法对模型进行增量更新时,模型会出现灾难性的干 扰或遗忘问题,这一问题将直接导致模型性能的迅 速下降,即模型在学习新任务之后,由于参数更新对 模型引起的干扰,将使得学习的模型忘记如何解决 旧任务.人类和动物似乎学到了很多不同的知识,并 且总是能不遗忘过去学到的知识,并将其应用在未 来的学习任务中,受人和动物这种学习方式的启发, 很自然地将这种想法运用到机器学习领域,即随着 时间的推移,模型能够不断学习新知识,同时保留以 前学到的知识,这种不断学习的能力被称为连续学 习.连续学习最主要的目的是高效地转化和利用已 经学过的知识来完成新任务的学习,并且能够极大 程度地降低灾难性遗忘带来的问题.近年来,随着深度学习的不断发展,连续学习的研究已经受到极大 的关注,
因为连续学习主要有2点优势: **1)不需要保存之前任务上学习过的训练数据, 从而实现节约内存,同时解决了由于物理设备(例如 机器内存)或学习策略(例如隐私保护)的限制,导致 数据不能被长期存储这一问题. **
2)模型能够保存之前任务所学习的知识,并且 能够极大程度地将之前任务学习到的知识运用到未 来任务的学习中,提高学习效率。
**
****1 连续学习概述 **
**1.1 连续学习的形成与发展 **
在现实世界中,机器学习系统处于连续的信息 流中,因此需要从不断改变的概率分布中学习和记 住多个任务.随着时间的推移,不断学习新知识,同 时保留以前学到知识,具备这种不断学习的能力称 为连续学习或终身学习.因此,使智能学习系统具备 连续学 习 的 能 力 一 直 是 人 工 智 能 系 统 面 临 的 挑 战[1G2].灾难性遗忘或灾难性干扰一直是连续学习所 研究的重点,即当模型对新任务进行学习时会遗忘 之前任务所学习的知识,这种现象通常会导致模型 性能的突然下降,或者在最坏的情况下,导致新知识 完全覆盖旧知识.因此,克服灾难性遗忘是人工智能 系统迈向更加智能化的重要一步. 早期学者们曾尝试为系统增加一个存储模块来 保存以前的数据,并定期对之前所学的知识与新样 本的交叉数据进行回放来缓解灾难性遗忘这一问 题[3],这类方法一直延续至今[4G5].然而,基于存储模块连续学习方法的一个普遍缺点是它们需要显式存 储旧任务信息,这将导致较大的工作内存需求,此 外,在计算和存储资源固定的情况下,应设计专门的 机制保护和巩固旧的知识不被新学习的知识所覆 盖.在此基 础 上,Rusu 等 人[6G7]尝 试 在 新 任 务 到 来 时,分配额外的资源来缓解灾难性遗忘.然而,这种 方法随着任务数量的不断增加,神经网络架构将不 断增加,进而直接降低模型的可伸缩性.由于连续学 习场景中不能预先知道任务数量和样本大小,因此, 在没有对输入训练样本的概率分布做出很强的假设 情况下,预先定义足够的存储资源是不可避免的.在 这种情况下,Richardson等人[8]提出了针对连续学 习模型避免灾难性遗忘的3个关键方面:1)为新知 识分配额外的神经元;2)如果资源是固定的,则使用 新旧知识的非重叠表示;3)把旧的知识叠加到新的 知识上作为新的信息.在此基础上,受神经科学理论 的启发,基于正则化策略、动态结构策略以及记忆策 略等一系列连续学习的方法相继被提出.
如图1所示,在连续学习过程中,智能体逐个对 每个连续的非独立均匀分布流数据示例进行学习, 并且该智能体对每个示例只进行一次访问.这种学 习方式与动物学习过程更为接近.如果我们忽略各 个任务的先后次序问题,单独训练每个任务,这将导 致灾难性遗忘,这也是连续学习一直以来所面临的 最大问题.因此,连续学习的本质,是通过各种手段 高效地转化和利用已经学过的知识来完成新任务的 学习,并且能够极大程度地降低遗忘带来的问题。
**1.2 连续学习场景 **
连续学习的问题是指模型能够连续学习一系列 任务,其中,在训练期间,只有当前任务数据可用,并 且假设任务间是有明显的分界[9].近年来,对这一问 题,研究者们已展开积极的研究,提出了许多缓解连 续学习过程中灾难性遗忘的方法.然而,由于各实验 方案的不同,因此直接对各方法进行比较评估显然 不可行.尤其是模型任务标识不可用等问题,这将直 接影响模型实现的难易程度.因此,为了使评价更加 标准化,并且也为了使实验结果比较更具意义,在此 首先对连续学习过程中的3个学习场景进行简要概 括[10],如表1所示:
在第1个学习场景中,模型总是被告知需要执 行哪些任务,这也是最简单的连续学习场景,将其称 为任务增量学习(taskGincrementallearning,TaskG IL).近年来,提出的大部分连续学习方法在此场景都是适用的,且都具有较好的实验效果,例如正则化 方法和动态结构方法等. 在第2个学习场景中,通常将其称之为域增量 学 习 (domainGincrementallearning,DomainGIL), 任务标识不可用,模型只需要解决手头的任务,模型 也不需要推断这是哪个任务.文献[11]的实验结果 证明,基于情景记忆的方法在该场景下有较好的实 验结果,例如 GER,DGR,RtF 等,然而基于正则化 方法,例如 EWC,LwF,SI等,模型学习的准确率相 对较差. 在第3个学习场景中,模型必须能够解决到目 前为止所看到的每个任务,并且还能够推断出它们 所面临 的 任 务,将 此 场 景 称 为 类 增 量 学 习 (classG incrementallearning,ClassGIL),在 该 场 景 中 包 含 一个很常见的实际问题,即增量地学习对象的新类. 此场景是这3个场景中最为复杂的,也是最接近现 实中的学习场景,近年来,针对此场景下的连续学习 方法也相继提出.例如,通过存储之前任务数据的样 本,缓解系统遗忘方法:文献[5]提出一种iCarl的 连续学习方法,该方法通过在每个类中找出 m 个最 具代表性的样本,那么其平均特征空间将最接近类 的整个特征空间,最后的分类任务是通过最接近样 本均值的分类器来完成的;文献[12]介绍了对遗忘 和不妥协量化的度量方法,进而提出一种称为 RWalk 方法,完成类增量场景下的学习;文献[13]提出一种 动态网络扩展机制,通过由所学习的二进制掩码动 态确定网络所需增加的容量,以确保足够的模型容 量来适应不断传入的任务.
**1.3 连续学习相关领域研究 **
连续学习相关的领域研究主要包括多任务学习 和迁移学习. 1) 多任务学习.多任务学习的目的是能够结合 所有任务的共同知识,同时改进所有单个任务的学 习性能,因此,多任务学习要求每个任务与其他任务 共享模型参数,或每个任务有带约束的模型参数,别 的任务能够给当前学习任务提供额外的训练数据, 以此来作为其他任务的正则化形式.也就是说,多任 务学习的良好效果依赖于单个函数的共享参数化以 及对多个损失同时进行估计和求平均.当同时训练 多个任务的共享层时,必须学习一个公共表示,从而 有效地对每个任务进行交叉正则化,约束单个任务 的模型. 对于神经网络而言,Caruana [14]对多任务学习 进行了详细的研究,指出网络的底层是共享的,而顶层是针对于特定任务的,多任务学习需要所有任务 的数据,此外,多任务学习随着时间的推移,不会积 累任何知识,也就是说没有持续学习的概念,这也是 多任务学习的关键问题所在. 2)迁移学习.迁移学习是使用源域来帮助另一 个任务完成目标域学习的一种学习方式[15].它假设 源域S 中有大量的标记训练数据,而目标域T 只有 很少或没有标记的训练数据,但有大量未标记的数 据.迁移学习可以利用被标记的数据来帮助完成目 标域中的学习.然而迁移学习与连续学习,主要有 4个不同:①迁移学习不是连续的,它仅仅是使用了 源域来帮助完成目标域学习;②迁移学习并没有将 过去所学的知识进行积累;③迁移学习是单向进行 的,也就是说,迁移学习仅可使用源域来帮助完成目 标域的学习,然而,连续学习是可以在任何方向上进 行学习的;④迁移学习假设源域与目标域非常相似, 且这种相似性是人为决定的,然而在连续学习中并 没有做出这样一个很强的限制性假设.
2 连续学习的典型模型
**
**
**2.1 无遗忘学习 **
Li等人[16]在2017年提出了一种由卷积神经网 络(convolutionalneuralnetwork,CNN)组成的无 遗忘学习(learningwithoutforgetting,LwF)方法, 该方法将知识蒸馏(knowledgedistillation,KD)[17] 与细调方法[18]相结合,其中,利用知识蒸馏策略来 避免对之前知识的遗忘.
**2.2 弹性权重整合 **
Kirkpatrick等人[19]在2017年提出了一种结合 监督学习和强化学习方法,即弹性权重整合(elastic weightconsolidation,EWC)方法.在提出的模型目 标函数中,包括了对新旧任务之间模型参数的惩罚 项,从而有效缓解对先前学习的知识中与当下任务 相关知识遗忘.弹性权重整合示意图如图3所示:
**2.3 梯度情景记忆 **
LopezGPaz等人[20]在2017年提出梯度情景记忆 模型(gradientepisodicmemory,GEM),该模型能 够实现知识正向迁移到先前任务的功能,以及将先 前任务学习的知识正向地迁移到当前任务上。
**2.4 分析比较 **
LwF方法仅需要使用新任务的数据,对新任务 进行优化,以提高新任务上模型预测的准确性,并保 持神经网络对以前任务的预测性能.这种方法类似 于联合训练方法,但是该学习方法不使用旧任务的 数据和标签数据.实验表明,LwF 方法可以极大地 提高算法的分类性能以及计算效率,简化了学习过 程,一旦学习了一个新的任务,训练过的数据将不需 要再被保存或者回放.然而,这种方法的缺点是学习 的性能高度依赖于任务的相关性,并且单个任务的 训练时间随着学习任务的个数线性增加.虽然蒸馏 方法为多任务学习提供了一个潜在的解决方案,但 它需要为每个学习任务持久存储数据.另外需要注 意,LwF方法不能被直接运用到强化学习场景中; EWC方法通过使用 FIM 对网络参数进行约束,降 低模型对以前所学知识的遗忘程度,此外,该方法在 训练过程 中 不 增 加 任 何 计 算 负 担,但 这 是 以 计 算 FIM 为代价的,需存储FIM 的值以及以前学习模型 参数 的 副 本;LopezGPaz 等 人[20]的 实 验 结 果 表 明 GEM 模型,相较于 LwF 和 EWC 方法具有较好的 实验效果,但是,该方法在训练时,由于对于每个任 务都需要进行情景记忆,因此需要更多的内存空间, 所需的内 存 是 EWC 用 于 保 存 过 去 信 息 大 小 的 2 倍,与其他方法相比内存开销较大,并且随着学习任 务数量的增加,训练成本急剧增加,此外该方法也不 能增量地对新的类别进行学习;同时提高性能也将 加大计算负担.
**3 连续学习的关键问题 **
3.1 灾难性遗忘
灾难性遗忘是连续学习面临的最大挑战.避免 灾难性遗忘的问题,也就是说,在不断完成有序到达 的新任务学习的同时,也能够在之前学习过的任务 中表现得足够好. Venkatesan等人[21]在2017年设计了一种结合 生成式模型和知识蒸馏技术的全新采样策略,用其来产生 来 自 过 去 学 习 任 务 概 率 分 布 上 的 “幻 觉 数 据”,使模型在不访问历史数据的前提下,缓解连续 学习过程中的灾难性遗忘问题;文献[22]从序列贝 叶斯学习规则出发,假定数据序列到达时,用前一个 任务模型参数的后验概率分布作为新任务模型参数 的先验概率分布,为缓解连续学习过程中的灾难性 遗忘问题提供一种解决方案;文献[19]提出的正则 化方法在模型参数更新时增加约束,以此在保持已 有知识的前提下,实现对新任务的学习,来缓解灾难 性遗忘等.
3.2 知识的正向迁移
连续学习过程中的知识正向迁移,即连续学习 应该能够在学习新任务的同时,利用以前的任务中 学习到的知识来帮助新任务的学习,从而提高学习 的效率和质量. 文献[23]实验证明简单的细调可以实现知识的 正向迁移;文献[24]提出保留训练好的模型基类信 息编码,可将其知识迁移到模型要学习的新类中;文 献[16]提出的 LwF方法中,使用蒸馏损失来保存 基类信息,进而使用保存的基类信息用于新数据的 训练;文献[6]通过继承之前任务所学的知识,完成 对新任务的学习;LGM 模型是基于学生 教师的双 重体系结构[25],教师的角色是保存过去的知识并帮 助学生学习未来的知识,该模型通过优化一个增广 的 ELBO 目标函数很好地帮助完成师生知识的正 向迁移;文献[26]提出一种符号程序生成(symbolic programsynthesis,SPS)的方法,来实现知识的正 向迁移等.
3.3 知识的正向和反向迁移
知识在反向传播过程中的正向迁移,即如何利 用当前任务所学到的知识来帮助之前任务的学习是 连续学习模型研究的重点之一. 在连续学习场景中提出的 LwF模型或者具有 更为复杂正则化项的 EWC 模型,虽然可以在一定 程度上缓解灾难性遗忘这一问题,然而却无法实现 利用当前 任 务 知 识 来 帮 助 之 前 任 务 的 学 习.Li等 人[27]在2019年提出一种连续结构学习框架,当网 络进行结构搜索时,l层被选择“重用”,即第l层能 够学习到一个与先前的某个任务非常相似的表示, 这要求l层的2个学习任务之间存在语义相关,因 此,在第l层上使用正则化项对模型进行相应的约 束来帮助之前任务的学习,该模型的提出为解决利 用当前任务知识来帮助之前任务的学习提供了思 路;LopezGPaz等人[20]提出梯度情景记忆模型,实现知识正向迁移到先前任务功能,进而提高模型对之 前任务学习的学习能力.
3.4 可伸缩性能力
连续学习方法应该具有可伸缩性或扩展能力, 也就是说,该方法既能完成小规模数据任务的训练, 也能够可伸缩地实现大规模任务上的训练学习,同时 需要能够保持足够的能力来应付不断增加的任务. Schwarz等人[28]在2018年提出一种进步和压 缩框架(progressandcompressframework,P&C) 的连续学习模型,P&C模型是由知识库(knowledge base)和活动列(activecolumn)两部分组成,这个由 快速学习和整合组成的循环结构,使模型不需要结 构的增长,也不需要访问和存储以前的任务或数据, 也不需要特定的任务参数来完成对新任务的学习, 此外,由于 P&C模型使用了2个固定大小的列,所 以可以扩展到大规模任务上;文献[9]提出一种动态 生成记忆模型(dynamicgenerativememory,DGM), 在 DGM 模型中,利用一个生成对抗结构来替代之 前模型的记忆模块,来缓解灾难性遗忘问题.其中, 该模型中还结合一个动态网络扩展机制,以确保有足够的模型容量来适应不断传入 的 新 任 务;Yoon 等人[29]在2018年提出了一种新型的面向终身连 续学 习 的 深 度 网 络 结 构,称 为 动 态 可 扩 展 网 络 (dynamicallyexpandablenetwork,DEN),它 可 以 在对一系列任务进行训练的同时动态地确定其网络 容量,从而学习任务之间紧密重叠的知识共享结构, 进而有效地对各任务间的共享和私有知识进行学 习,不断学习新任务的同时有效地缓解灾难性遗忘.
4 连续学习方法研究进展
本节将具体介绍多个代表性的连续学习方法, 本文将把目前的连续学习分为基于正则化方法、基 于动态结构方法和基于情景记忆方法三大类,并阐 明不同方法之间的关系,还比较了这些方法在减轻 灾难性遗忘性能的差异性.图4是对近年来提出的 一些流行的连续学习策略韦恩图总结. 连续学习中各个子类的分类图如图5~7所示. 图中从模型引出到下一模型的箭头,代表了下一模 型是在上一模型的基础上发展演变得来.
目前为缓解连续学习过程中的灾难性遗忘问 题,主要集中在引入正则化策略、动态结构策略和基 于情景记忆策略这3个方向进行研究.正则化方法 在模型更新时,通过对权重进行约束,实现在保持已 有知识的前提下,完成对新任务的学习,从而缓解灾 难性遗忘这一问题,此外,这类方法通常不需要保存 任何以前的数据,只需要对每个任务进行一次训练. 然而,该类方法克服灾难性遗忘的能力是有限的,例 如在类增量学习(classGincrementallearning,ClassG IL)场景下性能不佳,此外,随着任务数目的不断增 加,对过去任务进行正则化处理,可能导致特征漂 移.动态地改变模型结构以便在不干扰之前任务的 学习知识的情况下学习新的任务,该类方法也可以 成功地缓解灾难性遗忘这一问题,然而,该类方法不 能从任务之间的正向迁移中获益,另外模型的大小 随着观察到的任务数量的增加而急剧增长,这使得它在实际问题中往往不可行.基于情景记忆的方法, 通过保存一些以前任务的样例进行记忆回放来缓解 对之前所学习知识的遗忘,该类方法在减轻灾难性 遗忘方面显示出了巨大优势,然而,计算成本却随着 先前任务的数量增加而快速增长,并且该方法需要 保存之前样例,不利于数据安全保护.在基于情景记 忆的方法中,为替代存储所学任务的样例数据,提出 使用深层生成模型来记忆以前见过的数据分布,然 而该类方法往往需要从头开始重新训练生成模型, 训练效率低,此外,在每次生成以前任务的新的真实 样本时,还极易造成“语义漂移”,且随着时间推移, 模型训练准确性逐渐下降.
6 连续学习的应用
作为机器学习领域中的一个极具潜力的研究方 向,连续学习方法已经受到学者的极大青睐.随着人 工智能及机器学习不断的发展,基于连续学习的方 法已经获得了较多应用,例如图像分类、目标识别以 及自然语言处理等.以下将对近年来连续学习在各 领域的主要应用进行介绍.
6.1 图像分类
Li等人[16]在2017年提出了一种由卷积神经网 络组成的无遗忘学习方法,该方法将知识蒸馏与细 调方法相结合,利用知识蒸馏的方法来加强与当前 学习任务相关的已经学习过的知识,提高分类的准 确性;Kim 等人[70]提出基于 DOS的最大熵正则化 增量学 习 模 型(),该 模型通过最大熵正则化来减少对不确定迁移知识的 优化,以及利用 DOS来通过从新任务中选择性地删 除样例减少对旧类的遗忘,以此减少记忆样例中类 的不平衡,有效地完成连续学习过程中的图像分类; Smith等人[71]在2019年提出一种新颖的自学习联想 记忆框架(selfGtaughtassociativememory,STAM), 有效解决在连续学习过程中的无监督学习分类问 题;Aljundi等人[37]提出一种基于稀疏编码的正则 化方法,实现利用具有固定容量的网络进行有序学 习问题,在 CIFAR100和 MNIST 数据集上进行分 类的结果表明,该模型能够有效地提高模型的分类 能力;Rostami等人[72]考虑到基于自编码器的生成 模型能够很好地对输入样例进行编码,获得较好的 隐特征表示,同时受并行分布式处理学习和互补学 习系统理论的启发,提出一种新颖的计算模型,该模 型能够将新学习的概念与之前模型学习的概念经过 统一编码,进而形成一个统一的嵌入空间表示,实现 了利用之前学习的概念知识来有效地帮助只有少量 标签样例的新领域知识的学习,从而完成在连续学 习背景下的样例分类.
6.2 目标识别
****Siam 等人[73]提出一种新颖的教师 学生自适 应框架,在无需人工标注的情况下,完成人机交互)背景下的视频 目标对象分割(videoobjectsegmentation);Parisi等 人[7]提出了一种适用于终身学习场景的双记忆自组 织体系结构,该模型结构主要包括一个深度卷积特 征提取模块和2个分层排列的递归自组织网络,进而 实现在终身学习场景下的视频序列中的目标对象的 识别;Tessler等人[74]提出一种新颖的分层深度强化 学习网络(hierarchicaldeepreinforcementlearning network,HGDRLN)框架,该模型在 Minecraft游戏 场景中,通过重用在之前任务中学习到的知识,进而 完成对未来任务场景的目标对象学习,提高效率,同 时,该模型的实验结果也展示了在不需要额外学习 的情况下在相关 Minecraft任务之间迁移知识的潜 力;Michiel等人[10]将当前的基于任务标识已知的 序列学习方法推向了在线无任务标识的连续学习场 景中,首先,假设有一个无限输入的数据流,其中该 数据流中包含现实场景中常见的逐渐或者突然的变 化.文献[10]中提出一种基于重要权重正则化的连续 学习方法,与传统的任务标识已知场景中不同,在该 场景中,该模型需要有效地检测何时、如何以及在哪 些数据上执行重要性权重更新,进而有效地在无任 务标识场景下进行在线连续学习.该文中在监督学 习和自监督学习过程中都成功地验证了该方法的有 效性.其中,具体而言,相较于基准学习方法,在电视 剧人脸识别和机器人碰撞等具体应用中,该方法的稳 定性和学习性能都有所提高.Tahir等人[75]考虑到 当下最先进的有关食物识别的深度学习模型不能实 现数据的增量学习,经常在增量学习场景中出现灾难 性遗忘问题.因此,提出一种新的自适应简化类增量 核极值学习机方法(adaptivereducedclassincremental kernelextremelearning machine,ARCIKELM), 进而完成目标食物对象的识别,其中在多个标准的 食物数据集的最终分类准确性证明了该模型可以有 效地进行增量学习.
6.3 自然语言处理
dAutume等人[76]介绍了一种连续学习背景下 的自然语言学习模型,该模型实现了对在线文本数据 的有效学习.在文献[76]中介绍了一种基于稀疏经 验回放的方法有效地防止灾难性遗忘,具体而言,对 于每10000个新的样本随机均匀选择100个样本在 固定的时间间隔进行稀疏经验回放,实验表明,该模 型在文本分类和问答系统等自然语言领域可以实现 较好的应用.Li等人[77]考虑到现有的方法大多集中 在对输入和输出大小固定的标签预测连续学习任务上,因此,提出了一个新的连续学习场景,它处理自 然语言学习中常见的序列到序列的学习任务.实验 结果表明,该方法比现有方法有明显的改进,它能有 效地促进知识正向迁移,防止灾难性遗忘.Kruszewski 等人[78]提出一种基于多语言和多领域背景下的语 言建模基准,该基准可以将任何明确的训练样例划 分为不同的任务.与此同时,提出一种基于产品专家 (productofexperts,PoE)的多语言连续学习方法, Kruszewski等人的实验结果证明,在进行多语言连 续学习时,该模型可以有效地缓解灾难性遗忘.Hu 等人[79]对个性化在线语言学习 问 题 (personalized onlinelanguagelearning,POLL)进行研究,涉及到 适应个性化的语言模型以适应随着时间发展的用户 群体.为了有效地对 POLL问题进行研究,文献[79] 的作者收集了大量的微博帖子作为训练数据集,进 而对近年来流行的连续学习算法进行了严格评估, 并在此基础上提出一种简单的连续梯度下降算法 (continualgradientdescent,ConGraD),实验结果 表明,该算法在 Firehose数据集和早期基准测试数 据集的实验结果优于之前的连续学习方法.
**7 未来的研究方向 **
作为机器学习领域中的一个新兴方向,连续学 习近几年受到研究者们的极大关注,目前来看,连续 学习在未来的研究中有10个潜在的方向: 1) 基于经验回放(experiencereplay)的模型相 较于其他连续学习模型有较好的性能,然而,容量的 饱和是该类模型中所面临的重要挑战,因此如何在 保持原有知识的同时,不断提高模型的能力是未来 重要的研究方向. 2)对于任务不可知场景下的连续学习算法尚 需进一步研究.目前,大多连续学习算法要求在任务 边界(taskboundaries)已知的场景中来进行训练和 预测,即当需要学习一个新的任务时,模型需要被告 知有新的学习任务,例如,改变损失函数中的参数 等,以便系统能够采取某些行动.然而,在任务之间 没有明显边界,即任务的转变是逐渐的或者连续的, 这些模型将不再适用.然而,在实际应用中,往往需 面对的是任务边界不可知场景学习问题.文献[9]从 贝叶斯的角度提出一种贝叶斯梯度下降算法(Bayes gradientdesent,BGD),对没有明确定义的任务边 界的连续学习问题提供一种解决思路,然而,基于此 场景的连续学习算法仍相对缺乏,尚需进一步研究. 3)利用多模态信息.现有的连续学习方法通常 使用来自单一模态(如图像或文本)的知识进行建 模,然而,虽然当下训练集有一些当前模态的样例, 但是,样例可能还存在另一个模态.因此,来自多模 态的知识可以为连续学习提供较为丰富的样例信 息,进而提高模型的建模能力.因此如何有效地利用 这些多模态信息也是未来研究的重要方向. 4)在未来可以对当下连续学习模型应用的灵 活性进行进一步扩展研究,例如多感知领域的扩展. 文献[80]可以从视听流中不断学习任务的特征,使 得连续学习的方法向更加广泛的应用迈进一步.因 此,可以通过将连续学习方法部署在具体的代理中, 通过与环境的主动交互,在持续的时间内可以增量 地获取和提取知识,以此来更好地完成对对象的识 别等任务. 5)数据集太小也是连续学习过程所面临的挑 战之一.例如,目前存在的iCubGT 和 CORe50数据 集,只包含几十个常见的家庭对象类,缺乏大规模和 多样性数据集.因此,创建一个更大的和更多样化的 数据集,即可以包括数百个或数千个类,也可以包括 不同类型的识别,如人脸、场景以及活动等,对未来 的研究工作是至关重要的. 6)在实际分类问题中,数据的不平衡时常发生,易于导致数据的错误分类,因此如何从不平衡的 数据集中进行正确分类,也是未来连续学习研究的 一个重要方向. 7)在线学习.当前的连续学习方法多集中于对 每个单独的任务进行离线训练,然而,在实际应用中 数据往往以数据流的形式存在[81].因此,如何对连 续的数据流进行学习是未来的一个重要的研究方向. 8)正向迁移.在连续学习方法中,正向迁移即 知识的正向迁移能力,也就是对新任务进行学习时, 如何有效地利用之前所学习的知识来有效地加快对 当前任务的学习.近年来,元学习方法的出现,为进 一步提高知识的正向迁移提供了前景.因此,如何有 效地利用元学习技术来尽可能地加快对当前任务的 学习是未来的一个重要的研究方向. 9)权衡 模 型 的 稳 定 性 与 可 塑 性.模 型 的 可 塑 性,即模型对学习新知识的能力.模型的稳定性,即 模型对已经学习知识的保留能力.在连续学习过程 中,如何有效地对模型的稳定性和可塑性进行权衡 是一个值得研究的问题. 10)应用领域扩展.大多实际应用场景都涉及 连续学习的问题,计算机视觉中图像分类是连续学习最常用的实验平台之一.连续学习最近在许多其他 应用中也引起了广泛关注,如机器人技术、自然语言 处理和视频信号处理.总之,连续学习还有很多值得 探索的领域和应用.