基于改进残差网络的水稻害虫识别

2022-07-29 07:04雷建云
江苏农业科学 2022年14期
关键词:残差害虫准确率

雷建云, 陈 楚, 郑 禄, 帖 军, 赵 捷

(中南民族大学计算机科学学院/湖北省制造企业智能管理工程技术研究中心,湖北武汉 430074)

水稻是我国第一大粮食作物,我国是世界第二大水稻种植国家,随着人口逐年增长,人们对粮食的需求量也呈增长趋势,因此,对水稻产量提升的研究成为我国重要的工作。随着气候的变化和环境问题日益突出,水稻病虫害发生率越来越高,尤其是虫害影响了水稻的生长,导致作物产量下降,因此,水稻害虫的防治显得极其重要。传统的水稻害虫检测主要依赖于人工识别,但是害虫的种类多、数量庞大,人工识别法效率低下、速度缓慢、准确率不高。

近年来,随着人工智能的兴起,深度学习在计算机视觉、自然语言处理、情感计算等领域得到了广泛关注和应用,很多科研工作者将深度学习应用到农业领域,在作物害虫的识别上已有了初步探索。吴翔通过卷积神经网络模型实现了10种螟蛾科类害虫的识别,基本图像数据来源于自然环境下的图像采集,共计900张彩色图像,每幅图像只包含单一的害虫,其卷积神经网络害虫识别模型共计有5层,最终识别的准确度约为76.7%。谢成军等提出了一种基于图像编码与空间金字塔模型相结合的农田害虫图像表示与识别方法,通过35种害虫的识别试验,平均识别准确率达到89.2%。梁万杰等提出了一种基于卷积神经网络模型的水稻二化螟识别方法,试验通过设计一个10层的卷积神经网络模型,可有效地提取图像的特征,对水稻二化螟识别具有很好的抗干扰性和鲁棒性,模型命中率、分类精度分别为86.21%、89.14%。周爱明基于深度学习技术,实现对水稻害虫的识别和计数,识别准确率约为90%,该模型同样采用残差神经网络(ResNet)模型,通过卷积神经网络对害虫图像进行特征提取,然后通过分类器对害虫种类进行甄别,最后完成图像中害虫的计数任务。Song等收集了71种35 000张害虫图像,将ResNet中的残差网络(residual blocks)结构添加到Inception-V4模型中,对害虫进行分类研究,总体分类准确率达到97.3%。Thenmozhi等建立了一个深度卷积神经网络(CNN)模型,基于深度神经网络和迁移学习的方式实现对害虫的识别和分类,最终在3类害虫图像数据集上的准确率均在95%以上。Nanni等将显著性方法与卷积神经网络模型进行特征融合,在密集连接的卷积网络(denseNet)的基础上,设计搭建了新型的害虫识别模型,最终在其自建小型数据集的测试过程中准确率达到92.43%,在IP102数据集上准确率达到61.93%。丁永军等提出将胶囊网络和VGG16模型相结合,构建卷积胶囊网络用于百合病害识别,其检测精度达到99.20%。李静等提出了一种基于改进的GoogleNet卷积神经网络模型的玉米螟虫害图像识别方法,对玉米螟虫害图像平均识别准确率达到96.44%。

以上这些基于机器视觉和卷积神经网络算法的识别模型,相比常规的人工识别农作物病虫害方法取得了较好的试验结果。但是,在构建深层卷积神经网络的过程中,当梯度信号从底层反向传播到最顶层时,会逐步衰减,从而导致大量特征信息丢失。为了减少信息的丢失,从原始图像获得更多的特征,提高水稻害虫的识别能力,本研究提出一种改进型ResNet算法,在ResNet卷积网络的基础上,加入胶囊网络,来提升水稻害虫的识别效果,以期对水稻害虫的识别和预防提供参考。

1 试验数据

1.1 数据来源

Wu等公布了一个大规模的害虫识别数据集IP102,并进行了专业的图像标注工作,一定程度上解决了害虫图像数据集样本少的问题。该数据集类别是层级结构,分为8种农作物大类和102种害虫小类。IP102是迄今为止规模最大的害虫识别数据集,包含75 000张害虫样本,其类别几乎囊括了当前最常见的害虫种类。目前来说,IP102数据集为害虫识别领域提供了优秀的试验基准,从IP102数据集中,选取其中的水稻害虫进行特定研究,涉及稻卷叶虫、稻螟蛉、稻潜叶蝇、二化螟、三化螟、稻瘿蚊等14个类别,图像总数为8 417张,作为本研究的水稻害虫图片数据集,该数据集的详细信息见表1,数据集的部分样本图像见图1。

