深度解析神经网络中每个神经元的使命 | MIT朱俊彦&港中文周博磊力作


深度解析神经网络中每个神经元的使命 | MIT朱俊彦&港中文周博磊力作文章插图
作者 | 李科雨
编辑 | 陈大鑫
我们都知道 , 深度神经网络擅长查找可解决大型数据集上复杂任务的分层表示 。
而对我们人类来讲 , 应该如何理解这些学习得到的表示呢?
今天AI科技评论介绍的这项工作中 , MIT朱俊彦团队&港中文周博磊等人主要介绍了对网络的解剖 , 这个网络框架可以系统地识别图像分类和图像生成网络中各个隐藏单元的语义 。
深度解析神经网络中每个神经元的使命 | MIT朱俊彦&港中文周博磊力作文章插图
论文链接:
开源链接:
项目网站:
首先 , 本篇文章分析了经过场景分类训练的卷积神经网络(CNN) , 并发现了与各种物体对象概念相匹配的单元 。
研究结果发现 , 神经网络已经学到了许多对象类的特征 , 这些学习得来的结果在场景的分类中起着至关重要的作用 。
其次 , 研究人员使用类似的分析方法 , 分析了生成场景的生成对抗网络(GAN)模型 。 通过分析在激活或停用少量隐藏单元时所做的微小改变 , 研究人员发现了可以在适应上下文语境的同时 , 从输出场景中添加和删除对象 。
最后 , 本篇文章还将本文分析框架使用于理解对抗攻击和语义图像编辑的两个应用上去 。
1 每个神经元的使命之探索
想必大部分深度学习工作者对于应用前沿深度框架已经驾轻就熟 , 然而 , 有多少人有想过 , 在越来越复杂的网络框架和越来越多的神经元数量中 , 每个神经元本身所起到的作用?
这不 , MIT朱俊彦团队以及港中文周博磊的力作——《Understanding the role of individual units in a deep neural network》就深入讨论了这个问题 , 并且已经成功被PNAS(Proceedings of the National Academy of Sciences of the United States of America , 美国科学院报)接收 。
在这篇文章中 , 作者不仅详尽展现了团队成员这些年在此领域所做的探索和努力的成果 , 还启发性地提出了此项研究的两个潜在应用 , 接下来 , 我们一起来深入详细了解一下此项有趣的伟大工程吧:
深度网络中独立隐藏单元可以教会我们神经网络是如何解决复杂问题吗?
在最前沿的深度神经网络研究中 ,研究者们已经观察到 , 许多独立的神经单元可以对应一些人类可以理解的具体概念 , 而这些概念是训练之初人们并没有主动交给网络去学习的 , 比如:物体(对象) , 区域(部分) , 性别 , 语境 , 结构 , 事态 , 感情等等 。
而找到这些具有实际意义的抽象概念 , 是深度学习的主要目的之一 , 然而 , 至今 , 每个具有明确涵义的单元的出现 , 以及在网络中扮演的角色并不能被非常好的理解 。
因此 , 本篇文章就开始了灵魂发问:
“我们可以量化单个概念单元的出现吗?哪种具体概念可以被对应到呢?它们又服务于哪个函数呢?”
当一个神经网络包括一个激活树的生成单元的时候 , 我们希望去知道这到底是虚假的关联 , 抑或是因为某些逻辑上的原因 , 使得网络在高层次上对树这一对象进行建模的过程得以显露 。
为了研究以上问题 , 朱俊彦&周博磊团队引入了网络解剖模型 , 此模型主要对深度卷积神经网络(CNN)的语义概念进行了系统的映射 。
在此类网络中 , 基本的计算单元是一个学习过的卷积过滤器 , 而这是解决一系列计算机视觉领域中广泛的判别和生成任务的最新结构 。
通过将每个神经元的活动和对于人类的可解释模式匹配任务(比如物体类别检测)进行对比 , 神经网络解剖可以定义 , 可视化和量化独立神经元的具体角色 。
和前人研究不同的是 , 本文直接对网络内部的计算进行了解释 , 而不是训练一个辅助解释模型 。
在本文的处理中 , 研究人员主要将在两种不同任务上训练的模型进行了解剖 , 这两个任务分别是图像分类和图像生成 。
研究人员发现 , 一个训练好的网络包含和高层次视觉概念相对应的神经单元 , 而这些并没有在训练数据中标记出来 。
举个例子 , 当模型被训练用来分类或者生成自然风光图片的时候 , 两种网络都出现了和“树”的概念相对应的独立神经元 , 即使在训练过程中 , 研究人员从来没有教给神经网络“树”的概念 。
而这一工作 , 可以促使研究人员利用激活或者关闭神经元的方法 , 进一步测试网络行为的推理结构 。
下面是对两种网络的探索的简单概括: