当前位置:   article > 正文

打开深度神经网络黑箱:竟是模块化的?图聚类算法解密权重结构 | ICML 2020

黑箱聚类
十三 发自 凹非寺
量子位 报道 | 公众号 QbitAI

深度神经网络这个黑箱子,似乎有了更清晰的轮廓。

我们都知道深度神经网络性能十分强大,但具体效果为什么这么好,权重为什么要这么分配,可能连“设计者”自己都不知道如何解释。

最近,一项来自UC伯克利和波士顿大学的研究,就对这个黑箱子做了进一步的解密:

经过训练和权重修剪的多层感知器 (MLP),与具有相同权重分布的随机网络相比,通常模块化程度更高。

也就是说,在特定条件下,深度神经网络是模块化(modularity)的

研究人员认为:

了解神经网络的模块化结构,可以让研究工作者更容易理解神经网络内部的工作原理。

这项研究已提交ICML 2020,也已在GitHub开源(见文末“传送门”)。

将神经网络模块化

为什么要用模块化来研究深度神经网络呢?

首先,模块化系统允许分析系统的研究人员,检查单个模块的功能,并将他们对单个模块的理解合并为对整个系统的理解。

其次,神经网络由不同的层(layer)组成,在定义网络时,不同的层可以单独配置。

而通过实验,研究人员发现:

一个深度神经网络是模块化的,它可以被分割成神经元集合,其中每个神经元集合内部高度连接,但集合之间的连接度很低。

更具体点来说,研究人员使用图聚类(graph clustering)算法将训练好的网络分解成集群,并将每个集群视为一个“模块”。

采用的聚类算法叫做谱聚类 (spectral clustering),用它来计算一个划分(partition)以及评估一个聚类的n-cut。

将神经网络模块化

通俗点来说,就是:

先把数据转换为图,所有的数据看做是空间中的点,点和点之间用边相连。距离较远的两个点,它们之间边的权重值较低,距离较近的两点之间边的权重值较高。

接下来,进行n-cut操作,也就是切图。目标就是要让切图后不同的子图间“边权重和”尽可能的低,而子图内的“边权重和”尽可能的高。

那么,实验结果又如何呢?

实验主要采用了3个数据集,分别是MNISTFashion-MNISTCIFAR10,并在每个数据集上训练了10次。

在每个数据集上训练10次后的结果

可以看到,对MNIST测试的正确率为98%,Fashion-MNIST的正确率为90%,而CIFAR-10的正确率为40%。修剪后的网络通常比随机网络具有更好的聚类性。

下图显示了在剪枝前和剪枝后,所有受训练网络的n-cut和测试精度结果。

每个训练网络的n-cut和精度的散点图

为了帮助解释这些n-cut值,研究人员还对200个随机初始化的网络进行了聚类,n-cut的分布如下图所示。

200个随机初始化网络n-cut分布的直方图和核密度估计

当然,作者也指出一点,这项研究的定义只涉及到网络的学习权值(learned weight),而不是数据分布,更不是模型的输出或激活的分布。

模块之间的重要性和依赖性

那么,这些模块之间的又有怎样的关联呢?

研究人员进一步评估了不同模块之间的重要性和关系

在神经科学领域中,要想确定大脑某个区域的功能,有一种方法是研究这个区域意外受损的患者的行为,叫做损伤实验 (lesion experiment)。

类似的,研究人员也采用了这样的方法:

通过将模块的神经元激活设置为0,来研究模块的重要性,并观察网络如何准确地对输入进行分类。

在这项实验中,“损伤”的原子单位是每个模块与每个隐含层的交集,称之为“子模块”。

重要性

对于每个子模块,将传入组成神经元的所有权重设置为0,并保持网络的其余部分不变。

然后,确定受损网络的测试集精度,特别是它比整个网络的精度低了多少。

使用剪枝和dropout在Fashion-MNIST上训练后,不同子模块的绘图

如上图所示,重要的子模块会先标记它的层号,然后再标记模块号。横轴表示该层神经元在子模块中的比例,纵轴表示由于子模块受损而导致精度的下降。

这项实验表明,许多子模块太小,不能算作重要模块,而许多子模块在统计上有显著影响,但在实际中却不显著。然而,有些子模块显然对网络的运作具有实质的重要性。

依赖性

既然已经知道了哪些子模块是重要的,那么最好还能够理解这些重要的子模块是如何相互依赖的。

为了做到这一点,研究人员在不同的层中破坏两个不同的重要子模块,称之为X和Y。

通过实验,研究人员得到了如下结论:

如果X在Y上不是重要条件,且Y在X上也不是重要条件,那么来自X上的所有信息都传递给了Y。

如果X不是以Y为重要条件,而Y是以X为重要条件,则X将其所有信息发送给Y,并且Y还从其他子模块中接收到了信息。

如果Y不是以X为条件的重要条件,而是X是以Y为条件的重要条件,则认为Y从X接收其所有信息,然后X将信息发送到其他子模块。

如果X和Y都是彼此重要的条件,则无法得出任何结论。

作者介绍

Daniel Filan

Daniel Filan,加州大学伯克利分校的博士生。本科就读于澳大利亚国立大学,学习强化学习理论、数学和理论物理。

Shlomi Hod

Shlomi Hod,波士顿大学计算机系博士生。感兴趣的领域是 responsible AI,尤其是算法和机器学习系统对社会的影响。

传送门

论文地址:
https://arxiv.org/abs/2003.04881

GitHub项目地址:
https://github.com/nn-surprisingly-modular-icml-2020/nn_modularity

作者系网易新闻·网易号“各有态度”签约作者

北京时间3月21日早10:30,线上首次云试乘无人车!急寻众多监工们,跟随轻舟智航L4级无人车应对硅谷晚高峰。此外更有两位轻舟智航顶级技术专家、前Waymo核心工程师拆解其创新技术路径以及大规模智能仿真系统的具体应用

戳二维码,备注“无人车”即可报名、加交流群与同好讨论交流无人车进展~

高能直播 | 云体验无人车试乘+顶级技术专家拆解仿真系统

量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态

喜欢就点「在看」吧 !

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/190752
推荐阅读
相关标签
  

闽ICP备14008679号