表1 数据集详细信息

1.2 数据处理

IP102数据集水稻害虫存在样本过多或过少的现象,导致样本分布不平衡。为了弥补样本存在的种类不平衡对模型识别准确率的影响,在训练之前,对数量较少的样本数据进行增强处理。在深度学习中,数据增强是指通过某些技术手段将数据量小的数据集扩充得到更多的数据。通过旋转(旋转角度分别为90°、180°、270°)、翻转(翻转方式为上下翻转、水平翻转)、光照度处理、对比度处理、色彩平衡处理以及锐度处理等数据增强技术,达到数据样本均匀,总的图片数量达到20 670张,提升了模型的泛化能力和模型的鲁棒性。数据增强后与原图对比情况见图2。

2 模型构建与优化

2.1 残差网络

卷积神经网络可以提取图像中不同语义层次的特征,随着网络层数的增加,提取到的特征也更加丰富。网络的深度对网络性能至关重要,但网络的性能会随着网络深度的增加迅速达到饱和,甚至开始迅速下降,称其为退化问题。为了解决网络退化问题并能够训练上千层的网络,He等提出身份快捷方式连接,该连接从某些层跳过并使用了先前层的激活功能,由此ResNet模型诞生了,它允许网络深度大幅提升的同时达到更高的准确率,能够很好地解决深层网络训练时的退化问题,其核心为残差单元(图3)。

2.2 胶囊网络

胶囊网络(capsule network,简称Capsnet)是一种具有强泛化能力的深度学习网络模型,在自动驾驶、语义编码、医学图像分析等领域都得到了成功应用。胶囊网络是在CNN的基础上发展而来的,由于CNN需要在大量的图像上进行训练,在池化层中丢失了大量信息,降低了空间分辨率,影响了最终的分类精度。虽然后续很多人对CNN进行了改进,但是CNN中有大量的参数,池化层依然必不可少。为解决这些问题,胶囊网络诞生了,胶囊网络去掉了造成特征丢弃的池化层,充分利用各个图像特征之间的空间关系,获得高层特征和低层特征之间的位置关系作为一种用于分类的特征。胶囊网络使用矢量胶囊代替标量神经元,对于特征向量具有良好的方向表示。图4是胶囊网络的模型结构,Conv1表示卷积层,PrimaryCaps表示初始胶囊层,DigitCaps表示路由胶囊层,代表矩阵。

胶囊网络架构的第1个卷积层是对原图进行特征的提取,将最终得到的特征图作为第1层胶囊层的输入。网络的第2层是初始化胶囊层,最后一层是数字胶囊层,每个类别用1个胶囊表示。这一层的胶囊与前一层所有的胶囊都有连接,这2层胶囊层之间采用动态路由算法来更新,提高模型的分类准确率,使模型能够快速平稳地收敛。在胶囊网络中,使用动态路由迭代算法来预测高层特征,动态路由迭代的过程见图5,其中,表示低层胶囊的输入,表示转换矩阵,表示预测向量,~表示权重系数,是高层胶囊总的输入,表示最终胶囊的向量输出。

每个上层胶囊连接到下层的概率为

(1)

(2)

式中:表示低层胶囊的输入,接着对所有得到的预测向量进行加权求和:

(3)

其中:被称为高层胶囊总的输入向量。用非线性压扁函数squashing来代替传统的神经网络的激活函数Relu,确保了向量的方向保持不变,但它的长度被强要求不超过1,最终胶囊的向量输出()如下:

(4)

2.3 基于改进的残差网络

在水稻害虫识别研究的领域,ResNet虽然有较好的识别效果,但是图像在训练的过程中丢失了大量的信息;与ResNet相比,胶囊网络通过矢量表示实例化参数,并确定输入对象的空间信息。胶囊网络的关键特性使其可以保留有关水稻害虫位置和姿势的详细信息,这些信息在水稻害虫图像识别中占据着突出的位置。

