基于改进ResNet网络的猫狗图像识别

2023-07-11 23:43李政霖
甘肃科技纵横 2023年2期
关键词:注意力机制卷积神经网络图像识别

李政霖

摘要:动物种类的识别一直是图像识别领域的重点,为了更好地对图像中动物进行识别、帮助社会对家庭宠物的管理,本论述提出一种基于ACNet模块和 CBAM 注意力机制模块而改进的 ACResNet18模型用来识别猫狗种类,通过非对称卷积快增强网络模型的核骨架,实现更有效的特征提取,引入 CBAM 注意力机制加强网络识别精度,能够更精确地对图像中猫狗进行识别和分类。本次实验使用 Kaggle 竞赛中的猫狗数据集进行图像识别,并通过对比实验,验证了相比于原模型,改进后的模型准确率有明显提升,最终提高了模型在图像分类上的精确度和鲁棒性,证实了该模型的可靠性。

关键词:图像识别;注意力机制;卷积神经网络;ResNet网络

中图分类号:TP391.4                          文献标志码:A

0引言

动物种类识别一直是计算机视觉领域、人工智能等领域的重点研究之一,无论是珍稀动物保护,还是用于日常宠物管理,都是需要重视的问题。现今很多人想领养宠物,但又因为各种原因和借口从而放弃养宠物,导致流浪猫狗泛滥,产生一系列社会问题,本论述希望通过改进的卷积神经网络来对猫狗图像进行识别分类[1]以解决该问题,方便社区和校园管理。

卷积神经网络(Convolutional Neural Network)常用于图像处理中,相较于传统的神经网络,不同之处在于全连接网络前加入了卷积层用来提取特征[2]。为了解决模型处理参数量过大而导致实验结果过拟合的问题,使用卷积层和池化层对输入图像进行特征提取后,将结果输送入全连接网络[3]。

ResNet网络是卷积神经网络的经典模型算法之一,在卷积神经网络的发展历程中,出现过许多经典的网络结构模型,例如LeNet、AlexNet、VGGNet和Incep? tionNet等网络模型,为图像识别领域起到了极其重要的作用[4]。但在实际的试验中发现,随着网络模型中的卷积层和池化层叠加到一定数量后,发生伴随着层数的增加,预测效果越来越低的退化问题。而ResNet网络中的残差结构,可以人为地让神经网络某些层跳过下一层神经元的连接,弱化每层之间的强联系,减轻退化问题[5]。但基础的 ResNet18模型仍有进一步改进空间[6],故而本论述采用基于改进ResNet网络模型进行图像识别。

1分析网络模型

1.1深度残差网络

ResNet网络即深度残差网络,通过对残差结构的运用,ResNet使得训练数百层的网络成为了可能,从而具有非常强大的表征能力[7]。深度残差网络没有使用尺寸大的卷积核的方法,而是更改成了连续使用几个尺寸小的卷积核,这样不仅能达到相同效果的同时减少了模型参数,还加大了ResNet网络模型非线性激活函数的数量,降低模型的计算量。而滤波器的数量在特征图通过卷积层的输入与输出相同时不需要改变;但若特征图大小减半时,就要加倍,池化层步长设置为2[8],ResNet18网络结构图如图1所示。

ResNet网络的核心是残差结构[9]。在残差结构中,没有让下一层拟合底层映射,而是对残差映射进行拟合[10]。若假设 H(x)是需要学习得到的底层映射,则令堆叠的非线性层拟合另一个相对于 x 残差的映射 F (x)=H(x)–x,最后将残差与输入相加,原有映射变为 F(x)+x,得到 H(x),残差结构如图2所示。在图2中,曲线代表恒等映射,中间的网络代表拟合残差,当两边操作结束后所得结果相加再激活。

1.2 ACNet模块

ACNet模块替换普通卷积层是一种用以增强卷积核骨架信息从而使模型精确度增加的方法[11]。该方法通过使用非对称的卷积核组(尺寸为1×k,k×1的卷积核),替换目前 CNN 架构中常用的3×3,5×5,7×7的方形卷积核,以支持网络对某些非对称的图像特征实现更优越的特征提取。

