首页 / 专利库 / 农用化学品和农药 / 目标害虫 / 一种基于深度学习的山核桃常见害虫识别方法

一种基于深度学习的山核桃常见害虫识别方法

阅读:625发布:2020-05-15

专利汇可以提供一种基于深度学习的山核桃常见害虫识别方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于 深度学习 的山核桃常见 害虫 识别方法,属于农林害虫识别和分类技术领域,该方法包括以下步骤:采集山核桃害虫样本图像数据;对山核桃害虫样本图像数据进行处理,得到处理后的山核桃害虫样本图像数据集;采用VGG 卷积神经网络 模型,并对VGG卷积神经网络模型进行优化;利用优化后的VGG卷积神经网络模型进行 目标害虫 识别分类;基于VGGNet网络结构开发出一套适用于山核桃害虫识别分类方法,可实现常见山核桃害虫的快速识别和分类,可实现自动识别和分类,识别准确率高。,下面是一种基于深度学习的山核桃常见害虫识别方法专利的具体信息内容。

1.一种基于深度学习的山核桃害虫识别分类方法,其特征在于:该方法包括以下步骤:
S1,采集山核桃害虫样本图像数据;
S2,对山核桃害虫样本图像数据进行处理,得到处理后的山核桃害虫样本图像数据集;
S3,采用VGG卷积神经网络模型,并对VGG卷积神经网络模型进行优化;
S4,利用优化后的VGG卷积神经网络模型进行目标害虫识别分类。
2.根据权利要求1所述的基于深度学习的山核桃害虫识别分类方法,其特征在于:所述步骤S1中,采集山核桃害虫不同成长阶段的图像数据。
3.根据权利要求1所述的基于深度学习的山核桃害虫识别分类方法,其特征在于:所述步骤S2中,包括以下步骤:
S21处理山核桃害虫样本图像数据中错误和重复的数据;
S22采用数据增强的方式扩充山核桃害虫样本图像数据。
4.根据权利要求1所述的基于深度学习的山核桃害虫识别分类方法,其特征在于:所述步骤S3包括以下步骤:
S300,选择VGG卷积神经网络模型的结构A作为基础VGG卷积神经网络模型;
S301,从处理后的山核桃害虫样本图像数据集中选取训练集和验证集,利用训练集训练VGG卷积神经网络模型;
S302,通过调整所述基础VGG卷积神经网络模型中每个层组中每个卷积层的卷积核数目,对所述基础VGG卷积神经网络模型进行训练优化;
S303,选择全卷积层代替基础VGG卷积神经网络模型中的全连接层,在卷积层和池化层所提取的特征数据基础上完成最后的分类工作;
S304,通过调整所述全卷积层的宽度对所述基础VGG卷积神经网络模型进行再次训练优化;
S305,选择多类别分类的softmax交叉熵代价函数构建分类器。
5.根据权利要求4所述的基于深度学习的山核桃害虫识别分类方法,其特征在于:所述步骤S302中,调整所述基础VGG卷积神经网络模型中每个层组中每个卷积层的卷积核数目,得到四种基础VGG卷积神经网络模型,分别为:Conv1,2,3,4,5:64-128-256-256-256模型结构、Conv1,2,3,4,5:64-128-128-128-128模型结构、Conv1,2,3,4,5:64-128-64-64-128模型结构和Conv1,2,3,4,5:64-64-64-64-64模型结构;将该四种基础VGG卷积神经网络模型和原VGG卷积神经网络模型的结构A分别进行运行,从而对基础VGG卷积神经网络模型进行训练优化。
6.根据权利要求4所述的基于深度学习的山核桃害虫识别分类方法,其特征在于:调整所述基础VGG卷积神经网络模型中每个层组中每个卷积层的卷积核数目,得到基础VGG卷积神经网络模型:Conv1,2,3,4,5:64-128-64-64-128模型结构,作为基础VGG卷积神经网络模型。
7.根据权利要求4所述的基于深度学习的山核桃害虫识别分类方法,其特征在于:包括以下步骤:
采用dropout抑制过拟合问题对优化后的VGG卷积神经网络模型进行训练优化,选择不同的优化算法和不同的dropout概率来进行训练实验,分析优化算法和dropout概率与识别模型准确率之间的关系,选择合适的优化算法和dropout概率对VGG卷积神经网络模型进行再次优化。
8.根据权利要求7所述的基于深度学习的山核桃害虫识别分类方法,其特征在于:所述优化算法包括RMSPro和Adam两种优化算法。
9.根据权利要求7所述的基于深度学习的山核桃害虫识别分类方法,其特征在于:选择不同的优化算法和以下三种dropout概率来进行训练实验,所述dropout概率取0.5、0.7和
0.9。

说明书全文

一种基于深度学习的山核桃常见害虫识别方法

技术领域

[0001] 本发明属于农林害虫识别和分类技术领域,具体是涉及一种基于深度学习的山核桃害虫识别分类方法。

背景技术

