文章汇总
问题
最近的方法通过元学习一个深度嵌入函数来解决小样本问题,使得嵌入空间上图像之间的距离符合它们的语义距离。然而,学习到的嵌入函数经常会过度拟合到不相关的特征[4,9,14],从而无法迁移到训练中尚未观察到的新类。
动机
与系统中的其他项目相比,一个项目获得了意义,因此相关信息可以从项目的关系结构中提取。
解决办法
通过(1)自相关表示(SCR)和(2)交叉相关注意(CCA)利用图像内部和图像之间的关系模式来实现这一目标。SCR模块将基表示转换为自相关张量,并从中学习提取结构模式。CCA模块计算两个图像表示之间的相互关系,并从中学习产生共同注意。
方法概述
SCR(a图)的目的:
用关系特征强化基础特征,帮助少样本学习者更好地理解图像中的“观察”。SCR对类内变化具有鲁棒性,并有助于对未知目标类的泛化.
CCA(b图)的目的:
CCA模块计算两个图像表示之间的相互关系,并从中学习产生共同注意。
摘要
我们建议从关系的角度出发,通过元学习“观察什么”和“参加哪里”来解决少样本分类问题。我们的方法通过自相关表示(SCR)和交叉相关注意(CCA)利用图像内部和图像之间的关系模式。在每个图像中,SCR模块将基本特征映射转换为自相关张量,并学习从张量中提取结构模式。
在图像之间,CCA模块计算两个图像表示之间的相互关系,并学习在它们之间产生共同关注。我们的关系嵌入网络(RENet)结合了两个关系模块,以端到端的方式学习关系嵌入。在实验评估中,该方法在miniImageNet、tieredImageNet、CUB-200-2011和CIFAR-FS四种广泛使用的少镜头分类基准上取得了较先进方法的一致性改进。
1. 介绍
少样本图像分类[11,28,55,75]旨在从少量示例中学习新的视觉概念。该任务定义为将给定的查询图像分类为目标类,每个类在训练过程中是不可见的,并且仅由少数支持图像表示。最近的方法[1,5,20,35,49,52,66,75,83,87]通过元学习一个深度嵌入函数来解决这个问题,使得嵌入空间上图像之间的距离符合它们的语义距离。然而,学习到的嵌入函数经常会过度拟合到不相关的特征[4,9,14],从而无法迁移到训练中尚未观察到的新类。虽然深度神经特征提供了丰富的语义信息,但如何在不受虚假特征干扰的情况下学习可泛化的嵌入仍然是一个挑战。
我们方法的中心原则是关系模式,即元模式,可能比个体模式更好地泛化;与系统中的其他项目相比,一个项目获得了意义,因此相关信息可以从项目的关系结构中提取。在此基础上,我们提出从关系的角度学习“观察什么”和“参加哪里”,并将它们结合起来,产生用于少样本学习的关系嵌入。
我们通过(1)自相关表示(SCR)和(2)交叉相关注意(CCA)利用图像内部和图像之间的关系模式来实现这一目标。SCR模块将基表示转换为自相关张量,并从中学习提取结构模式。深度特征图的自相关通过将特征图的每次激活与其邻域相关联来编码丰富的语义结构。我们在其上进行表征学习,使图像的相关结构模式脱颖而出(图1 (a)->(b))。另一方面,CCA模块计算两个图像表示之间的相互关系,并从中学习产生共同注意。相互关联对两个图像之间的语义对应关系进行编码。我们在互相关张量上学习高维卷积,通过卷积匹配对其进行细化,并基于查询和支持之间的语义关系产生自适应的共同关注(图1 (b)->(c))。
该方法将两个模块结合起来,以端到端的方式学习关系嵌入;它提取每个图像中的关系模式(通过SCR),生成图像之间的关系关注(通过CCA),并聚合交叉关注的自相关表示以产生用于少量分类的嵌入。在4个标准基准数据集上的实验表明,所提出的SCR和CCA模块能够有效地突出目标物体区域,显著提高少样本图像的分类精度。
2. 相关工作
Few-shot分类
近年来的小样本分类方法大致分为三种方法。基于度量的方法旨在学习一种嵌入函数,该函数将图像映射到度量空间,从而根据距离来区分一对图像之间的相关性[1,9,20,28,33,35,36,49,52,66,75,83,87]。基于优化的方法元学习如何在给定少量支持样本的情况下在线快速更新模型[12,55,61,69,84]。上述两方面的工作将少镜头分类作为一个元学习问题[2,19,63]。迁移学习方法[6,8,16,38,51,59,73,79,90]最近表明,早期预训练和随后的微调的标准迁移学习过程[48,85]是深度骨干网络的少量学习的强大基线。其中,我们的工作属于基于度量的方法。基于度量的few-shot分类器背后的主要思想是真实图像分布在一些感兴趣的流形上,因此在训练类上充分训练的嵌入函数可以通过插值或外推特征来转移到未见目标类的嵌入图像中[64,72]。我们的工作通过学习自我和交叉关系模式来提高嵌入的可转移性,这些模式可以更好地推广到看不见的类。
自相关
自相关或自相似通过测量局部斑块在其邻域内的相似性来揭示图像的结构布局[65]。早期的工作使用自相关本身作为视觉对应[74]、目标检测[7]和动作识别[25,26]的鲁棒描述符。最近的研究[27,31,89]采用自相关作为深度神经网络的中间特征变换,并表明它有助于网络学习语义对应[27]、图像翻译[89]和视频理解[31]的有效表示。在此基础上,我们引入了基于SCR的小样本分类模块。然而,与之前工作中使用的自相关不同,我们的SCR模块使用通道自相关来为图像识别保留丰富的语义信息。请注意,虽然自注意[54,78]也计算自相关值作为聚合的注意权重,但它不直接使用自相关张量进行表示学习,因此与这条研究路线不同。
互相关
在计算机视觉中,相互关系一直是解决一系列相关问题的核心。它通常作为神经网络中的成本-体积或相关层来实现,计算两个特征映射之间的匹配成本或相似度,并用于立体匹配[40,86]、光流[10,67,82]、视觉对应[34,42,45,58]、语义分割[43,68]、视频动作识别[30,77]、视频对象分割[22,47]等。最近的一些few-shot分类方法[9,20,35,87]采用查询和每个支持之间的相互关联来识别相关区域进行分类。然而,这些方法[9,20,35,87]都没有在互相关中利用特征的几何关系,并且由于外观变化较大,往往存在不可靠的相关性。与之前的方法不同,我们的CCA模块学习用4D卷积来细化相互关联张量,过滤掉几何上不一致的相关性[42,58],以获得可靠的共同关注。在我们的实验中,我们与[20]中最相关的工作进行了深入的比较。
我们的贡献可以总结如下:
- 我们提出学习用于少镜头分类的自相关表示,提取图像中可转移的结构模式。
- 我们提出了用于少镜头分类的交叉相关注意模块,该模块通过卷积滤波学习图像之间可靠的共同注意。
- 在四个标准基准上的实验表明,我们的方法达到了最先进的水平,烧蚀研究验证了组件的有效性。
3. few-shot classification的初步研究
few-shot classification的目的是在给定目标类别的情况下,将图像划分为目标类别。深度神经网络很容易对如此少量的注释样本进行过拟合,因此大多数少镜头分类方法[55,66,75]采用带有情景训练的元学习框架进行少镜头适应。在少样本分类中,使用来自类别的训练数据对模型进行优化,然后对来自未见类别的测试数据进行评估,其中.
和都由多个集组成,每个集都包含一个查询集,支持集
N个类,每个类有K个图像,即N-way K-shot集[11,75]。在训练过程中,我们迭代地从中抽取一个episode,并训练模型学习从到的映射。在测试过程中,模型使用学习映射如何将分类为从中采样的支持集S中的N个类之一。
4. 我们的方法
我们的方法在本节中,我们介绍关系嵌入网络Relational Embedding Network(RENet),它解决了从关系角度泛化到看不见的目标类的挑战。图2说明了整个体系结构,由两个主要的可学习模块组成:自相关表示(SCR)模块和交叉相关注意(CCA)模块。我们首先在4.1节中简要概述了所建议的体系结构。然后,我们分别在第4.2节和第4.3节介绍SCR和CCA的技术细节,并在第4.4节描述我们的训练目标。
图2:RENet的总体架构。基本表示,和被转换成自相关张量,和,然后由卷积块g分别更新为自相关表示,和。在这对图像表示之间计算互相关C,然后通过卷积块h将其细化为
,并将其双向聚合以生成共同关注图和。这些共同关注映射被应用于相应的图像表示
和,它们被关注的特征被聚合以分别产生最终的关系嵌入和。
4.1. 体系结构概述
给定一对查询图像和一个支持图像和,主干特征提取器提供基本表示。SCR模块通过以卷积方式分析图像表示中的特征相关性,将基本表示转换为自相关表示。然后,CCA模块使用自相关表示生成共同关注图,它们将聚合到图像嵌入上,从而给出空间关注权重。将图2所示的过程并行应用于所有支持图像,然后将查询分类为与其最近的支持嵌入的类。
4.2. 自相关表征Self-Correlational Representation(SCR)
SCR模块采用基本表示Z,并将其转换为更多地关注图像中的相关区域,为CCA模块准备可靠的输入,CCA模块分析一对不同图像之间的特征相关性。图3a说明了可控硅模块的架构。
图3:SCR和CCA模块的架构。
(a): SCR模块通过对U × V维进行卷积来捕获输入自相关R中的关系模式。将结果g(R)添加到基本表示Z中,形成自相关表示F (Eq. 2)。
(b): CCA模块将相互关系进行细化,将其总结为共同注意图(Eq. 4)。
自相关计算
给定一个基表示,我们计算C维向量在每个位置的Hadamard积
和邻域的张量,并将它们集合成一个自相关张量。滥用符号,张量R可以表示为具有C维矢量输出的函数:
式中对应于邻域窗口中的相对位置,包括中心位置。注意,特征映射的边缘是零填充的,以便对边缘进行采样。类似类型的自相关,即自相似性,已被用作图像和视频的关系描述符,以抑制外观的变化并揭示结构模式[65]。与之前的方法[7,25,65]不同,我们使用通道相关,保留了特征向量的丰富语义进行分类。
自我相关表征学习
为了分析R中的自相关模式,我们沿着U × V维应用了一系列二维卷积。如图3a所示,为了提高计算效率,卷积块遵循瓶颈结构[71],它由一个用于信道大小缩减的点向卷积层、两个用于变换的3×3卷积层和一个用于信道大小恢复的点向卷积层组成。在卷积之间,插入了批处理归一化[24]和ReLU[46]。该卷积块g(·)在没有填充的情况下逐渐聚集局部相关模式,从而将其空间维度从U × V降低到1 × 1使输出与具有相同的大小,即。这种分析结构模式的过程可能与基本表征Z中的外观模式互补。因此,我们将这两种表征结合起来,产生自相关表征
用关系特征强化基础特征,帮助少样本学习者更好地理解图像中的“观察”。我们的实验表明,SCR对类内变化具有鲁棒性,并有助于对未知目标类的泛化.
4.3. 交叉相关注意 Cross-Correlational Attention(CCA)
CCA模块接受一个输入对查询,支持、,并生成相应的注意图、。这些空间注意图用于将每个表示聚合为嵌入向量。图3b显示了CCA模块的流水线。
互相关计算
我们首先将查询和支持表示转换为使用点向卷积层的更紧凑的表示,将其通道维数C降低到。从输出,,我们构建一个四维相关张量:
式中为特征图上的空间位置,sim(·;·)表示两个特征之间的余弦相似度
卷积的匹配
互相关张量C可能包含不可靠的相关性,即匹配分数,因为在少数镜头学习设置中存在很大的外观变化。为了消除这些不可靠匹配的歧义,我们采用卷积匹配过程[42,58],该过程通过带有匹配核的4D卷积来细化张量;张量上的四维卷积通过分析四维空间中相邻匹配的一致性来起到几何匹配的作用。如图3b所示,卷积匹配块h(·)由两个4D卷积层组成;第一次卷积产生具有多个匹配核的多个相关张量,将通道大小增加到,第二次卷积将它们聚合为单个4D相关张量,即。批处理归一化和ReLU在卷积之间插入。我们的经验发现,两个4D卷积层足以满足我们的CCA模块。
Co-attention计算
从改进的张量中,我们生成了共同关注图,它们揭示了查询和支持之间的相关内容。查询的注意图由
式中为特征图上的位置,γ为温度因子。因为是位置之间的匹配分数,Eq.(4)的注意值可以理解为将查询图像位置的匹配分数转换为与支持图像位置匹配的平均概率。支持的注意图类似地通过在Eq.(4)中切换查询和支持来计算。
这些共同注意图通过元学习交叉相关模式和根据测试时给出的图像调整“去哪里”来提高少数镜头分类的准确性。
4.4. 学习关系嵌入
在本节中,我们从推导出关系嵌入。然后,我们通过描述学习目标来总结我们的方法。
Attentive pooling.
为了得到查询的最终嵌入,将的每个位置乘以空间注意图,然后池化:
注意,的元素之和为1,因此关注的嵌入是在支持上下文中关注的的凸组合。
支持的最终嵌入的计算方法与此类似,即用参加支持特征映射,然后池化:
在N-way K-shot分类设置中,这种共关注池生成查询的一组NK不同视图,,以及查询上下文中参与的一组支持嵌入,。
学习目标
提出的RENet是从头开始的端到端可训练的。最近的少样本分类方法大多采用初始预训练和随后的情景训练的两阶段训练方案[61,81,83,87],而我们采用单阶段训练方案[20,49](me:没有预训练模型,从头开始训练?),通过结合基于锚定的分类损失和基于度量的分类损失两种损失来联合训练所提出的模块和骨干网络。首先,是在平均池基本表示之上用一个额外的全连接分类层来计算的。这一损失指导模型正确地对类查询进行分类:
其中和分别是全连接层的权值和偏差。
接下来,基于度量的损失[66,75]通过查询和支持原型嵌入之间的余弦相似度计算。在计算损失之前,我们对K个查询嵌入向量进行平均,每个向量都在第n个类的第K个支持上下文中参与,以计算。同样,我们对每个类的K个支持嵌入取平均值,得到一组原型嵌入:。基于度量的损失引导模型将查询嵌入映射到接近同一类的原型嵌入:
在sim(·;·)为余弦相似度,为标量温度因子。在推理时,查询的类被预测为最近原型的类。
目标结合了这两种损失:
其中λ是平衡损耗项的超参数。
注意,计算所涉及的全连接层在推理过程中被丢弃。
5. 实验结果
在本节中,我们在标准基准上评估RENet,并将结果与最新技术进行比较。我们还进行了消融研究,以验证主要成分的效果。有关其他结果和分析,请参阅附录。
5.1. 数据集
为了进行评估,我们使用了四个标准的少镜头分类基准:miniImageNet、tieredImageNet、CUB-200-2011和CIFAR-FS。
miniImageNet[75]是ImageNet[60]的一个子集,由均匀分布在100个对象类上的60,000张图像组成。训练/验证/测试部分分别由64/16/20个对象类组成。
tieredImageNet[57]是一个具有挑战性的数据集,其中训练/验证/测试分割在ImageNet层次结构的超类方面是不相交的,这通常需要比其他数据集更好的泛化。各自的训练/验证/测试分割由20/6/8个超类组成,这些超类是351/97/160个子类的超集。
CUB-200-2011 (CUB)[76]是一个鸟类物种细粒度分类数据集,由100/50/50个对象类别组成,分别用于训练/验证/测试分割。根据最近的研究[83,87],我们将预裁剪的图像用于人工注释的边界框。
CIFAR-FS[3]是建立在CIFAR-100[29]数据集之上的。根据最近的工作[3],我们使用相同的训练/验证/测试分割,分别由64/16/20个对象类组成。
对于所有数据集,在对象类方面是不相交的,例如
5.2. 实现细节
根据最近的几次分类工作[49,56,83,87],我们采用了ResNet12[18]。backbone网络以空间大小为84 × 84的图像作为输入,并提供一个基本表示形式然后通过一个片段的通道均值来移动其通道激活[87]。对于我们的CCA模块,我们采用核大小为3 × 3 × 3 × 3的可分离四维卷积[82],因为它可以有效地近似原始四维卷积[58],并且在内存和时间方面都具有效率。将4D卷积
的输出归一化,使得空间映射对中的实体为零均值和单位方差,以稳定训练。我们在SCR模块中设置,在CCA模块中设置。对于N-way K-shot评估,我们在一个集中为每个类测试了15个查询样本,并报告了随机抽样的2000个测试集的95%置信区间的平均分类精度。ImageNet导数、CIFAR-FS、CUB的超参数λ分别设置为0.25、0.5、1.5。对于CUB, γ设置为2,否则设置为5。在我们的实验中设置了。
5.3. 与最先进的方法比较
表1:在(a) miniImageNet和(b) tieredImageNet上与最先进的5-way 1-shot和5-way 5-shot准确率(%)进行比较,95%置信区间。
表2:在(a) CUB-200-2011和(b) CIFAR-FS上与最先进的5-way 1-shot和5-way 5-shot准确率(%)的95%置信区间的比较
5.4. 消融实验
为了研究RENet中核心模块的影响,我们进行了广泛的消融研究,无论是在没有每个模块的情况下,还是用其他模块代替它们,并比较了5 way1 shot设置的结果。为了便于比较,我们使用了一个称为GAP基线的基线模型,该模型将全局平均池化应用于基本表示以获得最终嵌入。
6. 结论
在本研究中,我们提出了一种基于自相关表示和交叉相关注意的基于少样本分类的关系嵌入网络。结合这两个模块,我们的方法在四个标准基准上达到了最先进的水平。我们的一个实验观察是,自注意机制[54,78]容易过度拟合到训练集,因此它不能推广到少数镜头学习环境中未见过的类。然而,我们的工作表明,学习视觉特征之间的结构相关性可以更好地推广到看不见的对象类别,并为少量图像识别带来性能改进,这表明关系知识作为可转移先验的一个有前途的方向。
参考资料
论文下载(ICCV 2021)
https://arxiv.org/abs/2108.09666
代码地址
https://github.com/dahyun-kang/renet