《Understanding Failures of Deep Networks...》阅读笔记

《Understanding Failures of Deep Networks via Robust Feature Extraction》阅读笔记

1 Motivation

(1) 符合人类视觉感知的神经网络解释系统有助于提升人们对神经网络的理解与信任;

(2) 鲁棒模型的特征符合人类直觉,相比于标准模型,鲁棒模型提取的特征可以用于可解释性研究。

2 Contribution

(1) 提出了一种基于决策树的重要特征挖掘方法;

(2) 使用了显著性热图和特征攻击两种特征可视化方法。

3 Approach

3.1 综述

本文所有的方法都基于一个很重要的假设,即鲁棒模型可以提取到图像符合人类直觉的属性:

但文章对此完全没有进行理论分析,只是根据对于鲁棒模型与非鲁棒模型对于特征的显著性检测结果发现,鲁棒模型的注意力热图更多集中于识别物体本身(上图第一组),而非鲁棒模型的热图集中的区域相对人类视觉感知而言不直观(上图第二组)。

在上述假设的支持下,作者提出,可以使用在ImageNet上训练的ResNet50鲁棒分类器模型的最后一个全局平均池化层(倒数第二层)的输出的多个特征作为特征重要性检测与可视化的对象。之后,根据识别到的特征,使用特征与分类器预测结果之间的互信息构建决策树,将数据集 S S S的一个分块 C C C(cluster,通常是以一类图像作为一个cluster)中的数据划分到每个叶节点中,使用一定方法评估每个叶节点中数据的识别准确率,选出决定产生准确率最低的叶节点的那个特征,认为这个特征对于图像分类结果具有重要影响。之后,将这一特征使用CAM方法计算出热图,再使用本文的feature attack方法得到另一个特征可视化结果,作为重要特征可视化的输出。

本文对于重要性特征的选取标准较为主观,不仅如此,已有研究证明,模型的鲁棒性与准确性之间具有一定对立性,其构造的鲁棒模型的准确度如何不明,假如模型的准确性不高,对齐进行特征重要性分析的意义可能会打折扣。此外,本文对于许多参数的定义非常不明确,很多定义未给出解释,导致阅读存在困难。

3.2 鲁棒模型训练

本文使用下面的损失函数训练鲁棒模型,其损失函数来自鲁棒模型的一篇经典论文《Robustness may be at odds with accuracy》,这里没有定义 x ′ x' x的含义,根据前面提到的论文推断应该表示加了噪声的对抗样本, ρ \rho ρ是人为设定的阈值。

该模型在ImageNet上训练,使用ResNet50架构,使用其最后一个全局池化平均(倒数第二层)的输出作为提取到的特征集 F = [ f 1 , f 2 , . . . , f n ] F=[f_1,f_2,...,f_n] F=[f1,f2,...,fn]

3.3 决策树生成

本文的目的是挖掘出对每个类别图像分类结果有重要影响的特征,因此,构建决策树时,使用的是完整数据集 S S S的某一个类别分组 C C C,对于类别分组 l l l中图像的选择,本文使用了两种方法,一种是选择 S S S中标签为 l l l的数据,另一种是选择模型对 S S S中图像预测标签为 l l l的数据,两种方法有不同的作用,在后面进行解释。

与此同时,需要定义三个评价模型对数据集 S S S和分组 C C C的预测表现得指标:

误差率(Error Rate),表示某组图像中分类错误的图像占组内图像数目的百分比:

误差覆盖率(Error Coverage),表示某组图像中分类错误的数量占整个数据集的分类错误图像中的百分比:

基础误差率(Base Error Rate),表示整个数据集中分类错误的图像占整个数据集图像数目的百分比:

接着,使用如下算法构建决策树:

首先,构建模型预测结果向量 E E E,计算前面提取到的特征集 F F F中所有特征与 E E E的互信息,取前 k = 20 k=20 k=20个最相关的特征训练决策树:

