APP下载

基于迁移学习和轻量级卷积神经网络农作物病害识别

2022-01-11罗鸣方睿徐铭美王宇

现代计算机 2021年32期
关键词:集上卷积准确率

罗鸣,方睿,徐铭美,王宇

(成都信息工程大学计算机学院,成都 610225)

0 引言

水稻、小麦、玉米是世界上三种最为重要的粮食作物,与人类的生活息息相关。这三种作物在生长过程中,往往会遭受各种病害的侵扰,对其产量造成严重的影响[1-2]。当前农作物病害识别主要依靠当地的专业种植户或者农业部门的专家,但由于人数有限、人工成本高、效率低等因素,往往不能在大规模区域进行病害判别[3-4]。建立一个可以在移动端进行快速、准确识别农作物病害类型的模型是非常具有现实意义的。

随着人工智能的发展,深度学习的方法被应用于农作物病害识别当中。黄双萍等[5]提出了深度卷积神经网络CoogleNet 模型方法对1467 张田间采集的水稻稻穗病检测,在验证集上准确率最高为92%。范春林等[6]使用迁移学习的方法对16种主要的水稻病虫害共9675张图片进行病虫害识别,在ResNet50 上的准确率为95.23%。王国伟等[7]采用LeNet 模型在5 种类别的玉米病害上识别平均准确率达96%。这些研究基于经典的卷积神经网络,虽然在农作物病害识别上取得了较好的识别精度,但存在训练出的模型大,参数量多,识别速度较慢等问题。能够在手机上快速识别农作物病害才符合实际的需求[8],所以本文收集了3种农作物的15种病害的图像建立了样本集,基于3 种轻量级卷积神经网络和迁移学习的方法建立作物病害图像识别模型。通过神经网络进行图像分类需要大量的计算机资源和图像数据,并且花费时间长,本文使用迁移学习的方法在较大的图像数据集上训练好模型,通过权重迁移,在小的图像数据集上经过短时间训练就能达到较好的分类效果[9]。在提高精度的同时,也减少了模型训练的时间。

其中,Shufflenet v2 是Face++ 2018 年提出的一个高效网络模型,在Shufflenet v1分组卷积的基础上,设计了一种新的运算,使输入的通道数与输出通道数保持相同,最小化了内存访问成本[10]。MobileNet v3 是由谷歌公司2019 年推出的轻量级卷积神经网络,分为两个版本MobileNet_large 和MobileNet_small[11],前者的网络层数较后者的网络层数更深,且MobileNet_large 在图像分类任务上取得的效果更好[12-13]。GhostNet由华为诺亚方舟实验室在2020年提出,构造了一种端侧神经网络,极大的减少了参数量和计算量[14]。这三个轻量级网络在图像分类任务上均取得了较好的效果,但使用这三个网络在农业作物病害识别的研究上还较少。

1 材料与方法

1.1 数据集来源与处理

本文使用的农作物病害数据集包含水稻、小麦、玉米三种作物共15 种常见病害,其中6 种水稻病害,4 种小麦病害,5 种玉米病害,共计12011张图片,作物病害类型及图片数量如表1所示,每种类型的病害如图1所示。

图1 作物病害数据样例

表1 水稻、小麦、玉米的病害类型以及图片数量

数据集中的图片来源主要是通过搜索引擎获取。由于获取的图片尺寸大小不一,每张图片还包含过多的冗余信息,而模型训练时,要求输入统一的维度和大小,因而统一将图片转换为了224×224 像素的大小和RGB 三通道,并将数据集按照8∶1∶1 的比例划分为训练集、验证集和测试集。

1.2 研究方法

神经网络模型的训练通常需要较大的数据集和计算资源,而使用迁移学习,预先在大规模数据集上训练好成熟的网络模型,再将参数迁移到本文的图像分类模型上,不仅可以明显降低我们训练模型所需的计算资源,还能在保证一定精度条件下提高模型的学习速度。本文选取轻量级卷积神经网络Shufflenet v2 1×,MobileNet v3_large,GhostNet,首先在ImageNet 数据集上得到1000 种分类的预训练模型。然后,进行模型迁移训练[15-16],删除最后的全连接层,添加15个类的新分类器,然后使用作物病害数据集训练这个新的分类器,从而得到农作物病害识别的模型。

迁移学习通常分为特征选择迁移、特征映射迁移和权重迁移三种方式,本文的研究使用的是基于权重的迁移学习,基于权重的迁移学习通常采用的是冻结预训练网络的所有层,然后逐步解冻靠近最后一层的部分卷积层,其余层的权重直接使用,重新训练未冻结的卷积层参数和分类器[17]。由于实验所用到的网络均为轻量级卷积神经网络,网络模型的参数量比较少,所以实验不冻结任何层,每个网络中的所有参数均进行训练[18]。

