基于改进通道注意力机制的农作物病害识别模型研究

2023-02-26 12:20肖天赐陈燕红李永可李雨晴罗玉峰
江苏农业科学 2023年24期
关键词:迁移学习

肖天赐 陈燕红 李永可 李雨晴 罗玉峰

摘要:准确地识别农作物病害种类、病害程度,是能够正确防治病害的基础,对农作物的高质量生产有重要意义。针对传统深度学习模型对图像的细粒度分类不够精准的问题,提出不参与残差计算的通道注意力(efficient channel attention without participating in residual calculation,EWPRC)结构,该结构将改进的通道注意力机制ECANet3放在残差块之后,增加模型对通道维度的权重学习能力,并将EWPRC结构用于骨干网络为ResNet50的迁移学习模型中,通过替换模型中的layer3、layer4层得到了EWPRC-RseNet-t模型。试验使用了AIChallenger 2018数据集,在数据预处理、数据增强、超参数相同的情况下,首先对比了固定核大小为3、5、7、11、13的通道注意力机制对模型准确率的影响,在此试验中,模型的准确率随卷积核变大呈下降趋势,其中一维卷积核大小为3的模型准确率最高,达到了87.42%,比核大小为5、7、11、13的模型分别提高了0.03、0.42、0.51、0.64百分点。再将EWPRC-ResNet-t模型与经过微调的迁移学习模型ResNet-t以及GoogLeNet、MobileNet-v3、ResNet50模型进行对比,以准确率、精确率、召回率以及F1值作为评价指标,试验结果证明EWPRC-ResNet-t模型取得了最好的效果,比传统深度学习模型中准确率最高的ResNet50模型提高了0.99百分点,比ResNet-t模型提高了0.75百分点。且相比传统的深度学习模型,EWPRC-ResNet-t模型有更高的精度、召回率与F1得分。

关键词:农作物病害识别;通道注意力机制;残差网络;迁移学习;数据增强

中图分类号:S126;TP391.41  文献标志码:A

文章编号:1002-1302(2023)24-0168-07

作物在生产过程中,常由于其他生物的侵染或不适宜的环境导致生长异常、生理机能或结构发生恶性变化,最终导致作物的产量与质量降低,更为严重时甚至导致作物整株死亡。及早发现病害,对作物病害的防治至关重要,其中对作物病害种类、病害程度的识别,是对症、对量下药的关键。然而在种植产业中,依靠人工检测,费时费力,对检测人员也有很高的要求,且准确率不高,因此病虫害检测的信息化是必不可少的。随着互联网的飞速发展,数据的获取变得更加容易,数据量也变得更为庞大,深度学习等技术获益颇丰,很多学者开展了基于深度学习病害识别方法的研究[1-5]。在此基础上,一些学者使用迁移学习的思想,使用模型在其他数据集上学习的参数作为初始化参数,从而使模型达到更好的效果[6-8]。

Agarwal等对比了支持向量机(support vector machine,SVM)等许多机器学习算法与卷积神经网络,构建了一种由8个隐藏层组成的简化CNN模型(proposed model)[9]。该模型相比于预训练模型参数更少,準确率高于传统机器学习模型与预训练模型,并且在公开数据集PlantVillage上达到了98.7%的准确率。Wang等提出MB-ResNet-18模型,通过将SE-Net嵌入ResNet-18中,并使用特征图分层合并方法进一步增加模型的准确率,增加纵向连接,将1个输出节点的模型变为3个输出节点;此外还改进了损失函数,将3个分类任务的损失函数合并为1个联合损失函数[10]。此模型在部分AIChallenger 2018数据集上表现优异,其中对作物的分类准确率较原始的ResNet-18模型下降了0.67%,但对作物病害与病害程度的预测准确率分别提高了0.51%和2.11%。Thakur 等提出了一种轻量级卷积神经网络“VGG-ICNN”,该模型由1个Max Poll 、3个Inception块、1个GAP和1个FC Layer加Softmax组成,只有约600万个参数组成,远少于大多数可用的高性能深度学习模型[11]。该模型在PlantVillage等5个数据集上都表现出一致的良好性能,其中在PlantVillage上达到了99.16%的准确率。高荣华等提出了SMLP模块,该模块将SENet中的2个线性层替换为多层感知机,并将改进的通道注意力机制融入到ResNet中得到SMLP-ResNet模型[12]。经验证SMLP-ResNet在PlantVillage、AIChallenger 2018这2种数据集上准确率分别达到了99.32%与86.93%,相比原始的ResNet与融入了SENet的SE-ResNet模型,在PlantVillage上分别提高了0.27%、0.13%。在AIChallenger 2018上分别提高了3.00%与1.45%,均有不同程度的提升。姜红花等选取ResNet18作为骨干网络,通过引入混合注意力机制与随机裁剪分支的方式对其进行改进,得到了ResNet18-CBAM-RC1 模型[13]。该模型在苹果常见的5种病害分类上准确率达到了98.25%,较ResNet18模型提高了5.06%,较VGG16提高了2.12%。