通过将ResNet和胶囊网络进行整合能有效降低过拟合,提高识别的准确率;以胶囊网络作ResNet模型的全连接层,这样可以弥补残差网络在输出时丢失大量信息的缺陷。

改进的残差网络结构模型见图6,为减少参数量,选取ResNet34网络作为基本模型。首先对输入的图像进行卷积和下采样,以提取图像的特征,通过4个Basicblock,将特征图的尺寸降到7×7、特征图的通道提升到512,通过这种方式可以捕获到更多的样本特征。接着,将512×7×7的特征图进行胶囊化编码,转为32个8×8的胶囊,再经过2次卷积,最终得到32个8×2×2的胶囊。随后进行层间路由,以一种近似全连接的方式(即dynamic routing)映射到14×16的空间。

在14个害虫分类识别的问题中,dynamic routing算法将胶囊特征映射到14×16的空间,即每个类对应1个16维的特征,然后使用非线性映射(squash)将其压缩成1个14 维的向量,取范式的最大值作为最终的预测值标签。

3 试验结果与分析

3.1 试验环境

试验配置环境为Ubuntu 16.04 LST 64位系统,Intel® Xeon CPU E5-2630(2.20 GHz)处理器,64 GB 内存,Tesla P40显卡,采用pytorch 1.6.0深度学习框架。

3.2 试验评价指标

准确率(accuracy)是正确分类的个数占总样本数的比例,反映了算法对整体样本的分类性能,计算公式为

(5)

式中:表示正样本被正确识别的数量;表示负样本被错误识别的数量;表示正样本被错误识别的数量;表示负样本被正确识别的数量;表示准确率。

(6)

式中:表示重复试验的次数,=10。

混淆矩阵(confusion matrix)是用来总结分类模型预测结果的分析图表,本研究以矩阵的形式来显示分类模型对每一类的预测结果正确与否,其中对角线上的元素表示各类别水稻害虫被正确识别的数量,其他元素则表示被错误识别的数量。

3.3 结果与分析

为了确保训练的准确性,随机将水稻害虫数据集按8 ∶2划分成训练集和测试集。通过分析数据增强对于模型性能的影响,网络模型不同的超参数对于性能的影响,以及选取Inception V3、DenseNet、Efficientnet、Capsnet、ResNet34等网络模型进行试验对比,以此来验证改进的残差网络的准确性。

3.3.1 数据增强对模型性能的影响 水稻害虫数据集是从基准数据集IP102中选取水稻害虫的14个类别,但由于样本分布不均匀,需要对数据进行扩充。数据增强为模型训练提供了强大的数据支撑,为了验证数据增强对模型的性能是否有影响,将进行数据增强后的数据集在模型上进行测试。由图7可知,数据集经过数据增强后,对准确率有一定程度的提升,说明数据增强对于试验结果的影响较大。

3.3.2 超参数对模型的影响 (1)学习率和批量大小。学习率是影响神经网络模型效率的一个重要因素。学习速率越高,学习过程越快,损失函数越高;学习速率越低,损失函数越低。在水稻害虫识别问题中,要选择最优学习率以使损失函数最小。以0.000 005、0.000 100、0.005 000、0.050 000的学习率训练模型。经过100轮迭代,小批数量为32个,不同学习率的准确率见图8-a。当学习率设置的很小时,收敛速度很快,在第10轮的位置就开始收敛,但是准确率不高,当适当增大学习率时,收敛速度降低,但是准确率提升很大。因此,学习率对试验结果的影响很大,通过试验验证,当学习率设置为0.005 000时,可以获得更好的分类准确率。批量的大小是影响模型分类精度的一个重要参数。更大的批处理规模使模型在恒定权重的情况下运行很长一段时间,这会降低总体性能并影响内存需求。因此,选择合适的批量大小来提高模型的分类准确率。该模型以10、16、32、64个小批数量进行评估,模型的准确率随着小批数量的增加,变化不太明显,小批数量从10个增加到64个。由图 8-b 可知,该模型运行了100轮,学习率为 0.005 000。在试验结果的基础上,选取了32个小批量的模型进行训练,提高了模型的收敛精度。同样明显的是,进一步增加小批量的尺寸并不能提高准确性。所选择的32个小批尺寸支持所提出的模型,以获得更好的最终精度。