[0002] 我国是一个农业大国,在农作物的培育过程中每年都会遇到不同种类害虫的侵害,使得作物在产量和质量上不同程度的有所下降,灾害严重时,甚至会导致农作物大面积绝收。准确有效地对昆虫进行分类鉴定和识别是能否及时展开虫害防治、避免造成巨大的农作物经济损失的一个重要前提。昆虫是自然环境中种类最多的动物,其形态多变、纹理丰富识别起来有很大的难度。传统的昆虫分类鉴定工作主要靠昆虫专家或昆虫分类人员根据专业知识和研究经验或参照文献资料来进行识别鉴定的,但即使有专业的知识和丰富的经验也很难避免种类混淆的情况发生,因此,开发一种针对害虫的快速有效的分类识别系将有助于作物害虫的防治,从而促进农业发展,减少经济损失。
[0003] 山核桃喜光,耐寒,适生于山麓疏林中或腐殖质丰富的山谷。山核桃的果实由于具有极高的营养价值和独特的口感味,得到了消费者的认可,逐渐成为一种广受欢迎的高档坚果。其生态效益和经济效益显著,发展山核桃产业对生态效益、经济效益和社会效益都能起到积极的推动作用,加快林业产业生产的步伐,调整农业产业结构。
[0004] 山核桃是集生态和经济效益为一体的生态经济树种,已成为临安、宁国等地农民的摇钱树和致富树。在对山核桃的调查表明,蛀干害虫对山核桃的危害逐年加重,使其幼树受害后枯死,造成山核桃结果量减少,甚至造成大树死亡,造成林农的损失很大。而且山核桃蛀干害虫在发生初期比较隐蔽,不易被发现,一旦发现已造成大面积危害,防治难度很大。蛀干害虫已成为制约宁国市山核桃产区发展的一个重要难题,但有关山核桃的蛀干类昆虫分类专业性强,现有资料也多以文字性描述为主,传统方法分类主要是专家用眼睛观察其结构特征和颜色特征等,需要有扎实的专业知识和丰富的经验,且种类混淆时有发生。因此,及时针对特定种类的害虫展开防治工作,避免造成巨大的林业经济损失,快速准确地判断农作物害虫种类显得非常重要。
[0005] 随着神经网络模式识别的兴起,基于图像的自动识别技术已成为当前研究领域的热点,昆虫图像识别的研究以获得较大进展,如对昆虫图像的形状和颜色进行特征提取后,利用径向基神经网络完成分类,准确率达96%;建立BP神经网络模型来识别椪柑病虫害,平均准确率达92.67%;引入了基于深度卷积神经网络的储粮害虫图像识别方法,识别精确度方面达97.61%。但上述方法仍然存在缺陷,诸如数据样本量不足,数据预处理复杂,特征提取不足,模型拟合度波动较大。此外,对于一些专为数据集(包含 1000个类别,超过1000000幅图像)提出的深层网络模型,没有就害虫的特殊性和复杂性来对模型进行优化调整。
[0006] VGG卷积神经网络模型是由津大学视觉几何组(Visual Geometry Group)开发研制的卷积神经网络结构,它在2014年的ILSVRC(ImageNet Large Scale Visual Recognition Challenge)竞赛中获得了第二名的成绩。VGGNet最初设计的网络结构及各层的具体配置如图1所示,主要由输入层、卷积层、池化层、全连接层、Softmax层组成。VGGNet 可分为5个层组,包括Conv1卷积层组1、Conv2卷积层组2、Conv3卷积层组3、Conv4 卷积层组4和Conv5卷积层组5,全连接层包括FC6全连接层6和FC7全连接层7。每组卷积层组含有1~4个卷积层,卷积核的尺寸大小统一为3x3,各层组用一个池化层分开,最大池化层的尺寸为2×2。图1中,Conv1、Conv2的卷积层层数为1,卷积核的数目分别为64、128;Conv3、Conv4、Conv5的卷积层层数均为2,Conv3的卷积层卷积核的数目均为256,Conv4的卷积层卷积核的数目均为512,,Conv5的卷积层卷积核的数目均为512;FC6和FC7的神经元个数均为4096。
[0007] 牛津大学视觉几何组在VGGNet的论文中给出了6个不同的网络结构,分别为A、 A-LRN、B、C、D、E,它们的深度从结构A的11层逐渐加深到结构E的19层(结构 D和结构E即VGG16和VGG19),从论文的结果来看,结构A的效果不如结构B、C、 D、E好,说明网络的层数越深越好。
[0008] 在神经网络结构中,卷积层主要用于特征提取,各卷积层通过多核卷积学习到的不同特征来提取原图特征。在卷积过程中,卷积核的权重固定不变,通过激活函数变换后得到相应的特征图,其计算过程可以表示为
[0009]
[0010] 如式(1)所示,第l层卷积层的输出特征图 是由上一层的输出特征图 经3×3的卷积核 卷积后再加上偏置项 然后通过激活函数f(x)得到的。
[0011] 池化层用于特征映射,通过下采样来对卷积层输出的特征图进行压缩整合,这样做的目的是保留主要特征、减少参数和计算量、提高模型泛化能。池化层特征图的计算过程如下
[0012]
[0013] 式(2)中, 为第j张输出特征图所对应的的权值, 为对应的偏置值,down(x)为下采样函数,下采样方式包括最大池化、平均池化和随机池化等。vgg16网络中采用最大池化来压缩数据,分类层采用softmax分类器[11],训练时通过随机梯度下降法使得损失值达到最小,损失函数如下
[0014]
[0015] 式(3)中,用θ代表全部的参数矩阵;sic当且仅当第i个样本属于C类时,逻辑判断值为真,对sic赋值为1,假则赋值为0; 是将输出概率值做归一化处理。VGGNet 网络结构最初是为ImageNet数据集所设计的,主要应用于大规模的数据分类识别,如果直接拿来对本发明的数据集进行识别训练,很容易因数据量和数据类别的特殊性而发生训练收敛困难和过拟合等问题。
[0016] 如何基于VGGNet网络结构开发出一套适用于山核桃害虫识别和分类的技术具有重要的研究意义。

