Keywords:FSL,Meta Learning,Constrastive learning,Cross-view episodic learning
tips:本文的cross-view我个人理解就是对同一张图片用不同的data augmentation后得到的图片彼此属于不同view。
1️⃣Cross-view Episodic Training
E表示Episode的缩写。将E视作共享上下文(shared context),将two augmented episodes视作E的两个views(看图把这两个view的特征共同输入module中去了所以叫cross-view吧)。经过GAP后,得到全局向量hi,然后计算两个集合S1和S2中每个类的原型、送入Attn模块加工得到处理后的原型(注意只有support里面的样本会被计算)。用下式计算query集合中的每个样本的概率分布
τ是数据增强方式的分布,d是欧氏距离,然后再计算下面的损失。m和n可以取1或2,就如图上所示计算L11 L12 L21 L22的损失
最后the cross-view classification loss as follows:
2️⃣Distance-scaled Contrastive Loss
如图所示,投影后得到的projected vector,然后用下面的式子计算得到每个class的原型。
注意,求原型的时候,用的是E1和E2所有数据,在(12)中用的是Q1和Q2中的数据。式子中zi和zH互为正样本对,这里的正样本对也是扩充了的。zA是另一个样本的集合,新增了原型。
3️⃣total loss
baseline是FEAT。在3个数据集上进行了实验:miniImageNet dataset、tieredImageNet、CIFAR-FS。table就不放了,看原文。然后还进行了消融实验证明每个loss function的功能。
这篇paper的损失函数很多,主要的创新点是将对比学习更好融合进two-stages的模型中去。每个损失作者都在讲解具体公式前说了下aim to……,我的阅读paper量还不够所以觉得太绕了、说不清,只能通过ablation实验明白每个loss的作用。