随着深度学习的发展,很多成果通过对空间维度进行改进从而提升了网络的性能,压缩和激励网络(squeeze-and-excitation networks,SENet)注意到了通道上的关系,使用挤压(squeeze)和激励(excitation)的思想学习每个卷积块的通道注意来提升网络性能[14]。后有许多基于通道注意力的研究,皆致力于开发更复杂的注意力模块,通过捕获更复杂的信道依赖关系或与额外的空间注意结合来改进SENet模块,以获得更好的性能,这不可避免地增加了模型的复杂性[15-18]。Wang等研究证明SENet采用的降维操作会对通道注意力的预测产生负面影响,获取依赖关系效率低且不必要[19]。基于此对SENet进行改良,构造了高效通道注意力网络(efficient channel attention network,ECANet)模块,该模块避免了SENet中的降维操作,通过一维卷积的方式有效地实现了跨通道交互,产生了轻量级的、副作用更小的高效通道注意力模块。

为了构建在作物病害分类上有良好性能的模型,选用分类难度较大的AIChallenger 2018数据集对模型进行训练、测试与对比。试验的骨干网络选取ResNet50模型,引入不参与残差计算的通道注意力(efficient channel attention without participating in residual calculation,EWPRC)结构,该结构引入了改进后的通道注意力机ECANet3,使模型拥有对通道维度的注意力并增强了注意力在网络中的影响,增强了模型对相似图片的区分能力,再引入迁移学习并进行冻结与微调,最后生成改进后的EWPRC-ResNet-t模型。经过对比EWPRC-ResNet-t模型与传统深度学习模型,其他学者提出模型的试验结果,以准确率、精度、召回率与F1分数为参考指标,验证了改进的模型相比于传统深度学习模型有更高的准确率。使用EWPRC结构的模型与原模型有着几乎相同大小的参数,证明了EWPRC结构有助于提升模型的准确率,且EWPRC结构中的ECANet3有轻量级、易添加的特质。

1 材料与方法

1.1 数据来源

为了测试模型对图像的细粒度识别能力,本试验使用了AIChallenger 2018数据集进行训练。该数据集包含36 254张作物病害图像,其中训练集有 31 715 张图像,测试集有4 539张图像。该数据集包含苹果、樱桃、玉米、葡萄、柑橘、桃、辣椒、马铃薯、草莓、番茄共10种作物的27种病害,其中包括10种健康分类,3种病害只有1种病害程度,24种病害有一般、严重2种病害程度的分类共计61个类别,由于编号为44、45的种类数据只有1张,不具备测试意义,所以在实际训练与测试时没有这2种分类,共计59个类别,详细数据如表1所示。

在AIChallenger 2018数据集中,根据病害发病的特点以及严重程度,对病害进行了一般和严重2种程度的分类,通过对比观察,不同程度的病害相似度较高,识别难度大,特别是一般程度病害与严重程度病害,某些健康程度与一般程度的图像也不易区分。由于种类较多、区分难度较大,模型能够准确识别的难度也大大增加,如图1所示,3种病害示例分别为柑橘黄龙病、苹果黑星病、葡萄黑腐病,每种病害按照健康、一般病害、严重病害3种程度划分为3类。