发明内容

[0017] 发明目的:为了克服现有技术中存在的不足,现有技术采取的方法中数据样本量不足,数据预处理复杂,特征提取不足,模型拟合度波动较大,没有就害虫的特殊性和复杂性来对模型进行优化调整,都导致识别准确率低。本发明提供一种基于深度学习的山核桃常见害虫识别方法,基于VGGNet网络结构开发出一套适用于山核桃害虫识别分类方法,可实现常见山核桃害虫的快速识别和分类,可实现自动识别和分类,识别准确率高。
[0018] 技术方案:为实现上述目的,本发明的基于深度学习的山核桃害虫识别分类方法,该方法包括以下步骤:
[0019] S1,采集山核桃害虫样本图像数据;
[0020] S2,对山核桃害虫样本图像数据进行处理,得到处理后的山核桃害虫样本图像数据集;
[0021] S3,采用VGG卷积神经网络模型,并对VGG卷积神经网络模型进行优化;
[0022] S4,利用优化后的VGG卷积神经网络模型进行目标害虫识别分类。
[0023] 进一步地,所述步骤S1中,采集山核桃害虫不同成长阶段的图像数据。例如采集害虫从卵到幼虫到成虫阶段的图像数据,用于训练模型,避免了由于害虫不同成长期的体态特征差异较大带来的模型检测存在误差,进一步提高了模型检测准确率。
[0024] 进一步地,所述步骤S2中,包括以下步骤:
[0025] S21处理山核桃害虫样本图像数据中错误和重复的数据;
[0026] S22采用数据增强的方式扩充山核桃害虫样本图像数据。
[0027] 进一步地,所述步骤S3包括以下步骤:
[0028] S300,选择VGG卷积神经网络模型的结构A作为基础VGG卷积神经网络模型;
[0029] S301,从处理后的山核桃害虫样本图像数据集中选取训练集和验证集,利用训练集训练VGG卷积神经网络模型;
[0030] S302,通过调整所述基础VGG卷积神经网络模型中每个层组中每个卷积层的卷积核数目,对所述基础VGG卷积神经网络模型进行训练优化;
[0031] S303,选择全卷积层代替基础VGG卷积神经网络模型中的全连接层,在卷积层和池化层所提取的特征数据基础上完成最后的分类工作;
[0032] S304,通过调整所述全卷积层的宽度对所述基础VGG卷积神经网络模型进行再次训练优化;
[0033] S305,选择多类别分类的softmax交叉熵代价函数构建分类器。
[0034] 进一步地,所述步骤S302中,调整所述基础VGG卷积神经网络模型中每个层组中每个卷积层的卷积核数目,得到四种基础VGG卷积神经网络模型,分别为: Conv1,2,3,4,5:64-128-256-256-256模型结构、Conv1,2,3,4,5:64-128-128-128-128模型结构、Conv1,2,
3,4,5:64-128-64-64-128模型结构和Conv1,2,3,4,5:64-64-64-64-64模型结构;将该四种基础VGG卷积神经网络模型和原VGG卷积神经网络模型的结构A分别进行运行,从而对基础VGG卷积神经网络模型进行训练优化。
[0035] 进一步地,调整所述基础VGG卷积神经网络模型中每个层组中每个卷积层的卷积核数目,得到基础VGG卷积神经网络模型:Conv1,2,3,4,5:64-128-64-64-128模型结构,作为基础VGG卷积神经网络模型。
[0036] 进一步地,包括以下步骤:
[0037] 采用dropout抑制过拟合问题对优化后的VGG卷积神经网络模型进行训练优化,选择不同的优化算法和不同的dropout概率来进行训练实验,分析优化算法和dropout概率与识别模型准确率之间的关系,选择合适的优化算法和dropout概率对VGG卷积神经网络模型进行再次优化。
[0038] 进一步地,所述优化算法包括RMSPro和Adam两种优化算法。
[0039] 进一步地,选择不同的优化算法和以下三种dropout概率来进行训练实验,所述 dropout概率取0.5、0.7和0.9。
[0040] 有益效果:本发明与现有技术比较,具有的优点是:
[0041] 1、本发明提供一种基于深度学习的山核桃常见害虫识别方法,基于VGGNet网络结构开发出一套适用于山核桃害虫识别分类方法,可实现常见山核桃害虫的快速识别和分类,可实现自动识别和分类,识别准确率高;
[0042] 2、本发明对VGG卷积神经网络模型的结构和训练参数进一步的优化和改进,优化后的模型准确率达到99.02%,比优化前的网络结构提高了4.04个百分点;
[0043] 3、本发明以VGG卷积神经网络模型的结构A为基础VGG卷积神经网络模型,根据数据冗余以及过拟合程度,对其结构和训练参数进一步的优化和改进,相比其它模型更适用于山核桃常见害虫识别;
[0044] 4、本发明采用dropout抑制过拟合问题来完成训练测试实验,进一步提高山核桃常见害虫识别准确率;
[0045] 5、本发明对通过对卷积核数量和全卷积层宽度等的参数进行调优,进一步提高山核桃常见害虫识别准确率;
[0046] 6、本发明在采集山核桃常见害虫样本图像数据时,会针对害虫成长过程中不同阶段进行图像采集,例如采集害虫从卵到幼虫到成虫阶段的图像数据,用于训练模型,避免了由于害虫不同成长期的体态特征差异较大带来的模型检测存在误差,进一步提高了模型检测准确率;
[0047] 7、本发明将采集的山核桃常见害虫样本图像数据采用该种数据增强的方式进行处理,通过对样本图像进行扭曲裁剪和色彩调整等操作,将每种昆虫的数据量扩增,提高网络对害虫分类准确率,使网络的性能更好,防止过拟合等问题,进一步提高了模型检测准确率。附图说明
[0048] 图1是VGG卷积神经网络模型网络结构图。
[0049] 图2是本发明基于深度学习的山核桃常见害虫识别方法流程图
[0050] 图3是实施例六中山核桃害虫麻皮蝽样本图像。
[0051] 图4是图3样本图像经过裁剪后得到的图像。
[0052] 图5是图3样本图像经过扭曲后得到的图像。
[0053] 图6是图3样本图像经过色彩调整后得到的图像。
[0054] 图7是不同卷积核数目对卷积神经网络验证准确率的影响效果图。
[0055] 图8是全卷积层的宽度对N4模型识别率的影响效果图。
[0056] 图9是全卷积层的宽度对VGG_A模型识别率的影响效果图。
[0057] 图10(a)是采用优化算法RMSProp方法、dropout概率为0.5时的实验结果图。
[0058] 图10(b)是采用优化算法RMSProp方法、dropout概率为0.7时的实验结果图。图10(c)是采用优化算法RMSProp方法、dropout概率为0.9时的实验结果图。
图10(d)是采用优化算法Adam方法、dropout概率为0.5时的实验结果图。
图10(e)是采用优化算法Adam方法、dropout概率为0.7时的实验结果图。
图10(f)是采用优化算法Adam方法、dropout概率为0.9时的实验结果图。
图标:
1、卷积层组1;2、卷积层组2;3、卷积层组3;4、卷积层组4;5、卷积层组5; 6、全连接层1;
7、全连接层2。

