深度学习可解释性!深度taylor分解

深度泰勒分解是一种解释神经网络对个体预测的方法。它产生的结果是神经网络所表达的函数在输入变量上的分解。该方法可用作深度学习模型可视化工具,或作为复杂的分析方法的一部分。

众所周知,当前的深度学习分类器只提供对图像的预测,但没有提供与其相关的解释。一种可能的得到解释的方式是:确定哪些输入变量(这里是像素)对图像分类的结果有多大的贡献,特别是图像中的哪些像素与预测结果直接相关,然后将对应的贡献分配到像素热图上,再对热图可视化就可以得到一种解释。

图 1 “相关性/重要性”热度图提供一种可解释性

在图1的热图中,图像中的与预测的相关部分以红色突出显示。在这里,鲨鱼及其背鳍的轮廓被认为与分类最相关。因此至少在热图的意义下,深度学习模型不再是黑盒子。

用于分析神经网络预测的最简单技术是基于梯度的灵敏度分析。虽然基于梯度的灵敏度分析已经有很多变式,但是最根本的是,它针对给定数据点来计算神经网络输出函数相对于该数据点的梯度。

在上面的示例中,热图中像素的强弱会告诉我们图像中的哪些像素会使图像更多/更少地成为“鲨鱼”。但是,我们必须区分以下两个看起来很像但是有细微差别的问题:

“是什么让鲨鱼更像鲨鱼或更不像”

“是什么让鲨鱼成为鲨鱼”

对于第二个问题,基于梯度的敏感度分析并不擅长回答,然而分解技术可以很好地回答第二个问题。分解技术试图完整地解释预测,而不是仅仅测量差异效应。

下面的一个简单的二维示例(两个非线性函数的总和,每个函数对输入空间的一个变量进行操作)可以帮助我们理解灵敏度和分解 这两种可解释性方法之间的差异。

 图 2. 简单实例呈现梯度和分解两种可解释性的特点

蓝色区域具有高函数值,白色区域具有零函数值。矢量场表示输入空间的各个位置处的分析的每个分量的大小。

我们可以观察到灵敏度和分解导致质量上非常不同的可解释性结果:灵敏度分析在输入空间的象限之间产生不连续性:两个任意近的点可能具有明显不同的箭头方向。

其次,对于具有较大输出值的点和较小输出值的点梯度上可能没有区别,即使具有无穷小的输出值的点,分析也会产生相同的解释。而分解在输入域中无处不在:输入空间中的两个附近点总是有类似的解释(假设函数是连续的)。

此外,分解的大小(箭头的大小)与空间中给定点处的函数值成比例。

深度泰勒分解的idea非常简单:假定f是神经网络学到的预测函数,对其进行关于某个点x0的近似泰勒展开:

进一步假定x0是零点,那么这个近似的表达式变为:

最终,基于分解的可解释性把对应像素点的梯度和一次项一起当作是这个像素点对于输出的相关性。图3是深度泰勒分解的流程图。

图3. 深度泰勒分解:同时考虑梯度和差异项构造可解释性热度图

 参考文献:

Montavon, G., Lapuschkin, S., Binder, A., Samek, W., & Müller, K. R. (2017). Explaining nonlinear classification decisions with deep taylor decomposition. Pattern Recognition65, 211-222.


CV细分方向交流群

52CV已经建立多个CV专业交流群,包括:目标跟踪、目标检测、语义分割、姿态估计、人脸识别检测、医学影像处理、超分辨率、神经架构搜索、GAN、强化学习等,扫码添加CV君拉你入群,

(请务必注明相关方向,比如:目标跟踪)

喜欢在QQ交流的童鞋,可以加52CV官方QQ群:805388940。

(不会时时在线,如果没能及时通过验证还请见谅)


长按关注最有料的我爱计算机视觉

  • 7
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值