APP下载

基于改进的MobilenetV3苹果叶片病害图像识别技术

2023-08-20王治兵吴丽丽

软件工程 2023年8期
关键词:迁移学习深度学习神经网络

王治兵 吴丽丽

摘 要:针对传统深度学习网络模型因权重参数过大而不适宜在移动端部署的问题,提出了一种基于改进的轻量级MobileNetV3网络模型对苹果叶片病害进行识别。利用PyTorch框架,选取26 377张图片,按6∶2∶2的比例划分数据集,以MobileNetV3网络模型为基础,引入迁移学习,加入空洞卷积,并调整原模型结构,形成新模型进行训练学习。经过多轮迭代,损失曲线实现收敛,模型训练成功,训练集上的准确率为95.72%,测试集上的准确率为93.41%;经过改进的MobileNetV3网络模型对苹果叶片病害图像识别效果较好,为将来在移动端实现部署与推广提供了技术方案支撑。

关键词:神经网络;MobileNetV3;深度学习;迁移学习;空洞卷积

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

0 引言(Introduction)

民以食为天,从古至今,农业一直是我国的立国之本,在我国五千多年的发展历程中,农业始终占据着举足轻重的地位[1]。农业发展除受天灾影响外,还受到病害侵蚀的影响。虽然我们无法从源头上彻底消灭农业病害,但是可以提前发现它并进行干扰与预防,将损失降到最低[2]。近年来,图像识别技术在农业发展中取得较好的应用效果,专家系统和计算机图像识别技术的结合,解决了传统人工经验识别方式受主观因素影响大的缺陷。但是,由于传统模型的权重参数过大,这就给移动端的应用部署带来限制,因此还没有得到全面的推广使用,以检测速度快、模型权重小的轻量级网络模型的问世迫在眉睫。本文以轻量级MobileNetV3网络模型为基础,通过对模型在结构、层次等方面做出调整,提升了模型的识别精度和速度,这对于在移动端部署的轻量级网络模型而言,无疑是巨大的成功。

1 相关研究(Related research)

随着计算机视觉技术的崛起和深度学习技术的成熟,图像识别技术在植物叶片病害识别领域有了突破性的进展。王建玺等[3]通过提取病斑颜色、形状和纹理等方面的特征,采用支持向量机(SVM)技术对病害进行自动识别。严倩[4]用全局平均池化层、批归一化层和全连接输出层取代了VGG16网络模型中的3个全连接层,引入迁移学习的思想,对苹果叶片病害进行识别,为了减少深度网络模型对数据量的依赖,采用了一种融合卷积神经网络和图卷积网络的新型网络模型,能够达到87.88%的识别准确率。李恩霖等[5]通过建立基于VGG16、InceptionV3、ResNet50、ResNet101、DenseNet121的5種深度卷积神经网络的病害识别模型,保留原始结构卷积层并设计新的全连接层,对玉米叶片病斑识别效果进行研究,再利用迁移学习迁移各个模型在ImageNet数据集上的权重参数,通过对比5种模型性能,最终选取最优的网络模型,结果表明,经过重新设计全连接层的DenseNet121网络的性能最优,其准确率、召回率、特异率分别为99.73%、99.73%和99.87%。晁晓菲[6]提出了一种融合Xception及DenseNet网络优点的XDNet深度学习网络,提出SE-DEEP模块,将具有通道注意力的SE(Squeeze and Excitation)模块与深度可分离卷积融合,并将SE-DEEP模块融入Xception网络,构建SEXception网络,然后通过实验对其进行轻量化设计,构建SEmini Xception网络,将其应用于对苹果叶片病害的识别并对病斑进行分割,结果表明病害识别准确率达到96.52%,病害程度诊断准确率达到85.81%。周巧黎等[7]提出了一种基于改进MobileNetV3的番茄叶片病害分类识别方法,在迁移学习的基础上继续改进MobileNetV3模型,在卷积层引入空洞卷积和感知机结构,采用闸门机制激活函数 (Gated Liner Unit,GLU),训练得到最佳的番茄病害识别模型,平均测试的识别准确率达到98.25%,模型的数据规模为43.57 MB,单张番茄病害图像的检测耗时仅0.27 s。蒲秀夫等[8]提出使用二值化卷积神经网络模型对植物病害进行识别,试验中以VGG16模型为基准,采用深度网络模型对植物病害进行分类,相比传统的植物分类方法,该模型的准确率更高。试验表明二值化模型达到原模型近两倍的计算速度,并且在分割数据集下,测试平均识别准确率能达到96.8%。以上研究取得了巨大成功,但是由于网络参数庞大,计算量复杂,因此无法在移动端进行部署。本文采用轻量级卷积MobileNetV3神经网络,利用深度学习算法,对常见的5种苹果叶片病害进行识别,取得了较好的识别效果。