具体实施方式

[0059] 下面结合附图对本发明作更进一步的说明。
[0060] 实施例一:
[0061] 本实施例的一种基于深度学习的山核桃害虫识别分类方法,参照图2,包括以下步骤:
[0062] 采集山核桃害虫样本图像数据;
[0063] 对山核桃害虫样本图像数据进行处理,得到处理后的山核桃害虫样本图像数据集;
[0064] 采用VGG卷积神经网络模型并对VGG卷积神经网络模型进行优化:
[0065] VGG卷积神经网络模型参照图1,主要由输入层、卷积层、池化层、全连接层、 Softmax层组成。VGGNet可分为5个层组,包括Conv1卷积层组1、Conv2卷积层组2、 Conv3卷积层组3、Conv4卷积层组4和Conv5卷积层组5,全连接层包括FC6全连接层6和FC7全连接层7。每组层组含有1~4个卷积层,卷积核的尺寸大小统一为3x3,各层组用一个池化层分开,最大池化层的尺寸为2×2,在图1中Conv1、Conv2的卷积层层数为1,卷积核的数目分别为
64、128;Conv3、Conv4、Conv5的卷积层层数均为 2,Conv3的卷积层卷积核的数目均为256,Conv4的卷积层卷积核的数目均为512,, Conv5的卷积层卷积核的数目均为512;FC6和FC7的神经元个数均为4096。
[0066] 卷积层主要用于特征提取,各卷积层通过多核卷积学习到的不同特征来提取原图特征。
[0067] 池化层用于特征映射,通过下采样来对卷积层输出的特征图进行压缩整合,这样做的目的是保留主要特征、减少参数和计算量、提高模型泛化能力。
[0068] 全连接层被放在卷积神经网络中的最后部分,它的作用是完成分类工作。
[0069] softmax层来构建分类器完成最终的分类工作。
[0070] 对VGG卷积神经网络模型进行优化,利用优化后的VGG卷积神经网络模型进行目标害虫识别分类。
[0071] 实施例二:
[0072] 本实施例的一种基于深度学习的山核桃害虫识别分类方法,基于实施例一,采集山核桃害虫不同成长阶段的图像数据,例如采集害虫从卵到幼虫到成虫阶段的图像数据,用于训练模型,避免了由于害虫不同成长期的体态特征差异较大带来的模型检测存在误差,当然害虫种类不同,害虫的成长阶段不同。此外视情况保留山核桃害虫样本图像颜色,因为害虫不仅在形状、纹理上存在差异,颜色也是影响识别准确率的重要因素,因此,在数据处理过程中,并没有将输入图像数据转换为灰度图像,而是保留图像的RGB 三个颜色通道的值。
[0073] 实施例三:
[0074] 本实施例的一种基于深度学习的山核桃害虫识别分类方法,基于实施例二,对山核桃害虫样本图像数据进行处理,得到处理后的山核桃害虫样本图像数据集,包括以下步骤:
[0075] 处理山核桃害虫样本图像数据中错误和重复的数据;
[0076] 采用数据增强的方式扩充山核桃害虫样本图像数据。
[0077] 采用数据增强的方式扩充山核桃害虫样本图像数据:经过筛选处理后,每种昆虫样本数量不一,为了提高网络的分类准确率,使网络的性能更好,防止过拟合等问题,本实施例采用数据增强的方式来扩充上述山核桃害虫样本图像数据量,通过对上述山核桃害虫样本图像数据进行操作,例如,本实施例中对上述山核桃害虫一的幼虫样本图像数据进行操作扩充,对上述山核桃害虫一的幼虫样本图像进行裁剪、扭曲和色彩调整,将上述山核桃害虫一的幼虫样本图像数据量扩增。
[0078] 实施例四:
[0079] 本实施例的一种基于深度学习的山核桃害虫识别分类方法,基于实施例三,采用 VGG卷积神经网络模型,对VGG卷积神经网络模型进行优化,包括以下步骤:
[0080] 选择VGG卷积神经网络模型的结构A作为基础VGG卷积神经网络模型;
[0081] 从处理后的山核桃害虫样本图像数据集中选取训练集和验证集,利用训练集训练VGG卷积神经网络模型;
[0082] 通过调整所述基础VGG卷积神经网络模型中每个层组中每个卷积层的卷积核数目,对所述基础VGG卷积神经网络模型进行训练优化:
[0083] VGG卷积神经网络结构中的卷积层负责提取底层特征,是整个网络中最关键的部分,除了卷积核的尺寸大小外,卷积的数量也会对识别率造成影响,由于本发明中所使用的数据集远没有ImageNet数据集庞大,因此优先选择VGGNet中的结构A进行实验,在实验过程中,还会逐步减少每个卷积层的卷积核数目来进行训练和测试,考察局部感受野的数目对模型性能的影响。此外,本实施例对权重的初始化选择使用高斯分布,均值设置为0,标准差设置为0.01。
[0084] 选择全卷积层代替基础VGG卷积神经网络模型中的全连接层,在卷积层和池化层所提取的特征数据基础上完成最后的分类工作:
[0085] 全连接层被放在卷积神经网络中的最后部分,它的作用是完成分类工作,由于全连接层之间是致密连接,参数量极大,虽然这样可以提升模型复杂度,加强模型学习能力,但这也很容易发生过拟合现象,使得运算耗时、效率低下、耗费存储。为此,本实施例选择使用全卷积Fully Convolutional Networks(FCN)来代替全连接,全连接层和卷积层之间唯一的不同就是卷积层中的神经元只与输入数据中的一个局部区域连接,并且在卷积列中的神经元共享参数。然而在两类层中,神经元都是计算点积,所以它们的函数形式是一样的,因此两者可以相互转化。使用全卷积层可以让卷积网络在一张更大的输入图片上滑动,得到多个输出,减少位置信息对分类的影响,提高模型的鲁棒性,减少特征提取过程中,位置信息对分类的影响,提高模型的鲁棒性,通过调整所述全卷积层的宽度对所述基础VGG卷积神经网络模型进行再次训练优化;
[0086] 选择多类别分类的softmax交叉熵代价函数构建分类器:
[0087] 本实施例使用更适于多类别分类的softmax交叉熵代价函数来构建分类器,对于学习率learing_rate的初始值设置为0.001,并且每迭代训练1000步后,将学习率降低为原来的一半。此外,为了使模型能够得到充分训练,本实施例将训练步数设定为10000, bach_size设置为64。
[0088] 本实施例中将以VGG卷积神经网络模型为基础,根据数据冗余以及过拟合程度,对其结构和训练参数进一步的优化和改进,使得改良后的模型更适用于山核桃常见害虫识别,
[0089] 首先在整理的图像数据集上通过图像裁剪和色彩调整进行了数据增强;然后对11 层的VGG卷积神经网络模型通过对卷积核数量和全卷积层宽度等的参数进行调优,并采用dropout抑制过拟合问题来完成训练测试实验。
[0090] 实验结果表明,采用优化后的模型来识别害虫,准确率达到99.02%,比优化前的网络结构准确率提高了4.04个百分点。
[0091] 实施例五:
[0092] 本实施例的一种基于深度学习的山核桃害虫识别分类方法,基于实施例四,采用 dropout抑制过拟合问题对优化后的VGG卷积神经网络模型进行训练优化,利用神经元随机抑制(Dropout)抑制网络中部分参数的更新,在0.5~0.9范围内寻找最佳参数。
[0093] Dropout是指在模型训练时随机让网络某些隐含层节点的权重不被使用,不使用的那些节点可以暂时认为不是网络结构的一部分,但是它的权重得保留下来,因为下次样本输入时它可能需要被使用。在使用Dropout后,神经网络的训练就会发生一些变化,对应公式变化如下。
[0094] 没有Dropout的神经网络:
[0095]
[0096]
[0097] 有Dropout的神经网络:
[0098]
[0099]
[0100]
[0101]
[0102] Dropout可以看做是一种模型平均,所谓模型平均,顾名思义,就是把来自不同模型的估计或者预测通过一定的权在每个批次的训练过程中,由于每次随机忽略的隐层节点都不同,这样就使每次训练的网络都是不一样的,每次训练都可以单做一个“新”的模型;此外,隐含节点都是以一定概率随机出现,因此不能保证每2个隐含节点每次都同时出现,这样权值的更新不再依赖于有固定关系隐含节点的共同作用,阻止了某些特征仅仅在其它特定特征下才有效果的情况。这样dropout过程就是一个非常有效的神经网络模型平均方法,通过训练大量的不同的网络,来平均预测概率。
[0103] 选择不同的优化算法和不同的dropout概率来进行训练实验,分析优化算法和 dropout概率与识别模型准确率之间的关系,选择合适的优化算法和dropout概率对VGG 卷积神经网络模型进行再次优化。选择使用Adam优化器,因为Adam优化算法引入了二次方梯校正,有利于全局最优点的寻找,它比随机梯度下降法更快,同时还降低了陷入局部最优的风险。
[0104] 实施例六:
[0105] 本实施例的一种基于深度学习的山核桃害虫识别分类方法,基于实施例五,本实施例中以山核桃害虫作为测试对象,选取山核桃的16种害虫,采集该16种山核桃害虫样本图像数据,并采集山核桃害虫不同成长阶段的图像数据,并视情况保留山核桃害虫样本图像颜色,因为害虫不仅在形状、纹理上存在差异,颜色也是影响识别准确率的重要因素,因此,在数据处理过程中,并没有将输入图像数据转换为灰度图像,而是保留图像的RGB三个颜色通道的值;采集山核桃害虫不同成长阶段的图像数据,如山核桃害虫从卵到幼虫到成虫各成长阶段的图像数据,避免由于昆虫不同成长期的体态特征差异较大带来的模型检测效果差,本实施例中山核桃害虫样本图像数据主要是通过室内拍摄和搜索引擎检索等方式获取,
[0106] 采集的山核桃害虫样本图像数据如表1所示,
[0107] 表1
[0108]
[0109]
[0110] 上述表1中,所整理的山核桃害虫样本一共16种,对上述采集的16种山核桃害虫样本的图像数据进行处理。
[0111] 处理山核桃害虫样本图像数据中错误和重复的数据:本实施例中由人工分类筛选来避免数据的重复和错误;
[0112] 采用数据增强的方式扩充山核桃害虫样本图像数据:经过筛选处理后,每种昆虫样本数量不一,为了提高网络的分类准确率,使网络的性能更好,防止过拟合等问题,本实施例采用数据增强的方式来扩充上述山核桃害虫样本图像数据量,通过对上述山核桃害虫样本图像数据进行操作,本实施例中对上述山核桃16种害虫的幼虫样本图像数据进行操作扩充,对上述山核桃16种害虫的幼虫样本图像进行裁剪、扭曲和色彩调整,将上述山核桃16种害虫的幼虫样本图像数据量扩增到500张;以此操作,在本实施例中,将上述山核桃害虫样本图像数据量扩充到500张。参照图3、图4、图5和图6,图3是山核桃害虫麻皮蝽样本图像,图4是图3样本图像经过裁剪后得到的图像,图5是图3样本图像经过扭曲后得到的图像,图6是图3样本图像经过色彩调整后得到的图像。其它山核桃害虫图像扩充以此类推。
[0113] 本实施例中采集部分害虫的不同成长阶段图像数据,采集害虫的卵、幼虫和成虫阶段图像数据,因此,所整理的山核桃害虫样本一共32种,经过筛选处理后,每种昆虫样本数量不一,为了提高网络的分类准确率,使网络的性能更好,防止过拟合等问题,本文采用数据增强的方式来扩充数据量,通过对图像进行扭曲裁剪和色彩调整等操作,将每种昆虫的数据量扩增到1000张。
[0114] 本实施例中整理的山核桃害虫样本一共32种、共32000幅山核桃害虫样本图像,对其中每个类别随机选取22400幅作为训练集,9600幅的样本量作为验证集。
[0115] 设山核桃害虫样本图像的尺寸大小为224×224×3,利用训练集对应的山核桃害虫样本图像对VGG卷积神经网络模型进行训练。
[0116] 实施例七:
[0117] 本实施例的一种基于深度学习的山核桃害虫识别分类方法,基于实施例六,本实施例中采用TensorFlow深度学习框架和装有GPU图形处理器的台式计算机来完成实验,具体的运行环境如表2所示,
[0118] 表2
[0119]
[0120] 实施例八:
[0121] 本实施例的一种基于深度学习的山核桃害虫识别分类方法,基于实施例七,通过调整所述基础VGG卷积神经网络模型中每个层组中每个卷积层的卷积核数目,对所述基础VGG卷积神经网络模型进行训练优化,卷积层作为卷积神经网络结构中的底层部分,直接对输入图像进行特征提取,因此被认为是最敏感的参数,本实施例首先通过调整卷积核的数目来进行实验,分析卷积核数目与识别准确率之间的关系。调整后的网络结构、运行耗时、验证准确率及loss值如表3所示,卷积核数目对卷积神经网络验证准确率的影响如图7所示。
[0122] 表3
[0123]
[0124] 由表2看出,调整所述基础VGG卷积神经网络模型中每个层组中每个卷积层的卷积核数目,得到四种基础VGG卷积神经网络模型,分别为:N:2: Conv1,2,3,4,5:64-128-256-256-256模型结构、N3:Conv1,2,3,4,5:64-128-128-128-128模型结构、N4:Conv1,2,3,4,5:
64-128-64-64-128模型结构和N5:Conv1,2,3,4,5:64-64-64-64-64 模型结构;将该四种基础VGG卷积神经网络模型和原VGG卷积神经网络模型的结构 A-N1分别进行运行,从而对基础VGG卷积神经网络模型进行训练优化,
[0125] 从表3和图7可以看出,N4:Conv1,2,3,4,5:64-128-64-64-128模型结构的验证准确率最高,损失值最低,训练耗时相对也比较低,因此通过对模型训练优化后,选择N4: Conv1,2,3,4,5:64-128-64-64-128模型结构作为基础基础VGG卷积神经网络模型。
[0126] 对于分类类别并不是特别大的常见害虫数据集来说,特征图的数量太大反而会造成模型中的参数冗余、计算资源浪费以及运行效率低下等问题。约简网络架构、减少卷积核的数目不仅能提高识别率而且还能有效降低训练所消耗的时间。需要注意的是,并不是卷积核的数目越少越好,如果卷积核数目过少,也会因为特征提取不足而导致分类结果不理想。
[0127] 实施例九:
[0128] 本实施例的一种基于深度学习的山核桃害虫识别分类方法,基于实施例八,选择全卷积层代替基础VGG卷积神经网络模型中的全连接层,在卷积层和池化层所提取的特征数据基础上完成最后的分类工作,通过调整所述全卷积层的宽度对所述基础VGG卷积神经网络模型进行再次训练优化,全卷积层在卷积层和池化层所提取的特征的基础上完成最后的分类工作,本实施例选用实施例八中表现最好的N4模型和原始的VGG_A 模型来进行实验,全卷积层的宽度对其的影响如图8和图9所示,图8是全卷积层的宽度对N4模型识别率的影响效果图,图9是全卷积层的宽度对VGG_A模型识别率的影响效果图,从图8可以看出,对于N4模型结构来说,全卷积层越宽准确率越高,但过宽的全卷积层很容易发生训练不收敛、耗费时间等问题;而对于更加复杂的VGG_A模型,如图9所示,在训练样本分类不多的情况下,适当减少全卷积层的宽度也可以达到提高识别准确率的目的。总的来说,对于数据集的分类问题,全卷积层有一个最佳的宽度来达到更好的识别效果。
[0129] 实施例十:
[0130] 本实施例的一种基于深度学习的山核桃害虫识别分类方法,基于实施例九,采用 dropout抑制过拟合问题对优化后的VGG卷积神经网络模型进行训练优化,选择不同的优化算法和不同的dropout概率来进行训练实验,分析优化算法和dropout概率与识别模型准确率之间的关系,选择合适的优化算法和dropout概率对VGG卷积神经网络模型进行再次优化。优化算法包括RMSProRMSProp(root mean square prop)[16]和Adam两种优化算法。如图10(a)、10(b)、10(c)、10(d)、10(e)和10(f)所示,10(a)、10 (b)和10(c)使用的是RMSProp方法,10(d)、10(e)和10(f)使用的是Adam 方法,10(a)和10(d)的dropout为0.5、10(b)和10(e)的dropout为0.7、10(c) 和10(f)的dropout为0.9,实验结果显示,两种优化方法所得的结果相差不大,不同之处在于Adam方法比RMSProp方法在过拟合问题上有更好的表现,而RMSProp方法比Adam方法训练收敛速度要跟快一些。此外,对于Adam方法,dropout概率设置太小会使训练波动很大而且延长了训练时间;对于RMSProp方法则需要将dropout概率设置更小来抑制它的过拟合问题。
[0131] RMSProp通过引入一个衰减系数,让r每回合都衰减一定比例。其具体实现需要提供全局学习速率∈,初始参数θ,数值稳定量δ,衰减速率ρ,梯度累计量r(初始化为0)等参数,每步迭代从训练集中随机抽取一批容量为m的样本{x1,...,xm},以及相关的输出yi。
[0132] 其梯度计算如下:
[0133]
[0134] 累计平方梯度如下:
[0135] r←ρr+(1-ρ)g⊙g
[0136] 计算参数更新如下:
[0137]
[0138] θ←θ+Δθ
[0139] RMSProp优化算法很好的解决了深度学习中过早结束的问题,适合处理非平稳目标,但由于又引入了新的超参,衰减系数ρ,依然依赖于全局学习速率。
[0140] Adam本质上是带有动量项的RMSprop,它利用梯度的一阶矩估计和二阶矩估计动态调整每个参数的学习率。Adam的优点主要在于经过偏置校正后,每一次迭代学习率都有个确定范围,使得参数比较平稳。其具体实现需要步进值∈,初始参数θ,数值稳定量δ,一阶动量衰减系数ρ1,二阶动量衰减系数ρ2,其中三个参数的取值一般为:δ=10-8,ρ1=0.9,ρ1=0.999。一阶动量s,二阶动量r,都初始化为0。每步迭代从训练集中随机抽取一批容量为m的样本{x1,...,xm},以及相关的输出yi。
[0141] 其梯度计算如下:
[0142]
[0143] t←t+1
[0144] 偏一阶矩估计如下:
[0145] s←ρ1r+(1-ρ1)g
[0146] 偏二阶矩估计如下:
[0147] r←ρ2r+(1-ρ2)g⊙g
[0148] 修正一阶矩的偏差:
[0149]
[0150] 修正二阶矩的偏差:
[0151]
[0152] 计算参数更新如下:
[0153]
[0154] θ←θ+Δθ
[0155] Adam优化算法结合了RMSprop善于处理非平稳目标的优点,为不同的参数计算不同的自适应学习率,内存需求较小,适用于大多非凸优化以及大数据集和高维空间。
[0156] 计算梯度和误差,更新r,再根据r和梯度计算参数更新量。
[0157] 模型训练完成后,在TensorFlow自带的可视化工具TensorBoard上显示结果。并将训练好的竹笋害虫识别网络模型保存为ckpt格式的文件,在需要进行竹笋害虫分类识别时,将待分类的害虫图像输入到训练好的模型中,然后得到反馈回的识别结果。
[0158] 实施例十一:
[0159] 本实施例的一种基于深度学习的山核桃害虫识别分类方法,基于实施例十,本发明提出的基于深度学习的山核桃常见害虫识别方法,参照图2,在windows操作系统、 TensorFlow框架和eclipse编程平台的环境下进行卷积神经网络的训练和测试。实验迭代次数设置为4000次,学习率设置为0.002,随着训练次数的增加,每完成2000次迭代后学习率自动缩减2倍。
[0160] 对上面所描述的神经网络模型结构其池化层采用平均下采样方法,梯度下降方法使用AdamOptimizer下降法,分类器选择Softmax回归的方法来测试CNN的识别准确率及损失值loss。
[0161] 模型训练完成后,在TensorFlow自带的可视化工具TensorBoard上显示结果。并将训练好的山核桃常见害虫识别网络模型保存为ckpt格式的文件,在需要进行山核桃常见害虫分类识别时,将待分类的害虫图像输入到训练好的模型中,然后得到反馈回的识别结果。模型步骤具体如下:
[0162] 输入层:把224×224×3的山核桃害虫图像像素矩阵作为输入;
[0163] 卷积层C1:C1层是通过多个不同滤波器对输入矩阵进行卷积运算得到多个不同的原始信号特征提取层。本文选择利用96个尺寸为11×11的卷积核对输入层的图像进行卷积操作,卷积结果加上6个偏置向量后通过一个激活函数进行计算得到C1层中的64 个不同特征图;
[0164] 下采样层S1:S1层对上一层C1进行下采样处理得到96个新的特征图,采样窗口大小为2×2。这里是通过简单缩放的方式降低C1层中多个特征图的分辨率,从而减少后面网络中输入权重参数的数量,并削弱输出对于位移及变形的敏感程度,使CNN对图像缩放、空间位移、旋转等影响具有较好的稳健性;
[0165] 卷积层C2:采用类似于C1层的方式对S1层的多个特征图进行卷积运算得到的多个特征提取图,C2层选择用5×5的卷积核进行特征提取,卷积核数量扩增为256;
[0166] 池化层S2:采用与S1相同的2×2窗口进行下采样;
[0167] 卷积层C3:C3层选择3×3的卷积核对S2层的多个特征图进行特征提取,其卷积核数量仍为256;
[0168] 池化层C4:C4层选择3×3的卷积核进行特征提取,其卷积核数量为256;
[0169] 池化层C5:C5层选择3×3的卷积核进行特征提取,其卷积核数量为256;
[0170] 池化层S5:采用2×2窗口进行下采样;
[0171] 全连接层F6:类似于普通的BP隐藏层,这里选择使用2048个神经元进行全连接操作;
[0172] 全连接层F7:采用与F6相同的2048个神经元进行全连接操作;
[0173] 输出层Output:由于本文需对山核桃常见的食叶类害虫、蛀干类害虫、根部害虫、刺吸类害虫等共33类害虫进行分类识别,所以输出层神经元个数为33。
[0174] 卷积神经网络模型的训练分为两个阶段,具体如下:
[0175] 向前传播阶段:(1)从样本集中取出样本并输入到网络模型中去;(2)计算相应的输出Op,在此阶段,信息从输入层经过逐级变换最终传送到输出层,在此过程中,网络执行的是输入与每层的权值矩阵相点乘:
[0176] Op=Fn(...(F2(F1(XpW(1))W(2))...)W(n))
[0177] 向后传播阶段:(1)计算实际输出Op与相应的理想输出Yp的差;(2)按极小化误差的方法反向传播调整权矩阵。
[0178] 激活函数使用ReLU修正线性单元函数,它对输入计算f(x)=max(0,x),换而言之,就是输入数据小于0时,将其强制压缩为0,反之则数据保持不变;
[0179] 最后的全连接层采用dropout以减小过拟合现象,dropout的值设置为0.5;经过4000 步的迭代训练,最终的识别效果可以达到90%以上的准确率。
[0180] 以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