ShuffleNet v1 是在残差单元上进行的改进,将部分1×1 的卷积替换为分组卷积,模型基本结构如图1 所示,ShuffleNet v2 在此基础上提出了channel split 这种新的运算,将输入的特征通道分为了两部分,每个分支替代原来的分组卷积,减少了计算成本,而且两个部分的输出和输出通道数相同。最后使用concatnate 操作进行通道数合并,从而达到了较好的分类精度。基本单元如图2所示。

图2 ShuffleNet v1和ShuffleNet v2基本模块

MobileNet v2 建立在深度可分离的基础上[14],极大的减少了参数量和计算量,又引入了逆残差结构来提高了网络性能,而MobileNet v3 在MobileNet v2 的基础上将最后平均池化层前移,并删除了最后一个卷积层,同时也加入了Sequeze and Excitation 模块在线性瓶颈结构的最后一层上[19],取代了MobileNet v2 的逐点卷积,提高了模型的精度。模块如图3 所示。另外也将swish 函数替换为了h-swish 激活函数,提升了运行的速度。如公式(1)所示。

图3 Sequeze and Excitation模型结构

通常训练好的卷积神经网络里特征图中存在着很多相似的特征,而GhostNet 引入了残差结构[20],将常规的卷积分为了两步。第一步,使用少量的卷积核生成一组特征图,然后对生成的这一组特征图再做一次简单的计算生成另一组特征,再将这两组特征串联。第二步,使用Ghost module 对串联的特征图进行卷积,减少了大量的参数量[21]。Ghost module如图4所示。

图4 Ghost Module结构

2 实验

本实验使用的是ubuntu 16.04操作系统,硬件环境CPU 是R5-3600X,内存为32 GB,GPU 为NVIDIA 的1080Ti 16 G 显卡。软件环境为CUDA 11.0、CUDNN 8.0.5、Python 3.7、Pytorch 11.7。

2.1 实验方法

本文使用训练集和验证集分别对Shufflenet v2 1×、MobileNet v3_large、GhostNet 进行迁移训练,得到三个分类的预训练模型,训练的批处理数量(banch size)为64,学习率设置为0.001,一共迭代(epoch)50 次。使用Adam 算法对网络模型进行优化。

2.2 实验结果分析

Shufflenet v2 1×、MobileNet v3_large、Ghost-Net 模型训练过程的准确率和loss 曲线变化如图5所示,从折线图中可以看出,MobileNet v3_large的准确率上升和loss 曲线的下降都变化比较快,而Shufflenet v2 1×从最开始的准确率就比另外两个高,但在50个epoch后的准确率最低。

图5 准确率曲线对比

图6 损失率曲线对比

从表2 记录了ShuffleNet v2 1×、MobileNet v3_large、GhostNet 三种模型通过迁移学习在验证集和测试集上的准确率和模型的大小,MobileNet v3_large 在农作物病害上识别精度最高达到了99.27%,ShuffleNet v2 1×训练的模型体积最小,仅1.21M。而使用GhostNet 训练出的模型体积最大,分类的精度但不是最高, MobileNet v3 凭借着深度可分离卷积和SE模块,在识别的精度和模型大小上表现的更好。

表4 基于迁移学习不同模型的性能指标

3 结语

本文针对农作物病害在移动端便捷识别的需求,建立了水稻、小麦、玉米三种农作物共15种常见病害图片样本数据集,并基于迁移学习的方法,轻量级卷积神经网络模型,构建了识别准确率高,适合移动端应用的农作物病害图像识别的模型。

通过将Shufflenet v2 1×、 MobileNet v3_large和GhostNet 这三个目前分类效果较好的轻量级卷积神经网络迁移到作物病害数据集上,不冻结权重参数,经过较短时间的训练,从模型的体积和识别的精度上对实验结果进行综合考虑[22-23],MobileNet v3_large 模型在农作物病害上具有较好的分类效果,为后续农作物病害在移动设备上的应用提供了可靠的技术支持,本实验与目前的基于深度学习的农作物病害识别的方法相比,不仅丰富了水稻、小麦、玉米的病害数据的种类和数量,还首次将这三个分类效果较好的轻量级卷积神经网络应用在农作物病害识别上并取得了不错的分类效果。

本研究建立的模型只在15种农作物病害分类任务上取得了较好的精确度,但在实际的应用场景中,作物的病害种类还有很多,并且不同种类的病害在不同时期表现出病症可能类似,这还需要采集更多的病害信息[24]。另外数据集采集的图像均来自于网络,每张图片在特征信息上还存在较多的差异[25],在之后对模型应用到实际的识别场景中时,需要进一步扩充数据集,以提高模型的泛化能力。

猜你喜欢

集上卷积准确率
基于全卷积神经网络的猪背膘厚快速准确测定
基于图像处理与卷积神经网络的零件识别
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
基于深度卷积网络与空洞卷积融合的人群计数
卷积神经网络概述
师如明灯,清凉温润
几道导数题引发的解题思考