用于解释神经网络的方法是如何发展的?

过去11年中用于解释神经网络的最新方法是如何发展的呢?
本文在 inception 网络图像分类器上尝试使用引导反向传播进行解释演示。
为什么「解释」很重要?
使用机器学习(ml)算法(尤其是现代深度学习)进行图像识别的最大挑战之一,是难以理解为什么一个特定的输入图像会产生它所预测的结果。
ml模型的用户通常想了解图像的哪些部分是预测中的重要因素。这些说明或“解释”之所以有价值,有很多原因:
机器学习开发人员可以分析调试模型的解释,识别偏差,并预测模型是否可能推广到新的图像
如果提供了为何做出特定预测的解释,则机器学习模型的用户可能会更信任模型
像 gdpr 这样围绕机器学习的规则要求一些算法决策能够用人类的术语来解释
因此,至少从2009年开始,研究人员就开发了许多不同的方法来打开深度学习的“黑匣子”,从而使基础模型更容易解释。
下面,我们为过去十年中最先进的图像解释技术整合了视觉界面,并对每种技术进行了简要描述。
我们使用了许多很棒的库,但是特别依赖 gradio 来创建你在下面的 gif 文件和 pair-code 的 tensorflow 实现中看到的接口。
用于所有接口的模型是inception net图像分类器,可以在此jupyter笔记本和colab上找到复制此博客文章的完整代码。
在我们深入研究论文之前,让我们先从一个非常基本的算法开始。
七种不同的解释方法
leave-one-out (loo)
leave-one-out (loo) 是最容易理解的方法之一。如果你想了解图像的哪个部分负责预测,这可能会是你想到的第一个算法。
其思想是首先将输入图像分割成一组较小的区域,然后,运行多个预测,每次都屏蔽一个区域。根据每个区域的「被屏蔽」对输出的影响程度,为每个区域分配一个重要性分数。这些分数是对哪个区域最负责预测的量化。
这种方法很慢,因为它依赖于运行模型的许多迭代,但是它可以生成非常准确和有用的结果。上面是杜宾狗的图片示例。
loo是gradio库中的默认解释技术,完全不需要访问模型的内部——这是一个很大的优点。
vanilla gradient ascent [2009 and 2013]
paper: visualizing higher-layer features of a deep network [2009]
paper: visualizing image classification models and saliency maps [2013]
这两篇论文的相似之处在于,它们都通过使用梯度上升来探索神经网络的内部。换句话说,它们认为对输入或激活的微小更改将增加预测类别的可能性。
第一篇论文将其应用于激活,作者报告说,「有可能找到对高级特征的良好定性解释, 我们证明,也许是违反直觉的,但这种解释在单位水平上是可能的,它很容易实现,并且各种技术的结果是一致的。」
第二种方法也采用梯度上升,但是直接对输入图像的像素点进行探测,而不是激活。
作者的方法「计算特定于给定图像和类的类显着性图,这样的地图可以使用分类convnets用于弱监督的对象分割。」
guided back-propogation [2014]
paper: striving for simplicity: the all convolutional net [2014]
本文提出了一种新的完全由卷积层构成的神经网络。由于以前的解释方法不适用于他们的网络,因此他们引入了引导式反向传播。
该反向传播可在进行标准梯度上升时过滤掉传播时产生的负激活。作者称,他们的方法「可以应用于更广泛的网络结构。」
接下来是梯度加权类激活映射(gradient-weighted class activation mapping,grad-cam) 。它利用「任何目标概念的梯度,流入最后的卷积层,生成一个粗糙的定位映射,突出图像中的重要区域,以预测概念。」
该方法的主要优点是进一步推广了可以解释的神经网络类(如分类网络、字幕和可视化问答(vqa)模型) ,以及一个很好的后处理步骤,围绕图像中的关键对象对解释进行集中和定位。
像前面的论文一样,此方法从计算类评分函数相对于输入图像的梯度开始。
但是,smoothgrad通过在输入图像中添加噪声,然后针对图像的这些扰动版本中的每一个来计算梯度,从而在视觉上锐化这些基于梯度的灵敏度图。将灵敏度图平均在一起可以得到更清晰的结果。
integrated gradients [2017]
paper: axiomatic attribution for deep networks [2017]
不同于以往的论文,本文的作者从解释的理论基础入手。它们「确定了归因方法应该满足的两个基本公理——敏感性和实现不变性」。
他们用这些原理来指导设计一种新的归属方法(称为综合梯度),该方法可以产生高质量的解释,同时仍然只需要访问模型的梯度; 但是它添加了一个「基线」超参数,这可能影响结果的质量。
blur integrated gradients [2020]
paper: attribution in scale and space [2020]
论文研究了一个最新技术---- 这种方法被提出来用于解决具体的问题,包括消除「基线」参数,移除某些在解释中倾向于出现的视觉伪影。
此外,它还「在尺度/频率维度上产生分数」,本质上提供了图像中重要物体的尺度感。
下面这张图比较了所有这些方法:
原文标题:图像识别的可视化解释史
文章出处:【微信公众号:中科院长春光机所】欢迎添加关注!文章转载请注明出处。


LED显示屏出口下半年开局走低
什么是敏感电阻,敏感电阻的种类特点是什么
基于LPC2138的超市收银机系统设计策略
将碾压iphone8?三星note8王者归来,全面屏手机有没有满足你的期待?
放弃90纳米6吋8吋晶圆,车用半导体挺进40纳米制程
用于解释神经网络的方法是如何发展的?
如何利用物联网技术对交通基础设施进行管理
安泰电子ATA-3080功率放大器在雷达系统无线电能传输中的具体应用
高级驾驶员辅助系统(ADAS)的TDA2x SoC全景可视系统介绍
面对众多旗舰小米未来何去何从
阿里云严重故障,全线产品受影响(已恢复)
利用FPGA硬件处理速度性能实现HSDI高速数据接口的设计
实施各种软件值得付出努力吗?
【节能学院】ANSVC无功补偿装置在河北某购物广场中的应用
基于NI Scope实时数据采集系统设计
智能燃气表电机阀的原理及设计
超声波测厚仪
ZF-618安全带拉力试验机的操作说明
天敏电视盒ct100
崇达技术荣获中兴通讯颁发的2020年“5G交付突出贡献奖”