2 MobileNetV3网络模型简介(Introduction tothe MobileNetV3 network model)

MobileNetV3网络模型是在MobileNetV1和MobileNetV2的基础上,由Google公司在2019年推出的深度学习网络模型。MobileNetV3网络继承了MobileNetV1和MobileNetV2网络的优势,并在此基础上进行优化。相对于MobileNetV2网络模型,MobileNetV3更新了block(bneck)模块,加入了注意力机制SE 模块,更新了激活函数,使用了h-swish激活函数[9]。在MobileNetV3网络模型的头部channel(通道)数量和尾部结构做出改变,重新设计了计算昂贵的层结构,引入了新的非线性激活函数h-swish,是最接近swish的非线性改进版本,它计算量更小,对量化更为友好[10]。

MobileNetV3中加入注意力机制,能在图像识别中聚焦重要的特征信息,忽略不相关信息,并且通过不断修改权重值,使得在不同的情况下也能精确提取重要的特征信息,以提高分类的准确率[11-12]。如图1所示,主要操作是针对输出的特征矩阵的每一个channel(通道)进行全局平均池化处理,所得到的向量个数就是channel的个数。然后通过两个FC(全连接层)得到输出的向量。其中,第一个FC的向量个数是channel个数的1/4,使用ReLU激活函数,然后第二个FC的输出与channel个数相同,使用h-swish激活函数。最终所得到的这个向量可以理解为刚输入的每一个channel分析出了一个权重关系,将得到的权重通过乘法通道加权到先前的特征上,完成在通道维度上的特征重标定。

swish非线性激活函数作为ReLU的替代,可以显著提高神经网络的准确性,其定义为swish x =x·σ(x)。尽管这种非线性提高了准确性,但在嵌入式环境中却带来了非零成本,因为“S”形函数在移动设备上的计算成本更高,计算、求导过程复杂,对量化过程不友好[13]。改进的h-swish函数如公式(1)所示:

MobileNetV3网络模型作为轻量级网络模型的翘楚,对硬件配置要求低,能做到在移动端进行嵌入式部署,并且所产生的成本和代价较低,避免了因高额成本而不能在农业发展中推广的顾虑,MobileNetV3在不降低识别精度的情况下,能提升识别速率,减少模型参数,而这也正符合本文研究的初衷,价廉、轻量、便携、精确地进行苹果叶片病害的识别。考虑到训练样本数据集不够庞大,并且受到训练设备性能的限制,本文选择模型结构较小的MobileNetV3_Small网络模型,而不选择MobileNetV3_Largel网络模型。MobileNetV3_Small网络结构如表1所示。其中,“输入”代表MobileNetV3网络每个特征层的shape(结构)变化;“操作”代表每次特征层即将经历的bneck(可分离卷积层)结构;“卷积核”代表bneck内逆残差结构上升后的通道数;“输出”代表输入bneck时特征层的通道数;“注意力机制”代表该bneck模块是否使用注意力机制,其中“√”代表使用,“-”代表不使用;“激活函数”代表该bneck模块所使用的激活函数的种类;HS代表使用h-swish激活函数,RE代表使用ReLU激活函数;“步长”代表该bneck模块结构要经历的步长大小;“NBN”表示不使用bneck模块;“k”代表最后的输出。

3 MobileNetV3 网络模型改进(MobileNetV3network model improvements)

3.1 加入迁移学习

