基于类激活映射的可解释性方法在农作物检测识别中的发展现状与趋势

2023-12-16 04:08郭文娟冯全
关键词:解释性农作物可视化

郭文娟,冯全

(1.甘肃政法大学网络空间安全学院,甘肃兰州,730070;2.甘肃农业大学机电工程学院,甘肃兰州,730070)

0 引言

我国是农业大国,加快农业信息化发展能够促进农业更好更快地发展[1-2]。农业信息化指计算机应用、通信、微电子、光电、遥感以及物联网等相关技术系统应用在农业上的过程。图像是农业信息中的形式之一,直观性强,是农业信息化中非常重要的载体。随着人工智能的快速发展,图像处理技术尤其是深度学习算法在农作物的检测和识别中应用广泛[3-5]。深度学习算法在图像识别上具有更高的准确率,优于普通的图像识别算法[6]。

但是,深度学习“端到端”的决策模式使得模型的决策过程无法被用户所理解,是不可解释的模型[7]。如果能从人类的角度理解并解释模型决策过程,将会寻找到更优模型。同时,在很多应用领域中,可解释性缺乏降低了用户对深度学习模型的信任,妨碍了模型的实际应用。因此,深度学习模型的可解释性研究具有十分重要的意义[8-12]。

类激活映射算法是常见的可解释性方法,该类算法能够高度区分类,使得卷积神经网络更加“透明”。文章主要介绍基于类激活映射的可解释性方法在农作物病害分类和检测、农作物虫害检测识别、农作物品种分类、目标农作物检测以及其他应用上的研究进展,分析类激活映射算法存在解释精细度不高、梯度不稳定、缺乏评估标准和应用背景单一等问题,并展望未来可解释性的发展方向。

1 类激活映射算法

在卷积神经网络中,全连接层的特征令人难以理解,但是最后一层卷积单元含有最全面的语义信息,并且各个通道能够检测目标的不同激活区域。因此充分利用最后一层卷积单元的特征信息解释网络模型,采用可视化技术理解神经网络的内部特征,实现对模型决策的解释。常见的基于类激活映射可解释性算法包括类激活映射算法CAM[13]、梯度加权类激活映射算法Grad-CAM[14]和Grad-CAM++算法[15]等,本文主要通过梯度加权类激活映射算法Grad-CAM 展开研究。

类激活映射算法[13](class activation mapping,CAM)采用全局平均池化(global average pooling,GAP)层替换了卷积神经网络中的全连接层,计算最后一个卷积层内各个特征图的平均值,然后加权求和以得到最终的输出结果,如图1 所示。CAM 算法在加权求和后会得到卷积神经网络的类激活图,接着将类激活图通过热力图方式进行可视化,从而获得输出结果的显著特征图。

图1 CAM 算法框架图Figure 1 CAM algorithm frame diagram

梯度加权类激活映射算法[14](gradient-weighted class activation mapping,Grad-CAM)流程基本上和CAM 算法相似,为避免过度依赖于全局平均池化层,Grad-CAM 算法在反向传播中计算通道梯度的平均值作为通道的权重,然后计算特征图对应权重后加权求和,最终通过热力图可视化网络模型的注意力,如图2 所示。

图2 Grad-CAM 效果图Figure 2 Grad-CAM renderings

Grad-CAM++算法[15]和Grad-CAM 算法接近,只是采用的通道权重不同。Grad-CAM++算法增加了额外权重对梯度图的权重进行二次加权,体现了梯度图中各元素贡献的差异性,改善了包含多目标的图像可视化效果。上述三种算法的内部原理如图3所示。

图3 三种类激活映射算法原理图Figure 3 Schematic diagram of three class activation mapping algorithms

其中,γC表示类C在全连接层的分数值;表示在(i,j)位置处类C热力图的值表示第k层类C的权重值表示第k层特征图上的第(i,j)元素;Z为常数,表示归一化因子表示类C在第k层的特征图上二次加权的权重值。

2 基于类激活映射的可解释性方法在农作物检测识别中的应用

本文主要从5 个方面介绍类激活映射算法Grad-CAM 在农作物检测识别中的具体应用。

2.1 农作物病害分类和检测

农业生产中正确诊断病害是防控病害的有效措施。随着人工智能的快速发展,图像处理技术尤其是深度学习算法在农作物病害检测和识别中应用广泛[16-18]。为验证卷积神经网络对病害识别的有效性,采用类激活映射算法进行可视化分析。

