近年来,在独立和相同分布(i.i.d.)数据的假设下,主要针对单一任务进行训练的深度学习已经取得了巨大的进展。然而,当天真地在多个任务上连续训练,而不重温以前的任务时,已知神经网络会遭受灾难性的遗忘(McCloskey和Cohen,1989;Ratcliff,1990),即在学习新任务时,执行旧任务的能力往往会丧失。与此相反,生物生命能够在一生中从明显的非即得经验中学习许多任务,获得新的技能并重复使用旧的技能来学习新的能力,同时保留以前的重要知识。当我们努力使人工系统越来越智能时,自然生命不断学习的能力是一种重要的模仿能力。持续学习(Parisi等人,2019)最近在机器学习研究中引起了相当大的关注,并出现了一些期望值。模型应该能够依次学习多个任务,最终任务的数量和复杂程度未知。重要的是,在学习新的任务时,应该不会对以前的任务产生灾难性的遗忘,最好是不用保留以前任务的任何数据来重新训练。模型还应该能够进行正向转移:以前学过的任务应该有助于新任务的学习。任务之间的知识转移可以最大限度地提高样本效率,这在数据稀缺的情况下尤为重要。一些方法通过扩展来解决持续学习的问题,也就是说,模型随着每一个额外的任务而增长。通过将学习转移到每个任务的新网络组件上,这些方法通过设计减轻了灾难性的遗忘,因为以前学习的参数没有受到干扰。这些策略的一个关键挑战是决定何时以及以何种程度来扩展网络。虽然通常声称这可以根据即将到来的任务进行调整,但这样做需要人为估计需要多少扩展,这不是一个简单的过程。相反,通常对每个新任务采用预设的、恒定的扩展。另外,我们可以考虑动态的、数据驱动的模型扩展,或者采用模块化的模型增长方法,从而开发出一个框架,为持续学习建立紧凑的模型,其中模型的大小随着任务数量的增加(最好是不断增加)而有效扩展,同时减轻灾难性的遗忘现象。此外,我们试图开发一个框架,使其可以通用于不同的持续学习任务,例如分类、图像的生成过程和自然语言处理序列标签,即命名实体识别。在一个持续学习的环境中,我们会遇到一连串具有预定目的的任务,但每个任务都由一个不同的数据集组成。主要目标是建立模型,使其在不同的任务中表现尽可能一致,同时i)重复使用以前任务的信息,以及ii)防止模型不受控制地增长(大小)。然而,我们的方法包括为每个任务建立一个模型,这样,模型的大部分组件是跨任务共享的(全局的),剩下的几个是特定任务的(局部的),从而允许信息共享和控制增长。因此,我们试图开发具有全局和特定任务参数的特定任务(深度学习)模型,以实现有效和高效的持续学习。
近年来,在独立和相同分布(i.i.d.)数据的假设下,主要针对单一任务进行训练的深度学习取得了巨大的进展。然而,当天真地在多个任务上连续训练,而不重温以前的任务时,已知神经网络会遭受灾难性的遗忘(McCloskey和Cohen,1989;Ratcliff,1990),即在学习新任务时,执行旧任务的能力往往会丧失。与此相反,生物生命能够在一生中从明显的非即得经验中学习许多任务,获得新的技能并重复使用旧的技能来学习新的能力,同时保留以前的重要知识。当我们努力使人工系统越来越智能时,自然生命不断学习的能力是一种重要的模仿能力。
持续学习(Parisi等人,2019)最近在机器学习研究中引起了相当大的关注,并出现了一些期望值。模型应该能够依次学习多个任务,最终任务的数量和复杂程度未知。重要的是,在学习新的任务时,应该不会对以前的任务产生灾难性的遗忘,最好是不用保留以前任务的任何数据来重新训练。模型还应该能够进行正向转移:以前学过的任务应该有助于新任务的学习。任务之间的知识转移可以最大限度地提高样本效率,这在数据稀缺的情况下尤为重要。
一些方法通过扩展来解决持续学习的问题,也就是说,模型随着每一个额外的任务而增长。通过将学习转移到每个任务的新网络组件上,这些方法通过设计减轻了灾难性的遗忘,因为以前学习的参数没有受到干扰。这些策略的一个关键挑战是决定何时以及以何种程度来扩展网络。虽然通常声称这可以根据即将到来的任务进行调整,但这样做需要人为估计需要多少扩展,这不是一个简单的过程。相反,通常对每个新任务采用预设的、恒定的扩展。另外,我们可以考虑动态的、数据驱动的模型扩展,或者采用模块化的模型增长方法,从而开发出一个框架,为持续学习建立紧凑的模型,其中模型的大小随着任务数量的增加(最好是不断增加)而有效扩展,同时减轻灾难性的遗忘现象。此外,我们试图开发一个框架,使其能够通用于不同的持续学习任务,例如分类、图像的生成过程和自然语言处理序列标签,即命名实体识别。
在一个持续学习的环境中,我们会遇到一连串具有预定目的的任务,但每个任务都由一个不同的数据集组成。主要目标是建立模型,使其在不同的任务中表现尽可能一致,同时i)重复使用以前任务的信息,以及ii)防止模型不受控制地增长(大小)。然而,我们的方法包括为每个任务建立一个模型,这样,模型的大部分组件是跨任务共享的(全局的),剩下的几个是特定任务的(局部的),从而允许信息共享和控制增长。因此,我们试图开发具有全局和特定任务参数的特定任务(深度学习)模型,以实现有效和高效的持续学习。
我们的工作对DARPA终身学习机器(L2M)计划和持续学习社区的贡献列举如下:
开发了生成式对抗网络的持续适应模型(Cong等人,2020)。
开发了使用贝叶斯非参数字典权重因子的持续学习(Mehta等人,2021)。
为人类和机器的结构化任务分布开发了一个元学习框架(Kumar等人,2020)。
为鉴别性和生成性持续学习开发了高效的特征转换(EFTs)(Verma等人,2021年)。
通过设计和利用参数有效的特征图转换,为生成式对抗网络(GANs)开发了一种持续学习方法。
开发了第一个用于NER的少许类增量学习的工作(Wang等人,2022a)。
开发了结构化稀疏卷积(SSC),利用图像的固有结构来减少卷积滤波器的参数(Verma等人,2022)。
开发了一个新的任务持续学习框架,该框架不假设任务序列是不同或唯一的,因此需要一个任务相似性识别模块(Wang等人,2022b)。
在机器学习领域产生了9项学术科学贡献,其中7项已经发表,2项目前正在审查。
用我们的EFT框架为M21评估分类基准做出了贡献(Verma等人,2021)。
下面,我们为每个贡献提供一个简短的总结,然后是我们项目产生的公开可用的软件包的清单,以及一个完整的参考文献清单,我们向读者介绍完整的方法学细节、实验设置和经验结果。