关于人工智能:ScoreCAM|用kernel加权解释CNN的预测结果

1次阅读

共计 3102 个字符,预计需要花费 8 分钟才能阅读完成。

【写在后面】

最近,人们越来越关注卷积神经网络的外部机制,以及网络做出特定决策的起因。在本文中,作者基于类激活映射开发了一种新鲜的预先视觉解释办法,称为 Score-CAM。与以前的基于类激活映射的办法不同,Score-CAM 通过在指标类上的前向传递分数取得每个激活图的权重来解脱对梯度的依赖,最终后果是通过权重和激活图的线性组合取得的。作者证实 Score-CAM 在解释决策过程中具备更好的视觉性能和公平性。本文的办法在辨认和定位工作上都优于以前的办法。

1. 论文和代码地址

Score-CAM: Score-Weighted Visual Explanations for Convolutional Neural Networks

论文地址:https://ieeexplore.ieee.org/document/9150840

代码地址:https://github.com/haofanwang/Score-CAM

2. Motivation

对深度神经网络 (DNN) 的解释通过裸露某些可由人类解释的推理方面来进步透明度。在解释中,可视化肯定数量的趣味 (例如输出特色的重要性或学习的权重) 已成为最间接的办法。因为空间卷积是图像和语言解决的最先进模型的常见组成部分,因而许多办法专一于建设卷积和卷积神经网络 (CNNs) 的更好解释。具体而言: 梯度可视化,扰动,类激活图 (CAM) 是三种宽泛采纳的办法。

基于梯度的办法将指标类的梯度反向流传到输出,以突出显示影响预测的图像区域。Saliency Map 用指标类绝对于输出图像的分数作为解释。其余作品基于并操纵该梯度,以在视觉上锐化后果。这些图通常品质低且有噪声。基于扰动的办法扰动原始输出,以察看模型预测的变动。为了找到最小区域,这些办法通常须要额定的正则化,并且计算量大。

基于 CAM 的解释通过卷积层激活图的线性加权组合,为单个输出提供视觉解释。CAM 创立部分视觉解释,但对架构敏感;须要全局池层。Grad CAM 及其变体,例如 Grad CAM++,将 CAM 推广到没有全局池层的模型。在这项工作中,作者回顾了梯度信息在梯度 CAM 中的应用,并探讨了为什么梯度可能不是推广 CAM 的现实办法。此外,为了解决基于梯度的 CAM 变动的局限性,作者提出了一种新的预先视觉解释办法,称为 ScoreCAM,其中激活图的重要性来自其突出显示的输出特色对模型输入的奉献,而不是部分灵敏度测量,即梯度信息。本文的奉献是:

(1)作者提出了一种新的无梯度视觉解释办法 Score-CAM,它弥合了基于扰动的办法和基于 CAM 的办法之间的差距,并以直观易懂的形式推导了激活图的权重。

(2)作者应用均匀降落 / 均匀减少和删除曲线 / 插入曲线指标定量评估了分数 CAM 在辨认工作上生成的显著性图,并表明分数 CAM 更好地发现了重要特色。

(3)作者定性地评估了可视化和定位性能,并在这两项工作上获得了更好的后果。最初,形容了 Score CAM 作为分析模型问题的调试工具的有效性。

3. 办法

3.1. Methodology

与以前的办法不同,前者应用流入最初一个卷积层的梯度信息来示意每个激活图的重要性,作者将重要性纳入置信度的减少。

Increase of Confidence

给定一个取输出向量 $X=\left[x_{0}, x_{1}, \ldots, x_{n}\right]^{\top}$ 并输入标量 Y 的个别函数 $Y=f(X)$。对于已知基线输出 $X_{b}$,$x_i$ 向 Y 的方向的奉献 $c_i$ 是通过将 $X_b$ 中的第 i 项替换为 $x_i$ 来扭转输入:

$$
c_{i}=f\left(X_{b} \circ H_{i}\right)-f\left(X_{b}\right)
$$