1.2 数据预处理与数据增强

图片在输入模型之前先进行预处理操作。先将每张图片重置为224像素×224像素大小,再经过以下数据增强操作,包括随机剪裁为192像素×192像素大小、概率为0.5的水平翻转、概率为0.5的垂直翻转的操作,经此操作增强模型的泛化能力,避免出现过拟合现象。图2为苹果黑星病图片经过预处理以及图像增强后的结果。

1.3 模型搭建

在深度学习模型变深时,参数更新的链式法则变长,模型变得难以训练,很容易遇到梯度消失、梯度爆炸、過拟合甚至网络退化等问题。He等提出残差学习(residual learning),这种结构通过拟合残差映射的方式将浅层的输出与深层的输出相关联,减少了信息的丢失,同时使参数的更新法则变为,倒数恒大于1,这使参数在反向传播时,即使面对很长的链式求导也不会出现梯度消失的情况,更容易被优化[20]。传统模型对通道这一维度没有特殊处理,意味着对所有通道的重视程度是一样的,但有些通道对结果的影响较小,而有些通道则富含重要的分类信息,因此增加模型对通道的注意力,有利于模型捕捉包含关键信息的通道,从而提升模型的分类能力。且通道的交互范围对于模型的识别能力也有影响,交互范围不当,则通道之间起不到相互的促进作用,从而影响模型识别的准确率。为提高模型对于细粒度分类的准确率,增加模型作物病害的细粒度识别能力,及以上深度学习可能遇到的问题,基于对模型结构影响最小、更方便迁移学习实现的角度出发,提出了基于残差结构与通道注意力的EWPRC模块,该模块对ECANet进行了改进,将改进后的ECANet3放在残差块之后构成新的结构,增加了模型对通道的注意能力, 改善了通道注意力在进行细粒度分类任务时的感受野,再将其应用到ResNet50的迁移模型中,通过冻结与微调,搭建了EWPRC-ResNet-t模型。

1.3.1 固定核大小的通道注意力机制ECANet3

ECANet使用池化与一维卷积的操作进行了通道维度的注意,其中一维卷积核的大小采用自适应的方式自动生成,使得卷积核与通道数成比例。此处不采用自适应卷积核大小的操作,而使用固定大小为3的一维卷积,其结构如图3所示。

其中GAP(global average pooling)层计算了每张特征图中所有像素点的均值,使每个通道中高为H、宽为W的特征图形状变为了1×1,所有通道的形状为c×1×1。GAP层对每张特征图u的计算如公式(1)所示。

第2步通过固定核大小为3、步长为1、填充为1的一维卷积操作,这一步即对通道进行权重学习的过程,计算如公式(2)所示。

式中:W表示长度为3的一维特征;Wj表示一维卷积核中第j个参数。经过固定核大小的一维卷积操作之后,映射特征的形状没有发生改变。与原始ECANet的区别是,原始的ECANet取自适应大小的奇数卷积核,而在通道数较大时,自适应的卷积核数也会较大,如2 048大小的通道由自适应公式得到卷积核大小为7。而大的感受野对通道的注意力并不是完全友好的。在下面不同通道交互范围对比试验中得出结论:模型的性能随卷积核变大总体呈下降趋势,其中卷积核的大小固定为3时效果最优。

再通过Sigmoid函数将像素值非线性值映射到0~1之间,其计算如公式(3)所示。

最后将输出y与原始特征x相乘,相乘后的特征便有了权重信息,即对每个通道的注意力,计算如公式(4)所示。

Outi=yi×xi。(4)

式中:i表示第i个通道;Outi表示第i个通道的输出。

1.3.2 基于ECANet3与残差计算的EWPRC网络结构

在残差结构中,浅层的输出会与深层的输出通过建立残差映射的方式建立链接,这也意味着与普通结构相比,残差结构中增加了上一层的信息,这使每个残差块参数影响变小。因此将残差层与ECANet3做相连而非嵌入,得到EWPRC结构,其结构如图4所示,图中残差层的结构取ResNet50中layer4残差层的结构。

