增量学习【2】

IL2M: Class Incremental Learning With Dual Memory

补充一下知识蒸馏

在这里插入图片描述在这里插入图片描述我们从Loss来看,首先这整个网络的Loss包括3个部分:
(1)T网络和真实标签之间的交叉熵
(2)S网络(即这里的A网络)和真实标签之间的交叉熵(上面的硬目标)
(3)知识蒸馏Loss:KL Loss(emmmm…一般情况下我们也可以把他称为交叉熵)言归正传,第三部分也就是T、S网络之间的交叉熵,也就是T网络传授给S网络暗知识(即软目标)

关于知识蒸馏在IL中的应用:

对损失函数进行修改,使其在分类函数的同时包含蒸馏组分被广泛使用[5,8,12,24]。这些方法的灵感来自于不遗忘的学习(LwF)[15],这是一个早期的尝试,利用知识蒸馏[11]作为灾难性遗忘的解药。蒸馏损失减少了初始网络和更新网络中过去类的激活之间的差异。LwF具有不需要旧任务内存的特殊性,这是IL的一个重要优势。但是,与利用有限内存的方法相比,LwF的性能较低。iCaRL[24]是该类中比较有影响的算法。它建立在LwF的分类和蒸馏损失的组合之上,并添加了有限内存和最接近样本均值(NEM)分类器。

文章的主要改进

首先,我们简化了当前基于微调的方法,该方法使用分类和蒸馏损失的组合来弥补过去数据的有限可用性。我们发现,当允许使用内存时,蒸馏术语实际上会影响性能。

然后,我们修改了通常的类IL内存组件。与现有的作品类似,第一个内存存储了过去类的范例图像。这里引入了第二个内存,以存储在最初学习时获得的过去的类统计数据。这里的直觉是,当类的所有数据都可用时,它们最好被建模,并且它们的初始统计数据在不同的增量状态下都是有用的。在推理过程中会出现对新学习的类的预测偏差,因为数据集对它们有利而不平衡。

挑战在于如何让新class和过去class的预测更具可比性。为了做到这一点,通过利用两个内存的内容来纠正过去的课程。在内存和推理复杂性方面,该方法的增加成本可以忽略不计。

灾难性遗忘

基于DNN的IL方法所面临的主要问题是灾难性的遗忘[18],即它们无法在不忘记之前学习过的知识的情况下整合新的数据同时最小化计算、存储和时间需求是不可行的,现有的方法会在其中的一两个条件下做出妥协

一系列的研究[1,17,27,29]假设深度架构可以在一定程度上增长,从而集成新的数据。在这个假设下,不需要对过去的记忆

另一个研究趋势是,[5,8,12,24]假设DNN架构应该是固定的。他们通过增加蒸馏损失来调整DNN的微调过程,并使用过去的有限记忆来限制灾难性遗忘

IL2M使用了一个固定的DNN体系结构和一个对过去的有限内存。(使用了第二种趋势)

模型架构

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ayZI7UnI-1683272285240)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230417222433467.png)]

有限内存包括K = 4个过去类的图像样本,并在浅蓝色背景上表示。在添加新类以保持内存需求不变时,存储在内存中的类样例类的数量会减少。由于数据集越来越不平衡,IL训练过程越来越容易发生灾难性遗忘。第二个内存S用浅粉色表示,存储最初学习类时获得的统计信息。IL2M使这些类统计数据在不同的增量状态下可用,以纠正过去类的原始预测分数,以便使它们与新类的原始预测分数更具可比性。(最好以彩色观看。)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IlGLRWDl-1683272285241)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230417223254203.png)]

这三个子图的比较表明,当内存容量较低时,过去类和新类之间的分数差距越高。普通的微调会产生一种有利于新类的预测偏差。这种偏差主要是由于在IL类中出现的新类的不平衡。因此,来自过去类的大部分图像被预测为属于新类(关于错误类型的详细分析,请参见补充材料)。由于有界内存中适合的类数量的增加,每个子图中的间隙也倾向于从左到右增长。

在这里插入图片描述

(结合它对于类别增量问题的解释来读这个公式)为了抵消这种对于新类别的倾向,作者提出了公式(1),其中 P P P对应 C i C_i Ci学习到的初始状态, N N N对应当前增量状态, p ( C i ) p(C_i) p(Ci)对应 C i C_i Ci在状态 N N N的原始预测分数, μ P ( C i ) \mu^{P}(C_i) μP(Ci) μ N ( C i ) \mu^{N}(C_i) μN(Ci)对应 C i C_i Ci在从所有训练数据和当前样本集分别得到状态 P P P N N N的平均分类得分, μ ( M N ) \mu(M_N) μ(MN) μ ( M P ) \mu(M_P) μ(MP)分别代表由所有新训练数据的平均预测分数给出的状态 N N N P P P下的模型置信度。后面解释过,由于类作为新的类第一次在所有训练图像中被学习时是状态 P P P阶段,其平均预测得分 μ P ( C i ) \mu^{P}(C_i) μP(Ci)可能高于 μ N ( C i ) \mu^{N}(C_i) μN(Ci),因此与 p ( C i ) p(C_i) p(Ci)相比,这一项通常会增加 p r ( C i ) p^r(C_i) pr(Ci)

只有当一个图像最初被预测为属于一个新的类时,校正才应用于过去的类预测。就有利于新类的不平衡驱动的错误而言,这种情况是风险最大的。否则,我们认为修正是不必要的,因为过去的类是直接预测的,并且对新的类没有预测偏差。

有一个感兴趣的实验

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值