原标题:超级网络的持续学习:阻止人工智能“灾难性遗忘”的新算法
作者 | 十、年
编辑 | Camel
人脑显然是人工智能追求的最高标准。
毕竟,人脑使人类具有持续学习和情境学习的能力。
这种在新环境中不断吸收新知识并根据不同环境灵活调整行为的能力也是深度学习系统远离人脑的一个重要原因。
为了让传统的深度学习系统获得持续学习能力,最重要的是克服人工神经网络的“灾难性遗忘”问题,即一旦现有模型被新数据集训练,模型将失去识别原始数据集的能力。
换句话说就是:让神经网络在学习新知识的同时保留旧知识。
不久前,苏黎世联邦理工学院和苏黎世大学的研究团队发表了一项名为《超网络的连续学习》(利用超级网络进行持续学习)的研究。提出了一种任务条件超网(基于任务属性生成目标模型权重的网络)。该方法能有效克服灾难性遗忘问题。
具体来说,该方法能够帮助在针对多个任务训练网络时,有效处理灾难性的遗忘问题.除了在标准连续学习基准测试中获得最先进的性能外,长期附加实验任务序列表明,任务条件超网络显示出保留先前记忆的巨大能力。
hypernetworks
在苏黎世联邦理工学院和苏黎世大学的这项工作中,最重要的是超级网络的应用。在介绍超网络的连续学习之前,让我们先介绍超网络。
hyperNetwork是一个非常著名的网络。简单说就是用一个网络来生成另外一个网络的参数。的工作原理是使用超网络输入训练集数据,然后输出相应模型的参数。最佳输出是这些参数可以在测试数据集上获得良好的结果。简而言之,超网络实际上是一个元网络。
传统方法是使用训练集直接训练模型,但如果使用超网络,则不需要训练,放弃反向传播和梯度下降,直接输出参数,这相当于超网络是如何学会学习图像识别的。参见文章末尾的
在本文《hypernetwork》中,作者使用hyperNetwork生成RNN权重,发现它可以为LSTM生成非共享权重,在字符级语言建模、手写字符生成和神经机器翻译等序列建模任务中取得最先进的结果。超网络使用一组包含权重结构信息的输入,并为该层生成权重,如下图所示。
超网络生成前馈网络权重:黑色连接和参数与主网络相关联,而橙色连接和参数与超网络相关联。
超网络的连续学习模型
策略一:
然而,存储数据明显违背了连续学习的原则,因此本文提出了一种新的元模型FH (e (t),θ h)作为解决方案,可以将焦点从单一的数据输入输出转移到参数集{θ (t)}上,实现非存储的要求。这个元模型被称为任务条件超网。它的主要思想是建立任务e (t)和权重θ之间的映射关系,可以减少数据集的维数和处理数据集的存储,从而大大节省内存。
在本文《超网络的连续学习》中,模型由三部分组成。第一部分是任务条件超网。首先,超网将参数化目标模型,也就是说,不是直接学习特定模型的参数,而是学习元模型的参数,所以元模型将输出超网的权重,也就是说,超网只是一个权重生成器。
图A:正则化超网络生成目标网络权重参数;图b:迭代使用较小的块超网络来生成目标网络权重。
然后,利用超网络对连续学习输出进行正则化。在本文中,作者采用两步优化过程来引入保记忆超网络的输出约束。首先,θ h的计算原理(θ h是基于优化器的选择,作者在本文中使用了亚当),即寻找能使损失函数最小化的参数。损失函数的表达式如下图所示:
注:θ h是模型学习前超网的参数;θ h是一个外生变量;ββ输出是用于控制正则化强度的参数。
然后考虑模型的e (t),它就像θ h。在算法的每个学习步骤中,它需要及时更新并最小化损失函数。完成学习任务后,保存最后的e (t),并将其添加到集合{e (T)}中。
模型的第二部分是使用分区超网压缩模型。超级网络生成目标神经网络的整个权重集。然而,超网可以被反复调用,并且在每个步骤中只需要用块填充目标模型的一部分。这表明允许应用更小的可重用超网。有趣的是,任务可以在压缩状态下使用分区超网来解决,其中学习参数(超网的参数)的数量实际上小于目标网络参数的数量。
为了避免在目标网络的每个分区之间引入权重共享,作者引入块嵌入集{C}作为超级网的附加输入。因此,目标网络参数的完整集合θ _ trgt=[f h (e,c1),f h (e,cncc)]是通过在c上迭代生成的,并且e在此过程中保持不变。这样,超级网络可以在每个块上产生不同的权重。此外,为了简化训练过程,作者对所有任务使用了一组共享块嵌入。
模型的第三部分:无上下文推理:未知任务标识。从输入数据的角度确定要解决的任务。超网络需要任务嵌入输入来生成目标模型权重。在一些连续学习应用中,任务识别是清晰的或者可以从上下文线索中容易地推断出来,因此可以立即选择合适的嵌入。在其他情况下,选择合适的嵌入并不容易。
作者讨论了在连续学习中使用任务条件超网络的两种不同策略。
依赖于任务的预测不确定性。策略二:神经网络模型在处理非分布数据方面变得越来越可靠。对于分类目标分布,理想情况下,为不可见数据生成平坦的高熵输出,而为分布内的数据生成峰值低熵响应。提出了第一种简单的任务推理方法(HNET ENT),即给定任务识别的未知输入模式,用输出分布熵选择和量化预测不确定性最小的任务嵌入。
当生成模型可用时,可以通过将当前任务数据与过去合成的数据混合来规避灾难性遗忘。基准测试除了保护生成的模型本身,合成数据还可以保护另一个模型。事实上,这种策略通常是持续学习的最佳解决方案。在这些成功经验的启发下,作者探索了利用重放网络来增强深度学习系统。
合成重放是一种强大但不完善的连续学习机制,因为生成模式容易漂移,错误往往随着时间的推移而积累和扩大。在一系列关键观察的基础上,作者决定,就像目标网络一样,重放模型可以由超级网络指定,输出正则化公式是允许的。而不是使用模型自己的回放数据。因此,在这种组合方法中,合成重放和任务条件元建模同时工作,以避免灾难性遗忘。
(1)研究任务条件超网络在三种连续学习环境下的记忆保持能力,(2)研究顺序学习任务之间的信息传递。
作者利用MNIST、投洽会10和投洽会100的公共数据集对本文的方法进行了评价。评估主要有两个方面:为了进一步说明论文中的方法,作者考虑了四个连续学习分类问题中的基准测试:非线性回归,PermutedMNIST,Split-MNIST,Split CIFAR-10/100。
在评估实验中,作者根据任务识别识别出了三种连续学习情景:CL1,任务识别清晰;CL2,任务标识不明确,不需要显式推理;CL3,可以清楚地推断任务标识。此外,作者还在MNIST数据集上构建了一个完全连通的网络,超级参数的设置参照范·德·Ven·托利亚斯(2019)中的方法。在CIFAR实验中,选择ResNet-32作为目标神经网络。
van de ven to lias(2019):
gidom m . van de ven and Andreas . to lias .三种持续学习情景. arxiv preprint ar
参考文献:
注:图一:具有输出正则化任务条件的超网络(Supernetworks)可以很容易地对递增度的多项式序列建模,并且可以达到连续学习的效果。图二:类似于多任务直接训练目标网络找到的解决方案。图三:循序渐进的学习会导致遗忘。
在PermutedMNIST中,作者还随机排列输入图像数据的像素。发现在CL1中,任务条件超网在长度为T=10的任务序列中表现最佳。PermutedMNIST上任务条件超网络的性能非常好。与突触智能、在线EWC和深层生成重放方法相比,突触智能和DGR蒸馏将会退化,在线EWC不会达到非常高的准确度,如下图A所示。考虑到压缩比和任务平均测试集的准确性,即使目标网络的参数数量超过超网模型的参数数量,超网允许的压缩模型的准确性也保持不变,如下图B所示。
Split-MNIST是另一种流行的持续学习基准测试。在分裂MNIST中,数字按顺序配对,形成五个二进制分类任务。结果表明,任务条件超网络的整体性能最好。此外,任务在分裂MNIST问题上重叠,分裂问题可以跨任务传递信息,并且发现该算法收敛到超网配置,该超网配置可以生成可以同时解决旧任务和新任务的目标模型参数。如下图
图一所示:即使在低维空间,它仍然具有很高的分类性能,并且不会遗忘。图二:即使最后一个任务占据了高性能区域,并且在远离嵌入向量的情况下性能下降仍然是可以接受的,它的性能仍然很高。
在CIFAR实验中,作者选择ResNet-32作为目标神经网络。在实验过程中,作者发现任务条件超级网络基本消除了遗忘,并且会出现前向信息反馈,这意味着与独立于初始条件学习每项任务相比,来自先前任务的知识可以使网络性能更好。
综上所述,作者提出了一种新的连续学习神经网络应用模型——任务条件超网络,它灵活多样,可以作为一种独立的连续学习方法与生成回放相结合。该方法可以实现长记忆寿命,将信息传递给未来的任务,并满足连续学习的两个基本特征。
010-59000
HYPERNETWORKS:
http://arxiv.org/pdf/1609.09106.pdf
HYPERNETWORKS
http://arxiv.org/pdf/1906.00695.pdf
http://mp.weixin.qq.com/s/hZcVRraZUe9xA63CaV54Yg