本论述将要改进的 ResNet18网络模型的卷积核都是尺寸为3*3大小的卷积核,用长和宽都为3的卷积核对输入图片进行特征提取,将其结果批处理化,再传入下一层。而ACNet模块则利用了卷积的可加性,等价地融合到方形卷积核當中,使用3×3,1×3,3×1三个不同尺寸的卷积核来取代原卷积核,并将三个卷积核提取出来的结果进行批处理化并将其权值聚合后再输出到下一层。与单个卷积核相比,使用ACNet模块能在水平和垂直方向上增强方形卷积的作用,使得网络的特征提取效果更为突出且不需要额外的参数和计算。

1.3注意力机制

注意力机制是深度学习和计算机视觉领域的一种重要思想,最近几年被广泛用于自然语言处理、图像识别等不同领域[12],其作用主要是为了关注当前任务更为关键的信息,提取更多图像的细节特征,降低其它信息的关注度,抑制提取不需要的图像特征的影响。注意力机制有很多种,较为常用的有通道注意力和空间注意力[13],例如 SE 模块,CBAM 模块等。

SE 注意力机制(Squeeze-and-Excitation Networks)是一种典型通道类型的注意力机制,关键在于给特征图中的每个特征通道配置一个注意力权重,从而让网络模型更加注意这些特征通道,进而实现对当前任务有用的特征图的通道,并抑制对当前任务用处不大的特征通道。

CBAM 注意力机制是由通道注意力机制(chan? nel)和空间注意力机制(spatial)组成。空间注意力令模型更加重视对输入图像中的关键部分,抑制非关键特征的提取,而通道注意力负责处理特征图通道的分配关系,对两个维度进行注意力分配。相对于 SE 模块仅考虑通道注意力,CBAM 模块考虑的更为全面,使模型具备更加精确的识别能力。故本论述采用CBAM模块。

2模型改进

2.1改进后ACResNet网络结构

为了能对图像进行更加精确和高效的识别,本论述在对 ResNet18网络模型的基础上引入了注意力机制和ACNet模块,提出一种全新的 ACResNet18网络模型结构。该模型通过将 ResNet18网络模型中的所有卷积层替换为ACNet层,在保留了原网络模型的残差结构的基础上提升了对图像的特征提取能力,然后在每个 AC 块后添加了 CBAM 注意力机制,抑制了不必要的特征提取,不仅降低退化现象,还实现了局部特征提取水平的提高,使该模型结构相较于原模型具有更好的識别效果。改进后模型结构图如图3所示,模型中每个 AC块中卷积层的卷积核除了尺寸大小以外,步长、深度等都与 ResNet18中对应的卷积层相同。

2.2 AC块结构

ACResNet18中 AC 块的使用是用来取代原 ResNet18中的普通卷积层,由三个卷积核大小分别为3×3,3×1,1×3的卷积层取代了原来的单个3×3的卷积层,进行权值聚合后再将结果输出到下一层。其具体的结构图如图4所示。

假设输入 AC块的特征图尺寸为 H*W*C(H,W 为特征图的高和宽,C为特征图的深度),在输入时分别经过3×3,3×1,1×3大小卷积核的卷积层并以相同的步长操作进行图像处理。值得注意的是,单纯将一个卷积层改变成三个不同的卷积层进行特征提取后直接相加,会成倍增加运算量,故而利用卷积的可加性进行分支融合,对各个图像处理结果批处理化,进行权值聚合处理,得到等价的输出结果。其总公式如式(1)所示,O代表输出结果, Ix 代表输入通道数为C 的特征图,K1,K2和 K3代表了 AC块中3个具有兼容大小的2D 内核。

在分支融合过程中,将输入特征图进行三个不同的卷积层运算后送入批量归一化层(BN),然后接一个 RELU线性变换,以增强表示能力。具体如下列所示,μ和σ是批标准化的通道平均值和标准差,γ和β是缩放系数和偏移量,公式(5)中的 O1、O2、O3对应式(2)、式(3)和式(4)。

2.3注意力机制结构

