0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

中科院长春光机所 ? 来源:新智元 ? 作者:新智元 ? 2020-12-23 10:23 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

过去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]

论文研究了一个最新技术---- 这种方法被提出来用于解决具体的问题,包括消除「基线」参数,移除某些在解释中倾向于出现的视觉伪影。

此外,它还「在尺度/频率维度上产生分数」,本质上提供了图像中重要物体的尺度感。

下面这张图比较了所有这些方法:

原文标题:图像识别的可视化解释史

文章出处:【微信公众号:中科院长春光机所】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4814

    浏览量

    104511
  • 机器学习
    +关注

    关注

    66

    文章

    8514

    浏览量

    135117

原文标题:图像识别的可视化解释史

文章出处:【微信号:cas-ciomp,微信公众号:中科院长春光机所】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    无刷电机小波神经网络转子位置检测方法的研究

    MATLAB/SIMULINK工具对该方法进行验证,实验结果表明该方法在全程速度下效果良好。 纯分享帖,点击下方附件免费获取完整资料~~~ *附件:无刷电机小波神经网络转子位置检测方法
    发表于 06-25 13:06

    神经网络RAS在异步电机转速估计中的仿真研究

    众多方法中,由于其结构简单,稳定性好广泛受到人们的重视,且已被用于产品开发。但是MRAS仍存在在低速区速度估计精度下降和对电动机参数变化非常敏感的问题。本文利用神经网络的特点,使估计更为简单、快速
    发表于 06-16 21:54

    BP神经网络与卷积神经网络的比较

    BP神经网络与卷积神经网络在多个方面存在显著差异,以下是对两者的比较: 一、结构特点 BP神经网络 : BP神经网络是一种多层的前馈神经网络
    的头像 发表于 02-12 15:53 ?830次阅读

    BP神经网络的优缺点分析

    BP神经网络(Back Propagation Neural Network)作为一种常用的机器学习模型,具有显著的优点,同时也存在一些不容忽视的缺点。以下是对BP神经网络优缺点的分析: 优点
    的头像 发表于 02-12 15:36 ?1062次阅读

    什么是BP神经网络的反向传播算法

    BP神经网络的反向传播算法(Backpropagation Algorithm)是一种用于训练神经网络的有效方法。以下是关于BP神经网络的反
    的头像 发表于 02-12 15:18 ?901次阅读

    BP神经网络与深度学习的关系

    ),是一种多层前馈神经网络,它通过反向传播算法进行训练。BP神经网络由输入层、一个或多个隐藏层和输出层组成,通过逐层递减的方式调整网络权重,目的是最小化网络的输出误差。 二、深度学习的
    的头像 发表于 02-12 15:15 ?998次阅读

    人工神经网络的原理和多种神经网络架构方法

    在上一篇文章中,我们介绍了传统机器学习的基础知识和多种算法。在本文中,我们会介绍人工神经网络的原理和多种神经网络架构方法,供各位老师选择。 01 人工神经网络 ? 人工
    的头像 发表于 01-09 10:24 ?1425次阅读
    人工<b class='flag-5'>神经网络</b>的原理和多种<b class='flag-5'>神经网络</b>架构<b class='flag-5'>方法</b>

    卷积神经网络的实现工具与框架

    卷积神经网络因其在图像和视频处理任务中的卓越性能而广受欢迎。随着深度学习技术的快速发展,多种实现工具和框架应运而生,为研究人员和开发者提供了强大的支持。 TensorFlow 概述
    的头像 发表于 11-15 15:20 ?783次阅读

    卷积神经网络与传统神经网络的比较

    在深度学习领域,神经网络模型被广泛应用于各种任务,如图像识别、自然语言处理和游戏智能等。其中,卷积神经网络(CNNs)和传统神经网络是两种常见的模型。 1. 结构差异 1.1 传统
    的头像 发表于 11-15 14:53 ?2048次阅读

    RNN模型与传统神经网络的区别

    神经网络是机器学习领域中的一种强大工具,它们能够模拟人脑处理信息的方式。随着技术的发展神经网络的类型也在不断增加,其中循环神经网络(RNN)和传统
    的头像 发表于 11-15 09:42 ?1278次阅读

    基于LSTM神经网络的情感分析方法

    情感分析是自然语言处理(NLP)领域的一项重要任务,旨在识别和提取文本中的主观信息,如情感倾向、情感强度等。随着深度学习技术的发展,基于LSTM(长短期记忆)神经网络的情感分析方法因其出色的序列建模
    的头像 发表于 11-13 10:15 ?1376次阅读

    LSTM神经网络的训练数据准备方法

    LSTM(Long Short-Term Memory,长短期记忆)神经网络的训练数据准备方法是一个关键步骤,它直接影响到模型的性能和效果。以下是一些关于LSTM神经网络训练数据准备的建议和
    的头像 发表于 11-13 10:08 ?2301次阅读

    LSTM神经网络的结构与工作机制

    LSTM(Long Short-Term Memory,长短期记忆)神经网络是一种特殊的循环神经网络(RNN),设计用于解决长期依赖问题,特别是在处理时间序列数据时表现出色。以下是LSTM神经
    的头像 发表于 11-13 10:05 ?1765次阅读

    关于卷积神经网络,这些概念你厘清了么~

    随着人工智能(AI)技术的快速发展,AI可以越来越多地支持以前无法实现或者难以实现的应用。本文基于此解释了 卷积神经网络 (CNN)及其对人工智能和机器学习的意义。CNN是一种能够从复杂数据中提
    发表于 10-24 13:56

    matlab 神经网络 数学建模数值分析

    matlab神经网络 数学建模数值分析 精通的可以讨论下
    发表于 09-18 15:14