为了加快训练速度,使模型更快收敛,同时提高模型识别的准确率,本研究在模型训练时,引入迁移学习的训练方法。迁移学习可以考虑到大部分数据和任务间的相关性,将其他大批量数据训练所得模型参数用于训练新数据,从而减少训练步骤,缩短训练时间,增加数据量,降低过拟合程度[14-15]。本文在公开的ImageNet数据集上进行预训练获取模型参数,将其迁移至苹果叶片病害识别模型上,缩短模型训练时间,提高泛化性。在迁移学习过程中,冻结所有的卷积层,只訓练最后两个全连接层的权重[16]。

3.2 添加空洞卷积

空洞卷积(Dilated Convolution)是一种传统卷积的变种,通过对传统图像卷积添加空洞,完成对传统图像卷积的感受野扩张[17]。空洞卷积是针对图像语义分割中采样存在降低图像分辨率、丢失信息的问题而提出的一种卷积思路[18],通过添加空洞扩大感受野,假设让原本3*3的卷积核,在相同参数量和计算量下拥有5×5(dilated rate=2)或者更大的感受野,从而不需要下采样。

不同层次结构中的卷积核的尺寸大小各不相同,这是为了提取更深层次抽象特征,使信息损失达到最小。本文研究中,在MobileNetV3网络的倒数第二和第三个bneck模块中引入空洞卷积,扩张率R 分别为2和4。空洞卷积效果如图2所示,初始卷积核大小都为3*3,R 大小从左到右依次为1、2、4,感受野大小为3×3、5×5、9×9。R 的改变会引起感受野的变化,但不会增加运算量。

3.3 网络层数调整

过深的网络结构对模型来说将带来模型不稳定、识别效率降低、网络退化、学习能力下降等问题。MobileNetV3网络模型在倒数第二个和第三个bneck模块中引入空洞卷积后,移除bneck6、bneck7模块,将bneck8模块的输入通道数由48变为40(其中R 代表扩张率的大小),并将该模型定义为MobileNetV3-S。通过在原有模型上引入迁移学习和加入空洞卷积,并对网络模型层数进行调整,使改动后的MobileNetV3-S模型相较于MobileNetV3网络模型,其模型参数和权重都更小,在移动端的嵌入式部署更便捷,最终模型如图3所示。

4 实验与结果分析(Experiment and result analysis)

4.1 数据集获取

数据集样本选自公共数据集,包括花叶病、锈病、灰斑病、斑点落叶病、褐斑病5种常见的叶部病害图片。其中,花叶病图片有4 875张,锈病图片有5 694张,灰斑病图片有4 810张,斑点落叶病图片有5 343张,褐斑病图片有5 655张,共计图片26 377张。按6∶2∶2的比例划分训练集、验证集、测试集。原始图像分辨率大小为512×512像素,为了加快训练的速度, 统一调整分辨率大小为224×224像素。表2为不同病害叶片训练集、验证集、测试集的具体数量,图4为各个病害叶片样本数据集示例,每个种类展示5张图片,从上到下依次为斑点落叶病、褐斑病、灰斑病、花叶病、锈病的图片。

4.2 MixUp混合增强

Mixup增强方式是将两张原图像按比例进行线性插值生成新的混合图像,经插值混合后的样本与真实样本非常接近[19]。本文对苹果叶片病害研究样本进行同类间的混合增强,不仅扩充了数据集,还增加了样本的多样性,加大了对重要特征的学习力度。MixUp混合增强就是将两张原始图像线性叠加形成新的特征向量,使模型训练样本更加适应实际环境,模型预测更加的平滑。进行MixUp增强时,对每一个类别中的样本随机选择进行合成,部分MixUp混合增强图像如图5所示。

4.3 实验环境

本次实验操作系统为Windows 10,编程工具为PyCharm,编程语言为Python3.6版本,深度学习框架采用PyTorch,显卡为(GPU)NVIDIA GeForce GTX 1050,显存大小为4 GB,中央处理器(CPU)为Intel Pentium G4600 3.6 GHz,固态内存大小为16 GB。

4.4 模型训练

图6中的横坐标代表权重更新的次数,左侧纵坐标为训练过程中真实值与预测值之间产生的损失值,右侧纵坐标为Top1值(一张图片训练过程中输出的预测概率,选取其结果最大的为Top1值)。模型训练输入的batch_size 为128,从图6中可以看出,损失值向0.0趋近,Top1值向1.0趋近。训练过程中就总体趋势而言,Top1值不断增大,损失值不断减小,在部分阶段虽然有趋势的反弹,但是随着训练迭代次数的增加,模型最终克服了局部最优的局面,向全局最优的趋势发展,损失值和Top1值最终变得平缓并趋于稳定。

