当前位置: 主页 > 学术动态 >

基于实例级和类级对比学习的图像分类增量学习算法

点击数:   更新日期: 2022-07-15

中文题目:基于实例级和类级对比学习的图像分类增量学习算法

论文录用时间: 2022年4月26日

论文题目:Instance-level and Class-level Contrastive Incremental Learning for Image Classification

录用会议: 2022 International Joint Conference on Neural Networks (IJCNN) CCF-C类会议

作者列表:

1) 韩佳艺 中国石油大学(北京)信息科学与工程学院 控制科学与工程 研20

2) 刘建伟 中国石油大学(北京)信息科学与工程学院自动化系

背景与动机:

增量学习主要包括三种不同的场景:任务增量学习、类增量学习和域增量学习。在许多实际情况下,如数据加密、内存限制等,使得深度学习模型很难获得之前任务的全部数据,这使得深度学习模型在模型泛化时出现灾难性遗忘,即随着新任务的增加,模型对旧任务的识别能力急剧下降。目前最流行的增量学习方法可以分为三类:基于数据回放的方法、基于正则化的方法和基于模型结构的方法。然而这些方法或严重占用GPU内存,或引入的新数据概率分布影响原有的概率分布,数据类间与类内分布都随着新数据的加入产生严重的畸变。以往的研究侧重于使新模型的输出或中间特征尽可能与旧模型相似,而忽略了类的内部分配信息。我们认为任务数据的内部类信息能够有效地反映样本之间的关联模式和内在性质,因此保持任务数据之间的内部类关系有助于缓解灾难性遗忘的负面影响。我们发现,对比学习在自监督任务下表现出良好的性能,可以增强鲁棒性,使表示更紧凑。我们提出了一种基于实例级和类级对比损失和知识蒸馏(IL-ICCKD)的增量学习算法。具体来说,我们鼓励我们的模型从实例特征和类内部分配的角度来不遗忘过去所学到的知识。同时,我们的模型使用空间组增强注意力机制,使学习到的表征掌握子特征的空间分布。



设计与实现:

具体来说,新任务数据与存储在Buffer中的数据连接在一起作为输入,然后投影到特征空间中。对一个样本来说,旧模型生成的隐表示作为锚点,新模型提取的隐表示作为正例,其余图像作为负例。我们对学习到的特征矩阵的行和列进行对比学习。特征矩阵的每一行表示批量中的每个实例,列表示类赋值概率。IL-ICCKD的损失函数由三大部分组成,一是来自新任务和旧任务的正样本和负样本的双重对比损失。二是知识蒸馏损失,即在原有的类样本上保持分类模型的输出,三是新任务分类损失,公式为:


            (1)

(1)中为新任务分类损失


            (2)

image012.png为网络的softmax输出,为真实one-hot标签。

(1)中为双对比损失,为超参数:


            (3)

这里为基于实例特征的对比学习损失函数:


            (4)


为类内分配对比损失:


            (5)


为正则化项:(6)

(1) 中的为知识蒸馏损失:


            (7)



结论:

我们将IL-ICCKD与11种先进的增量学习算法进行比较,从多个角度分析我们的实验结果,并进行消融实验来探讨模型各组成部分的贡献。我们使用三个数据集:Split Cifar10, Split Cifar100 and Split Tiny-ImageNet在类增量学习任务和任务增量学习任务上测试我们的模型。实验结果如下表所示,评价指标为平均准确率:

Dataset

CIFAR10

CIFAR100

Tiny-ImageNet

BUFFER

Scenario

Class-IL

Task-IL

Class-IL

Task-IL

Class-IL

Task-IL

SGD

19.62

61.02

4.33

39.91

7.92

18.31

Upper-bound

92.2

98.31

70.73

95.22

59.99

82.04

LWF

19.61

63.29

4.26

25.02

8.46

15.85

SI

19.48

68.05

4.6

38.37

6.58

36.32

oEWC

19.49

68.29

3.49

23.13

7.58

19.20

200

GEM

25.54

90.44

8.17

68.56

-

-

ICARL

49.02

88.99

19.26

71.56

7.53

28.19

A-GEM

20.04

83.88

4.73

58.88

8.07

22.77

GSS

39.07

88.80

6.35

41.94

0

0.00

ER

44.79

91.19

9.84

69.40

8.67

39.28

HAL

32.36

82.51

7.60

51.49

-

-

FDR

30.91

91.01

11.67

68.78

-

-

DER

61.93

91.40

18.66

72.21

10.96

39.27

OURS

63.23

91.06

22.09

76.13

12.93

40.02

500

GEM

26.2

92.16

12.45

71.69

-

-

ICARL

47.55

88.22

24.71

77.99

9.38

31.55

A-GEM

22.67

89.48

4.74

59.58

8.06

25.33

GSS

49.73

91.02

7.44

56.18

-

-

ER

57.74

93.61

14.64

74.45

10.4

48.82

HAL

41.79

84.54

9.55

57.03

-

-

FDR

28.77

93.29

18.00

75.20

-

-

DER

70.51

93.40

28.70

77.30

10.96

39.27

OURS

72.58

93.17

32.24

82.79

19.77

51.36

下图展示了各个模型在基准数据集CIFAR10 (BUFFER=200)和CIFAR100 (BUFFER=200)上的平均精度。我们的模型在两个任务阶段都显示出绝对优势。





a)CIFAR10 , 5 tasks b) CIFAR100, 10 tasks

结论与展望:

我们提出一种基于重放的增量学习算法,应用对比学习和知识蒸馏作为联合约束,鼓励模型从实例特征和类内分配概率两方面保持对过去所学知识的有效记忆,从而有效缓解灾难性遗忘问题。为了捕捉每个子特征中最重要的部分,改善特征的空间分布,我们的模型引入了空间群体增强注意机制。未来,我们将重点关注模型轻量级的实现,解决增量学习中普遍存在的类不平衡问题。