论文引用格式:Dong Y Y, Song B B and Sun W F. 2023. Local feature fusion network-based few-shot image classification. Journal of Image and Graphics, 28(07):2093-2104(引用格式:董杨洋, 宋蓓蓓, 孙文方. 2023. 局部特征融合的小样本分类. 中国图象图形学报, 28(07):2093-2104)[0 引 言深度卷积神经网络(deep convolutional neural networks,DCNN)(He等,2016;Krizhevsky等,2017)在视觉、语言和语音等广泛的研究领域中均取得了令人瞩目的成就(Gu等,2018)。然而,CNN强大的学习能力往往依赖于大量的带标注样本以及多次的迭代训练,当某些类别的样本数据不足或带标注样本数量过少时,CNN模型容易出现过拟合。此外,收集和标注样本也会耗费大量的人力物力,而且在现实的许多应用场景中(例如军事、医疗领域等),由于隐私、安全和伦理等因素,难以获得足够的带标注样本。相比之下,人类具有从少量样本数据中学习的能力,仅通过一幅或几幅标注实例便可以识别新类别。为了使神经网络系统具有类似人类的这种学习能力,一种称为小样本学习(few-shot learning,FSL)的机器学习方法受到研究者的关注(Lake等,2013;Santoro等,2016)。FSL的目的是使模型通过对每类少量标注样本的训练,以实现对这些类别新图像的识别。为了解决小样本分类问题,研究者通常采用元学习范式(Thrun和Pratt,1998;Vilalta和Drissi,2002),元学习的目标是在学习多个任务的过程中学会处理新任务。在元学习的小样本分类算法中存在两种主流方法,即基于优化的方法和基于度量的方法。在基于优化的方法中,一种途径旨在学习良好的模型初始化参数,使模型可以通过有限数量的标注样本和少量的迭代次数就可以适应新的分类任务。例如,Finn等人(2017)提出的MAML(model-agnostic meta-learning)及其多种变体(Antoniou等,2019;Sun等,2019;Jamal和Qi,2019;Rusu等,2019)。另一种途径是学习优化器,例如Ravi和Larochelle(2017)将LSTM(long short term memory)训练作为更新模型参数的优化器,取代随机梯度下降优化器。虽然这些基于优化的方法能够在有限的训练样本下实现对新类的快速适应,但在处理基类和新类之间的领域转换方面仍然存在困难。基于度量的方法,其目的是学习一个适当的特征空间来表示样本,在该特征空间中可以使用距离度量来区分来自不同类别的样本。例如,Vinyals等人(2016)提出的匹配网络,通过计算两个样本特征向量之间的余弦距离来表示其相似性。Snell等人(2017)提出的原型网络,以支持集中每类图像特征向量的均值作为其相应的类原型来学习度量空间,并使用欧几里得距离来计算样本相似性。Sung等人(2018)提出了关系网络,用一个由CNN构成的度量模块代替固定的距离函数,从而学习一种深度非线性度量方法。基于度量的方法通过距离函数直接计算测试图像特征向量和训练图像特征向量之间的距离来分类,能够避免小样本下分类器学习优化困难的问题,但这些方法往往仅使用图像的全局特征。而局部特征可以提供跨类别的可区分和可传递的信息,基于局部特征表示的度量方法有DN4(deep nearest neighbor neural network)(Li等,2019a)、DC+IMP(dense classification + implanting)(Lifchitz等,2019)和DeepEMD(deep earth mover’s distance)(Zhang等,2020)等。他们通过去掉CNN中最后的全局平均池化层来获得像素级的深层局部描述子,以此作为图像的局部特征表示。但这种深层局部描述子会丢失图像的上下文信息。此外,当使用固定的距离函数来度量时,模型分类效果很大程度上依赖于特征提取网络的性能。由于基于度量学习的方法简单有效而且广泛流行,基于此,为了能够有效利用图像的局部可区分信息并提高模型的特征表示能力和泛化能力,本文提出一种基于局部特征融合的小样本分类方法。1)将输入图像经过分块处理再送入特征提取网络以获得局部特征,该局部特征不仅包含用于提供跨类别的可区分的局部信息,同时还具有图像的上下文信息。2)针对特征提取网络难以学习并泛化的问题,本文设计了一个基于Transformer架构的局部特征融合模块来学习每幅图像的多个局部特征之间的关系,以获得更好的特征表示。3)在3个小样本分类的通用数据集上进行了大量实验,验证了所提算法的有效性。1 方法1.1 问题定义对于一个小样本目标分类任务,即存在一个支持集S,它包括N个不同的图像类以及每个类的K个带标注样本。然后给定一个查询集Q,它包括与支持集S相同类别的N类图像以及每类图像的q个未标注样本。小样本学习的目的是使模型能够根据集合S来对集合Q中的每个未标注样本进行分类,此设置称为N-way K-shot小样本分类任务。然而,当集合S中每类只有很少的标注样本时,很难有效地直接学习到一个模型来对集合Q中的未标注样本进行分类。因此小样本学习通常借助于一个辅助集合A,采用元学习范式来学习迁移知识,以提高集合Q上的分类效果。集合A中包含了大量的类以及带标注样本,但是它与集合S不相交。通常将集合A称为基类或源类,集合S称为新类或目标类。因此与传统的机器学习不同,FSL的目标是从一组有丰富标注样本的基类(源类)中学习一个分类器,然后去适应一组标注数据很少的新类(目标类)(Wang等,2020)。为了学习迁移知识,使用匹配网络中提出的情景(episode)式训练机制(Vinyals等,2016)来训练模型。该机制通过使训练过程与测试条件相匹配,以提高模型的泛化能力。具体地,在每一次迭代训练中,通过模拟一个小样本目标分类任务,构建一个episode来训练分类模型,该episode由从辅助集合A中随机抽样的支持集AS和查询集AQ组成。一般来说,AS和S有着相同数量的way(即类)和shot(即每类中的带标注图像数量),换句话说,在AS中恰好有N个类,每类有K个带标注样本。在训练过程中,通过从辅助集合A中构建数万个episode(每个episode可以看做是独立的任务)来训练分类模型,用构建的查询集的真值标签来提供监督学习。在测试阶段,利用支持集S学习得到的模型可以直接用于对查询集Q中每个未标注样本进行分类。1.2 网络模型设计本文提出的基于局部特征融合的小样本分类模型是一个可以端到端训练的神经网络架构。总体框架如图1所示,为5-way 1-shot小样本分类任务的示意图。所提方法主要由3个模块构成,包括局部特征提取模块、基于Transformer架构的局部特征融合模块以及度量模块。10.11834/jig.220079.F001图1模型总体框架Fig.1Overall framework of the model1.2.1 原型网络采用基于度量的原型网络(prototypical network,ProtoNet)(Snell等,2017)作为基本的FSL分类器。该网络由一个特征提取器和一个简单的无参分类器构成,即图1中的CNN特征提取模块fφ和度量模块。训练过程只需对特征提取器的参数进行元学习。原型网络通过CNN学习了一个输入到嵌入空间的非线性映射,各个样本通过该映射投影到同一嵌入空间中。对于支持集中每个类的样本,提取在嵌入空间中的平均值作为其类原型,并使用欧几里得距离作为度量。通过训练,使查询集样本到同类别原型的距离近,到其他类别原型的距离远。具体地,对于支持集S,原型网络先为其每个类别计算出一个类原型Ck,可表示为Ck=1Sk∑x∈Skfφ(x) (1)式中,x为支持集样本,Sk为支持集中类别为k的所有样本,k∈[1,N],N表示支持集S中的所有类别数。fφ为带有可学习参数φ的特征提取函数,使用的是CNN结构。测试时,对于查询样本q,原型网络计算其特征向量到支持集每个类原型之间的距离,再经softmax函数得到查询样本q所属类别的概率分布,具体计算为pφ(y=k | q)=exp(-d(fφ(q),Ck))∑k'∈[1,N]exp(-d(fφ(q),Ck')) (2)式中,d(·,·)是距离度量函数,采用欧几里得距离。k表示查询样本q的真实类别,y表示查询样本q的预测类别,k′为支持集中的全部类别。采用随机梯度下降(stochastic gradient descent,SGD)最小化分类的交叉熵损失来训练模型。1.2.2 局部特征提取为了获取图像的局部特征表示,利用网格分块法将输入图像均匀地划分为H × W个局部块(图1中,分为2 × 2 = 4个局部块)。网格中的每个局部块都独立地经CNN特征提取网络fφ提取特征,经特征提取后,再经一个全局平均池化层,为每个输入图像块生成1个一维向量,以便作为局部特征融合模块的输入。所有局部块生成的特征向量构成了整幅图像的特征表示。具体地,如将输入图像x分为m个局部块,则经特征提取网络以及全局平均池化后,获得的特征可表示为fφ(x)∈Rm×d,其中d为每个局部特征的输出维度。在具体分块时,少量重叠网格中局部块的区域以包含上下文信息。另外,采用金字塔结构来获得图像的多尺度信息。即根据不同的网格大小来划分局部块,如采用1 × 1、2 × 2和3 × 3这3种图像分块策略(1 × 1表示将整幅图像作为输入),然后再将所有局部块送入CNN特征提取模块,以获得具有上下文信息和多尺度的局部特征向量。1.2.3 基于Transformer架构的局部特征融合尽管在网格分块时采用了重叠的局部分块,使每个局部块都包含更多的上下文信息。但是各局部块之间的特征提取仍是相互独立的,每个特征向量仅包含一个局部块的信息,多个局部块之间的关联信息没有得到充分利用。Vaswani等人(2017)提出的Transformer中的自注意力机制可以很好地学习并捕获输入序列之间的关系,从而使输出获得全局性信息。因此,利用该自注意力机制原理设计了一个基于Transformer架构的局部特征融合模块,用于学习并融合各局部特征之间的关系。具体地,将输入图像x分为m个局部块后独立地进行特征提取,得到的每个局部特征可表示为fφ(xi)∈R1×d,i∈[1,m],然后将该幅图像所有的局部特征送入局部特征融合模块。该模块首先通过3个不同全连接层(fully connection,FC)的值矩阵WQ∈Rd×d'、WK∈Rd×d'、WV∈Rd×d'将每个局部特征线性映射为查询矩阵Qi∈R1×d'、键值矩阵Ki∈R1×d'和值矩阵Vi∈R1×d',i∈[1,m]。然后进行自注意力的矩阵运算,具体为g˜θ(xi)=∑j=1msoftmaxQiKjTd'Vj,   g˜θ(xi)∈R1×d' (3)gθ(xi)=LayerNorm(fφ(xi)+g˜θ(xi)WFC),    gθ(xi)∈R1×d(4)式中,d'表示缩放系数,WFC∈Rd'×d表示全连接层矩阵,fφ(xi)∈R1×d,i∈[1,m]表示输入的m个d维局部特征,gθ(xi)∈R1×d,i∈[1,m]表示融合后的局部特征。这样每个d维的局部特征里融合了其他所有局部特征的信息,从而使每个局部特征都具有全局性信息。最后将融合后的所有局部特征向量连接起来,即gθ(x)∈R1×md,构成整幅输入图像x的特征表示。整个结构如图2所示,表示了局部特征fφ(xi)经特征融合后变为gθ(xi)的过程。10.11834/jig.220079.F002图2基于Transformer架构的局部特征融合模块Fig.2Local feature fusion module based on Transformer architecture在每个N-way K-shot的小样本图像分类任务中,对于每幅图像,无论是支持集还是查询集,都采用上述方法将局部特征融合后的向量作为原图的特征表示。然后遵循原型网络,对支持集中每类图像的特征向量求取均值作为其类原型,通过计算查询集图像特征向量到各类原型之间的欧几里得距离来进行分类,计算方法同式(1)和式(2)。2 实验2.1 实验设置2.1.1 数据集在3个常用的基准数据集上进行小样本分类实验,分别是MiniImageNet(Vinyals等,2016)数据集、TieredImageNet(Ren等,2018)数据集和CUB (Caltech-UCSD Birds-200-2011)(Wah等,2011)数据集。MiniImageNet数据集最早在匹配网络中提出,并成为小样本分类中广泛使用的数据集。包含100个类,每个类有600幅图像,这些图像是基于ImageNet数据集(Russakovsky等,2015)构建的。遵循Ravi和Larochelle(2017)方法中的划分,将数据集分为64、16和20个类,分别用于训练、验证和测试。TieredImageNet数据集是一个具有更多类别的大规模数据集,也是基于ImageNet数据集构建的。包括34个大类,608个小类,每个小类有近1 200幅图像,共779 165幅图像。与MiniImageNet相比,该数据集扩大了训练和测试阶段的领域差异。遵循Hou等人(2019)方法中的划分,将608个小类分为351、97和160个类,分别用于训练、验证和测试。CUB数据集最初被提出是用于细粒度的鸟类分类。包含200个类别,共11 788幅图像。遵循Ye等人(2018)方法中的划分,将200个类分为100、50和50个类,分别用于训练、验证和测试。此数据集分类的难点在于类之间的细微差别。2.1.2 训练与评估基于度量学习方法(Vinyals等,2016;Snell等,2017)中的特征提取网络较为简单,通常是4个卷积层的堆叠,难以很好地学习到复杂数据集中的非线性表示。为了与当前先进的方法进行公平比较,本文采用常用的ResNet12(residual network 12)(Munkhdalai和Yu,2017)作为主干网络进行特征提取。由4个深度为3的残差块构成,每个块的内部有3个3 × 3内核的卷积层,在每个块的尾部应用2 × 2的最大池化层。为了生成密集特征,在主干网络末端添加1个全局平均池化层,以使每个输入图像块生成1个一维向量。整个训练过程分为预训练和元训练两个阶段。在预训练阶段,遵循Ye等人(2020)方法中的预训练策略,用主干网络附加softmax层来对训练集(例如 MiniImageNet中的64个类)进行分类。对于预训练的验证,采用小样本模式对验证集进行分类。具体地,随机抽样200个N-way 1-shot的小样本学习任务(N等于验证集中的类别数,例如 MiniImageNet中的16个类),每类中抽取1个和15个实例分别作为支持集和查询集来进行分类验证。在这一阶段,应用数据增强方法来提高模型的泛化能力,包括色彩抖动、随机裁剪和随机水平翻转。在元训练过程中,将模型中的主干网络使用预先训练好的权重进行初始化,然后与模型中的其他模块一起进行元训练的微调,具体采用情景式训练策略进行N-way K-shot的小样本分类任务。使用SGD优化器来优化网络,初始学习率设置为5 × 10-4,共设100个epoch,每10个epoch后学习率衰减一半,每个epoch中分别设100个和600个episodes用于训练和验证。由于TieredImageNet数据集样本更多且领域差异更大,需要更多的迭代次数才能使模型收敛,所以设置200个epoch,每20个epoch后学习率衰减一半。在测试阶段,从测试集中随机抽取5 000个episodes任务,评估其分类的平均准确率,置信区间为95%。在训练、验证及测试阶段,无论输入是整幅图像还是局部图像块,都先调整尺寸为84×84像素,再输入到主干网络中提取特征。另外,如Oreshkin等人(2018)所建议的,在获得两个样本特征表示之间的距离后,乘以一个自适应缩放因子,以使输出的距离在合适的范围内,可增强模型的鲁棒性。2.2 小样本分类结果在各项实验中,首先将本文方法与当前先进的小样本分类方法的平均准确率进行比较。在MiniImageNet、TieredImageNet以及CUB数据集上的5-way 1-shot和5-way 5-shot分类任务的结果比较如表1所示。表1中,本文方法采用图像金字塔结构,P(1, 2, 3)表示将原图分为1 × 1、2 × 2和3 × 3共14个局部块一起作为输入。从表1可以看出,在3个小样本分类数据集上,所提方法都展现出优异性能。在5-way 1-shot和5-way 5-shot的小样本分类任务上,对于MiniImageNet数据集,所提方法的结果比次优结果分别提高了2.96%和2.9%;对于CUB数据集,所提方法的结果比次优的结果分别提高了3.22%和1.77%;在TieredImageNet数据集上,所提方法的结果与最优的结果相当。10.11834/jig.220079.T001表1分类结果比较Table 1Comparison of classification results /%方法骨干网络MiniImageNetTieredImageNetCUB1-shot5-shot1-shot5-shot1-shot5-shotMatchingNet(Neurlps)(Vinyal等,2016)ResNet1263.08 ± 0.8075.99 ± 0.6068.50 ± 0.9280.60 ± 0.7171.87 ± 0.8585.08 ± 0.57ProtoNet(Neurlps)(Snell等,2017)ResNet1260.37 ± 0.8378.02 ± 0.5765.65 ± 0.9283.40 ± 0.6566.09 ± 0.9282.50 ± 0.58TADAM(Neurlps)(Oreshkin等,2018)ResNet1258.50 ± 0.3076.70 ± 0.30----AM3(Neurlps)(Xing等,2019)ResNet1265.30 ± 0.4978.10 ± 0.3669.08 ± 0.4782.58 ± 0.31--CAN(Neurlps)(Hou等,2019)ResNet1263.85 ± 0.4879.44 ± 0.3469.89 ± 0.5184.23 ± 0.37--LEO(ICLR)(Rusu等,2019)WRN-28-10†61.76 ± 0.0877.59 ± 0.1266.33 ± 0.0581.44 ± 0.09--MetaOptNet(CVPR) (Lee等,2019)ResNet1262.64 ± 0.6178.63 ± 0.4665.99 ± 0.7281.56 ± 0.53--CTM(CVPR) (Li等,2019b)ResNet18†64.12 ± 0.8280.51 ± 0.1368.41 ± 0.3984.28 ± 1.73--DeepEMD(CVPR)(Zhang等,2020)ResNet1265.91 ± 0.8282.41 ± 0.5671.16 ± 0.8786.03 ± 0.5875.65 ± 0.8388.69 ± 0.50AFHN(CVPR)(Li等,2020)ResNet18†62.38 ± 0.7278.16 ± 0.56--70.53 ± 1.0183.95 ± 0.63Neg-cosine(ECCV)(Liu等,2020)ResNet18†62.33 ± 0.8280.94 ± 0.59--72.66 ± 0.8589.40 ± 0.43PSST(CVPR) (Chen等,2021a)ResNet1264.05 ± 0.4980.24 ± 0.45----P-Transfer(AAAI)(Shen等,2021)ResNet1264.21 ± 0.7780.38 ± 0.59--73.88 ± 0.8787.81 ± 0.48GLoFA(AAAI)(Lu等,2021)ResNet1266.12 ± 0.4281.37 ± 0.3369.75 ± 0.3383.58 ± 0.42--Meta-Baseline(ICCV)(Chen等,2021b)ResNet1263.17 ± 0.2379.26 ± 0.1768.62 ± 0.2783.74 ± 0.18--本文(P(1, 2, 3))ResNet1269.08 ± 0.2885.31 ± 0.1870.15 ± 0.3285.24 ± 0.2278.87 ± 0.2891.17 ± 0.15注:加粗字体表示各列最优结果,下划线字体表示各列次优结果,“-”表示相关文献没有实验结果,骨干网络中“†”表示比ResNet12更深的网络结构,方法中具体方法后标注了文献刊发的会议。2.3 消融实验为了验证网络模型中各模块的有效性以及选取最优超参数,在MiniImageNet数据集上以ResNet12为特征提取网络进行消融实验。2.3.1 局部特征融合模块对结果的影响在有预训练的情况下,分别将原图分为1 × 1、2 × 2、3 × 3和4 × 4的图像块,PH×W表示按网格将原图分为H × W个局部块。由于P1×1时只有1个图像块,仅需对这个图像块进行CNN特征提取而无需进行融合处理。“PH×W +无融合”表示H × W个块图像分别经CNN特征提取后,将得到的H × W个局部特征矢量进行连接处理作为度量模块的输入。“PH×W+融合”表示H × W个块图像分别经CNN特征提取并经基于Transformer架构的局部特征融合模块后,将得到的H × W个局部特征矢量进行连接处理作为度量模块的输入。表2给出了有/无局部特征融合模块的分类结果。可以看出,将图像分为H × W的局部块,经基于Transformer架构的局部特征融合模块后的网络分类性能优于不经此模块的分类结果,验证了嵌入该局部特征融合模块的有效性。10.11834/jig.220079.T002表2在MiniImageNet数据集上有/无局部特征融合模块的分类结果Table 2Classification results with/without local feature fusion module on MiniImageNet dataset /%方法1-shot5-shotP1×161.91 ± 0.2980.49 ± 0.19P2×2 + 无融合62.90 ± 0.2981.91 ± 0.19P3×3 + 无融合64.90 ± 0.2982.75 ± 0.20P4×4 + 无融合61.62 ± 0.2978.25 ± 0.21P2×2 + 融合67.27 ± 0.2983.54 ± 0.19P3×3 + 融合68.14 ± 0.2884.62 ± 0.18P4×4 + 融合67.77 ± 0.2783.92 ± 0.19此外,随着分块数量的增加,即将图像分为2 × 2和3 × 3的局部块时,小样本分类性能均比不分块的结果要好,且分类性能逐步增加,但是当图像分为4 × 4的局部块时,分类性能开始有所下降。通过分块处理虽然可以有效利用图像的局部特征,但是当分块数量过多时,一个完整的目标可能被分离到多个局部块中,目标的完整性被破坏反而对分类造成不利影响。因此需要根据分类结果对分块数量进行权衡,图像分块并不是越多越好。2.3.2 多尺度局部分块对结果的影响除了将图像进行固定大小的网格分块,还利用具有金字塔结构的多尺度相结合的局部分块进行实验,分类结果如表3所示。表3中,P( , )表示多种尺度分块组合,如P(1,2,3)表示将原图分为1 × 1、2 × 2和3 × 3共14个局部块一起作为输入。从表3可以看到,多尺度局部特征的分类结果优于单一尺度下的分类结果。例如,在5-way 1-shot和5-way 5-shot的小样本分类任务上,使用1 × 1和3 × 3分块相结合的分类结果比仅使用3 × 3分块的分类结果分别提高了0.45%和0.6%。为了能充分利用局部特征,表1中均采用P(1,2,3)金字塔结构的多尺度相结合的局部分块进行实验并作为最终分类结果。10.11834/jig.220079.T003表3在MiniImageNet数据集上多尺度局部分块的分类结果Table 3Classification results of multi-scale local blocks onMiniImageNet dataset /%分块1-shot5-shotP2×267.27 ± 0.2983.54 ± 0.19P3×368.14 ± 0.2884.62 ± 0.18P(1, 2)67.47 ± 0.2983.96 ± 0.18P(1, 3)68.59 ± 0.2885.22 ± 0.18P(2, 3)68.84 ± 0.2885.17 ± 0.18P(1, 2, 3)69.08 ± 0.2885.31 ± 0.182.3.3 局部分块方式对结果的影响为了验证本文网格局部分块方式的合理性,与采用随机裁剪的局部分块方式进行对比实验,相同局部图像块数量下的对比结果如图3所示。可以看出,两种方法均随着局部块数量的增加,分类结果逐渐提升。但相同数量的局部块下,网格分块方法的性能要比随机裁剪的效果要好。这是由于网格分块的方法中,多局部块图像拼接起来可以包含整幅图像,然后通过局部特征融合模块使每个局部特征都拥有了全局性信息。而随机裁剪的方式只能随机取到原图上的部分局部块,即使通过特征融合也可能无法获得完全全局性的信息,所以其分类性能要弱于网格分块的方法。10.11834/jig.220079.F003图3采用网格分块和随机裁剪分块两种方式在MiniImageNet数据集上的分类结果Fig.3Classification results of tasks on MiniImageNet dataset by grid partitioning and random sampling partitioning ((a) 5-way 1-shot classification results; (b) 5-way 5-shot classification results)2.3.4 局部特征融合模块超参数的选取在模型的局部特征融合模块中,使用了一个浅层且简单的Transformer结构,只有1个层(layer)和1个注意力头(head)。而原始Transformer(Vaswani等,2017)具有更复杂的结构,使用更多的堆叠层和更多的注意力头。为了评估Transformer结构超参数设置对分类结果的影响,对网络分别使用不同层数和不同注意力头数进行实验,表4为模型的注意力头数固定为1时不同层数的分类结果,表5为模型的层数固定为1时不同注意力头数的分类结果。10.11834/jig.220079.T004表4在MiniImageNet数据集上局部特征融合模块中不同层数的分类结果Table 4Classification results of different layer numbers inlocal feature fusion module on MiniImageNet dataset层数注意力头数参数量/M1-shot/%5-shot/%1114.0767.27 ± 0.2983.54 ± 0.192115.7167.44 ± 0.2983.53 ± 0.193117.3567.08 ± 0.2983.20 ± 0.1910.11834/jig.220079.T005表5在MiniImageNet数据集上局部特征融合模块中不同注意力头数的分类结果Table 5Classification results of different head numbers in local feature fusion module on MiniImageNet dataset注意力头数层数参数量/M1-shot/%5-shot/%1114.0767.27 ± 0.2983.54 ± 0.195114.0767.26 ± 0.2983.47 ± 0.1910114.0767.26 ± 0.2983.48 ± 0.19从表4可以看出,固定注意力头数不变、改变Transformer的层数时,当层数逐渐增加到3,分类性能略有下降。说明更复杂的结构并不会提高分类性能,而且随着自注意力层数的增加,网络参数增多,优化的难度增加,训练模型收敛变得更加困难。从表5可以看出,固定层数不变、改变Transformer的注意力头数时,模型的分类性能几乎不变,这说明使用1个注意力头就可以关注到特征的全局信息,而不需要使用多个头从多个角度来进行融合处理。因此,在模型设计中,本文使用1个层(layer)和1个注意力头(head)的Transformer结构。2.3.5 与其他小样本分类方法结合提出的基于Transformer架构的局部特征融合模块可看做一种图像CNN特征的增强表示方法,因此可与其他小样本分类方法结合。具体地,将所提方法与度量学习中另一经典方法——匹配网络进行结合,即通过将匹配网络中的特征提取网络替换为所提的基于局部特征融合的特征提取方法,不改变原有匹配网络中的度量方式进行结合,在MiniImageNet数据集上的分类结果如表6所示。表6 在MiniImageNet数据集上与匹配网络结合的分类结果Table 6 Classification results on the MiniImageNetdataset combined with the matching network/%10.11834/jig.220079.T006方法1-shot5-shotMatchingNet63.08 ± 0.8075.99 ± 0.60MatchingNet_Patch1×164.17 ± 0.2977.28 ± 0.20MatchingNet_Patch2×266.46 ± 0.2880.30 ± 0.21首先,用本文的预训练模型重新复现匹配网络结果,即表6中的MatchingNet_Patch1×1,然后将所提局部特征融合模块加入到匹配网络中,对输入图像分为4块进行融合,结果如MatchingNet_Patch2×2所示。可以看出,在MiniImageNet数据集上,将所提模块嵌入到匹配网络中的分类结果相比原匹配网络的结果有一定提升,表明了所提模块与其他小样本分类方法相结合的有效性。2.3.6 可视化分析为了进一步说明所提基于Transformer局部特征融合模块的有效性,对经该模块后生成的特征使用t-SNE方法(van der Maaten和Hinton,2008)进行可视化分析。具体地,在MiniImageNet数据集的测试集中,随机选取5类,每类随机选择75幅图像,提取特征的t-SNE可视化结果如图4所示。从图4可视化的结果可以看出,与原型网络相比,所提出的基于Transformer局部特征融合方法产生的特征具有更好的聚类性能,类内距离更小,类间距离更大,类间可区分性得到了提升。10.11834/jig.220079.F004图4MiniImageNet数据集的测试集中随机选取5类每类75幅图像特征的t-SNE可视化Fig.4The t-SNE visualization of features for 75 randomly sampled images from 5 randomly selected test classes of MiniImageNet dataset((a)ProtoNet; (b)ours_patch2×2; (c)ours_patch3×3)3 结论为了在小样本图像识别中充分利用图像的局部特征以及增强模型的泛化能力,提出一种基于局部特征融合的小样本分类方法。通过将原图网格分块的方式来获得局部特征,通过基于Transformer架构的局部特征融合模块得到包含全局信息的局部增强特征,从而提高了模型的特征提取能力和泛化能力。与原型网络相比,所提方法在MiniImageNet、TieredImageNet和CUB小样本数据集上都具有更高的分类准确率,消融实验也验证了所提方法的有效性。提出的基于Transformer架构的局部特征融合模块可视为一种图像特征的增强表示方法,简洁且通用,可以嵌入到其他小样本分类方法中。然而,本文方法也存在一定局限性。对于图像的局部分块,随着分块数目的增加,计算量也随之增大,这是由于增加分块数目相当于增加batch size的大小,因此在图像分块时,要权衡分类性能与计算负担选择合适的分块数目。后续工作将探索如何更有效地从多个局部块中进行选择来提升特征融合模块的性能,以及如何与半监督、转导式小样本设置结合来进一步提高模型的分类性能。

使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,

确定继续浏览么?

复制成功,请在其他浏览器进行阅读