基于Inception V3卷积神经网络森林火灾检测方法

2021-12-24 09:29李珍辉鲁静文陈镜伊龚德峰
关键词:林火准确度卷积

李珍辉,鲁静文,陈镜伊,刘 鹏,龚德峰

(湖南工程学院 计算机与通信学院,湘潭 411104)

0 引言

近年来,图像识别技术飞速发展,在火灾检测上也有了相关的应用.随着科学的发展,计算机视觉和人工智能技术也有了“井喷式”的发展.

在图像识别中有很多优秀的算法.传统的图像识别算法包括微分算子边缘检测算法、Canny边缘检测算法、角点检测算法、卷积神经网络等[1].本文将以改进的卷积神经网络来进行森林火灾检测,该算法以原始数据图像为输入信息,利用卷积核对输入的图像进行卷积能有效地从大量样本中得出相应的特征,避免了复杂的特征提取过程.

传统的卷积神经网络目标检测算法需要使用大量的数据来对网络参数进行训练,会花费大量的时间,并且森林火灾数据属于小样本数据[2].因此,传统的卷积神经网络算法需要进一步改进,本文通过选取更好的梯度算法和进行模型微调,对传统算法进行了改进.

1 传统的卷积神经网络火灾检测

传统的卷积神经网络会选用ResNet模型、VGG模型等分类网络来进行森林火灾图片的训练.卷积神经网络用于森林火灾探测的优点是能从大量的样本中有效地学习森林火灾相应特征,其中包含了多个卷积层和池化层[3],在输出层之前通过全连接层对网络卷积池化提取出的特征在样本空间进行映射,通过大量的训练来提取森林火灾特征:

(1)网络扫描输入的真实图像用以提取特征.卷积的作用就是提取特征,卷积层有两个关键的操作,分别为局部关联和窗口滑动.主要是通过窗口滑动计算每一个区域的特征值,卷积操作的公式如下:

(2)激活图以栈的形式排列,每个图像对应于所使用的滤波器.图像经过滤波器之后,输出的就叫作激活层activation.

(3)通过下采样对激活图进行压缩[4].n代表输入图片的大小,M为输出图像的大小,S代表步长,F*F为每个卷积核的大小,P为特征图边缘补充大小.计算公式如下:

(4)对下采样的激活图进行过滤,生成一组新的激活图.

(5)全连接层为每个节点的输出分配一个标签.对于森林火灾检测这种二分类问题来说,只需要分配有火或无火标签.

2 森林火灾目标检测模型

2.1 迁移学习

迁移学习是一种机器学习方法,是指将一个训练好的模型运用在一个新的任务中[5],如图1所示.通过使用他人已经训练好的权重,即使只有很小的数据集,也有可能获得良好的表现.其中迁移学习有三个好处,分别是更高的起点、更高的斜率、更高的渐进.

图1 迁移学习原理图

考虑到大部分数据或任务是相关的,可以通过迁移学习的方式将学习到的模型参数以某种方式与新模型共享,从而优化模型并加快模型的学习效率,而不是像大多数网络那样从头开始学习[6].

删除原来的Softmax层,并创建自己的Softmax单元来输出二分类问题,用来输出是否有林火.之前的所有层都被视为冻结.对于冻结网络中的所有参数,只需训练与Softmax相关的参数即可.

2.2 模型选择

在以图像为输入的建模预测问题中,经常将其应用于迁移学习.本文以森林火灾图像为输入,进行迁移学习.图像处理中常用的三种模型:VGG模型、ResNet模型、Inception模型.[7-9]

Keras提供的预训练模式的基本信息如表1所示.

表1 Keras提供的预训练模型

对于分类网络来说不免会遇到以下三个问题,第一,参数越多,数据集有限的情况下,会导致过拟合的问题.第二,网络越大,计算复杂度就越高.第三,网络越深,梯度越容易消失.

本文实验使用的是InceptionV3的模型,由表1可知,其准确率以及参数数目比较符合森林火灾图像的训练.InceptionV3是对InceptionV2进行了改进,主要改进了两个方面,首先是对Module模型进行了优化,在Inceotion Module的分支中添加了分支.其次是将一个大的二维卷积拆分成了两个小的一维卷积.这种非对称的卷积结构拆分在处理复杂空间特征和增加特征多样性等方面的效果比对称卷积结构拆分更好,还减少了计算量[10-11].InceptionV3主要有三种网络结构,如图2、图3、图4所示.

图2 8*8

图3 17*17

图4 35*35

2014年,InceptionV1诞生,主要是将传统网络结构中的全连接层替换成了全局平均池化层,极大地降低了参数量,在InceptionV3模型中,将二维卷积层拆分成两个一维卷积层,降低了参数数量,也减少了过拟合的现象.

3 改进后的卷积神经网络算法

3.1 改进梯度下降算法

传统的卷积神经网络采用的优化器为最速下降法(GD),本文将采用随机最速下降法(SGD)对算法进行优化.假定优化的函数是f(x),优化的方法就是针对训练样本上的目标函数找到其最优解.