在农作物病害分类方面,王美华等[19]提出了改进后的注意力模块,在5 种分类网络上添加改进的注意力后对农作物病虫害进行识别,平均准确率为84.78%,采用Grad-CAM 对引入不同注意力模块的模型可视化,体现新注意力模块的优越性;王泽钧等[20]提出了改进的轻量网络模型,59 种农作物病害的平均识别准确率为88.08%,对模型中间层和最后卷积层的特征可视化,有助于理解提出模型的训练过程;李大湘等[21]在苹果病害数据集上采用所提模型识别病害,识别准确率高达98.23%,对注意力图可视化,体现了定位细粒度特征的有效性;于明等[22]提出FCMSAN 模型识别61 种农作物病虫害,分类准确率为87.97%,可视化不同模型,证明提取病害特征的有效性;贾璐等[23]提出新模型MANet 进行葡萄病害识别,在自建数据集和公开数据集上识别准确率的平均值为93.79%,可视化不同模型的识别效果,如图4 所示,体现出最优性能的模型。在农作物病害检测方面,李康顺等[24]采用改进的YOLOX-Nano 检测农作物病害,识别精度平均值达到了99.56%,可视化引入注意力前后的特征提取过程,明确了模型提取特征的效果。

图4 不同模型识别效果的可视化Figure 4 Visualization of recognition effect of different models

综上,不管是农作物病害分类还是病害检测,采用Grad-CAM 算法在不影响模型分类性能的同时能够很好地定位病害区域,在热图上区分显示了不同区域对于目标病害分类和检测的贡献度。

2.2 农作物虫害检测识别

在农作物虫害检测识别方面,由于害虫本身具有隐蔽性和迁移性,检测害虫个体存在一定的难度。目前常用的方法是通过深度学习技术对田间害虫的图像进行检测分析,从而获取相关的虫情信息[25-26]。

Grad-CAM 算法广泛应用于农作物虫害检测中。鲍文霞等[27]利用轻量残差网络识别13 类水稻害虫,获得92.5%的识别准确率,采用Grad-CAM 在不同层上输出特征图和可视化关键特征图,如图5 所示,体现模型较强的特征提取能力。

图5 关键特征图可视化结果Figure 5 Visualization of key feature maps

甘雨等[28]提出改进的EfficientNet 模型识别作物害虫,识别准确率为69.45%,但是模型参数大幅减少。对改进前后模型可视化分析,发现改进后的模型更能进准定位到害虫所在的位置。彭红星等[29]改进ShuffleNetV2 模型识别荔枝病虫害,准确率为84.9%,对模型分类结果可视化,突出注意力机制的优势。田有文等[30]采用卷积神经网络对蓝莓光谱图像进行果蝇虫害检测,识别准确率高达95.69%,可视化检测结果,增强模型的可解释性。

由此可见,Grad-CAM 算法应用提高了农作物虫害检测识别模型的可解释性,在虫害图像上实现了区域级可视化,且该算法适用于任何基于卷积神经网络结构的模型。

2.3 农作物品种分类

为实现自然条件下农作物品种的识别,采用深度学习算法提取农作物图像中稳定的作物特征,获得较高的识别准确率,Grad-CAM 算法应用于解释模型对农作物品种的识别结果。

如苏宝峰等[31]提出了ResNet50-SE 模型在复杂背景下对葡萄品种分类识别,准确率达88.75%,通过Grad-CAM 解释模型在各个层所提取到的葡萄特征。孟莉莎等[32]基于CA-EfficientNetV2 模型对蘑菇图像进行分类,获得了96.8%的分类准确率。通过运用Grad-CAM 可视化模型最后一层特征层,证明改进模型提取特征的精确度更高,如图6 所示。

图6 图像可视化结果对比图Figure 6 Comparison of image visualization results

赵立新等[33]利用双维度注意力机制检测西红柿的成熟度,检测率为99%,单张图片检测时间仅为1.5 s。对不同模型进行Grad-CAM 可视化,表明新模型定位的准确度更高,能在短时间内完成高精度检测。唐恒翱等[34]构建了统计纹理残差学习网络对11 种成熟期的葡萄叶片分类,分类准确率92.26%,使用Grad-CAM 确定模型关注区域。朱学岩等[35]提出了双线性注意力EfficientNet 网络识别4 个油橄榄品种,识别准确率为90.28%,通过Grad-CAM 可视化图对正确识别和错误识别的情况分别予以解释。

因此,基于深度学习的模型可以在多种农作物上进行品种分类和识别,Grad-CAM 算法可视化了模型的关注区域,对关键特征的提取增加了解释依据。

2.4 目标农作物检测

在果实识别、农作物器官检测、田间计数测产等方面应用目标检测算法进行检测,对检测结果运用Grad-CAM 算法进行解释和分析。龙燕等[36]用改进YOLOv7 对疏果期的苹果进行检测,平均检测精度为95.2%,利用Grad-CAM 生成目标检测的热图,表明改进模型具有较强的目标特征提取能力。王昱等[37]利用改进了YOLOv7-tiny 模型去检测甜椒畸形果,平均检测精度为94.5%。