在残差结构中,每层的输出都与上一层的输出h(x)相关联,使得整个残差块的输出为x+h(x)。每个残差块的第1个残差层额外对上一层的输出做了卷积与批标准化操作。在整个残差块之后加入固定核大小为3的注意力机制ECANet3。加入的通道注意力机制不参与任何残差计算,而是单独作为一层,跟在整个残差块之后形成新的EWPRC结构。这样的结构不仅添加的参数少,且对原模型结构的影响微小,便于迁移模型的微调。与原模块相比,该模块只加入了1个核大小固定为3的通道注意力机制,共包含1个全局最大池化层,1个一维卷积,1个Sigmod层和1个相乘操作。

1.3.3 基于EWPRC结构与迁移学习的EWPRC-ResNet-t模型

为减少模型的训练参数、加速模型的训练,选取骨干网络为ResNet50的迁移学习模型,引入了基于EWPRC结构与迁移学习的EWPRC-ResNet-t模型结构如图5所示。

该模型的初始化参数为ResNet50在ImageNet数据集上训练好的参数,将ResNet50的Layer3、layer4层的结构换为EWPRC结构,并冻结了包括layer2层之前所有的参数,使之不参与更新, 只更新EWPRC3、EWPRC4、avgpool与最后的全连接层FC,并将FC层的outfeature由原来的1 000分类改为59分类。layer模块的结构如图 5-b 所示,以layer2模块为例,每个残差块的第1个残差层(如图5中b1所示)的x映射经过1×1的卷积与BN(batch normalization)剩余的3层残差层(如图5中b2所示)直接将x映射到结果中,共包含4层残差层。其中layer1、layer2、EWPRC3、EWPRC4模块的残差层数分别为3、4、6、3层。图片在经过数据预处理与数据增强后,输入到EWPRC-ResNet-t模型中,每批量张图片经过模型后得到对应数量张图片的种类预测结果。

2 结果与分析

2.1 试验条件

本试验在操作系统为Window 11的条件下进行。计算机内存为16 GB,GPU为NVIDIA GeForce RTX 3060,显存为6 GB,使用了python 3.8的版本,模型的实现均使用了pytorch 1.13.1版本,torchvision 0.14.1版本,CUDA版本为11.6。

2.2 试验数据及参数

本试验使用AIChallenger 2018数据集。为防止模型对固定顺序的数据出现依赖从而导致模型不具有泛化能力的现象,训练中数据随机打乱。将图片初始化为统一大小,并对其中像素进行了均值与方差均为0.5的标准化操作,此外对训练数据集还额外采用了随机剪裁、水平翻转、垂直翻转来进行数据增强操作。使用Adam优化器对网络参数进行更新。使用指数衰减的学习率衰减算法,初始学习速率为0.001,每进行7次训练学习率变为当前的0.1倍。由于显存为6 GB,试验均采用了小批量训练方法,批大小设置为64,共训练20次。每次训练迭代所有的数据集,其中训练数据为31 716张图片,测试数据为4 539张图片,测试集不参与模型的训练,只进行模型4种评价指标的测试。评价指标采用模型在AIChallenger 2018数据集上的准确率、召回率、精度与F1分数。

2.3 不同通道交互范围对比试验

此部分对模型中通道交互范围进行测试,在所有条件均相同的情况下,对比通道注意力机制中不同通道感受范围对模型准确率的影响,并与自适应大小注意力机制比较。具体参数与对比结果如表2所示。

表2中每个模型中的EWPRC3和EWPRC4这2个模块使用了通道注意力机制,前5个模型使用了固定感受范围的通道注意力机制,通道感受范围从小到大依次设置为3、5、7、11、13,最后一个模型是自适应大小的通道注意力机制,EWPRC3模块中为5,EWPRC4模块中为7。通过对试验结果的对比分析发现,模型的准确率随卷积核数变大呈下降趋势,验证了在进行图像细粒度分类任务时,通道交互范围越大,模型的识别效果越不佳,且固定核大小的模型在学习和捕捉特征方面更加稳定,能够更好地适应数据的特征,使用较小的卷积核大小能够更好地捕捉通道间的相关性。此试验中Eca3的模型表现最好,EWPRC3、EWPRC4 中的通道注意力机制均使用了大小为3的一维卷积,准确率达到了87.42%。

