学界 | DeepMind论文解读:通过删除神经元来了解深度学习


作者:杨文


深度神经网络由许多单独的神经元组成,它们以复杂且违反人直觉的方式组合起来,以解决各种具有挑战性的任务。这种复杂性一方面赋予神经网络神秘力量,另一方面,也让它们变成了人类难懂的黑匣子。


了解神经网络的深层功能对于解释它们是如何做决定至关重要,并且能帮我们构建更强大的系统。就像,你不了解各个齿轮如何配合工作,你在试图做一个钟表时就很困难。


要想理解神经科学和深度学习中的神经网络,一种方法是弄清单个神经元的作用,尤其是那些易于解释的神经元。


DeepMind 最新的一篇关于神经网络学习的论文《On the Importance of Single Directions for Generalization》(https://arxiv.org/abs/1803.06959)将投稿在第六届 ICLR(国际学习表征会议)。这项研究所采用的方法是受数十年临床神经系统科学的启发,通过探索损伤神经元的影响来确定小规模神经元组对神经网络的重要性。深度神经网络中的那些越容易解释的神经元对神经网络的计算性能越重要吗?


研究人员通过删除单个神经元或神经元组来衡量它是否对网络的性能产生了影响。这项实验有了两个令人惊讶的发现:


1.虽然以前的许多研究集中于易理解,可解释的单个神经元(例如「猫神经元」,或深层网络的隐藏层中的神经元,它们只对猫的图像有反应),但我们发现这些可解释的神经元和那些难以理解,不可描述的神经元对神经网络的影响,并没什么不同。


2.在同样删除神经元的情况下,能正确分类没见过的图像的网络比仅能对看到过的图像进行分类的网络恢复的更快。换句话说,推理性好的网络比那些单纯的记忆网络更不依赖于单一方向。


「猫神经元」可能更易解释,但它们并不重要


在神经科学和深度学习中,广泛分析了仅对单一输入类别的图像(例如狗)作出响应的易解释神经元(「选择性」神经元)。这导致了在深度学习中对猫神经元,情绪神经元和括号神经元过度强调它们的重要性; 在神经科学中,对例如詹妮弗安妮斯顿神经元,以及一些类似的神经元的过度强调等等。然而,这些少数高选择性神经元相对于大多数具有低选择性,更令人费解且难以解释的神经元,哪个相对更重要仍然未知。



具有明显响应模式(例如,对猫活跃,对其他所有活动不活跃)的神经元比那些随着图像随机活动或不活动的令人难理解的神经元更容易解释。


为了评估神经元的重要性,研究人员测量了当神经元被删除时,图像分类任务的网络性能是如何变化。 如果一个神经元是非常重要的,删除它应该是具有高度破坏性的并且大大降低网络性能,而删除一个不重要的神经元应该没有什么影响。 神经科学家经常进行类似的实验,尽管它们很难在人造神经网络中获得这些实验所必需的细粒度和精确度。



上图是在一个简单神经网络上删除神经元产生影响的概念图,较深的神经元更活跃。  需要注意的是,删除一个或两个神经元对输出影响很小,而删除大部分神经元会产生很大的影响,并且一些神经元比其他神经元更重要。


令人惊讶的是,研究员发现神经网络的选择和重要性之间几乎没有关系。换句话说,「猫神经元」并不比令人难解的神经元更重要。这一发现与最近在神经科学方面的工作相呼应,已经证明令人难解的神经元实际上可以提供丰富的信息,并且表明今后在探索上必须超越最易于解释的神经元,以便理解深度神经网络。



尽管可解释神经元在直觉上更容易理解(比如,「它喜欢狗」),但它们并没有比那些没有明显偏好的难解释神经元更重要。


推理性好的网络很难打破


我们试图构建智能系统,如果系统能够推理出新的场景,我们只能称之为系统智能。例如,一个图像分类网络只能对以前看过的特定狗图像进行分类,而不能对同一只狗的新图像进行分类,这个网络是没有价值的。只有在新样本中依然能智能分类,这些系统才能获得它们的效用。去年,Google Brain、Berkeley 和 DeepMind 合作的论文在 ICLR 2017 上获得最佳论文,表明深层网络可以简单地记住他们接受训练的每个图像,而不是以更像人类的方式在学习(例如,了解抽象的「狗」概念)。


然而,网络是否已经学会了一种能够推理到新的任务场景中的解决方案,这往往是不清楚的。通过逐渐删除越来越大的神经元组,研究员发现,相比于简单记忆在训练期间看到的图像的网络,具有良好泛化能力的网络对删除神经元组后的稳健性要强得多。换句话说,泛化好的网络很难被打破(尽管它们肯定还是会被打破的)。


通过以这种方式衡量网络的稳健性,可以评估一个网络是否在利用简单的记忆来「欺骗」人类。了解网络在记忆过程中是如何变化的将有助于建立新网络,网络记忆越少,推理性就越强。


神经科学启发分析


总之,这些发现证明了使用基于临床神经科学启发的技术来理解神经网络的力量是可行的。 使用这些方法,发现高选择性个体神经元并不比非选择性神经元更重要,并且那些广义的网络比单纯记忆训练数据的网络更不依赖于单个神经元。 这些结果意味着单个神经元的重要性可能看起来的那么重要。通过努力解释所有神经元的作用,而不仅仅是那些易于解释的神经元,我们希望更好地理解神经网络的内部工作,最关键的是,利用这种理解来构建更加智能和通用的系统。


未来智能实验室是人工智能学家与科学院相关机构联合成立的人工智能,互联网和脑科学交叉研究机构。


未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/496510.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python动态验证码_Python 模拟生成动态产生验证码图片的方法

模拟动态产生验证码图片模拟生成验证码,首先要做的是生成随机的字母,然后对字母进行模糊处理。这里介绍一下 Python 提供的 Pillow 模块。PillowPIL:Python Image Library,Python 的图像处理标准库,功能强大。PIL 是第…

图解 CSS (1): 先做一个样式表测试工具

一直没有把样式表系统一下, 春节假期有空, 不能再等了.为了方便学习, 先写了一个样式表测试工具: CssTest(点击下载)工具非常简单, 写了 10 行左右的代码; 运行效果图:代码文件:unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, …

Java加密与解密的艺术~数字证书~模型分析

1、证书签发 数字证书需要经由认证机构签发,其流程如图: 数字证书的颁发流程可简述为如下过程: 1)、由数字证书需求方产生自己的密钥对。 2)、由数字证书需求方将算法、公钥和证书申请者身份信息传送给认证机构。…

