细粒度图像识别任务的多层和区域特征融合模型*
2023-02-04刘宇泽孙涵李明洋李明心康巨涛王恩浩
刘宇泽,孙涵,李明洋,李明心,康巨涛,王恩浩
(1. 南京航空航天大学计算机科学与技术学院,南京市,211100;2. 伊利诺伊大学厄巴纳—香槟分校Grainger工程学院,美国伊利诺伊州,61801)
0 引言
在整个十多年的细粒度识别研究中,最根本的目标是解决同一类下不同子类的识别问题,相关的经典数据集有FGVC-Aircraft[1]数据集和CUB-200-2011(CUB)[2]数据集以及Stanford Dogs[3]数据集等。这一识别任务的关键问题在于图片整体相似而局部微小细节不同,在人眼几乎也很难分辨的情况下,该任务的挑战性可想而知,从而引起了广泛的研究与关注。
细粒度图像识别任务对于判别区域的特征学习至关重要。目前,主流的细粒度识别方法有两种。一是通过人为标注判别区域边界框进行学习,这种强监督下的学习方法[4-6]虽然在模型构建以及计算开销上简单许多,但是人工标注判别区域的成本太高,不能从根本上完整地解决细粒度图像识别的问题。二是通过注意力机制自动学习图像中具有判别特征的区域,这种无监督下模型的自主学习方法[7-10]不需要人为添加边界框,但是在模型构建中需要引入额外的网络结构,并且在训练和推理阶段会引入额外的计算开销。
本文提出了一种基于注意力机制的MRI模型用于细粒度图像识别任务。本模型不需要人工标注边界框和注释等额外的监督信息,即可完成一个端到端的训练。
1 研究背景
目前在细粒度图像识别方法整体上是两种思路。一种是直接从原始的整体图像中学习图像的特征信息[11-12]。另一种就是基于部件或者注意力的,学习区域特征信息的学习策略[8-9],也就是图像的特征学习对象是整体或者是局部的不同。
一开始基于人工标注边界框的强监督学习方式,在对于具有判别力的图像区域的选取中省下了很大的功夫,之后需要的是利用已经标注好的区域和注释进行特征提取和分类。Zhang等[13]强化对于特征区域的几何约束并在姿态归一化的基础上进行类别预测。Chai等[14]利用强监督信息对图像前后景进行分割,然后对前景进行处理,减少了无关区域的干扰。从选定好的特定区域的带有类别和部件注释的图像中学习具有高区分度的中间特征,即和部件一对一的特征。但在实际应用以及未来趋势中,当应用部署时,无论是新增的数据还是庞大的整体数据集,人工标注总是显得十分麻烦以及耗费成本,因此研究趋势开始往深度学习靠近[15]。
随着近段时间深度学习的飞速发展,卷积神经网络逐渐成为了图像识别中的主流方法。细粒度识别方法已经从基于手工制作特征的多级框架[16-19]转变为基于卷积神经网络的多级框架[20-22]。在没有人工标注边界框和注释的情况下,Jaderberg等[23]提出了空间转换器网络来显示表示网络内的数据,并预测具有丰富信息的区域位置。
同时大量基于部件或注意力的方法也被提出,Xiao等[21]提出的基于注意力部件的思路认为图像中物体的部件具有非常重要的意义。Fu等[7]提出了一个强化注意建议网络,以获得区分注意区域和多尺度的基于区域的特征。Sun等[24]提出了一个单挤压多激励模块来学习每个输入图像的多注意区域特征,然后在度量学习框架中应用多注意多类约束。除了部件以外,从自然语言处理领域逐渐延伸出来的模拟人观察事物原理的注意力机制也有丰富的研究成果。Zhao等[9]提出了多元化的视觉注意力网络,明确追求注意力区域的多样性,更好的收集具有辨别性的信息。Hu等[25]提出了一种强化通道的图像识别部件,给骨干网络提取后的特征图的通道附加注意力权重,这种关注通道特征的思路可以作为部件加在绝大部分的图像识别模型中。Behera等[26]提出了一种强调上下文关联的特征融合方法,用注意力权重来强调自主提取的特征区域在内容和空间上的相互关联。
目前研究中主要存在数据集识别的准确率需要进一步提高的问题、对于人工标注边界框等等高成本方法的克服问题,以及模型整体过于复杂所带来的额外计算开销的问题。
本文提出一种主体基于注意力机制的,全面利用骨干网络计算结果的细粒度图像识别框架(图1),名为多层和区域特征融合模型(MRI)。主要分为两个部分,“多层融合”部分在标准分类骨干网络中进行修改,原骨干网络仅利用最后一层特征提取结果,本文将骨干网络的浅层和深层提取结果全部利用,保证数据的全面性,并且添加了特征图的融合权重。在“区域特征融合”部分自主提取兴趣区域并学习各个区域之间的相关性,从而在原区域特征的基础上对各个区域的特征进一步完善。
图1 MRI模型的架构细节
2 模型构成方法与原理
模型的总体运行模式为接收一张图片的输入并输出这张图片的预测类别。为找到一个对应输入图片和预测标签的映射函数F(图1),模型整体由3个部分组成:基础CNNFa(.;θa),多层融合模块Fb(.;θb),区域融合模块Fc(.;θc)。我们的目标是通过端到端的训练来学习模型参数θ={θa,θb,θc}。
2.1 带有注意力权重的多层融合策略
多层融合指的是在最开始的骨干网络基础上,对于骨干网络中不同层输出的特征图进行有规律的融合。正如本文引言所说,随着骨干网络层数加深,由于卷积核提取特征的原理,越深的特征图的感受野越大,同时也具有更加丰富的语义信息。相反,浅层的特征图感受野小,虽然语义信息较少,但是特征图中包含更多的细节。融合多层的特征图有利于全面利用模型的计算成果,增强语义信息的表现力和模型的推理能力。
对于“多层融合”部分,一方面,原有的骨干网络在细粒度图像识别中总是考虑最深层的特征提取结果,大量的计算和时间成本下网络绝大部分的计算结果都被丢弃,所以将浅层提取结果融合加以利用。另一方面,在骨干网络的提取中,随着每一层卷积核的特征融合,感受野不断增大,原来的图像特征逐渐转移到通道中。这是伴随着从浅往深,图像特征从细节到抽象的变化过程。细粒度图像识别任务中具有判别力的局部细节特征至关重要,因此融合浅层提取结果是具有理论意义的。在采用多层融合的基础上,同时给每层附加了注意力权重,在模型的不断学习中,给予其自主调整对于不同层的关注程度的能力。
文章采用的骨干网络是Resnet-50,这个网络放在最开始,其中的卷积层训练得到的可学习参数为θa。同时具有五层特征图输出{Oi|i=1,2,3,4,5},由于第一层输出过于浅层,感受野太小,对于深度学习计算意义不大,所以仅考虑后四层特征图。
2.1.1 感受野加强
为扩张特征图的感受野,使其具有更加丰富的语义信息,对Sun等[27]提出的语义分割领域中的一部分内容进行了复用。
首先,对于{Oi|i=2,3,4,5},通过1×1卷积将特征图的通道数转换为128,将通道数减小并且统一,可减少后续计算的开销,更加方便后续的多层融合。然后,对{Oi|i=2,3,4}三个特征图分别采用同样扩张率的扩张卷积进行操作。为了防止计算量增加,卷积核都固定在3×3这一较小量上进行运算。对于前三层特征图扩张率设定为1,2,3,但对于最后一张特征图扩展率为1,3,5。扩张率为1指的是采用原始的3×3卷积核,而扩张率为2指的是3×3卷积核每次采样2个像素,也就是和5×5卷积核效果相近,从而使感受野扩大。以此类推,扩张率为3和5实际上使卷积核分别扩张到7×7和11×11。随着扩张率增大,感受野同时也增大。在分别进行独立的不同扩展率的卷积核卷积后,对具有不同感受野的三张特征图进行元素相加。最后,经过一个3×3的卷积核进行融合。经过扩展卷积后的特征图相比于之前具有更多丰富的语义信息,使骨干网络的输出结果不再仅仅关注物体的抽象特征,而更容易关注并学习到物体的整体信息。
2.1.2 附着注意力的多层融合
这里同样的复用了部分Sun等[27]提出的并行融合策略,在复用的基础上进行了部分截取并进行了创新。对于经过处理后的四层特征图,因为在相邻层上特征图的感受野相近,所以采用相邻层融合的策略,这样的融合策略可以避免对特征图中特征信息的重复融合,减少冗余信息,并且整体融合后可以加强特征图的特征表现力。因此整体上对相邻层优先融合,并重新编号,继续以相邻层融合。这里的融合就是元素相加并用3×3卷积核进行融合。
本文对{Oi|i=2,3,4,5}四张特征图在感受野强化前添加注意力权重{Ai|i=2,3,4,5},初始化同为0.25。因为对于特征图来说,浅层和深层带来的效益不同,一方面是浅层细节信息,另一方面是深层语义信息,不能顾此失彼,也不能一视同仁。首先所有权重均为1的相加融合对于网络来说数据还是有重复融合的情况,添加权重后4张特征图的融合结果也会和典型的细粒度图像识别领域中利用深层特征图的数据形式靠齐,其次,对于深浅层不同特征信息不能人为的限制权重分配,若不采用注意力机制,而一次次试验对于不同数据集的超参数也是很大的工程,因此注意力机制可以给模型更大的自主学习空间。其中所有卷积层训练得到的参数和注意力权重参数{Ai|i=2,3,4,5}为可学习参数θb。本模块融合后得到总特征图O送入区域特征融合模块。
2.2 区域特征融合模块
对于“区域特征融合”部分,在特征图中自由选取区域,这些区域很大程度上会很少或者不会包含重要的局部特征,但总有区域会包含需要的具有判别特征的判别区域,因此对于这些区域进行特征融合操作,将每个区域与其他所有区域的相关性作为基础进行了一个带有注意力权重的融合,从而在很大程度上完善了各个区域的特征表现。
2.2.1 提出兴趣区域
为了有效率的学习上下文信息,在特征图O上用不同的比例提取了大量的兴趣区域。比例通过矩形的不同大小体现。考虑最小的区域r(O的左下角i行j列,宽Δx,高Δy),通过不同的宽和高获取区域集(例如区域R={r(i,j,mΔx,nΔy)};m,n=1,2,3,…,i
图2 兴趣区域选择方法的可视化呈现
2.2.2 特征区域融合
在这个步骤中,把之前计算出的用来统一所有区域的固定大小的特征向量转换为有权重的形式。这使得特征区域可以在基于相关性权重的基础上进行特征融合。这里对Sun等[26]的上下文敏感注意力策略进行了复用。
式中:cr——计算过权重的内容向量;
αr,r′——经过softmax处理后的注意力权重系数;
βr,r′——经过tanh激活函数处理后的矩阵向量;
Wα,Wβ,Wβ′——参数矩阵;
bα,bβ——偏差值;
q,k——对特征向量进行数学处理的函数。
2.3 分类
这里将前一模块得到的19张融合后的特征区域进行最后的操作。首先在保留通道数的基础上调整形状,将19张特征图通道维以外的数据合成一维,进行平均池化后乘以权重α(这里的α是设定的超参数,默认为0.01),同时对最开始多层融合模块的输出特征图进行平均池化,然后将两张特征图元素加和送入分类器中,根据输出概率得出最后的预测结果。
2.4 损失函数
MRI模型使用交叉熵损失函数。交叉熵损失函数只关心正确类别的预测概率,只要它的值足够大,就能保证分类结果的准确性。
式中:L——所有样本的平均损失;
N——训练数据集中的样本个数;
M——类别的数量;
yic——符号函数(1或0),如果样本i的正确类别为c,则取1,否则取0;
pic——样本i属于类别c的预测概率。
3 试验结果与分析
文章在FGVC-Aircraft数据集和Oxford Flowers102以及AID数据集上对MRI模型进行了性能上的评估,并得到了试验数据。在整个试验过程中,将数据集按照训练集和测试集进行了划分,用到了各个图片类别的标签,没有用任何人工标注的边界框和注释。
3.1 数据集介绍
MRI模型在Oxford Flowers、FGVC-Aircraft和AID数据集上的训练准确率如表1、表2、表3所示。所有方法都没有使用人工标记边界框和注释。
3.1.1 Oxford Flowers数据集
Oxford Flowers数据集共102个花卉的类别,选取6 149张图片作为训练样本进行训练,并选取1 020张同属于这102个类别中但并未加入训练样本的图片进行测试,样本图像如图3所示。
(a) 测试样本 (b) 训练样本
3.1.2 FGVC-Aircraft数据集
FGVC-Aircraft数据集共71个飞机类别,选取 3 302 张图片作为训练样本进行训练,并选取3 301张同属于这71个类别中但并未加入训练样本的图片进行测试,样本图像如图4所示。
(a) 测试样本 (b) 训练样本
3.1.3 AID数据集
AID数据集共30个类别,主要由航拍遥感图像组成,包括机场、海岸等图片类别。选取6 679张图片作为训练样本进行训练,并选取3 321张同属于这30个类别中但并未加入训练样本的图片进行测试,样本图像如图5所示。
(a) 测试样本 (b) 训练样本
3.2 试验细节
采用了广泛使用的Resnet-50作为模型的骨干网络,使用在Imagenet数据集上训练的预训练模型参数。训练之前将输入图像大小调整为224×224,每边填充4后随机裁剪,并进行随机旋转和水平翻转用来数据增强。
在兴趣区域选择的过程中,将42×42×128的特征图的前两维当作一个14为单位的3×3的二维平面进行区域提取。最小提取大小为1×2,将所有能被1×2和1×3大小的区域覆盖的区域舍弃后,加上原始的整张特征图,一共19张特征图,并采用双线性插值调整大小为7×7×128,进行特征区域融合。
在训练过程中,批量大小和迭代次数分别设置为8和100。学习率初始设定为0.005,并且动量参数初始设定为0.5。前十次迭代采用余弦退火算法调整学习率,之后的迭代中采用基于SWA优化的随机权重平均进行优化。
3.3 结果分析
如表1所示,MRI在Oxford Flowers数据集上的表现优于其他大多数方法,训练效率也很高。如图6所示,在30个批次左右基本达到了最高的精度。
表1 在Oxford Flowers数据集上的各方法准确率比较Tab. 1 Comparison of the accuracy of various methods on the Oxford Flowers dataset
(a) 准确率
(b) 平均损失
图6(a)为准确率图像,准确率在训练10批次后基本稳定在95%左右。图6(b)为平局损失图像,平均损失同样在10批次左右基本收敛,并在0.02附近波动,整体训练速度和准确率都较为优异。
如表2所示,MRI在FGVC-Aircraft数据集上的性能优于大多数其他方法,训练效率也较高。如图7所示,在大约50个epoch中基本达到了最高的精度。图7(a)为准确率图像,准确率在训练40~50批次后基本稳定在86%左右。图7(b)为平均损失图像,平均损失在30批次左右基本收敛,并在0.08附近波动,相较于已有的识别方法,整体训练速度和准确率较为优异。
表2 在FGVC-Aircraft数据集上的各方法准确率比较Tab. 2 Comparison of accuracy of various methods on FGVC-Aircraft dataset
(a) 准确率
(b) 平均损失
如表3所示,MRI在AID数据集上的表现非常出色,训练效率很高。如图8所示,在20个批次左右基本达到了最高的精度。图8(a)为准确率图像,准确率在训练10批次后基本稳定在96%左右,最高一次接近97%。图8(b)为平均损失图像,平均损失在8批次左右基本收敛,并在0.025附近波动,整体训练速度和准确率优异。
如图9所示,与原始的骨干网络相比,可以发现多层特征融合的图像具有更丰富的局部信息,充分利用了浅层骨干网的计算结果,使得模型在对于图像类别进行预测时能够具有更加丰富的推测依据,而非仅关注骨干网络最后一层下采样提取出来的深层特征。
表3 在AID数据集上的准确率Tab. 3 Accuracy on the AID dataset
(a) 准确率
图9 不同模型识别效果图
Fig. 9 Different model recognition renderings
3.4 消融试验
如表4所示,创新的权重添加、优化的区域融合策略、多层融合和骨干网络的适用性都比较好,各模块在训练准确率上表现较好,采用较少的批次即可达到最佳准确率。虽然MRI在数据集上不如CAP模型,但是MRI模型的可训练参数数量约为27.23 M,远远少于以Resnet-50为骨干网络的CAP模型的36.9 M。
表4 消融试验数据Tab. 4 Ablation study data
模型(最佳准确率以%/epoch为单位)分为Resnet-50(B)卷积神经网络、添加多层融合(+M)、注意力权重(+W)和区域特征融合(+R)模块。可以发现准确率趋势和达到最高准确率的最小批次的模型依次为(B+M+W+R)>(B+M+W)>(B+M)>B。最终MRI模型的(B+M+W+R)可训练参数(Param)以百万(M)为单位给出。
MRI模型在Oxford Flowers、FGVC-Aircraft和AID三个数据集上训练的准确率如表1、表2和表3所示,这里的所有方法都没有用到人工标注边界框和注释。从表中数据可以看出,所提出的MRI模型在三个数据集上的训练效果均较为优异,综合考虑FGVC-Aircraft数据集在图像细节和特征的明显程度上相较于其他数据集的识别难度更大,可能由于所提出的MRI模型规模上较小,导致对于包含更多细致特征的数据提取中难以通过有限的参数表示出来。与最新的CAP模型比较中,在模型的整体规模上远小于CAP模型,但是在实际应用中,轻量级模型在移动端上的部署会有更好的适配性。
4 讨论
卷积层多层融合模块:这一部分里面关于感受野加强部分,前三层均采用了1,2,3的扩张率,而最后一层采用的是1,3,5的扩张率。从卷积层的深度来说,扩张率的本质是为了让深层卷积层感受野扩大,从而获得更加丰富的语义信息,这里我们采用了直接复用,但是从实验的角度来分析,一方面扩展率其实作为超参数对于不同数据集可能会有不一样的参数会更加适合,另一方面此前也有很多其他的融合策略例如U型网络方法[37]、HED方法[38]和U型网络和HED混合的方法,将这些不同的融合方法进行实验是有必要的,可能会有不一样的效果。
兴趣区域选取模块:这一部分里关于兴趣区域的选取规则是按照将前一部分多层融合后的特征图经过双线性池化成固定大小的特征图,并进行单位长度14,3×3的大小进行选取,这里的单位长度决定了特征图的划分大小,原则上是可以改变的,因为这与后续兴趣区域的选取规则有关,当单位长度较小时,兴趣区域的提取会更加细致,每个选取出来的区域可能只会包含少量特征或者没有,同时带来的也会有计算量的增大,对于这一点的试验也是有研究意义的。
图10为一些本文模型错误分类图像(左)与它们被误认为的类别图像(右-从错误的子类别中选出):AID (a),Oxford Flowers (b),aircraft(c),可以看出,外观特征或视角变化极其相似,例如来自同一制造商导致了错误的分类(图10(b)、图10(c))。此外还注意到,子类别可能具有非常具体的特征,但由于较差的角度或有限的光照条件(图10(a)),这些特征在图像中不够清晰。
在图10所代表的情况下,其他方法在识别此类图像时同样表现不佳,例如CAP方法在一些困难和具有挑战性的情况下也不能取得很好的效果。认为导致识别失败的原因之一可能是不相关的背景差异干扰了模型对图像类别的推测过程。可以采用语义分割领域中能够分离前后背景的算法来提取主体进行识别,可能会有更好的效果。
(a) 机场和火车站
5 结论
提出一种基于注意力机制的MRI模型,在解决细粒度图像识别任务中人工标注判别区域的成本太高、模型构建中引入额外的网络结构,在训练和推理阶段引入额外的计算开销等问题上做出了一定的优化与改进。和以往的方法相比,本模型可以自主选择兴趣区域,借助注意力机制和区域之间的相关性对模型自主选择特征区域可能出现的缺失的关键信息进行完善,骨干网络中的多层融合附着了注意力权重,这种弱监督模式下,给予了模型最大的自主学习的可能性,不需要人工标注边界框和注释等额外的监督信息,即可完成一个端到端的训练。模型设计考虑了骨干网络的多层利用情况以及兴趣区域的选取与融合,在计算开销上没有涉及到太多过于庞杂的数据运算,优化的区域选取策略使兴趣区域个数减少,使模型损失收敛速度明显加快,兼顾了训练时间和准确率。讨论部分涉及到的问题是未来可能需要改进的一些方向。整体上模型就部分数据集表现优异,同时在模型体量和训练效率上具有不错的表现。同时,MRI模型在AID航拍图像数据集上具有极为优异的表现,对于航拍图片的识别领域具有一定的实用价值。
1) 提出了一种对于骨干网络的利用方法,全面利用由大量时间和计算成本产生的数据,在考虑全方面考虑图像的特征提取结果的同时给予模型自主训练特征图关注度的机制。
2) 提出了区域的特征融合补全优化策略,完善由随机选取区域产生的相比于人工标注判别区域所缺失的准确性和关键部位信息,减少了一大部分融合时产生的冗余计算量。
3) 在经典数据集上的训练均得出了较为优秀的准确率,本文模型对于三种典型数据集的识别准确率如下:Oxford Flowers数据集达到95.70%;FGVC-Aircraft数据集达到86.17%;AID数据集达到96.96%。首次训练AID数据集取得优异成果,在学习率优化策略固定的同时,损失函数的收敛相比于同类方法较快,这在未来更新数据集时迭代模型参数具有重要的减少时间成本的意义。
4) 与现有的人工标注边界框的方法相比,MRI仅仅需要图像及对应类别进行训练,极大程度上减少了人工成本。