2.4 基于EWPRC-ResNet-t的作物病害识别试验

多个传统深度学习模型、微调的迁移学习模型与改进后的迁移学习模型在AIChallenger 2018数据集上的结果如表3所示,其中结尾为“-t”的模型均为使用了迁移学习的模型,且都进行了如下操作:FC层的微调、冻结包括layer2层之前的参数。ResNet-t为经过微调的ResNet50迁移学习模型;ECA-ResNet-t模型在ResNet-t模型中引入了EWPRC结构与迁移学习,模型中的通道注意力机制为未改进前的ECANet;EWPRC-ResNet-t模型在ResNet-t模型中引入了EWPRC结构与迁移学习,模型中的通道注意力机制为改进后的ECANet3;SMLP-ResNet为高荣华等提出的改进注意力机制的病害识别模型[12]。

从表3可以看出,在传统的深度学习模型中,准确率最高的ResNet50模型达到了86.43%,而ResNet-t模型达到了86.67%,比没有经过迁移学习的ResNet50模型提高了0.24百分點。ECA-ResNet-t模型准确率达到了86.72%,比只经过迁移学习的ResNet-t模型效果高了0.05百分点,而EWPRC-ResNet-t模型准确率达到了87.42%,比原始的ResNet50模型提高了0.99百分点,比ResNet-t模型提高了0.75%,比ECA-ResNet-t模型高了0.70百分点,比高荣华等提出的SMLP-ResNet模型提高了0.49百分点[12]。在所有测试模型中,EWPRC-ResNet-t有最优的召回率(Recall)和F1分数(F1 score),分别达到了84.23%和84.79%,在精度(Precision)指标上达到了85.36%,比精度最高的ResNet-t模型低0.11百分点,在所有模型中排第二。由此可见,迁移学习会提高模型的准确率,在引进ECANet之后,模型提取了通道上的特征,但在效果上并不明显,而固定且较小的通道感受范围,可以使模型更好地学习通道上的特征提取能力,在图像细粒度分类任务中有较大幅度地提升。

圖6为模型的得分情况,图中x轴是第k次训练,y轴是第k次训练模型的准确率(最优)。图7是模型的准确率随训练次数的变化情况,图中x轴是训练次数,y轴是模型的准确率,实线代表的是引入了迁移学习的模型,虚线代表的是传统深度学习模型。从图6可以看出,红色点所代表的EWPRC-ResNet-t模型准确率为87.42%,在所有模型中最高,并且在第16次训练中获取了最优的参数,达到了最高的准确率。由图7可以看出,相比于虚线代表的传统的深度学习模型,以EWPRC-ResNet-t为代表的引进了迁移学习的模型,在第1次训练时的准确率就达到了77%以上,而传统的深度学习模型在第1次训练时准确率都在55%以下。

3 讨论与结论

本研究针对图像细粒度分类任务,对ECANet进行通道交互范围的优化,并提出EWPRC结构,该结构对原模型影响微小,易于整合到迁移学习模型中,使迁移学习模型的微调便捷,且在图像的细粒度分类上较其他模型有较大提升。[JP3]将其应用到结合了引进迁移学习的ResNet50模型中,得到EWPRC-ResNet-t模型。通过在分类难度较大的AIChallenger 2018数据集上进行试验,发现在进行图像细粒度分类任务时,固定通道交互范围的通道注意力机制更能提取出有用的通道特征,在整合了固定通道交互范围的通道注意力机制之后,模型对图像的细粒度分类有了较大程度的提升,弥补了残差结构缺失通道特征表达能力的缺陷。对比EWPRC-ResNet-t模型与传统深度学习模型、近期其他学者提出的模型,在作物病害程度的图像细粒度分类任务试验中,EWPRC-ResNet-t模型的准确率、精度、召回率与F1分数分别达到了87.42%、85.36%、84.23%、84.79%,在作物病害细粒度分类任务上整体性能更优,且使用了EWPRC结构的EWPRC-ResNet-t模型比未使用EWPRC结构的ResNet-t模型准确率提高了0.75百分点,比使用了ECANet的ECA-ResNet-t模型提高了0.70百分点,验证了EWPRC可以有效提升模型对作物病害识别的准确率。