4.5 对比实验

为了验证MobileNetV3-S网络模型应用于苹果叶片病害识别的准确性与有效性,以及相较于其他模型的优越性,选取ShuffleNetV2、MobileNetV3从Top1值、损失值等方面进行对比实验评估。

对比MobileNetV3网络模型、ShuffleNetV2网络模型以及MobileNetV3-S网络模型在训练时的Top1值、损失值,由图7可以清晰地看到三个模型在迭代次数达到200轮之后都趋于平稳且收敛,并且MobileNetV3-S网络模型的Top1值最优,趋近于1.0,损失值下降最快且最快达到平稳状态。

MobileNetV3网络模型与ShuffleNetV2网络模型的Top1值接近,损失值略有差异。由此可以判断出,MobileNetV3-S网络模型应用于苹果叶片病害识别相比另外两个网络模型更具有优势。

为了再次评估MobileNetV3网络模型、ShuffleNetV2网络模型以及MobileNetV3-S网络模型的表现,选取交叉验证的方式对三个模型进行评优。模型评估阶段选取数据集总数的20%作为评估时选用的数据集。为了使实验更具有说服力,在划分数据集时先将数据集打乱,再进行划分。验证时共设置100个epoch(训练轮数),每经历5个epoch 开启一次验证,保留验证集上的准确率。由图8可以看出,MobileNetV3-S网络模型应用于苹果叶片病害识别,相比MobileNetV3 和ShuffleNetV2网络模型更具优势。

4.6 消融实验

为了验证经过改进的模型相比原始模型的有效性,利用验证集数据对经过训练后获得的原模型数据与加入迁移学习数据和空洞卷积数据的模型数据,进行对比验证,由图9可以看出,在原MobileNetV3模型上进行模型结构调整,加入迁移学习和空洞卷积后的模型准确率远高于原MobileNetV3模型,并且更加稳定,更早收敛。

4.7 模型评估

训练完成后保存最好的权重模型,用于对模型进行评估。选取数据集总数的20%用于测试集,导入训练好的模型进行测试,将测试结果以混淆矩阵的形式在图10中展现。图10为五行五列的混淆矩阵,其横坐标为每一类苹果叶片病害预测分类百分比,纵坐标为真实分类百分比。横坐标百分比相加结果应为1,代表对每一类苹果叶片病害正确预测与错误预测之和。横、纵坐标重合处对角线代表分类正确的结果,数值越高,分类准确率越高。

如表3所示,为每类苹果叶片病害分类得出的精度、召回率、F1值的百分比,结合表3分析,灰斑病和褐斑病2类叶片病害的波动较大,灰斑病的召回率最低,精度接近5类叶片病害分类的平均值;褐斑病的精度较低,召回率偏高。其他3类叶片病害的评价指标变动相对平缓,比较接近于平均值,整体数据比较平缓。在今后的识别分类研究中,可重点关注灰斑病和褐斑病特征信息的提取。

4.8 网络模型性能对比

MobileNetV3和ShuffleNetV2网络模型同为轻量级网络模型的代表,它们不仅在识别精度上存在差异,在识别速度上也是存在区别的。轻量级网络模型的轻巧、参数量小、检测速度快是其优势,这个优势决定了它可以在移动端进行嵌入式部署,并能在多种复杂环境场景下较好地识别叶片病害。通过表4中数据的对比可以看出,MobileNetV3-S网络模型的单张图像检测识别时间降低到0.31 s,与MobileNetV3网络模型和ShuffleNetV2网络模型相比,单张图像识别时间分别降低了0.08 s和0.1 s。检测时间缩短,表明改进的模型MobileNetV3-S更加适合苹果叶片病害的识别。

5 结论(Conclusion)

本文的研究以MobileNetV3网络为基础模型,建立苹果叶片病害识别数据集,并对数据集进行MixUp混合增強。在MobileNetV3网络模型的基础上构建MobileNetV3-S模型,并选取ShuffleNetV2模型与原MobileNetV3模型作对比,实验结果显示改进的MobileNetV3-S网络模型在苹果叶片病害识别速率和识别准确率上均高于原MobileNetV3网络模型和ShuffleNetV2网络模型。本文研究目前处于模型优化阶段,可以为未来移动端设备部署进入实际工程阶段提供理论依据,为将来大范围地应用于移动端打下基础。