张宏鸣等[38]利用改进YOLO 获取玉米幼苗的株数,检测精度为87.22%,通过Grad-CAM 直观了解到不同模型所关注的特征。张日红等[39]用改进YOLOv4 分别检测种植密集和稀疏的菠萝苗心,检测精度均值为95.1%,对改进前后模型可视化对比分析,解释了改进模型识别率较高的原因。张万枝等[40]采用改进YOLO v5s 检测马铃薯种薯芽眼,平均检测精度为95.2%,对模型输出层可视化分析,证明改进模型检测的有效性。

由此可见,Grad-CAM 算法的灵活性好,准确度高,使得该算法同样适用于目标检测模型,能有效反映出模型所关注的输入特征。

2.5 其他应用

Grad-CAM 算法还可以应用于基于卷积神经网络的田间杂草检测、田间导航、稻穗分割等领域。赵辉等[41]通过改进的DenseNet 识别田间杂草,识别准确率为98.63%,采用Grad-CAM 算法可视化改进前后模型提取特征的过程,证明改进模型能够有效加强对重要杂草特征的提取能力,如图7 所示。

图7 可视化热图Figure 7 Visualized heat map

杨森森等[42]利用改进的轻量网络检测田间杂草,检测准确率为99.61%,使用Grad-CAM 可视化不同的检测模型,可以发现改进模型在茎秆、叶片等关键位置具有较高的激活值。饶秀勤等[43]基于语义分割识别棉花、玉米、甘蔗等农作物的垄间导航路径,平均交并比为0.871,通过Grad-CAM 解释模型的识别过程和迁移学习的过程。

陈红等[44]基于Deeplab-MV3 提取三七垄间的导航线,像素准确率为94.53%,展示不同模型的Grad-CAM 图,证明改进模型的有效性。宋余庆等[45]采用DBSE-Net 分割大田稻穗图像,像素准确率为94.32%,Grad-CAM 图体现了引入注意力机制后的优越性。朱德利等[46]基于SwinT-YOLACT 在玉米果穗图像上进行实例分割,平均精度为79.43%,对比不同模型提取特征的Grad-CAM 图,证明改进模型的优势所在。

综上所述,为了体现卷积神经网络提取特征的优势所在,在语义分割、实例分割等网络上引入Grad-CAM 算法实现了对模型的可解释性分析。

3 存在的问题

通过深度学习和可解释性方法的结合,获得高精度检测识别率的同时提供了模型的决策机制,拓宽了深度学习在农业领域的应用前景。Grad-CAM 算法不仅能够适用于不同的任务和多种卷积神经网络结构中,而且不需要修改模型结构,也不需要重新训练模型,被广泛应用于农作物检测识别中。但是,Grad-CAM 算法存在以下不足:

1)Grad-CAM 算法解释精细度不高,所提供的解释结果为粗粒度,无法应用于解释结果高精度的需求。

2)由于卷积神经网络普遍存在梯度饱和现象,当梯度饱和时,偏导将趋于零,使得偏导不能准确反映出输入各个区域对网络决策的贡献度。

3)Grad-CAM 算法在实际应用中表现参差不齐,缺乏统一的评估标准。

4)现有研究中采用Grad-CAM 算法主要用来证明模型的有效性,导致可解释性方法应用背景单一。

鉴于此,未来研究需要开发应用范围更广的解释算法,同时建立可解释性算法的统一评估标准,拓宽可解释性方法的应用背景。

4 展望

深度学习技术将会彻底改变传统的农作物检测和识别模式,端到端的深度学习技术具有极大的应用潜力。为了更好地将深度学习投入到实际应用中,未来研究方向主要为4 个方面。

1)构建既具有高准确率又具有可解释性的网络模型。增加可解释性算法的复杂度,用来解释算法复杂度高的模型,确保解释结果能代表所研究模型,保证不过度简化模型提取的基本特征。

2)融合已有不同类型的解释算法,构建新型解释算法。根据目前可解释性算法特点,有导向性地将不同类型的可解释性算法进行融合,构建成的新型解释算法兼具不同类型可解释性算法的优点。

3)建立可解释性算法统一的评估标准。为实现对可解释性算法标准化的度量,构建符合特定条件的数据集,不同的解释算法针对相同的数据集进行比较,实现统一评估。

4)保证可解释性算法的正确性。预测结果源于模型,与可解释性算法无关,而解释结果源于可解释性算法。如果预测结果和解释结果能够相互印证,可以证明可解释性算法的正确性。

猜你喜欢
解释性农作物可视化
高温干旱持续 农作物亟须“防护伞”
俄发现保护农作物新方法
夏季农作物如何防热害
基于CiteSpace的足三里穴研究可视化分析
基于Power BI的油田注水运行动态分析与可视化展示
厉害了!农作物“喝”上环保酵素
论行政自由裁量的“解释性控权”
基于CGAL和OpenGL的海底地形三维可视化
“融评”:党媒评论的可视化创新
英汉互译中的认知隐喻翻译探究