Finding Task-Relevant Features for Few-Shot Learning by Category Traversal论文笔记

Finding Task-Relevant Features for Few-Shot Learning by Category Traversal

原文为CVPR 2019 Oral
原文链接

Motivation:

文章指出很多Few shot的工作只关注query和support之间的特征的区别(inter-class),而忽略了support set集合里面本身的特征就有区别(intra-class)。所以文章提出了一种新的模快category traversal module (CTM),用在feature extractor里面,用于发现在support类里面的一个特征。
这个Motivation可以用论文中的一张图展示出来:
Finding Task-Relevant Features for Few-Shot Learning by Category Traversal论文笔记
图中(a)表达的就是inter-class feature,假设有两个特征,color和shape。图中的support i与query相比,color的特征不同,但shape的特征相同。所以distance为1。再比如support ii与query相比,颜色和形状都不一样,所以它们之间的距离为2。图中(b)表示的就是intra-class feature,比如在support set ii中,我们可以看到,support samples之间最共同的特征是color,因此我们判断color就是support set ii最具有代表性的特征,而不是shape。

Category Traversal Module (CTM)

文章利用以下模快来提取CTM来提取intra-class feature和inter-class feature,结构如下图所示,包含两个主要的模快concentrator和projector。Mask pp 的作用是对support和query产生于task有关的特征I(S)I(S)I(Q)I(Q)。任务为N-way K-shot。
Finding Task-Relevant Features for Few-Shot Learning by Category Traversal论文笔记

Concentrator

文章中说concentrator的功能是去提取support set中一个类中哪些是的共同特征(intra-class feature commonality),它可以表示为:
Finding Task-Relevant Features for Few-Shot Learning by Category Traversal论文笔记
其中,m和d表示的是channel和wide。整个模快可以分为两步,第一步就是把fθ(S)f_{\theta}(S)输入到一个CNN Block,将(NK,m1,d1,d1)(NK,m_1,d_1,d_1)变为(NK,m2,d2,d2)(NK,m_2,d_2,d_2)。第二步即为对每个class做一个average操作,这样就将(NK,m2,d2,d2)(NK,m_2,d_2,d_2)变成了(N,m2,d2,d2)(N,m_2,d_2,d_2)

Projector

Projector的目的即是提取class和class之间相关有用的特征(inter-class uniqueness),并且去掉(Mask out)那些不相关的特征。例如在第一张图(a)中展示的,color就是相关有用的特征,而shape就是我们需要mask out的特征。该模块可以表示为:
Finding Task-Relevant Features for Few-Shot Learning by Category Traversal论文笔记
首先,先把Concentrator的输出的所有class在channel上面concatenate起来(N,m2)(1,Nm2)(N,m_{2}) \to (1,Nm_2),之后再通过一个CNN Block和一个在channel上的softmax学习到一个mask pp (This is used to mask the relevant feature dimensions for the task in the query and support set.)。

Reshaper

论文中原文为It is designed in light-weight manner with one CNN layer. 即Reshaper是一个轻量化的一层CNN Block。它主要的作用为匹配fϕ()f_{\phi}()与Mask pp的shape,从而让p对support和query的feature map产生影响。表示为:
Finding Task-Relevant Features for Few-Shot Learning by Category Traversal论文笔记

Choice of I()

I()即是把Mask ppfθ(S)f_{\theta}(S)fθ(Q)f_{\theta}(Q)结合起来的操作。
对于query,结合的方式是唯一的,即为:
Finding Task-Relevant Features for Few-Shot Learning by Category Traversal论文笔记
对于support有两种结合的方式,第一种叫sample-wise,第二种叫cluster-wise,如下图所示:
Finding Task-Relevant Features for Few-Shot Learning by Category Traversal论文笔记
它们的效果如下,sample-wise的performance较好:
Finding Task-Relevant Features for Few-Shot Learning by Category Traversal论文笔记

Results

CTM 和不同的Metric Learning的模快结合,均对performance有提升:
Finding Task-Relevant Features for Few-Shot Learning by Category Traversal论文笔记