【人工智能】深度神经网络竟然是模块化的?图聚类算法解密“黑箱子”权重结构


十三 发自 凹非寺量子位 报道 | 公众号 QbitAI
深度神经网络这个黑箱子 , 似乎有了更清晰的轮廓 。
我们都知道深度神经网络性能十分强大 , 但具体效果为什么这么好 , 权重为什么要这么分配 , 可能连“设计者”自己都不知道如何解释 。
最近 , 一项来自UC伯克利和波士顿大学的研究 , 就对这个黑箱子做了进一步的解密:
经过训练和权重修剪的多层感知器 (MLP) , 与具有相同权重分布的随机网络相比 , 通常模块化程度更高 。
也就是说 , 在特定条件下 , 深度神经网络是模块化(modularity)的 。
【人工智能】深度神经网络竟然是模块化的?图聚类算法解密“黑箱子”权重结构
本文插图
研究人员认为:
了解神经网络的模块化结构 , 可以让研究工作者更容易理解神经网络内部的工作原理 。
这项研究已提交ICML 2020 , 也已在GitHub开源(见文末“传送门”) 。
将神经网络模块化 为什么要用模块化来研究深度神经网络呢?
首先 , 模块化系统允许分析系统的研究人员 , 检查单个模块的功能 , 并将他们对单个模块的理解合并为对整个系统的理解 。
其次 , 神经网络由不同的层(layer)组成 , 在定义网络时 , 不同的层可以单独配置 。
而通过实验 , 研究人员发现:
一个深度神经网络是模块化的 , 它可以被分割成神经元集合 , 其中每个神经元集合内部高度连接 , 但集合之间的连接度很低 。
更具体点来说 , 研究人员使用图聚类(graph clustering)算法将训练好的网络分解成集群 , 并将每个集群视为一个“模块” 。
采用的聚类算法叫做谱聚类 (spectral clustering) , 用它来计算一个划分(partition)以及评估一个聚类的n-cut 。
【人工智能】深度神经网络竟然是模块化的?图聚类算法解密“黑箱子”权重结构
本文插图
△将神经网络模块化 通俗点来说 , 就是:
先把数据转换为图 , 所有的数据看做是空间中的点 , 点和点之间用边相连 。 距离较远的两个点 , 它们之间边的权重值较低 , 距离较近的两点之间边的权重值较高 。
接下来 , 进行n-cut操作 , 也就是切图 。 目标就是要让切图后不同的子图间“边权重和”尽可能的低 , 而子图内的“边权重和”尽可能的高 。
那么 , 实验结果又如何呢?
实验主要采用了3个数据集 , 分别是MNIST、Fashion-MNIST和CIFAR10 , 并在每个数据集上训练了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) 。


推荐阅读