影像解译中的深度学习可解释性分析方法
2022-07-05龚健雅宦麟茜郑先伟
龚健雅,宦麟茜,郑先伟
1.武汉大学测绘遥感信息工程国家重点实验室,武汉 430079;2.武汉大学遥感信息工程学院,武汉 430079
算法的可解释性一直是机器学习领域的一个重要研究问题。可解释性研究的目的在于让人类能理解算法的运行机理,以及做出某种推断的原因。如果一个算法具备良好的可解释性,不仅有利于开发者改进算法,增强使用者对该算法的信任度,同时可进一步在使用中确定是否需要人机交互以避免错误的决策。
近年来,随着深度学习对大量研究问题智能化的推进,可解释人工智能系统(XAI)受到越来越多的重视。由于依赖大量数据误差后向传播而实现参数优化,深度学习模型通常被比喻为“黑箱”,即难以用人类思维直接理解模型的具体含义和行为。事实上,在机器学习领域,复杂的算法(如随机森林)虽然通常比简单的算法(如线性回归)在较难的问题上有更好的表现,但同时也会带来较低的可解释性,如图1所示。而相比于传统的机器学习模型,深度神经网络中每个隐含层的神经元输出基本由上层输出特征的线性组合经过一个非线性变换产生,神经元的庞大数量、强波动性、复杂组合均使得直接理解深度神经网络参数含义和运作方式变得十分困难。因此,对深度学习算法进行可解释性分析以判断模型的决策原理,也成为一个极具挑战性的问题。
图1 模型可解释性与模型复杂度的关系
在影像解译领域,对深度学习模型的可解释性研究主要集中于研究不同的可视化算法,从而以人类可理解的方式揭示一个训练好的深度网络模型所学习的信息。虽然,当前可解释性的研究尚未能使深度学习模型完全透明化,但已有一些实践证明可解释性的研究对理解模型运作机制有良好的促进作用。例如,文献[1]发现,在PASCAL VOC数据[2]上表现良好的模型会以图片上的水印作为判断图中目标物体是马的依据。而文献[3]则发现,神经网络模型会根据图上场景中是否有雪来区分狼和哈士奇。文献[4]则通过图像纹理信息(如给猫的图像换上象皮的纹理),发现网络模型主要通过纹理来判断目标类别,并基于这一发现改进了分类算法的分类精度及对噪声的稳健性。
因此,通过可视化方法研究深度学习模型的可解释性,对模型的设计、优化和安全性提升等方面有着重要意义。
1 可解释性分析方法
深度学习可解释性方法主要探究一个已训练完成的神经网络模型如何进行推断。当前影像解译相关的可解释方法主要可分为:激活值最大化分析法(activation maximization methods)、代理模型分析方法(surrogate models)、归因分析法(attribution methods)、扰动分析法(perturbation-based method)、类激活图分析法(class activation map)和样例分析法(example-based methods)。激活值最大化和代理模型分析法主要通过优化或者近似的手段可视化网络模型学习到的特征;归因分析法、扰动分析法和类激活图分析法生成显著图(saliency map)来反映影像中不同像素对推断结果的影响;样例分析法关注寻找具有代表性的正、负样本。可解释性分析方法可推断模型做出决策的原因,从而为模型改进、数据分析、人机交互以及决策等提供重要辅助信息。
1.1 激活值最大化分析法
给定模型中的一个神经元(neuron),激活值最大化分析法通过反向传播的方式(back-propagation),合成可最大化该神经元激活值的影像,以可视化该神经元所偏好的模式,从而反映其编码的特征[5]。文献[6]认为,如果一个神经元对某种影像模式有极大的响应值,那么该模式可视为是此神经元所学习内容的一个良好一阶表达。基于这个思想,文献[6]在2009年提出激活值最大化分析法,以获得深度网络中高层特征的定量解释。由于激活值最大化分析法易生成能带来高激活值的不真实图像(图2),部分研究向目标函数中加入图像先验约束(如表1(b)所示),以减少合成影像中出现难以解释的高频噪声模式[5,7],从而通过梯度上升迭代生成人类可理解的图片。比如,L2正则项常用于减少合成图像中数值过高的像素值[8](arXiv:1506.06579.2015),则高斯模糊(Gaussian blur)和全变分(total variation)约束则可在优化迭代中惩罚高频信息[9](arXiv:1506.06579.2015)。在采用全变分正则项的基础上,有学者进一步设计基于数据驱动的图像块先验正则项(arXiv:1507.02379,2015),以约束网络模型可视化中的色彩分布;而文献[9]则引入了随机图像抖动操作(random jitter)[10](arXiv:1602.03616,2016)来间接约束图像的合成。虽然施加正则化处理有助于生成可解释性高的特征影像,但生成的影像倾向包含重复性的局部物体特征,故主要反映给定神经元所偏好的局部特征,而无法展现网络是否学习到全局结构信息[5]。因此,部分学者探索加强合成影响的全局一致性(global coherence),以合成更自然易读的特征影像(arXiv:1602.03616,2016)。
表1 激活值最大化分析法的3种类型[5]
注:蓝色虚线表示前向传播,橙色虚线表示后向传播
图4对比了两种基于人工先验的激活值最大分析法和DGN-AM所生成的影像,由图可见DGN-AM可以生成强真实性的合成影像,从而易于使用者识别网络模型所学习的信息。
图4 文献[7,9]为两种使用人工先验的方法,文献[11]为DGN-AM方法
1.2 代理模型分析方法
代理模型分析法通过使用可解释的算法来局部近似复杂的模型,从而解释复杂模型的预测原理。文献[3]提出了局部解释法LIME(local interpretable model-agnostic explanations),以一组可解释的模型(如线性模型和决策树等)来解释复杂算法,并证明所提出的LIME可用于任意分类器。如谷歌的Inception网络和支持向量机SVM。文献[13]通过无监督的方法从卷积神经网络的卷积层中自动分离出不同的物体部分模式,从而构造出一个解释图,以揭示卷积神经网络内部的知识层次结构。如图5所示,解释图中的每个节点代表一个部件模式,且图中的每条边编码共同激活关系和模式间的空间关系。类似地,文献[14]通过决策树对隐藏在神经网络全卷积层中的决策模式进行由精到细的编码,从而对卷积神经网络的预测进行语义级的解释。通过这样的决策树,使用者可以确定不同物体的部件对预测结果的贡献程度。由于寻找近似的代理模型与用于模型压缩的知识蒸馏技术相似,部分学者通过知识蒸馏的方法将庞大的神经网络模型所学习的知识提取到可解释的模型中,从而实现对网络模型的解释。例如,文献[15]利用知识蒸馏技术让决策树模型拥有与深度神经网络相近的知识,以同时获得较好的任务表现和可解释性,而文献[16]采用将卷积神经网络模型所学习的知识蒸馏到一个可解释的加性模型中,从而定量地解释网络模型的预测。
图5 用解释图表示卷积神经网线的卷积层中所学习到的不同物体部分的知识[13]
1.3 归因分析法
基于逐层传播的方法主要通过设计反向传播的方式(back-propagation),来寻找输入图像中能最大激活某种特征的模式[21]。DeConvNet[22]使用一个多层反卷积网络[23],将模型学习到的特征投射回输入像素空间以观察不同阶段神经元所学习到的信息;指导型反向传播技术(guided back-propagation)[24]通过限制负梯度的回传,以剔除可视化的特征中的噪声;文献[25]提出激励反向传播(excitation backprop),并通过一个概率赢家通吃的过程(probabilistic winner-take-all process)在网络中传递自上而下的信号,来获得类似显著性图的网络注意力图;逐层相关性传播技术(layer-wise relevance propagation)[26]借由设定局部反向传播规则来计算相邻层间神经元的相关度,并根据相关度将高层信息传播到低层;DeepLIFT[27]设计}“中性”参考输入(reference input)以通过输入图与参考图之间的差异来解释模型的决策,由此来减少由于函数饱和问题造成的反向传播结果的伪影。虽然基于梯度的方法与基于逐层信号传播的方法在获得显著性图的思路上有所不同,但文献[20]指出LRP和DeePLIFT实际上是通过特殊的梯度公式来获得显著性图,并给出了LRP和DeepLIFT对应的改写梯度公式,见表2。
表2 文献[20]中部分归因分析法显著性图计算公式
1.4 扰动分析法
扰动分析法(perturbation-based method)通过对输入使用扰动或者遮挡的操作,观察预测的变化,来判断输入中与给定类别关系紧密的模式,从而解释模型预测的机理。文献[22]用灰色块遮挡输入图像的不同部分,从而证明了模型识别了图像中物体的位置,而非只是使用了物体周围的上下文信息。沿用文献[29]所提出的基于遮挡信息差模型解释技术,文献[30]用滑动窗口的方法对输入图像进行区域采样,来寻找对预测结果影响大的图像块。给定一个训练好的分类器、一张输入图像与其对应的类别,文献[31]通过迭代优化来获得一个对分类影响最大的最小区域掩膜,以代表的区域是分类器决策时所依赖的显著区,从而反映分类模型的决策原理。基于相同的掩膜扰动思路,文献[32]提出训练掩膜生成模型来寻找对分类器分类影响较大的输入图像中的掩膜M,且M所遮挡的区域满足两个条件:①该区域是分类器能进行可靠预测所依赖的最小区域;②当该区域的信息被移除时,会破坏分类的可靠性。类似地,文献[33]提出极端扰动(extremal perturbation)的概念,即在固定区域的所有扰动中对网络预测有最大影响的扰动。文献[33]通过寻找满足一定平滑度的极端扰动来确定输入中的显著区域。与文献[31]和文献[32]等依赖优化的扰动分析方法不同,文献[34]首先随机生成多种掩膜与其对应的被遮挡输入,然后基于输出的分数计算不同掩膜对应的权重,最后对掩膜进行加权平均获得显著性图。扰动分析法的思想不仅可用于解释神经网络模型,也可用于评估可解释性方法的可靠性,及弱监督或者全监督的目标定位任务[35-37]。
1.5 类激活图分析法
(1)
(2)
1.6 样例分析法
样例分析法是一种根据给定法则生成或者从训练集中选取对模型预测有显著影响的样本,从而解释模型决策的方法。样例分析法所寻找的样本类型主要有表3所示的几种。给定一个模型,基于原型的可解释性法通常关注目标类别的最具代表性的样本,而基于影响样本和反事实样本的方法则更关注模型对某个输入进行分类决策的依据。因此,基于原型的方法可给出较为全局的解释,而基于影响样本和反事实样本的方法可偏向给出局部解释。早期样例分析法主要寻找原型样本[44-47],文献[48]认为仅使用原型样本集来解释模型只适用于较为干净的数据,而面对存在噪声的真实数据,依赖原型样本容易导致不正确的解释。因此,文献[48]提出同时使用原型样本和不能被原型样本集概括的批判样本来对模型进行解释,并使用最大平均差异指标(maximum mean discrepancy)完成两种样本的选取。文献[49]认为原型不一定必须在于已有的观测数据中,并使用自编码器(auto-encoder)实现在隐空间中学习原型样本的低维编码,然后通过解码器(decoder)还原出对应的原型样本图像。
表3 样例分析法的目标样本的主要类型
为提供局部解释,在经典机器学习可解释性算法里,有大量工作采用删减诊断法(deletion diagnostics),即删除某些样本后重新训练模型,来确定对模型训练影响较大的样本[50];而在深度学习领域,文献[51]则提出使用基于一阶泰勒近似的影响函数(influence function)以在无须重新训练模型的情况下,评估剔除某个训练样本对模型的影响。文献[52]进一步验证了影响函数不仅可选取单独的影响样本,也可用于选取影响样本群。
与解释模型做出某种预测的原因的方法不同,基于反事实样本的可解释性方法主要考虑如何通过轻微的扰动,使给定输入对应的模型预测结果发生预定的改变[53-54]。虽然基于反事实样本的方法在金融、医疗健康等方面有着大量的应用(arXiv:2010.10596,2020.),但在影像解译领域,由于其关注如何修改输入以获得期望的预测,故常用于模型安全问题,而非模型解释。然而,仍有部分工作通过反事实样例来探究为何模型对输入不做出某种预测,从而解释模型决策的原理。如文献[55]提出寻找反事实视觉样本,从而研究模型做不同决策时所关注的目标特征的不同。
2 解释质量评估
对可解释性分析方法的评估主要可分为定性和定量评估。定性评估指标包括连贯性(coherence)、类敏感性(class sensitivity)和连续性(explanation continuity)[5,7,20],下面列出了几种常用指标的定义。
(1)连贯性(coherence):指可解释性方法所给出与预测密切相关的输入模式应当是具有区分性的特征。如对归因分析法而言,其所给出的显著性图所高亮显示的像素应该集中于具有代表性的特征,而非噪声。
(2)类敏感性(class sensitivity):指可解释性方法给出的解释应该对类别敏感,对不同的类别可给出不同的解释。
(3)选择性(selectivity):对于一张输入影像而言,当方法所生成的显著性图中被认为重要的像素被删除后,对应的模型预测类别概率应当下降。
(4)连续性(explanation continuity):对于相似的输入,可解释性方法应给出相似的解释。
(5)不变性(implementation invariance):当两个待解释模型等价时,即对同一输入给出相同预测结果,可解释性方法应该对这两个模型给出相同的解释。
(6)N阶敏感性(sensitivity-N):对于显著性图的分析方法而言,任给N个像素,若其对应的分值之和等于输入中遮蔽这些信号后预测值的变化差值,则该方法认为满足N阶敏感性。式(3)给出了N阶敏感性的定义
(3)
定量评估的方法有ROAR法(remove and retrain),KAR法(keep and retrain),网络分解法等[56-57]。ROAR法和KAR法由文献[57]提出,这两种方法衡量当被可解释性方法给出的重要特征被移除或者针对性保留时,对模型的预测造成影响,且常用于基于显著性图的可解释性方法。这两种方法的具体操作如下。
(1)ROAR法:该评估方法研究当显著性图中最重要的N%个像素特征被移除时,重新训练的模型的精度变化。
(2)KAR法:该评估方法研究当显著性图中最不重要的N%个像素特征被移除时,重新训练的模型的精度变化。
文献[38]和文献[39]通过使用生成的类激活图进行弱监督的目标定位任务,以证明其类激活图的解释准确度。
虽然上述评估指标与方法能在一定程度上反映可解释性方法的表现,但这些指标对算法的衡量通常并不全面,具有一定的局限性。比如,一些指标只适用于简单或者特定类型的算法,并且验证一个方法是否普遍地满足定性评估指标并不容易;同时,并非满足的指标越多,该方法就越可靠[58]。不同工作所使用的定量评估方法也并不完全统一,使用者难以进行对比,故现有衡量指标难以广泛用于评估多种算法的解释质量。因此,如何设计适用性更广泛、更具统一性的评估方法尚待进一步研究。
3 相关开源软件
随着深度学习的发展,可解释性领域中已有部分工作提供了公开可用的工具和代码。本节主要给出部分可解释性方法的开源软件和代码,以供研究者深入了解当前可解释性研究的进展。文献[59]提供了基于逐层相关性传播技术的工具箱(layer-wise relevance propagation);文献[60]发布了基于Keras框架的开源可解释库INNvestigate,其中包含SmoothGrad、DeConvNet和深度泰勒分解多种经典归因分析法;文献[61]将多种可解释性方法实现为Tensorflow(arXiv:1603.04467,2015.)的回调函数,以简化可解释性方法的使用;有文献提出了基于Pytorch[62]的Captum可解释性方法库(arXiv:2009.07896,2020),其中包含了多种基于梯度和扰动的可解释性分析算法,以及相关的一组评估指标,并且提供了基于库的交互式可视化工具Captum Insights;还有学者提出了开源的AI Explainability 360工具包(arXiv:1909.03012,2019.),其中包含了较为全面的可解释性算法种类。除了上述集合了多种解释性方法的开源库,大量研究工作也开源了其相关方法的代码,如LIME[3]、IG[19]和Group-CAM(arXiv:2103.13859,2021.)等。但由于不同工作使用的深度学习框架并不统一,前沿工作的方法不易于整合入已有开源库中,因此,研究具有较强扩展性的开源库对可解释性研究领域有重要意义。
4 可解释深度学习与遥感影像
近年来,人工智能算法极大地推进了测绘遥感技术的发展[63-64],尤其是在遥感智能解译任务上,取得了显著的性能提升[65]。随着影像解译可解释性方法研究的进展,部分学者使用已有可解释性方法对遥感影像进行分析和算法改进。当前深度学习可解释性研究主要面向自然影像,而对遥感影像的特性缺少相关的研究,故如何针对遥感影像设计可靠的可解释性算法仍需深入的探索。本节以使用ResNet50[66]分类网络进行土地利用分类为例,开展相关可解释性分析试验,以展示如何将可解释性方法运用于遥感影像分析中。
4.1 试验设置
试验使用UC Merced Land Use数据集[67]对ResNet50网络模型进行训练和测试。该数据集共包含21种土地利用类别,每个类别有100张像素分辨率为1英尺且尺寸为256×256的图像。本试验将每个类别数据的80%划分为训练数据,20%划分为测试数据,从而得到1680个训练样本和420个测试样本。试验使用一张GeForce RTX 3090对ResNet50进行训练,并使用IG[19]、指导型反向传播技术(GuidedBP)[24]、SmoothGrad(arXiv:1706.03825,2017)、遮挡分析技术(occlusion)[22]、Grad-CAM++[40]和Score-CAM[42]对训练好的ResNet50模型进行可解释性分析。
4.2 试验结果与分析
图6给出了由IG、指导型反向传播技术(GuidedBP)、SmoothGrad、遮挡分析技术(Occlusion)、Grad-CAM++和Score-CAM共6种可解释性方法生成的显著性图。由图6可见,6种可解释性方法生成的显著性图具有一定的一致性。试验中所比较的方法皆能对不同的目标给出对应的解释,故都有较好的类敏感性。这6种方法的显著性图虽然都能突出目标物体的代表性特征,但也会在不同程度给噪声高分值。相较于其他方法而言,由于基于类激活图技术的Grad-CAM++与Score-CAM通常以区域响应的形式定位目标物体,故在面对目标分布范围广的影像时,易给更多的噪声赋予高分值,如图6(c)、(d)、(f)、(g)的显著性图所示;而面对目标较集中的情况,则能显示出较好的连贯性,甚至在一些场景中给出更好的显著性图(如图6(b))。因此Grad-CAM++与Score-CAM的连贯性会随场景特性发生明显变化。
进一步详细横向对比多个方法可以发现,作为归因分析法的IG、GuidedBP和SmoothGrad,可给出细节较多的显著性图,且GuidedBP和SmoothGrad比IG更为清晰,噪声更少;与IG等方法不同,遮挡分析法、Grad-CAM++和Score-CAM生成的显著性图主要寻找对决策重要性高的片状区域。因此,当面对具体物体的分类解释时(如图6(a)原图被分为飞机类),这后3种方法可以给出较好解释,即分类器的决策依赖目标物体所在区域的信息;然而,当面对用地类型和场景分类时(如图6(c)和(g)),由于与决策相关的信息在影像中较为分散,遮挡分析法、Grad-CAM++和Score-CAM难以确定对决策重要的区域,故给出的显著性图不能较好地解释分类器的决策原理。进一步纵向对比不同影像的解释结果可发现,分类器对于不同的影像特性依赖不同的信息。由图6(a)和(b)的试验结果可见,ResNet50分类器主要关注目标物体所覆盖的像素,来判断场景中物体的类别。图6(c)和(d)的显著性图说明,在对农业用地与森林用地分类时,分类器主要依赖图中的纹理信息。换言之,分类器在对大面积用地进行分类时,影像中土地的纹理信息具有较高的重要性。与前两种情况不同,图6(e)、(f)、(g)结果则说明,与场景关系密切的物体是分类器进行决策的重要依据。例如,在多个可解释性方法的显著性图中,十字路口的交叉中心、飞机跑道的地标和港口的船舶对决策都有较高的重要性。
图6 不同可解释性方法生成的显著性图对比(显著性图中,像素颜色越深(黑),重要性越高;颜色越浅(白),重要性越低)
综上所述,当前的可解释性方法可用于遥感影像土地利用分类模型,且能解释分类模型对不同类型的影像进行决策时,所依赖的不同信息。然而,在对大场景用地分类时,部分方法的适用性仍旧有限。
5 未来与展望
可解释性研究是当前深度学习领域的研究热点之一,对“黑箱”深度学习网络模型的可解释性研究在优化模型结构、增强安全性、提供决策信息等方面有着重要意义。本文总结了当前影像解译领域中的6种主流可解释性方法、相关定性与定量评估方法,以及部分集成了6种可解释性方法的开源库。为验证当前可解释性方法在遥感影像解译研究中的适用性,本文给出了部分具有代表性的方法在遥感数据上进行分类网络模型的可解释性分析。尽管试验表明当前可解释性方法可用于光学遥感影像分析,但由于当前可解释性方法的研究主要集中于普通自然影像,已有可解释性方法对遥感影像中大型场景的适用性有限,并且无法运用先验知识集成地学抽象规则,也难以为非RGB遥感影像(如InSAR数据和高光谱影像等)的解译提供可靠解释。同时,由于当前可解释性方法以解释分类模型为主,而对如目标检测和语义分割等高级任务的可解释性研究较少,现有可解释性方法适用任务范围狭窄,难以与当前智能AI的发展齐头并进。故而,要可靠地解释用于遥感影像分析的深度网络模型,亟须研究涵盖多任务多遥感影像种类,且可嵌入遥感地学先验知识的可解释性统一框架,从而为模型结构优化提供科学依据。