其中,$H_{i}$ 是具备雷同形态 $X_{b}$ 的向量。

Channel-wise Increase of Confidence (CIC)

给定一个 CNN 模型 Y =f(X),它承受一个输出 X 并输入一个标量 Y。咱们在 f 中选取一个外部卷积层 l,并将相应的激活作为 A。用 $A_{l}^{k}$ 示意 $A_{l}$ 的第 k 个通道。对于已知的基线输出 $X_{b}$,$A_{l}^{k}$ 对 Y 的奉献定义为:

$$
C\left(A_{l}^{k}\right)=f\left(X \circ H_{l}^{k}\right)-f\left(X_{b}\right)
$$

$$
H_{l}^{k}=s\left(U p\left(A_{l}^{k}\right)\right)
$$

Score-CAM

思考模型 f 中的卷积层 l,给定一类感兴趣的 c,Score-CAM$L_{S \text { core}-C A M}^{c}$ 能够定义为:

$$
L_{S c o r e-C A M}^{c}=\operatorname{ReLU} \left(\sum_{k} \alpha_{k}^{c} A_{l}^{k}\right)
$$

$$
\alpha_{k}^{c}=C\left(A_{l}^{k}\right)
$$

其中 $C(\cdot)$ 示意激活图 $A_{l}^{k}$ 的 CIC 分数。

作者还将 ReLU 利用于 map 的线性组合,因为只对对感兴趣的类别有踊跃影响的特色感兴趣。因为权重来自与指标类上的激活映射对应的 CIC 分数,分数 CAM 解脱了对梯度的依赖。尽管最初一个卷积层是更可取的抉择,因为它是特征提取的起点,但在本文的框架中能够抉择任何两头卷积层。

3.2. Normalization on Score

每个前向传递神经网络是独立的,每个前向流传的分数幅度是不可预测且不固定的。归一化后的绝对输入值(后 softmax)比相对输入值(前 softmax)更适宜测量相关性。因而,在分数 CAM 中,作者将权重示意为后 softmax 值,以便分数能够从新缩放到固定范畴。

因为每次预测的范畴不同,是否应用 softmax 会产生差别。上图显示了一个乏味的发现。模型预测输出图像为“狗”,无论采纳哪种类型的分数,都能够正确突出显示。但对于指标类“cat”,如果应用 pre-softmax logit 作为权重,则分数 CAM 同时突出显示“dog”和“cat”区域。相同,只管“猫”的预测概率低于“狗”的预测概率,但应用 softmax 的分数 CAM 能够很好地区分两个不同的类别。归一化操作使分数 CAM 具备良好的类判断能力。

4. 试验

不同可解释办法的可视化后果

类判断后果。

辨认后果。

多指标后果。

基于能量的定点博弈的比拟评估。

不同办法的显著性 map。

检测后果。

随机抽样的查看后果。

左侧由未微调 VGG16 生成,分类精度为 22.0%,右侧由微调 VGG16 生成,分类精度为 90.1%。结果表明,随着分类精度的进步,显著性图变得更加集中。

左栏是输出示例,两头是显著图 - 预测类(person),右栏是显著图 - 指标类(bicycle)。

5. 总结

作者提出了一种新的 Cam 变体 Score Cam,用于视觉解释。分数 CAM 应用每个激活图权重的置信度减少,打消了对梯度的依赖,并具备更正当的权重示意。本文对动机、施行、定性和定量评估进行了深入分析。本文的办法在辨认和定位评估指标方面优于所有以前基于 CAM 的办法和其余最先进的办法。


已建设深度学习公众号——FightingCV,欢送大家关注!!!

ICCV、CVPR、NeurIPS、ICML 论文解析汇总:https://github.com/xmu-xiaoma…

面向小白的 Attention、重参数、MLP、卷积外围代码学习:https://github.com/xmu-xiaoma…

退出交换群,请增加小助手 wx:FightngCV666

本文由 mdnice 多平台公布

正文完
 0