标签 - Interpretability

? Interpretability ?    2020-06-18 10:12:34    711    0    0

Quantifying layerwise information discarding of neural networks

INFO

  • Conference: ICLR 2020 Rejected
  • Cites: 4
  • Github Stars: --
  • Github Solved/Issue: --
  • Author: title

Main Idea

  • 这篇文章在几个比较强的假设( 所有像素iid,因此被拒)下,推导出以下关于量化CNN网络中损失信息的度量。
  • 本文尝试使用相对输入的信息熵来进行度量,我个人理解推到出来的做法是对原图某像素添加高斯扰动,然后计算由这个扰动带来的变化量。我个人认为这个估计的结果和grad是差不多的。可以理解为,如果一个像素添加一点扰动带来的变化大,那么这个像素在传播过程中没有被丢弃。
  • title
  • title
  • 本文中很多符号压根没有写清楚是啥,比如上式子的 \miu 。这也是文章被拒的主要原因之一。
  • title
? Interpretability ?    2020-06-10 12:12:04    1175    0    0

Axiomatic Attribution for Deep Networks

这是一篇讲归因的文章,这篇文章对于归因提出了一下要求:

对于预测无关部分,归因为 0
与baseline(如全黑图片)由于某部分输出不同,这部分归因不为零。

方法上,首先baseline 应该为0,然后积分就行。

title

效果

title

但是这篇文章有几个问题,第一baseline不一定是全黑的图片,全黑也有全黑的信息,不然图上本来黑的部分,就没有任何信息了。第二这个积分公式也过于简陋了吧,图片样本空间真的是直线吗,是不是应该还有一项与样本空间相关的系数(这里默认为1),这个积分结果可能并不满足对于积分路径的不变性。
第三,这个相对积分的方法是否可以用于 adverserial attack 的解释。

A Benchmark for Interpretability Methods in Deep Neural Networks

这篇文章挺有意思

title

这里他的 Benchmark 叫 ROAR。简单来说就是根据可解释性模型给出的重要程度分布,去掉图片中重要的x%,然后再重新训练整个模型,以此评估这个重要程度分布是否准确,重训的模型掉点越多,说明选择越正确。

而且自带一个可视化类综述

title
title
title

本次实验的空白对照

title

开始对比

title
title

这篇文章几个问题,第一需要去掉足够多的特征,准确度才会有所下降。所以相对随机到处乱擦,IG之类去掉的重要部分不一定是必要部分,所以掉点可能很少(重训的模型可能会找新的特征)。
Reviewer也题出了一下问题,ROAR到底在measure什么?ROAR会让一个预测偏了的解释得低分吗?ROAR的评估得分真的是可靠的吗?ROAR是否能有效比较不同解释的效果?不同风格的解释方法可能有差不多的效果,但是会有完全不同的ROAR得分。

? Interpretability ?    2020-06-05 21:25:18    750    0    0
  • TLDR: 输入两个同一个数据集上训练的结构不一定一样的网络,可视化给出两个网络都学到哪些相同的东西。 用NN进行网络间feature的距离度量。

论文想法出发点:对于一个网络,如果我把某一层的 kernel permute 一下,那么这个网络应该是一样的。

如果同样输入,Net A 的某一层 xa 可以通过简单线性变换到 Net B 的某一层 xb 上去,那称他们享有0阶相同特征。

如果除了线性变换还需要一层非线性函数才能变到,就称为1阶相同特征。

如下是一个三阶的求解网络,

title

title

具体计算公式,有对不同层的权重衰减。

title

相当于使用神经网络进行模型相似度度量。

根据以上结果,进行了一些应用。

这里近似可视化了Weak DNN相对Strong DNN多出来的部分(Unreliable features),Strong 对 Weak 多的部分 (Blind spots).

title

然后做了以下几个实验(我个人觉得并不严谨):
1.把 ResNet-34 中间层的 Blind Spots 添加到 AlexNet中,AlexNet 准确率显著增长。
2.把 Weak DNN 最后 feature 层的 Unreliable features 去掉,然后重新训练 FC, 分类准确率上涨一些。

以上两个实验,我个人认为涨点只是因为在变相做知识蒸馏。

接下来,由于这本身是个度量,所以做了些度量常见实验,同网络不同初始化种子,度量训练稳定性。同网络同种子同分布的不同数据,度量训练稳定性。然后度量应用到蒸馏上去对比学习到的内容差异。

改进思路:

1.目前这个 NN 度量不满足 f(X,Y)=f(Y,X), 可以把度量网络对称一

? Interpretability ?    2020-04-05 17:25:31    1396    0    1

直观可解释性

直接可解释的模型

  • Decision trees
  • Linear regression
  • k-NN
  • ILP(定义了一套逻辑推理语言和从数据中通过贝叶斯学习该推理规则的方法,但是如果数据有任何错,会学出奇奇怪怪的东西。同时定义了ILP,解决了对于数据鲁棒性的问题,但是不可解释。)

特征加权

不同特征有不同权重,具有一定的可解释性。

特征选择

在海量的特征中选出少量重要的特征。

  • 投影法:通过数学变化,选取值最大的几个。
  • Wrapper:选取特征子集上的分类错误率最小的。
  • Filter:对特征排序后选出排序较高互补性较强的子集。

模型解释

可解释性哲学

这类就是讨论什么是可解释性,为什么要可解释性等等看起来非常哲学的东西,并且多数文章解释方法也非常"哲学"

综述了监督机器学习可解释性的定义、为什么需要可解释性、两类可解释性研究思路以及一些相关问题的讨论。这篇文章试图澄清可解释性的概念,为可解释性研究“正确的问题”扫清障碍。

比如,我们什么时候需要可解释性?如果一个模型的精确度很高,百分百正确,我们可能不需要可解释能力。如果一个模型精度不够高,我们就会急切想知道机器为何出错。如果机器出错的地方,也是人类出错的地方,那么人们可能将心比心,不会削弱对机器的信任。对于人类不容易出错,但机器却出错的地方,人类对机器的信任度就会急剧降低。

  • 别的文章都差不多,个人觉得没啥意思,毕竟不是搞哲学的,这里就略过了。

通用模型解释

对于单一数据的预测的解释方式,使用一个线性逼近输入数据周围的空间,并对于这个线性分界线解释。

title

比如对于图片而言,就可以每次随机删除一些像