TNNLS 22|分数不是关键,排名才是关键:针对排行榜的模型“行为”保持与灾难性遗忘的克服...

33db4e757f591a9afe1cdfaeac4ca9ea.gif

本文认为对于类增量学习任务而言,单个点在特征空间的位置不是关键,它们之间距离值也不是关键,它们两两距离的排序才是重中之重。为此我们提出了一种新的类增量学习模型并设计了一个可导的排序算法,已被 IEEE TNNLS (CAS Q1)在线发表。

论文标题:

Model Behavior Preserving for Class-Incremental Learning

论文作者:

刘雨、洪晓鹏、陶小语、董松林、史金钢、龚怡宏

关键字:

增量学习、类增量学习、特征空间拓扑保持、可导排序函数

对于深度模型在学习新任务时对旧任务和旧知识的灾难性遗忘现象,已有较多研究进行了深入的探讨,也涌现了不少增量学习方面的好工作。这其中基于知识蒸馏的方法吸引了大量的关注,也取得了不少突破,比如 iCarL [1]、LUCIR [2]、TPCIL [3] 等等。然而,传统基于蒸馏的方法往往是对代表性样本(anchor,锚点)在特征空间的绝对位置施加一个 hard 约束,一旦新模型在这些锚点上的响应与旧模型出现差异,则直接进行惩罚。

我们认为,这种对单个样本特征空间绝对位置的“硬”保持过于严格了,它们会导致模型增量学习时无法很好兼顾旧知识保持和新知识学习。因此,我们认为在类增量任务下,克服灾难性遗忘的关键在于保持模型在历史样本集合上响应的全局特性。对此,我们在本文中重点关注了两种特性:

1. 模型特征空间的样本邻域关系(即 模型认为,哪个样本和哪个样本相似程度的整体情况)。如图 1 所示:a)增量学习之前,实例 A 的五个邻居(B 到 F)在特征空间的关系。不同的颜色代表不同的类别;b)当新数据(实例 G)到达时,传统基于知识蒸馏的增量学习方法对单个实例的绝对位置实施硬约束。如果实例 A-F 在学习之后(稍微)偏离其学习之前的原始位置,则模型将受到惩罚。在这种情况下,一旦节点前后出现小的扰动(如图中出现红色短划线的情况),在增量学习期间就必须严格减少这些扰动。在这种方式下,调整模型和重新组织特征空间以适应学习新数据的需要将变得困难;c)本文提出对邻域结构进行维持,保留实例之间距离的排名列表;只要实例之间谁和谁(更)相似的排名不变,可以允许实例在特征空间的位置及其距离的绝对值出现某种程度的改变。例如,实例 F(用 F0 表示其原始位置,更新之后位置变为F)在增量学习之前到之后的位置改变是显而易见的。但由于点间距离的排序保持不变(依然排行第 5 近),因此分类结果不受影响。这种机制为适应新实例新任务的学习提供了良好的灵活性。

2. 单个样本在 label 空间的模型响应优先顺序(即模型认为,当前样本属于哪个类别的可能性的整体偏好)。如图 2 所示,a)传统方法对标签置信向量进行硬约束。当类别 的输出置信度值出现扰动,即便这种扰动很微小,导致的微小差异也需要被用来计算损失,例如类别 和 对应标红的项所示。结果,增量学习器需要努力去最小化由这种小扰动引起的损失值,在平衡新类别学习和巩固旧类别方面负担很重,最终导致对新类别对应的新条目 相关的学习变得困难。b)与此不同的是,本文中我们对标签置信度排名表进行软约束。只有当排名表 发生变化才会受到惩罚;而如果仅仅是 内部的直接数值变化,则不施加惩罚。因此,增量学习器可以灵活地学习新类别的新条目并相应地调整置信向量。增量学习变得更为可塑和高效。

c365db7756418a269ad693dafcd6564c.png

▲ 图1:实例邻域保持的示意图。

4f1a3e9bdfeefaa4093b94dbfc1c30aa.png

▲ 图2:样本-标签优先级保持的示意图。

为此我们提出了一种新的类增量学习模型,以保持在模型输出响应下的样本邻域关系样本-标签优先级,从而在增量学习过程中较好保持旧模型的行为特性,实现对灾难性遗忘的克服。除掉交叉熵损失之外,它主要包含两个损失函数:即样本邻域保持损失(instance neighborhood-preserving,INP)和样本的标签优先级保持损失(label priority-preserving,LPP)。下边分别进行介绍。