参考文献:

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

[2]Huo M Y,Tan J. Overview:research progress on pest and disease identification[C]//Suen,Ching Y. Pattern recognition and artificial intelligence. Cham:Springer International Publishing,2020:404-415.

[3]Xu W X,Sun L,Zhen C,et al. Deep learning-based image recognition of agricultural pests[J]. Applied Sciences,2022,12(24):12896.

[4]Bondre S,Patil D. Recent advances in agricultural disease image recognition technologies:a review[J]. Concurrency and Computation(Practice and Experience),2023,35(9):e7644.

[5]Yuan Y,Chen L,Wu H R,et al. Advanced agricultural disease image recognition technologies:a review[J]. Information Processing in Agriculture,2022,9(1):48-59.

[6]Huang M L,Chuang T C,Liao Y C. Application of transfer learning and image augmentation technology for tomato pest identification[J]. Sustainable Computing(Informatics and Systems),2022,33:100646.

[7]Kathiresan G,Anirudh M,Nagharjun M,et al. Disease detection in rice leaves using transfer learning techniques[J]. Journal of Physics(Conference Series),2021,1911(1):012004.

[8]Tirkey D,Singh K K,Tripathi S. Performance analysis of AI-based solutions for crop disease identification,detection,and classification[J]. Smart Agricultural Technology,2023,5:100238.

[9]Agarwal M,Gupta S K,Biswas K K. Development of efficient CNN model for tomato crop disease identification[J]. Sustainable Computing(Informatics and Systems),2020,28:100407.

[10]Wang C F,Ni P,Cao M Y. Research on crop disease recognition based on Multi-Branch ResNet-18[J]. Journal of Physics(Conference Series),2021,1961(1):012009.

[11]Thakur P S,Sheorey T,Ojha A. VGG-ICNN:a lightweight CNN model for crop disease identification[J]. Multimedia Tools and Applications,2023,82(1):497-520.

[12]高榮华,白 强,王 荣,等. 改进注意力机制的多叉树网络多作物早期病害识别方法[J]. 计算机科学,2022,49(增刊1):363-369.

[13]姜红花,杨祥海,丁睿柔,等. 基于改进ResNet18的苹果叶部病害多分类算法研究[J]. 农业机械学报,2023,54(4):295-303.

[14]Hu J,Shen L,Sun G,et al. Squeeze-and-excitation networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2020,42(8):2011-2023.

[15]Woo S,Park J,Lee J Y,et al. CBAM:convolutional block attention module[C]//European Conference on Computer Vision.Cham:Springer,2018:3-19.

[16]Fu J,Liu J,Tian H J,et al. Dual attention network for scene segmentation[C]//2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach,2020:3141-3149.

[17]Chen Y P,Kalantidis Y,Li J S,et al. A2-nets:double attention networks[EB/OL]. [2023-04-12]. https://arxiv.org/abs/1810.11579.

[18]Gao Z L,Xie J T,Wang Q L,et al. Global second-order pooling convolutional networks[C]//2019 IEEE/CVF Conference on [JP4]Computer Vision and Pattern Recognition. Long Beach,2020:3019-3028.

[19]Wang Q L,Wu B G,Zhu P F,et al. ECA-net:efficient channel attention for deep convolutional neural networks[C]//2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Seattle,2020:11531-11539.

[20]He K M,Zhang X Y,Ren S Q,et al. Deep residual learning for image recognition[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas,2016:770-778.

猜你喜欢
迁移学习
《宋史·曾公亮传》传主形象论析
基于深度神经网络的人体动作识别研究
威斯顿相互作用法在社会保险学课程教学中的实践
基于卷积神经网络的图像分类技术
迁移学习在专业课程教学中的实践研究
迁移学习研究综述
从认知角度探讨大学英语网络教学模式
奇异值分解与移移学习在电机故障诊断中的应用
一种基于迁移极速学习机的人体行为识别模型
大数据环境下基于迁移学习的人体检测性能提升方法