在 ACResNet18模型中,为了进一步提升模型对输入重要信息的动态选择,更好的提取图像的重要特征信息用以识别。本论述在每个 AC 块后加入了轻量级注意力模块 CBAM,提升每个残差块的特征提取能力,抑制了无关特征的提取,进而提高模型的学习效果。 CBAM 注意力模块的运行结构如图5所示(CBAM 模块的输入对应 AC 模块的输出)。

由图5可以看出,CBAM 模块的关键在于对输入进来的特征图依次进行通道注意力模块和空间注意力模块的处理。通道注意力模块(SAM)如图5中的通道注意力模块框架所示。将输入的特征图分别经过平均池化(Average Pooling)和最大池化(Max Pooling),用来压缩输入特征图的空间维数,逐元素求和合并,然后分别经过共享的全连接层(Shared MLP)进行处理。将 MLP 输出的特征进行基于 element-wise 加和操作后使用 sig? moid激活函数进行激活,取得特征图中各个通道的权重,生成最终的通道注意图(channel attention feature map)后做 element-wise 乘法,结果输入到下一层。SAM可以用式(6)表示。其中σ表示为 Sigmoid 函数,MLP 表示为多层感知器,I 对应式(5)中的 O。

空间注意力模块的关键是利用特征间的空间关系生成空间注意力图。在空间注意力模块中,对输入特征层沿着通道维度进行全局平均池化和最大池化,然后堆叠,通过卷积核尺寸为7×7,通道数为1的卷积层调整通道数,得到特征图上每个特征点的权重值,再做 element-wise 乘法操作,降低了模型的参数和计算量,有利于建立高维度的空间特征相关性。空间注意力机制可以用式(7)表示,Avg Pool 表示为平均池化,Max Pool 表示为最大池化。

3实验过程与结果

3.1数据集介绍

针对研究主题基于的 ACResNet18网络模型的猫狗图像识别,对数据集中猫狗进行分类预测。实验的数据集使用kaggle竞赛上的猫狗数据集。该数据集共25000张图片,所有图片皆为 jpg 格式,两种动物的类别比例为1∶1。

3.2数据预处理

将数据集存放在命名为 CATPNG 的文件夹中,在 CATPNG 文件夹下创建了CDtrain文件夹、CDtest文件夹、CDtest_label.txt 和 CDtrain_label.txt,将训练集和测试集放分别放入对应的文件夹中,而训练集和测试集的特征标签存放在对应的文本文档中。在送入模型训练前,将数据集中图片统一 resize 到224*224*3的维度,因kaggle数据集中的数据较为干净,数据集较多,所以并未进行数据增强处理。

3.3数据集划分

在此次实验中,训练集和测试集的数量按5∶1的比例划分,即在25000张图片中,分别有20000张训练集,5000张测试集,使训练集和测试集永不相交,并且在训练集和测试集中,类别是猫的图片和类别是狗的图片数量相同。

3.4实验结果

本论述实验训练所使用的卷积神经网络为 ACResNet18网络模型。实验环境处理器为 Intel(R ) Xeon ( R ) Platinum 8255C CPU @2.50 GHz,显卡为 RTX 3090,显存大小是24 GB,采用并行计算架构 CU? DA11.2,Python3.8版本,Tensorflow2.9作为深度学习框架[14]。因改进后模型更为复杂,处理更多,所以一次训练设置样本数batch_size大小为16,训练迭代周期 ep? och设置20。在设置 ACResNet18网络模型训练时,选择了收敛模型速率较快的 Adam 优化器,损失函数为交叉熵损失函数,同时加入 L2正则化减轻模型的过拟合问题。模型训练结束时,最终结果在训练集和测试集上的准确率分别为0.9518和0.9430。图 6展示了模型运行时训练集和测试集的准确率(Accuracy)、损失函数值(Loss )的变化,可以看到运行过程中避免了过拟合的现象。

3.5实验对比

为了证明本论述 ACResNet18网络模型相比原模型的优越性,将 ACResNet18模型分别与 ResNet34, ResNet18等常用的经典网络模型作对比[15]。为了更好的比较,实验设备与 ACResNet18网络模型训练的环境相同,并取实验结果为测试集迭代最后四位的损失函数 loss 值和准确率 acc 值的平均数做评判标准[16]。对比试验结果由表1显示,可以看到在猫狗数據集上,本论述改进后的 ACResNet18网络模型相较于原来的 ResNet18网络模型的识别准确度更高,验证了本论述模型的可行性和有效性。