1714ba5577fe3eb666627fd97f1cfb58.png


样本邻域保持损失

样本邻域保持损失在特征空间中保持样例之间相似度的排名表,其可以由下列公式计算:

429b587bac28b4ac35da83516576c9b5.png

其中, 和 分别为样本 在第 t 阶段模型产生的特征空间和第 t-1 阶段模型产生的特征空间中和样本 的距离在样本 所有邻居中的排名(假设升序排序)。公式 1 其实就是斯皮尔曼足迹距离(spearman footrule distance)[4]。

上述损失函数的形式保持了每个样本的所有邻居的排名表。但事实上,我们发现,只有在排名表靠前(即相似)的样本的位置对于拓扑保持乃至分类来讲才是更为重要的;而剩下的样本相对来讲并不那么重要。

举个通俗的例子,比如说同样有四条腿的哺乳动物在外观上看起来更为相似,因此理应关注它们之间相似度的排序,保证它们之间相似度在总相似度排名表的排序靠前;而哺乳动物和气球或者飞机不相似,这种情况下,我们很难去合理地指出,一个哺乳动物究竟应该和气球更像,还是应该跟飞机更像,因此去计较它们的相似度排序意义不大。

正是基于这种理解,我们对排名表进行了截断,换句话说,在新模型上形成的排行榜上,我们只约束(历史模型的)样本 i 前 k 个邻居所构成的子排行榜

dc2dcc3c5c9c3098f6d811f2bae11963.png

其中的 ,而 是在第 t 阶段模型下的对应 的子排行榜。

bd9c0952b363ccb3eaa65c76aacfd0c4.png


样本的标签优先级保持损失

相似的,我们定义样本的标签优先级保持损失 LPP 如下:

55657be4a4ea23283a6ba98f78088db7.png

其中 是样本 在第 t-1 阶段模型下的输出概率向量的排名表, 是第 t-1 阶段结果的所有类别总数。公式 3 相应的截断版本可以通过类似公式 2 计算,我们得到:

2c8367780c972a6cf628a302ada8a632.png

下图 3 进一步说明了截断 LPP 的计算过程。

f56cc6c136f0fb65b0809435391a76e2.png

▲ 图3: 标签优先级保持损失LPP计算示意图

5d0f67123c4d671e0c8c79ebf8bb5019.png


可导排序函数

其完成上述两个损失的逻辑设计之后,还有一个优化方面的问题尚待解决。排名表函数 是非连续函数,为了把它作为一个模块嵌入神经网络之中,并允许通过它参与反向传播,我们提出了基于二元比较的可导排序算法。

以笔者个人观点,这可能是整个论文得以实现的最关键一环,也是最体现研究人员主观能动性的一个创新

我们先给出如果通过二元比较,得到元素在排名表中的位置的计算方式:

引理1:如果序列中任意两个元素在不大于关系函数 下的比较结果已知,则整个序列的排序/排名表可以被确定。

证明:不失一般性,假设 。我们用标记函数 标记二元比对 的结果。当 时,;反之亦然。显然, 在排名表中的位置 可以通过下式确定:

caa4e480c560bf6283da1933d62d21bb.png

通俗地讲,在升序序列中,一个元素的排名,由它在二元比对中获胜的次数决定

公式 5 中,两两比对函数 仍然是不连续的。为此,我们可以使用任何阶跃函数的可导逼近来将比对差值 投影到 0 和 1 之间,比如 sigmoid 函数 。

至此,关于非连续的关键问题均已被解决。至于具体的可导排序实现,可以参考原文 Section IV. C

d57ce8d1196a67795d2731f904bf0ac8.png


整体目标函数

综合上边的介绍,考虑到类增量学习的分类要求,最终我们选取的目标函数为

b6d687fb27988d705830ac3a35ece2cc.png

第一项为交叉熵损失。

6c8f91b1b6d58b52c28cbf746f11aa88.png


实验结果

我们在 CIFAR100、IMAGENET-1000 和 IMAGENET-100 上进行了实验,和TPCIL [3]、LUCIR [2]、iCaRL [1]、EEiL 以及 LwF 等代表性算法进行了比对。主要的实验结果如下图和表所示:

e02b45792ab091daa0e2426c599cb2ee.png

▲ 图4:比对结果

5e1929ba4cb390a3ba2999e96f1a08c4.png

▲ 表格1:平均精度与遗忘率比对结果


此外,我们还提供各个部件的消融实验以及对不同的排名表距离函数等进行了比对,具体实验结果请参考原文相应段落。