从上图中可以明显看出,每个特征值是决策树分支的决策条件,这个阈值没有明确说明如何设置,上图只是一个示例,具体情况不明。此外,本文明确提到决策树深度只为1或者3,根据示意图和代码推断是一颗二元树,此外,根据后面的特征可视化结果的介绍,不同的特征应该不是同时作用于一颗决策树,比如上图中深度为1的二元树,应该是使用了二十个特征分别构建了决策树,选出效果最好的特征作为划分依据。

构建好决策树之后,每个叶节点都是一组数据 C C C的一个子集,之后,计算每个子数组 C l C_l Cl的误差率 E R ER ER和误差覆盖率 E C EC EC又是人为给定了两个阈值 δ \delta δ τ \tau τ,来挑出误差比较大的子集,这个选择的意义是,特征对样本集进行了划分,对分类结果有重要影响的特征,会导致其划分出的某一个叶节点中的数据存在更多的误分类样本,如上图中的leaf1。这里有个显然的结论,就是所有叶节点的误差覆盖率之和为1。

基于此,可以计算生成树的平均误差率:

反映了这棵树上所有叶节点的平均误差水平,计算出来的这个值会大于整个数据分组 C C C的基础误差率BER,因此,作者使用ALER-BER作为决策树挖掘出模型误差的多少,比如上面的图中,ALER是0.291,BER是0.2,ALER-BER即为0.091,说明他们的划分方法使得分类错误的数据相比于原始分组更加集中,以此说明某个特征对于该类别的分类结果起到了更重要的作用。

因此,每个叶节点的重要性被设计为:

作者对比了标准模型和鲁棒模型设计不同实验分组生成决策树的表现:

这里的得分是满足ER和EC大于给定阈值的叶子节点的重要性值之和。作者发现,决策树深度为3时表现更好,而且使用预测标签的分组效果比使用真实标签的分组的效果更差。使用真实标签进行分组时,分类错误的样本是假阴性样本;使用预测标签进行分组时,分类错误的样本是假阳性样本,这在后面使用可视化方法解释特征时有不同的作用。

3.4 重要特征可视化

使用前面的决策树方法,可以获得使得模型误差最能被充分挖掘的特征,作者认为这个特征对模型的分类具有重要的作用,因此进一步进行了可视化展示结果。可视化工具是热图(heatmaps)和feature attack。

heatmaps

热图的建立基于CAM方法,取贡献最大的特征在池化前的feature map,归一化到(0,1)区间后再resize成图像尺寸生成。

feature attack

feature attack方法则是通过生成对抗样本,找出与真实图像差异性在一定阈值之内的,对于目标特征具有最大响应的图像 x ∗ x^{*} x作为展示。

两者对于特征可视化均有作用,热图可以指示图像决策的区域,比如下图中左侧热图集中于地面;而热图只能指示出大致的区域,不能准确指示具体是哪个属性,这时feature attack就可以发挥作用,比如下图中的右图,热图指示了识别猴子的全身轮廓,而feature attack可以集中到猴子的四肢和尾巴。

4 Experiment

4.1 可视化评估

作者评估了在鲁棒模型上使用真实标签分组与使用预测标签分组的可视化情况:

左侧是使用真实标签分组钱包的可视化结果,第1456个特征代表的属性是纽扣,该特征的划分使得误差识别率提升了10.94%,由此说明纽扣对识别钱包具有重要作用,没有纽扣的钱包容易被错误识别成其他类别;右侧是使用预测标签分组罗得西亚脊背犬的可视化效果,第1634个特征代表的属性是项圈,该特征的划分使得误差识别率提升了10.91%,由此说明项圈对正确识别罗得西亚脊背犬具有重要作用,没有项圈的其他狗也可能被识别成罗得西亚脊背犬。

4.2 人工评估

作者使用他们采用的可视化方法,让人工对热图和feature attack进行评估,下图中(a)是为了说明评估者对于图像特征和提取具有较高的识别能力,图(b)显示了评估者使用热图和feature attack进行评估时的偏好,最后发现最多数量的评估者偏好使用热图来帮助他们进行特征识别:

同时,作者令来自微软的14名机器学习与计算机视觉领域的研究人员使用他们的方法进行实验,访问了他们对于模型的满意度:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值