(1)GD算法找到其最小值的方法就是每次沿着当前位置的导数方向走一小步.在t+1时刻,更新迭代公式为:

GD算法有两个缺点:一是运算速度慢;二是可能会陷入鞍点(saddle point)并且GD算法走不出鞍点,鞍点在优化过程中正交函数求导为0,但是不管在任何轴上都不是一个局部最优点.

(2)在大规模的问题中,GD算法在每次迭代中需要很高的计算复杂度,而SGD算法在每次迭代时是随机采取一个数据样本来计算此时的梯度方向,SGD的计算复杂度与样本的数量无关,大大减少了计算复杂度.随着SGD算法的随机梯度下降,每次的权重更新只利用数据集中的一个样本来完成,即一个epoch过程只有一次迭代和一个更新数据.在t+1时刻,更新迭代计算公式为:

SGD的算法公式为:

综上所述,使用SGD算法可以完美地解决这两个问题,不仅速度快,也可以更好地收敛.

SGD和GD的对比结果如图5所示.

图5 SGD和GD对比图

4 实验结果分析

4.1 数据集

本文一部分数据来自百度和谷歌森林火灾图片,通过网络获得了大量的森林火灾图片,数据来自百度AI公开数据集《森林火焰图片》、英国Durham University的Dunnings和Andy教授课题组公开的火灾数据集,该数据集主要包含野外各种环境下的火灾图片.由于收集的图片尺寸大小有差别,本文通过统一尺寸标准化的方式将所有图片调整成了224*224,并且整理成为一个数据集,如图6所示.

图6 数据样例图

整理出来的数据集分为两类,分别是用于训练的1800张图片和用于验证的200张图片.

4.2 实验环境说明

本文在windows10上,使用谷歌开源的tensorflow2.1.0以及tensorflow内嵌的keras,开发语言选用python3.7.6,在pycharm中进行实验.

4.3 检测效果测评

本文将采用训练准确度(Training accuracy)、验证准确度(Validation accuracy)、训练损失(Taining loss)和验证损失(Validation loss)来对比传统算法和改进后的算法.训练:输入有标签的样本到模型中,找出一组权重和偏差,使所有样本的平均损失“更小”.损失指模型预测值与准确值之间的误差.

4.4 实验结果对比

(1)本文对改进前后的算法在训练过程中的表现进行对比,如图7、图8、图9、图10所示.

图7 传统算法准确度

图8 传统算法损失

图9 改进后算法准确度

图10 改进后算法损失

(2)改进算法训练表现:

通过上述训练的表现得出的实验结果如表2所示.

表2 算法改进前后实验结果对比

图7和图9从训练准确度的指标来对比.在经过20个时期的训练后,得到了改进后模型的验证准确度高于传统模型的验证准确度.

图8和图10从损失的指标来对比.可以看到,传统的损失过大,损失函数主要是用来衡量神经网络输出值Y’和真实值Y之间的差距,改进后的模型更加接近真实值.

不难看出,改进后的算法从准确度和损失值的角度来看,都比传统的算法更加准确.

4.5 实验测试

从数据集中随机选取三组森林图片,使用本文训练好的模型做火灾检测,如图11、图12、图13所示.

图11 第一组火灾检测

图12 第二组火灾检测

图13 第三组火灾检测

4.6 实验总结

通过实验发现,使用传统的CNN模型经过20个时期的训练后,得到了94.83%的训练准确度和87.50%的验证准确度.训练损失和验证损失分别为0.169%和0.25%.而改进后的inceptionV3经过5个时期的训练,得到了96.17%的训练准确度和94.43%的验证准确度,以及0.108%的训练损失和0.110%的验证损失.可以看出,使用改进后的inceptionV3模型可以得到更好的森林火灾识别效果.

5 总结

时代在发展的同时,图像识别的技术也在不断发展,以前的人工检测林火的方法已经过时,取而代之的是用图像检测技术来检测林火,通过卷积神经网络可以对输入的林火图片自动提取特征.本文对传统的卷积神经网络算法进行了改进,使林火检测效果得到进一步的改善.

在卷积神经网络算法的研究中,还有很多的拓展,比如使用烟雾来判别林火,往往林火产生时,烟雾是伴随其产生的.可以综合烟雾和火焰来进行林火检测.未来还需要研究出更好的方法来解决和改善图像识别中的问题.

猜你喜欢
林火准确度卷积
影响重力式自动装料衡器准确度的因素分析
基于3D-Winograd的快速卷积算法设计及FPGA实现
林火蔓延中林火-风双向耦合模拟研究进展
Phosphatidylinositol-3,4,5-trisphosphate dependent Rac exchange factor 1 is a diagnostic and prognostic biomarker for hepatocellular carcinoma
半边天
卷积神经网络的分析与设计
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
论提高装备故障预测准确度的方法途径
对GB 17167实施过程中衡器准确度要求问题的探讨