小结:对于类增量学习任务而言,单个点在特征空间的位置不是关键,它们之间距离值也不是关键,它们两两距离的排序才是重中之重。为此我们提出了一种新的类增量学习模型,包含样本邻域排名表保持和样本在标签空间的排名表保持,并设计了一个可导的排序算法。相应算法具有被应用到更多任务的潜力。 

文章引用信息:

文章在 IEEE Xplore 主页的链接:

https://ieeexplore.ieee.org/document/9705128

Bibtex:

@ARTICLE{9705128,
author={Liu, Yu and Hong, Xiaopeng and Tao, Xiaoyu and Dong, Songlin and Shi, Jingang and Gong, Yihong},
journal={IEEE Transactions on Neural Networks and Learning Systems}, 
title={Model Behavior Preserving for Class-Incremental Learning}, 
year={2022},
volume={},
number={},
pages={1-12},
doi={10.1109/TNNLS.2022.3144183}}

Plain text:

Y. Liu, X. Hong, X. Tao, S. Dong, J. Shi and Y. Gong, "Model Behavior Preserving for Class-Incremental Learning," in IEEE Transactions on Neural Networks and Learning Systems, doi: 10.1109/TNNLS.2022.3144183.

outside_default.png

参考文献

outside_default.png

[1] S.-A. Rebuffi, A. Kolesnikov, G. Sperl, and C. H. Lampert, “ICaRL: Incremental classifier and representation learning,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit. (CVPR), Jul. 2017, pp. 2001–2010.

[2] S. Hou, X. Pan, C. C. Loy, Z. Wang, and D. Lin, “Learning a unified classifier incrementally via rebalancing,” in Proc. IEEE/CVF Conf. Comput. Vis. Pattern Recognit. (CVPR), Jun. 2019, pp. 831–839.

[3] X. Tao, X. Chang, X. Hong, X. Wei, and Y. Gong, “Topology-preserving class-incremental learning,” in Proc. Eur. Conf. Comput. Vis. Cham, Switzerland: Springer, 2020, pp. 254–270.

[4] R. Kumar and S. Vassilvitskii, “Generalized distances between rankings,”in Proc. 19th Int. Conf. World Wide Web (WWW), 2010, pp. 571–580.

更多阅读

9c3c0d804a361bffec9cc4cc36ecf704.png

8ea22f843bc9ee8ba0abfd0a7a5d83dd.png

3d6315cdd39ff6de976b3e643dca1aca.png

94ba0a66e0a3c3d30e8d1c722cfbca36.gif

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿

08fce6c87b6d0a0fdd23a240b9bedfd5.png

△长按添加PaperWeekly小编

🔍

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

·

60607269bc9ba9df7d600d1f3149739b.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
针对表格数据,为了避免增量学习中的灾难性遗忘,可以使用以下方法: 1. 采用基于记忆的增量学习算法。这种算法可以在训练过程中记录历史数据,并在后续学习中利用历史数据来避免灾难性遗忘。Python中可以使用开源的增量学习库,如scikit-multiflow、Creme等来实现基于记忆的增量学习算法。 2. 采用动态增量学习算法。这种算法可以在训练过程中动态地增加新的数据,并根据新的数据来更新模型参数,从而避免灾难性遗忘。Python中可以使用开源的动态增量学习库,如River等来实现动态增量学习算法。 下面是一个使用scikit-multiflow库实现基于记忆的增量学习算法的示例代码: ```python from skmultiflow.drift_detection.adwin import ADWIN from skmultiflow.lazy import KNN from skmultiflow.data import FileStream # 加载数据流 stream = FileStream('data.csv') # 初始化增量学习算法 adwin = ADWIN() knn = KNN(n_neighbors=5) # 开始增量学习 X, y = stream.next_sample() while True: if adwin.detected_change(): # 如果检测到数据流发生变化,重新训练模型 knn.reset() knn.partial_fit(X, y) adwin.add_element(knn.score(X, y)) X, y = stream.next_sample() if X is None: break # 在新数据上进行预测 X_new = [[1, 2, 3], [4, 5, 6]] y_pred = knn.predict(X_new) print(y_pred) ``` 在这个示例中,我们从一个数据流中读取数据,并使用KNN算法进行增量学习。同时,我们使用ADWIN算法来检测数据流是否发生变化,如果发生变化,我们重新训练模型。最后,我们可以使用训练好的模型在新数据上进行预测。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值