张扬:
新加坡国立大学博士生。从事可解释性机器学习研究,以第一作者身份发表相关论文于NeurIPS,MICCAI等会议。曾在德国亚琛工业大学,慕尼黑工业大学,微软亚研院进行过研究实习。
解释黑盒神经网络的一种主要方法是特征归因(feature attribution),即识别输入特征对网络预测的重要性。最近有方法提出使用信息瓶颈(information bottleneck)模型来识别特征所包含的信息并以此衡量特征的重要性。之前的方法通常通过在神经网络内部插入信息瓶颈来识别对模型预测有意义的特征。我们提出了一种在输入空间中使用信息瓶颈并识别含有有效信息的输入特征的方法。该方法可生成比以往更加细化的模型解释,并且可以应用在任意模型架构上。
1
INTRODUCTION AND MOTIVATION
可解释性的重要性
即便今日的深度学习发展迅速,各种模型也比较成熟。但是神经网络依旧是一个黑盒模型,我们对其内部的结构仍然所知甚少。这样一种不可理解的特质,使得深度网络始终无法大规模部署到医疗、金融等对错误判断非常敏感的领域。神经网络不够可信的例子有很多,比较有代表性的是美国特斯拉所采用的自动驾驶系统,有过许多因识别错目标而导致的公路事故。下图即是特斯拉的视觉系统错误的将一辆翻倒的卡车识别为蓝天而导致事故。
以上种种,可见学界与工业界对可解释模型有需求。部署可解释模型可以帮助我们理解模型,使我们就能在部署和训练的过程中提早发现问题。也能够向监管机构更好的证明模型的行为使得模型可以通过监管部门的评估并部署到医院,保险,民生等领域。
通过可解释的模型打开“黑盒”有什么意义呢?
1. 在训练过程中指导模型朝着更好的方向去发展。
2. 让这个模型获得更好的回溯能力。
3. 实现更加安全、人性化且公平的AI模型。
下图展示了传统机器学习模型和解释模型共同应用在医疗领域上的表现。通过生成热力图,我们可以辅助医生去更好的理解模型的预测,以此减轻医生的工作量。
2
Background
可解释模型的分类
分类方式1:主要根据可解释性如何获得
Intrinsic vs post-hoc explanation
- Intrinsic explanation:一个训练好的模型本身就具有解释自己行为的能力。
- 比如:决策树。
- 具有很好解释性的模型可能会在准确率上有trade-off,即为了实现可解释性,模型准确率可能会下降
- post-hoc explanation:在模型训练好之后生成解释,不需要提前定义模型架构。可以在不打开“黑盒”的情况下解释“黑盒”
分类方式2:根据模型解释范围是局部还是全局
Local vs global explanation
- Global explanation:模型在数据集上的整体行为◾ 目前技术难以实现,需要很高的抽象能力
- Local explanation: 解释基于单个输入样本的模型行为
- 结果并不可被泛化到整个数据集◾ 只能解释某种特定行为在本次研究中,我们重点关注post-hoc, local 的可解释方法。
FEATURE ATTRIBUTION 特征归因
我们一般需要去寻找和决策相关的输入特征,输出的结果被称为特征图(attribution map)。特征归因方法同样可以被分为好几类。
- Class Activation Maps
◾ 通过不同channel的加权平均获得特征图
◾ 只能被应用在CNN上
◾ 例子有ScoreCAM , GradCAM
- Backpropagation-based反向传播◾ 用反向传播的梯度信息构造特征图◾ 被证明是不可信的(视觉欺骗)
- Shapley Value◾ 运用博弈论(game theory)◆ 输入的特征作为玩家◆ 模型看做一个得分函数◆ 得出每个玩家的贡献分值◾ 通常需要使用大量近似来近似真实的得分函数◾ 代表性的方法有:DeepSHAP, Integrated Gradients
- Perturbation-based基于扰动◾ 将模型看做输入-输出的关系◆ 翻转扰动特定的输入值◆ 观察对输出的影响来判断对模型是否有作用◾ 生成的解通常是一个局部解,而不是全局解◾ 代表性的方法有:LIME , Extremal Perturbation
- Information-theory-based基于信息瓶颈的理论◾ 限制神经网络的信息流来获得含有信息量最多的特征◾ 方法建立在信息论和信息瓶颈这两个数学模型上◾ 代表性的方法有:IBA, 还有我们所提出的InputIBA
3
Fine-Grained Neural Network Explanation
我们提出了一种识别输入特征的预测信息的方法,叫做InputIBA,具备以下优势。首先,InputIBA可以直接识别输入中含有信息的特征,相比之前方法具有更高的细粒度。其次,InputIBA是一个和模型架构无关(model-agnostic)的方法,可以应用到各种类别的网络上。为了证明模型无关性,我们在论文中将InputIBA应用到了图像识别和自然语言处理两类任务中。
Background: Information Bottleneck
我们的方法基于Information Bottleneck (也称作IBA)。该方法是通过信息瓶颈插入到神经网络的内部来限制信息流。具体做法是在隐藏特征R种加入噪声,并利用信息瓶颈理论构造优化函数,以求尽可能的把R里面和预测无关的信息剔除掉。
我们把最后求得的结果作为神经网络特定输入的解释。在实践中,IBA存在一些问题,大多和涉及到的近似有关。
比如,当信息瓶颈插入到神经网络后部时候,还需要对结果进行一些特定变换。
我们发现在进行upscale的结果依然是非常模糊的。
但是当我们将信息瓶颈插入到神经网络前部时,Q(Z)是一个高斯分布,可是信息瓶颈越往神经网络前部移动,Q(Z)就越不趋近于高斯分布。结果就是生成的Attribution map中很多有用的特征被移除。
下面我们也有实验进行论证:
当信息瓶颈插入到神经网络后部的时候,生成的结果如左图,非常模糊;
当信息瓶颈插入到神经网络前部的时候,生成的结果如右图,大量有用结果被移除导致几乎不可见。
我们的方法就是将信息瓶颈插入到输入之后,神经网络之前,然后通过预测先验知识来替代信息瓶颈再进行神经网络的学习,得到的结果就比之前好很多。
我们需要把信息瓶颈挪到输入层,然后定义的优化函数也随之发生变化。但是Zi变量我们无法预测,只能通过寻找其先验知识进行优化。
当Q(Z)预测合理的时候,都是在神经网络的后部。我们需要将其挪到神经网络的输入层,具体的变换我们需要使用生成模型。计算得到的Z*变量是一个Bottleneck Variable,里面包含针对隐藏层的预测信息。
现在我们通过输入I构造一个ZG,再把其通过神经网络的前半部分直到隐藏层R。这样我们得到的变量相当于一个隐藏特征f(ZG),且和ZG对应。
接下来我们要做的便是最小化f(ZG)和Z*这两个概率变量之间的距离。最终我们会把学到的ZG应用到ZI上。
Qualitative Comparison 结果对比
Vision (ImageNet)
我们可以发现相对于之前提出的方法,具有相当高的细粒度。
Natural Language Processing (IMDB Dataset)
在自然语言模型上,baseline方法完全失效且无法找到有效的特征,而我们的方法效果良好。
Qualitative Comparison 结果对比
我们发现,在量化实验中,我们方法在多个基准上跑出来的结果都是要优于之前的方法。
4
总结
InputIBA避免了IBA中所使用的几种近似,直接在输入层中识别出预测信息。
- InputIBA作为一个计算特征重要性的方法,实现了细密的解释;
- 同时也能被应用到不同的模型架构上。