4结论

为了提升对猫狗动物的图像识别的精准度,本论述对 ResNet18网络模型做出改进,提出一种基于 ACResNet18的网络模型结构,将原网络的卷积层变为ACNet层,并添加了 CBAM 注意力机制,在保留原有结构的残差结构的基础上,不仅有效降低退化现象,防止过拟合,还实现了对局部特征提取增强,抑制了不必要的特征提取,提升了图像识别的准确率。通过对比实验,证明了该网络模型的可行性和有效性,相较于原网络模型,识别精确度有了明显的提升,能够更好的识别图像的类别。

参考文献:

[1] 徐奕哲.基于 Resnet-50的猫狗图像识别[J].电子制作,2019(16):45-55.

[2] 张玉红,白韧祥,孟凡军,等.图像识别中的卷积神经网络应用研究[J].新技术新工艺,2021,397(1):52-55.

[3]  Cui Yongyi,Qu Fang. Experimental Discussion on Fire ImageRecognition Based on Deep Learning[J]. Journal of Physics: Conference Series,2021,2066(1).

[4] 张珂,冯晓晗,郭玉荣,等.图像分类的深度卷积神经网络模型综述[J].中国图象图形学报,2021,26(10):2305-2325.

[5] 陈欢,薛涛,任星韬,等. ResNet网络下垃圾分类图像识别的实现[J].信息技术与信息化,2021(6):25-27.

[6] 徐小平,余香佳,刘广钧,等.利用改进AlexNet卷积神经网络识别石墨[J].计算机系统应用,2022,31(2):376-383.

[7]  Durga B Kanaka,Rajesh V. A ResNet deep learning basedfa?cial recognition design for future multimedia applications[J]. Computers and Electrical Engineering,2022,104(PA ).

[8] 张典范,杨镇豪,程淑红.基于 ResNet50与迁移学习的轮毂识别[J].计量学报,2022,43(11):1413-1417.

[9] 唐鉴波,李维军,赵波,等.基于卷积神经网络的手写数字识别方法研究[J].电子设计工程,2022,30(21):189-193.

[10] 谢圣桥,宋健,汤修映,等.基于迁移学习和残差网络的葡萄叶部病害识别[J].农机化研究,2023,45(8):18-23,28.

[11]  Xiaohan Ding,Yuchen Guo, Guiguang Ding, et al. ACNet:Strengthening  the  Kernel  Skeletons  for  Powerful  CNN  via Asymmetric  Convolution  Blocks.[J]. CoRR,2019,abs/1908.03930.

[12]  李金星,孙俊,李超,等.融合多头注意力机制的新冠肺炎联合诊断与分割[J].中国图象图形学报,2022,27(12):3651-3662.

[13] 朱磊,仝超,董亮,等.基于残差网络和注意力机制的步态识别算法[J].电讯技术,2022,62(12):1723-1728.

[14]  刘姝珺,吴晟宇.基于卷积神经网络和Tensorflow的昆虫图像识别研究[J].光源与照明,2022(4):70-73.

[15] 魏玉福,陈丽萍.基于注意力机制的深度学习体育运动姿态估计技术[J].电子设计工程,2023,31(2):152-155.

[16] 关晓艳,李亚.基于改进ResNet网络的有遮挡车牌识别[J].农业装备与车辆工程,2022,60(11):58-63.

猜你喜欢
注意力机制卷积神经网络图像识别
基于Resnet-50的猫狗图像识别
高速公路图像识别技术应用探讨
基于深度学习的问题回答技术研究
图像识别在物联网上的应用
图像识别在水质检测中的应用
基于LSTM?Attention神经网络的文本特征提取方法
基于注意力机制的双向LSTM模型在中文商品评论情感分类中的研究
InsunKBQA:一个基于知识库的问答系统
基于深度卷积神经网络的物体识别算法
深度学习算法应用于岩石图像处理的可行性研究