公告!2018年度国家科技奖提名公示,信息科学组获47项提名

作者:杨文3 月 23 日,国家科学技术奖励工作办公室发布第 89 号公告:2018 年度国家科学技术奖提名工作已结束,共收到有关单位和专家提名的国家自然科学奖项目 272 项,技术发明奖项目 306 项 (通用项目 247 项&#xff0…

Python 虚拟环境

参考:http://www.cnblogs.com/wilber2013/p/4774022.html virtualenv documentation: https://virtualenv.pypa.io/en/latest/ virtualenvwrapper documentation: http://virtualenvwrapper.readthedocs.org/en/latest/http://docs.python-guide.org/en/latest/dev/…

mesos marathon mysql_Mesos和Marathon简介

Mesos是apache的开源项目,是使用C开发的资源管理框架。假设我们的数据中心有众多的服务器,这些服务器要运行业务程序,业务程序随着业务规模的增加往往需要扩容,在运维层面会遇到的问题是,运维无法准确把握资源分配是否…

5.4. Interaction Between Devices and Kernel 设备与内核的交互

目录:http://www.cnblogs.com/WuCountry/archive/2008/11/15/1333960.html [不提供插图,读者最好从网上下载源书] 5.4. Interaction Between Devices and Kernel 设备与内核的交互Nearly all devices (including NICs) interact with the kernel in …

Java加密与解密的艺术~数字证书~证书管理

证书管理 keytool命令 echo 生成本地数字证书1 keytool -genkeypair -keyalg RSA -keysize 2048 -sigalg SHA1withRSA -validity 36000 -alias www.zlex.org -keystore zlex.keystore -storepass 123456echo 生成本地数字证书2 keytool -genkeypair -keyalg RSA -keysize 2048…

VR变革已来!华为完成业界首个5G实验网下Cloud VR业务验证

来源:智吧网近日,华为、北京传送科技有限公司(TPCAST)联合完成业界首个5G实验网下Cloud VR业务验证,实现了交互式CG(Computer Graphics)VR内容的实时云端渲染。何以见得这足以被历史铭记&#x…

mysql中when用法_Mysql 中的CASE WHEN 用法

在SELECT语句查询中可以使用CASE WHEN对查询出来的结果,进行一个类似于if else的判断。具体的用法1.SELECT a.website_id, b.customer_name, a.website_enddate, c.member_name, d.websitetype_id,CASEWHEN d.websitetype_id1 THEN 400WHEN d.websitetype_id2 THEN …

华为交换机CPU SNMP OID [简单整理]

华为交换机SNMP OID 内存 1.3.6.1.4.1.2011.6.1.2.1.1.3 1.3.6.1.4.1.2011.6.1.2.1.1.2 CPU 1.3.6.1.4.1.2011.6.1.1.1.3 1.3.6.1.4.1.2011.6.1.1.1.4 华为S3526E、3050C、3026E的CPU的OID: 1.3.6.1.4.1.2011.6.1.1.1.2.0(最近5秒钟&…

Java加密与解密的艺术~数字证书~证书使用keytool

证书工具 /*** 2009-5-20*/ package org.zlex.chapter10_1;import java.io.FileInputStream; import java.security.KeyStore; import java.security.PrivateKey; import java.security.PublicKey; import java.security.Signature; import java.security.cert.Certificate; i…

预测|十张图带你了解2018年机器人行业趋势与前景

来源:前瞻产业研究院3月15日,腾讯对外公布了其2018年在AI领域的三大核心战略,其中包括成立机器人实验室“Robotics X”。当然,腾讯并不是唯一一家展开行动的互联网巨头,“三巨头”中的另外两家——百度和阿里&#xff…

ASP.NET2.0-防止同一用户同时登陆

要防止同一用户同时登陆,首页应该记录在线用户的信息(这里与用户名为例),然后判断正在登陆的用户里面是否已存在。在这里使用一个cache存放已经登陆的用户名,但是还有一个问题就是要知道用户是什么时候离开系统的呢?这就要定期清除cache中的内容了&#…

python mro c3_Python 19 MRO和C3算法

1.python经典类的MRO经典类的MROclass A: pass class B(A): pass class C(A): pass class D(B, C): pass class E: pass class F(D, E): pass class G(F, D): pass class H: pass class Foo(H, G): passenter description here2. python新式类的MRO, C3算法新式类的MROclass A:…

PowerCenter Designer小结

使用PowerCenter Designer一个月,断断续续的记录一下中间遇到的问题: 1、lookup组件在写sql时,可以有查询条件,但是不能有排序(lookup有默认排序,根据表主键和out port) 需要更改默认排序时&…

Java加密与解密的艺术~安全协议~模型分析

模型分析 1、协商算法 RNC:Random Number Client RNS:Random Number Server 2、验证证书 3、产生密钥 PMS:Pre-Master Secret(预备主密钥) MS:Master Secret(主密钥) 4、加密交互

漫天风口,一地泡沫,消费机器人四年跌宕史

来源:OFweek 作者:邹大湿提及科技浪潮,AI 和机器人是逃不过的。2018年,AI依旧很火,但几年前曾经燥热的机器人狂潮,似乎凉凉了?那个曾经宣称万亿市场的智能机器人,究竟怎么了&#…

urlconnection java_java成神之——HttpURLConnection访问api

HttpURLConnection访问get资源HttpURLConnection connection (HttpURLConnection)new URL("http://ip/test").openConnection();int responseCode connection.getResponseCode();InputStream inputStream;if (200 < responseCode && responseCode < …

Python操作RabbitMQ

来源&#xff1a;http://www.cnblogs.com/phennry/p/5713274.html 本篇博客主要介绍如何通过Python来操作管理RabbitMQ消息队列&#xff0c;大家在工作中可能遇到很多类似RabbitMQ这种消息队列的中间件&#xff0c;如&#xff1a;ZeroMQ、ActiveMQ、MetaMQ等&#xff0c;我们学…