张扬:

新加坡国立大学博士生。从事可解释性机器学习研究,以第一作者身份发表相关论文于NeurIPS,MICCAI等会议。曾在德国亚琛工业大学,慕尼黑工业大学,微软亚研院进行过研究实习。

解释黑盒神经网络的一种主要方法是特征归因(feature attribution),即识别输入特征对网络预测的重要性。最近有方法提出使用信息瓶颈(information bottleneck)模型来识别特征所包含的信息并以此衡量特征的重要性。之前的方法通常通过在神经网络内部插入信息瓶颈来识别对模型预测有意义的特征。我们提出了一种在输入空间中使用信息瓶颈并识别含有有效信息的输入特征的方法。该方法可生成比以往更加细化的模型解释,并且可以应用在任意模型架构上。


1

INTRODUCTION AND MOTIVATION

可解释性的重要性

即便今日的深度学习发展迅速,各种模型也比较成熟。但是神经网络依旧是一个黑盒模型,我们对其内部的结构仍然所知甚少。这样一种不可理解的特质,使得深度网络始终无法大规模部署到医疗、金融等对错误判断非常敏感的领域。神经网络不够可信的例子有很多,比较有代表性的是美国特斯拉所采用的自动驾驶系统,有过许多因识别错目标而导致的公路事故。下图即是特斯拉的视觉系统错误的将一辆翻倒的卡车识别为蓝天而导致事故。

神经网络预测的学习(干货解释神经网络)(1)

以上种种,可见学界与工业界对可解释模型有需求。部署可解释模型可以帮助我们理解模型,使我们就能在部署和训练的过程中提早发现问题。也能够向监管机构更好的证明模型的行为使得模型可以通过监管部门的评估并部署到医院,保险,民生等领域。

通过可解释的模型打开“黑盒”有什么意义呢?

1. 在训练过程中指导模型朝着更好的方向去发展。

2. 让这个模型获得更好的回溯能力。

3. 实现更加安全、人性化且公平的AI模型。

下图展示了传统机器学习模型和解释模型共同应用在医疗领域上的表现。通过生成热力图,我们可以辅助医生去更好的理解模型的预测,以此减轻医生的工作量。

神经网络预测的学习(干货解释神经网络)(2)


2

Background

可解释模型的分类

分类方式1:主要根据可解释性如何获得

Intrinsic vs post-hoc explanation

神经网络预测的学习(干货解释神经网络)(3)

分类方式2:根据模型解释范围是局部还是全局

Local vs global explanation

FEATURE ATTRIBUTION 特征归因

我们一般需要去寻找和决策相关的输入特征,输出的结果被称为特征图(attribution map)。特征归因方法同样可以被分为好几类。

◾ 通过不同channel的加权平均获得特征图

◾ 只能被应用在CNN上

◾ 例子有ScoreCAM , GradCAM

神经网络预测的学习(干货解释神经网络)(4)

神经网络预测的学习(干货解释神经网络)(5)

神经网络预测的学习(干货解释神经网络)(6)

神经网络预测的学习(干货解释神经网络)(7)

神经网络预测的学习(干货解释神经网络)(8)


3

Fine-Grained Neural Network Explanation

我们提出了一种识别输入特征的预测信息的方法,叫做InputIBA,具备以下优势。首先,InputIBA可以直接识别输入中含有信息的特征,相比之前方法具有更高的细粒度。其次,InputIBA是一个和模型架构无关(model-agnostic)的方法,可以应用到各种类别的网络上。为了证明模型无关性,我们在论文中将InputIBA应用到了图像识别和自然语言处理两类任务中。

神经网络预测的学习(干货解释神经网络)(9)

Background: Information Bottleneck

神经网络预测的学习(干货解释神经网络)(10)

我们的方法基于Information Bottleneck (也称作IBA)。该方法是通过信息瓶颈插入到神经网络的内部来限制信息流。具体做法是在隐藏特征R种加入噪声,并利用信息瓶颈理论构造优化函数,以求尽可能的把R里面和预测无关的信息剔除掉。

神经网络预测的学习(干货解释神经网络)(11)

我们把最后求得的结果作为神经网络特定输入的解释。在实践中,IBA存在一些问题,大多和涉及到的近似有关。

比如,当信息瓶颈插入到神经网络后部时候,还需要对结果进行一些特定变换。

神经网络预测的学习(干货解释神经网络)(12)

我们发现在进行upscale的结果依然是非常模糊的。

神经网络预测的学习(干货解释神经网络)(13)

但是当我们将信息瓶颈插入到神经网络前部时,Q(Z)是一个高斯分布,可是信息瓶颈越往神经网络前部移动,Q(Z)就越不趋近于高斯分布。结果就是生成的Attribution map中很多有用的特征被移除。

神经网络预测的学习(干货解释神经网络)(14)

下面我们也有实验进行论证:

神经网络预测的学习(干货解释神经网络)(15)

神经网络预测的学习(干货解释神经网络)(16)

当信息瓶颈插入到神经网络后部的时候,生成的结果如左图,非常模糊;

当信息瓶颈插入到神经网络前部的时候,生成的结果如右图,大量有用结果被移除导致几乎不可见。

我们的方法就是将信息瓶颈插入到输入之后,神经网络之前,然后通过预测先验知识来替代信息瓶颈再进行神经网络的学习,得到的结果就比之前好很多。

神经网络预测的学习(干货解释神经网络)(17)

我们需要把信息瓶颈挪到输入层,然后定义的优化函数也随之发生变化。但是Zi变量我们无法预测,只能通过寻找其先验知识进行优化。

神经网络预测的学习(干货解释神经网络)(18)

当Q(Z)预测合理的时候,都是在神经网络的后部。我们需要将其挪到神经网络的输入层,具体的变换我们需要使用生成模型。计算得到的Z*变量是一个Bottleneck Variable,里面包含针对隐藏层的预测信息。

神经网络预测的学习(干货解释神经网络)(19)

现在我们通过输入I构造一个ZG,再把其通过神经网络的前半部分直到隐藏层R。这样我们得到的变量相当于一个隐藏特征f(ZG),且和ZG对应。

神经网络预测的学习(干货解释神经网络)(20)

接下来我们要做的便是最小化f(ZG)和Z*这两个概率变量之间的距离。最终我们会把学到的ZG应用到ZI上。

Qualitative Comparison 结果对比

Vision (ImageNet)

神经网络预测的学习(干货解释神经网络)(21)

我们可以发现相对于之前提出的方法,具有相当高的细粒度。

Natural Language Processing (IMDB Dataset)

神经网络预测的学习(干货解释神经网络)(22)

在自然语言模型上,baseline方法完全失效且无法找到有效的特征,而我们的方法效果良好。

Qualitative Comparison 结果对比

神经网络预测的学习(干货解释神经网络)(23)

我们发现,在量化实验中,我们方法在多个基准上跑出来的结果都是要优于之前的方法。


4

总结

InputIBA避免了IBA中所使用的几种近似,直接在输入层中识别出预测信息。

,