CEC论文详解Few Shot Incremental Learning with Continually Evolved Classifiers. CVPR2021

Few Shot Incremental Learning with Continually Evolved Classifiers

 

CVPR2021,由新加坡南洋理工大学发表

本文利用Graph即图模型,将拓扑结构与增量模型向结合,从而取得不错的效果。

论文地址:

[2103.16788] DER: Dynamically Expandable Representation for Class Incremental Learning (arxiv.org)

目录

1.贡献点

2. 方法

2.1 模型框架

2.1 CEC(continually evolved classifier)

2.3 Pseudo Incremental Learning

3.实验

3.1 可视化

3.2 方法对比

4.总结


1.贡献点

本文依然解决Few-shot class incremental learning(FSCIL)问题,从两个方面来进行解决:

  1. 特征提取模块与分类器解耦,每次增量任务只更新分类器。特征提取模块是pretrain好的backbone, 分类器是non-parameter的class mean classifier(个人猜测类似于NCM)
  2. 为了使得分类器适用于所有类别,本文提出Continually Evolved Classifier (CEC),将graph模型应用于分类器。
  3. 多个数据集上SOTA

CEC论文详解Few Shot Incremental Learning with Continually Evolved Classifiers. CVPR2021_第1张图片

2. 方法

2.1 模型框架

对FSCIL问题,base数据大量,inc数据较少,因此用base数据训练backbone即可。用calssfier来试应增量任务的变化。

即使对旧任务,学到了很好的分类边界,但是因为新任务的到来,旧模型的决策边界可能不好用了。因此本文引入新的Continually Evolved Classifier (CEC)来进行适应。将Graph Attention Network(GAT,ICML2018)图注意力模型。引入到此模型之中。从而实现了与增量任务的结合。

CEC论文详解Few Shot Incremental Learning with Continually Evolved Classifiers. CVPR2021_第2张图片

先用base数据D0训练获得backbone R的权重,然后利用base数据作为伪增量,训练Graph模型获得权重{W0},

随着增量任务的到来,Graph模型的节点和权重随之增加,权重增加为{W0,W1},再增加到{W0, W1, ...Wi}

2.1 CEC(continually evolved classifier)

前I个任务,模型学到的权重为:

对于CNN模型而言:小写w上标c下标i。上标c表示类别为c,下标i表示第i个增量任务。w上标c下标i表示第i个增量任务中区分类别c的权重。这里采用CNN的模型权重是为了后面与Graph模型进行区分。

大写W权重由小写w权重构成,意味着每个增量任务从0到I中,每个类别都会有一个权重。

作者把GAT运用于其中。

  1. GAT的节点是基于注意力机制进行集合,基于拓扑关系,节点间的连接关系具有不变的特性,利于保持旧知识
  2. GAT模型可以增加节点,且不改变其他的节点,新任务可以利用旧任务训练好的GAT

关于GAT的知识,因为涉及到Graph的知识,因此较为繁琐,作者也适当进行了规避,这里不多做介绍,这里只介绍GAT如何对权重进行处理:

U表示线性变换矩阵,小w上标k表示对所有的k分类的任务,都可以通过线性变换,和一个注意力系数的线性相加,更新获得第j个任务权重j’.

GAT的作用就是获得线性变换矩阵U和注意力系数ajk。通过此公式我们可以看出,classifier的权重其实经过了更新,这个更新过程是新权重除了新训练所得的权重之外,classifier旧权重也进行了线性变换和注意力机制的更新。

算法流程:

CEC论文详解Few Shot Incremental Learning with Continually Evolved Classifiers. CVPR2021_第3张图片

输入:

根据基础任务数据D0训练所得的backbone模型R,以及一个随机初始化的GAT模型G

增量任务到来之后,只需要对新增任务训练classifier, 然后训练GAT模型,用GAT模型的输出平衡classifier各个类别之间的关系。

2.3 Pseudo Incremental Learning

见算法流程中步骤5-8,本文将旋转这个数据增强的手段当作了贡献点之一,起名叫做Pseudo Incremental Learning.(PIL)

作者通过旋转的样本增扩(PIL),然后将样本分为了support set和query set,(类似于训练集和验证集,但是在Graph神经网络之中,这两个集合的作用不太一样),support set用于训练分类器,训练好的分类器用query set训练GAT网络。

关于PIL这个流程的作用,效果巨大,通过后续实验可见图6,可能与GAT的某些特性有关:

CEC论文详解Few Shot Incremental Learning with Continually Evolved Classifiers. CVPR2021_第4张图片

加入了PIL之后,网络准确率提升巨大。

3.实验

3.1 可视化

CEC论文详解Few Shot Incremental Learning with Continually Evolved Classifiers. CVPR2021_第5张图片

通过t-SNE可视化,新类的学习过程,特征空间上的点分的更开。

3.2 方法对比

CEC论文详解Few Shot Incremental Learning with Continually Evolved Classifiers. CVPR2021_第6张图片

4.总结

A+B, A是小样本增量学习FSCIL,B是图注意力网络GAT,本文将两个结合起来凑贡献点。

中间加入了一些trick提升准确率,以使得模型达到SOTA,例如旋转的样本增扩,起名为Pseudo Incremental Learning

 

 

你可能感兴趣的:(机器学习,continual,learning,论文解析)