参考文献(References)

[1] 杨宝智. 我国农业技术推广体系的改革创新与发展趋势研究[J]. 种子科技,2022,40(5):142-144.

[2] 王小玲,丁为军. 农药减量增效技术在农业病虫害防治中的运用[J]. 智慧农业导刊,2022,2(13):62-64.

[3] 王建玺,宁菲菲,鲁书喜. 基于支持向量机的苹果叶部病害识别方法研究[J]. 山东农业科学,2015,47(7):122-125,141.

[4] 严倩. 基于深度学习的苹果叶片病害识别研究[D]. 马鞍山:安徽工业大学,2021.

[5] 李恩霖,谢秋菊,苏中滨,等. 基于深度学习的玉米叶片病斑识别方法研究[J]. 智慧农业导刊,2021,1(10):1-10.

[6] 晁晓菲. 基于深度学习的常见苹果叶片病害识别与病斑分割方法研究[D]. 杨凌:西北农林科技大学,2021.

[7] 周巧黎,马丽,曹丽英,等. 基于改进轻量级卷积神经网络MobileNetV3的番茄叶片病害识别[J]. 智慧农业(中英文),2022,4(1):47-56.

[8] 蒲秀夫,宁芊,雷印杰,等. 基于二值化卷積神经网络的农业病虫害识别[J]. 中国农机化学报,2020,41(2):177-182.

[9] 王云艳,罗帅,王子健. 基于改进MobileNetV3的遥感目标检测[J]. 陕西科技大学学报,2022,40(3):164-171.

[10] 张兆国,张振东,李加念,等. 采用改进YoloV4模型检测复杂环境下马铃薯[J]. 农业工程学报,2021,37(22):170-178.

[11] 章羽,罗素云,陈杨钟. 基于注意力机制的改进VGG车辆类型识别研究[J]. 农业装备与车辆工程,2022,60(8):82-87.

[12] ZHANG Y,ZHOU A B,ZHAO F K,et al. A lightweightvehicle-pedestrian detection algorithm based on attentionmechanism in traffic scenarios[J]. Sensors,2022,22(21):8480.

[13] 杨晋生,杨雁南,李天骄. 基于深度可分离卷积的交通标志识别算法[J]. 液晶与显示,2019,34(12):1191-1201.

[14] 徐振南,王建坤,胡益嘉,等. 基于MobileNetV3的马铃薯病害识别[J]. 江苏农业科学,2022,50(10):176-182.

[15] KOOVERJEE N,JAMES S,VAN ZYL T. Investigatingtransfer learning in graph neural networks[J]. Electronics,2022,11(8):1202.

[16] 鲁笛. 基于迁移学习的玉米病害识别研究[D]. 郑州:河南农业大学,2022.

[17] 马利,刘新宇,李皓宇,等. 应用空洞卷积的神经网络轻量化方法[J]. 计算机工程与应用,2022,58(5):85-93.

[18] FENG M R,HU J J,OU M H,et al. Crowd counting algorithmbased on depthwise separable of dilated convolution[J]. Procedia Computer Science,2022,208:319-324.

[19] 陆健强,林佳翰,黄仲强,等. 基于Mixup算法和卷积神经网络的柑橘黄龙病果实识别研究[J]. 华南农业大学学报,2021,42(3):94-101.

作者简介:

王治兵(1997-),男,硕士生。研究领域:图像识别,人工智能与数据挖掘。

吴丽丽(1979-),女,博士,副教授。研究领域:图像识别,人工智能与数据挖掘。本文通信作者。

猜你喜欢

迁移学习深度学习神经网络
神经网络抑制无线通信干扰探究
奇异值分解与移移学习在电机故障诊断中的应用
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
深度学习算法应用于岩石图像处理的可行性研究
基于深度卷积网络的人脸年龄分析算法与实现
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用
一种基于迁移极速学习机的人体行为识别模型
大数据环境下基于迁移学习的人体检测性能提升方法