(2)激活函数和优化器。激活函数是神经网络中非常重要的概念。它们决定了某个神经元是否被激活,这个神经元接受到的信息是否是有用的,是否该留下或者是抛弃。激活函数可以把信号转换为非线性的,而这种非线性使得我们能够学习到输入与输出之间任意复杂的变换关系。选取Sigmoid函数、ReLU函数、LeakyReLU函数进行评估。由图9-a可知,激活函数对于本试验影响并不大,所以选取常规的ReLU函数作为本研究的激活函数。优化器是用来更新和计算影响模型训练和模型输出的网络参数,使其逼近或达到最优值,从而最小化损失函数。以随机梯度下降(SGD)、小批量的梯度下降(MBGD)、Adam作为优化器进行评估,由图9-b可知,选取MBGD作为优化器效果最好,MBGD可以利用矩阵和向量计算进行加速,还可以减少参数更新的方差,得到更稳定的收敛。

3.3.3 不同网络模型之间的性能比较 为了验证改进的残差网络模型性能优势,训练了多个对比模型。从表2可以看出,在传统的网络模型中,DenseNet的效果是最好的,而参数量最少的是EfficientNet;在水稻害虫图像的数据集上,从图10-a可以看出,使用改进后的残差网络模型进行识别准确率可以达到77.12%,与传统的模型相比,改进后的模型效果更好,进一步体现出改进模型在一定程度上提高了水稻害虫的识别效率。为了进一步对比各模型的分类性能,本研究绘制了损失函数结果,如图10-b所示,各模型均使用Softmax交叉熵损失函数进行分析,损失值均呈现先快速下降后缓慢下降再趋于平稳状态。

表2 不同网络模型对比结果

此外,为更好地分析网络模型获得图像特征表达的过程,研究了水稻害虫经过改进的残差网络卷积模块后的特征图,如图11所示。通过对特征图的观察,随着网络层数的提高,背景越来越模糊,所提取的图像特征越来越抽象,特征的纹理性逐渐被更高级的语义性所取代。

3.3.4 水稻害虫混淆矩阵 为了更清楚地展现基于改进残差网络方法的识别精度与分类结果,分别选取14类水稻害虫的100张图片,在测试集上模型分类结果基础上绘制得到的混淆矩阵见图12。混淆矩阵是一个误差矩阵,通常可以通过混淆矩阵来评定深度学习算法的性能。由图12可知,二化螟中有14张图片被错误识别成三化螟,三化螟中有15张图片被错误识别成二化螟;稻褐飞虱中有15张图片被错误识别成白背飞虱,白背飞虱中有16张图片被错误识别成稻褐飞虱;水稻壳害虫中有9张图片被错误识别成稻螟蛉,稻螟蛉中有8张图片被错误识别成水稻壳害虫;说明二化螟和三化螟、稻褐飞虱和白背飞虱、水稻壳害虫和稻螟蛉之间有一定的相似性。其他识别效果都不错,说明改进的残差网络模型可靠性很高。

4 结束语

针对传统水稻害虫识别方法存在准确率和效率低下的问题,本研究在数据增强的基础下,在传统残差网络上进行优化,提出了一种改进的残差网络模型,通过将胶囊网络融入进去,代替残差网络的全连接层,使得提取的图像特征更加丰富;同时,还研究了超参数的影响,通过优化组合,选取最合适的超参数以提高分类的准确率。

目前很多在IP102数据集上的研究识别准确率偏低,采用胶囊网络和残差网络相结合的方式在识别准确率上有一定的提高。为了达到推广应用的效果,今后可以在水稻害虫数据集上做进一步的扩充和完善,还可以研究模型对水稻害虫不同生育阶段的识别能力,为水稻害虫防治提供技术支撑和相关参考。

猜你喜欢
残差害虫准确率
基于双向GRU与残差拟合的车辆跟驰建模
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
冬季果树常见蛀干害虫的防治
基于残差学习的自适应无人机目标跟踪算法
基于递归残差网络的图像超分辨率重建
高速公路车牌识别标识站准确率验证法
枣树害虫的无公害防治
农业害虫的冬季防治
平稳自相关过程的残差累积和控制图