作者:Jiaxuan You Jure Leskovec Kaiming He Saining Xie
https://cs.stanford.edu/people/jure/pubs/nn_structure-icml20.pdf
PPT:https://cs.stanford.edu/~jiaxuan/files/Graph_Structure_of_Neural_Networks_slides.pdf
ICML2020 long oral
https://cs.stanford.edu/~jiaxuan/ (★★★★★)
https://arxiv.org/abs/2007.06559
Graph Structure of Neural Networks
https://github.com/facebookresearch/graph2nn
摘要:神经网络通常表示为神经元之间的连接图。然而,尽管神经网络有着广泛的应用,但目前人们对神经网络的图结构与其预测性能之间的关系知之甚少。本文系统地研究了神经网络的图结构对预测性能的影响。为此,我们开发了一种新的基于图的神经网络表示方法,称为关系图,其中神经网络每一层的计算,对应于沿着图结构的每一轮的信息交换。利用这种表示,我们证明:(1)关系图的“最佳点”导致神经网络具有显著提高的预测性能;(2)神经网络的性能近似于其关系图的聚类系数和平均路径长度的光滑函数(a smooth function of the clustering coefficient and average path length of its relational graph);(3) 我们的发现在许多不同的任务和数据集中是一致的;(4)最佳点可以被高效地确定;(5)表现最好的神经网络的图形结构与真实的生物神经网络惊人地相似。我们的工作为神经结构的设计和对神经网络的理解开辟了新的方向。
1 导言
深层神经网络是由神经元组织成层、层与层之间连接组成的。神经网络的结构可以通过它的“计算图”来获得,其中神经元被表示为节点,有向边连接不同层的神经元。这样的图表示说明了网络是如何从输入神经元传递和转换信息的,通过隐藏层一直传递到输出神经元的(McClelland等人,1986)。
然而,人们普遍认为,神经网络的性能取决于其结构(LeCun等人,1998;Krizhevsky等人,2012年;Simonyan&Zisserman,2015年;Szegedy等人,2015年;He等人,2016),目前对神经网络精度与其底层图结构之间的关系缺乏系统的了解。这一点对于神经结构搜索NAS尤其重要,如今,神经结构搜索会彻底搜索所有可能的连接模式(Ying et al.,2019)。从这个角度来看,出现了几个开放性问题:网络结构与其预测性能之间是否存在系统性联系?表现良好的神经网络的结构特征是什么?这样的结构(structural signatures)是如何在不同任务和不同数据集之间泛化的?有没有一种高效的方法来检查给定的神经网络是否有前途?
建立这样一种关系在科学上和实践上都很重要,因为它将直接影响到设计更高效、更精确的体系结构。它还将为执行神经网络的新硬件结构的设计提供信息。理解构成神经网络基础的图结构也将推进深度学习的科学。
然而,建立网络结构与其精度之间的关系是非常重要的,因为尚不清楚如何将神经网络映射到图(反之亦然)。自然的选择是使用计算图表示,但它有许多局限性:(1)缺乏通用性:计算图只适用于这样一些图,这些图必须是有向无环的(directed and acyclic,DAGs),在层级别上是二分图(bipartite graph),在网络级别上是单入单出的(Xie et al.,2019)。这限制了为一般图开发的丰富工具的使用。(2) 与生物学/神经科学的脱节:生物神经网络具有更丰富和更少模板化的结构(Fornito et al.,2013)。大脑网络中存在信息交换,而不仅仅是单向流(Stringer等人,2018)。这样的生物或神经模型不能简单地用有向无环图来表示。
本文系统地研究了神经网络的图结构与预测性能之间的关系。我们发展了一种新的表示神经网络图的方法,我们称之为关系图。我们的主要见解是关注消息交换,而不仅仅是有向的数据流。作为一个简单的例子,对于一个固定宽度的全连接层,我们可以将一个输入通道和一个输出通道一起表示为一个节点,关系图中的一条边表示两个节点之间的消息交换(图1(a))。在此公式下,利用适当的消息交换定义,我们证明了关系图可以表示多种类型的神经网络层(全连通层、卷积层等),同时摆脱了计算图的许多约束(如有向、无环、二分图、单入单出)。一个神经网络层对应于一个关系图上的一轮消息交换,为了获得深层网络,我们在同一个图上进行几轮消息交换。我们的新表示法使我们能够构建更加丰富多样的神经网络,并使用成熟的网络科学工具对其进行分析(Barabasi&Psfai , 2016).
然后我们设计了一个名为WS-flex的图生成器,它允许我们系统地探索神经网络的设计空间(即关系图)。基于神经科学的观点,我们通过聚类系数(clustering coefficient)和关系图的平均路径长度来描述神经网络(图1(c))。此外,我们的框架是灵活和通用的,因为我们可以将关系图转换成(translate into)不同的神经结构,包括多层感知器(MLP)、卷积神经网络(CNN)、ResNets等,在有限计算预算下(图1(d))。
利用标准图像分类数据集CIFAR-10和ImageNet,系统地研究了神经网络结构对其预测性能的影响。我们进行了几个重要的经验观察:
• 关系图的“最佳点”导致神经网络在控制计算预算下的性能显著提高(第5.1节)。
• 神经网络的性能近似于其关系图的聚类系数和平均路径长度的平滑函数(第5.2节)。
• 我们的发现在许多架构(MLP、CNN、ResNets、EfficientNets)和任务(CIFAR-10、ImageNet)中是一致的(第5.3节)。
• 可以有效地确定最佳点。确定一个最佳点只需要几个关系图样本和几个训练阶段(第5.4节)。
• 性能良好的神经网络具有与真实生物神经网络惊人相似的图形结构(第5.5节)。
我们的研究结果对设计神经网络结构、推进深度学习的科学和提高我们对神经网络的理解具有重要意义。
2 作为关系图的神经网络
为了探索神经网络的图结构,我们首先介绍了关系图表示的概念及其实例。我们演示了我们的表示如何在统一的框架下捕获不同的神经网络结构。在深度学习的语境中使用language of graph有助于把两个世界结合在一起,为我们的学习奠定基础。
2.1 图上的消息交换
我们首先从图的角度重新审视神经网络的定义。我们通过图的节点集和边集来定义图。我们假设每个节点都有一个为标量或向量的节点特征。
当它与神经元之间的信息交换有关时,我们称图为关系图。具体地说,消息交换由消息函数和聚合函数定义,消息函数的输入是节点特征,输出是消息,聚合函数的输入是一组消息,输出是更新的节点特征。在每一轮消息交换中,每个节点都向其邻居发送消息,并聚合来自其邻居的传入消息。每个消息在每个边通过消息函数进行变换,然后通过聚合函数在每个节点进行聚合。假设我们进行轮消息交换,那么节点的第轮消息交换可以描述为:
其中是中的节点,是节点的邻域,这里我们假定所有节点都有自连接的边,是节点的输入特征,是输出特征。注意,这种消息交换可用于任意图上。为了简洁,本文只考虑无向图。
公式(1)提供了消息交换的一般定义。在本节的剩余部分中,我们将讨论如何将这个通用的消息交换定义实例化为不同的神经结构。我们在表1中总结了不同的实例化,并在图2中提供了一个实例化4层65维的MLP的具体示例。
2.2. 固定宽度MLP作为关系图
多层感知器MLP由多层计算单元(神经元)组成,每个神经元对标量输入和输出进行加权求和,然后进行非线性处理。假设MLP的第层以为输入,为输出,则神经元计算为:
其中是可训练的权重,是输入的第个维度,也就是,是输出的第个维度,是非线性。
我们先考虑一种特殊的情形,所有层的输入输出特征是相同的维度。在这种情况下,一个全连接的固定宽度的MLP层可被表达为一个全关系图(complete relational graph),其中每个节点与其它的所有节点,也就是,对于每个节点,邻域集。此外,全连接的固定宽度MLP层具有特殊的消息交换定义,其中消息函数为,聚合函数为。
上述讨论表明,固定宽度的MLP可以看作是一个具有特殊消息交换功能的全关系图。因此,固定宽度的MLP是更广义的模型家族下的一个特例,更广义的模型家族的消息函数、聚合函数以及最重要的关系图结构是可以变化的。
这种见解使我们能够将使用全关系图得到固定宽度MLP推广到任何广义的关系图。根据公式(1)中消息交换的一般定义,我们得到:
其中是中节点,由定义。
2.3 作为关系图的广义神经网络
公式(3)的图视角为表示固定宽度MLP作为关系图奠定了基础。在本节中,我们将讨论如何将关系图进一步推广到广义的神经网络。
作为关系图的可变宽度MLP。 广义神经网络的一个重要设计考虑因素是,层宽度在整个网络中经常变化。例如,在CNNs中,通常的做法是在空间下采样之后将层宽度(特征通道的数量)增加一倍。
为了表示可变层宽的神经网络,我们将节点特征从标量推广到向量,其由MLP的输入的一些维度组成,也就是,并将信息函数从标量相乘推广到矩阵相乘:
其中是权重矩阵。除此外,我们允许:(1)不同层的同一个节点可以有不同的维度;(2)同一层中,图中不同节点可以有不同的维度。这个广义的定义导致了神经网络的一个灵活的图表示,因为我们可以在任意宽度的不同层上重用相同的关系图。假设我们使用一个个节点的关系图来表示维度的层,于是nodes中每一个都有维度,剩下的nodes中每一个都会有维度。煮个栗子,如果我们使用4个节点的关系图来表示2层的神经网络,第一层的宽度是5,第二层的宽度是9,因此,这4个节点在第一层的维度是{2,1,1},在第二层的维数为{3,2,2,2}。
注意,在此定义下,关系图的最大节点数由相应神经网络中最窄层的宽度限定(因为每个节点的特征维数必须至少为1)。
CNN作为关系图。 我们进一步使关系图适用于输入为图像张量的CNNs。我们将节点特征特征从向量推广到张量,其包含输入图像的一些通道。然后我们用卷积运算推广信息交换定义,具体的是:
其中是卷积操作,是卷积核。在此定义下,广泛使用的稠密卷积再次表示为全图complete graphs。
作为关系图的现代神经结构。 最后,我们推广了关系图来表示具有更复杂设计的现代神经结构。例如,为了表示ResNet(He et al.,2016),我们保持层之间的剩余连接不变(we keep the residual connections between layers unchanged)。为了用瓶颈变换表示神经网络(nn with bottleneck transform,He et al.,2016),关系图选择性地应用了3×3和1×1卷积的消息交换;同样,在高效的计算场景中,广泛使用的可分离卷积(Howard et al.,2017;Chollet,2017)可以视为与3×3深度卷积和1×1卷积。
总的来说,关系图提供了神经网络的一般表示。通过对节点特征和消息交换的合适定义,关系图可以表示不同的神经结构,如表1所示。
3 探索关系图
在本节中,我们详细描述了如何设计和探索第2节中定义的关系图空间,以研究神经网络的图结构与预测性能之间的关系。要取得进展,需要三个主要部分:(1)刻画图结构特性的图度量 graph measures,(2)可以生成不同图的图生成器 graph generators,以及(3)控制计算预算control the computational budget的方法,这样不同神经网络的性能差异是由于其不同的关系图结构造成的。
3.1. 图度量的选择
由于图结构的复杂性,图度量常常被用来刻画图。本文研究了一种全局图度量,即平均路径长度,以及一种局部图度量,即聚类系数。值得注意的是,这两种方法在网络科学(Watts&Strogatz,1998)和神经科学(Sporns,2003;Bassett&Bullmore,2006年)中被广泛使用。具体而言,平均路径长度度量任意一对节点之间的最短路径距离的平均值;聚类系数度量给定节点邻域内节点之间的边的比例,除以它们之间可能存在的边的数量,在所有节点上取平均值。附录中还提供了其他可用于分析的图度量。
3.2. 图生成器的设计
给定选定的图度量,我们的目标是使用图生成器生成能够覆盖大范围图度量的各种图(generate diverse graphs that can cover a large span of graph measures)。然而,这样的目标需要仔细的生成器设计:经典的图生成器只能生成有限的一类图,而最近基于学习的图生成器被设计成模仿给定的示例图(Kipf&Welling,2017;李等,2018;You等人,2018a;b类;2019a年)。
现有图生成器的局限性。 为了说明现有图生成器的局限性,我们研究了以下经典图生成器:(1)Erdos-Renyi(ER)模型随机均匀地对给定节点数和边数的图进行抽样(Erdos-Renyi , 1960); (2) Watts-Strogatz(WS)模型可以生成具有小世界性质small-world properties的图(Watts&Strogatz,1998),(3) Barabasi-Albert(BA)模型,可以产生无标度图scale-free graphs(Albert&Barabasi, 2002);(4) Harary模型,可以生成具有最大连通性的图(Harary,1962);(5) 正则环格图(环图)(6) 完全图。对于所有类型的图生成器,我们将节点数控制为64,枚举所有可能的离散参数,并对图生成器的所有连续参数进行网格搜索。在每个参数设置下,我们生成30个不同随机种子的随机图。我们总共生成了486000个WS图、53000个ER图、8000个BA图、1800个Harary图、54个环图和1个完整图(更多细节见附录)。在图3中,我们可以观察到由这些经典图生成器生成的图在平均路径长度和聚类系数的空间中的跨度是有限的a limited span。
WS-flex图生成器。 这里我们提出WS-flex图生成器,它可以生成覆盖范围很广的图度量;值得注意的是,WS-flex图几乎包含了上面提到的经典随机生成器生成的所有图,如图3所示。WSflex生成器通过放松所有节点在随机重新布线random rewiring之前具有相同程度的这一约束来推广WS模型。具体来说,WS-flex生成器由节点、平均度数和重连概率参数化。边数确定为。具体来说,WS-flex生成器首先创建一个环图ring graph,其中每个节点连接到个相邻节点;然后,生成器随机选取个节点,并将每个节点连接到一个最近的相邻节点;最后,用概率对所有边缘进行随机重接。我们使用WS-flex-generator在聚类系数和平均路径长度的空间内进行平滑采样,然后对3942个图进行子采样,如图1(c)所示。
3.3. 控制计算预算
为了比较由这些不同的图所转换(translate)的神经网络,重要的是要确保所有网络具有近似相同的复杂性,这样,性能上的差异才是因为它们的关系图结构。我们使用FLOPS(# of 乘加)作为度量。我们首先计算基线网络(即全关系图)的FLOPS,并在每个实验中将其作为参考复杂度。如第2.3节所述,通过将维度或通道划分为不相交的节点特征集,关系图结构可以被实例化为具有可变宽度的神经网络。因此,我们可以在不改变关系图结构的情况下,方便地调整神经网络的宽度以匹配参考复杂度(在基线FLOPs的0.5%以内)。我们在附录中提供了更多细节。
4 实验设置
考虑到我们要研究的候选图(总共3942个),我们首先研究了CIFAR-10数据集(Krizhevsky,2009)上MLPs的图结构,该数据集有50K个训练图像和10K个验证图像。然后,我们进一步研究了更大更复杂的ImageNet分类任务(Russakovsky et al.,2015),该任务由1K个图像类、1.28M个训练图像和50K个验证图像组成。
4.1. 基础架构
对于CIFAR-10实验,我们使用了一个5层、512个隐藏单元的MLP作为基线结构。MLP的输入将32×32×3的图像展平得到的3072-d向量,输出的是10维预测。每个MLP层都有一个ReLU非线性和一个BatchNorm层(Ioffe&Szegedy,2015)。训练200个epochs,batchsize128,初始学习率为0.1,余弦衰减(Loshchilov&Hutter,2016)至0,无周期再启动我们用5个不同的随机种子训练所有MLP模型并报告平均结果。
对于ImageNet实验,我们使用了三种ResNet家族架构,包括(1)ResNet-34,它只包含3×3卷积基本块(He等人,2016年),(2)ResNet-34-sep,其是ResNet-34的一个变体,将所有3×3卷积替换成3×3分离卷积(Chollet,2017),(3)ResNet-50,其包含由1×1、3×3、1×1卷积组成的瓶颈快。此外,我们使用EfficientNet-B0架构(Tan&Le,2019),在较小的计算范围内实现了良好的性能。最后,我们使用一个简单的8层3×3卷积的CNN。该模型有3个阶段,有[64、128、256]个隐藏单元。步长2卷积用于下采样。网络柄和网络头部与ResNets一样。我们使用初始学习率为0.1的余弦学习率衰减训练100个epoch的所有ImageNet模型。ResNet的batchsize都是256,EfficientNet-B0为512。我们用3个随机种子训练所有ImageNet模型并报告平均性能。所有的基线架构都有一个完整的关系图结构(即全关系图)。参考计算复杂度为,MLP:2.89e6 FLOPs,ResNet-34:3.66e9 FLOPs,ResNet-34-sep:0.55e9 FLOPs,ResNet-50:4.09e9 FLOPs,EfficientNet-B0:0.39e9 FLOPs,8层CNN:0.17e9 FLOPs。在一个NVIDIA特斯拉V100 GPU上训练MLP模型大约需要5分钟。用8个具有数据并行性的特斯拉V100 GPU,ImageNet上训练ResNet模型大约需要一天时间我们在附录中提供了更多细节。
4.2. 关系图的探索
对于所有架构,我们使用表1中列出的相应定义,将每个关系图样本实例化为一个神经网络。具体来说,我们将所有的密集层(线性层,3×3和1×1卷积层)替换为对应的关系图。我们保持输入和输出层不变,并保持所有其他设计(如下采样、跳连等)不变。然后,我们匹配所有模型的参考计算复杂性,如第3.3节所述。
对于CIFAR-10 MLP实验,我们研究了3942个关系图样本,关系图的节点数为64,如第3.2节所述。对于ImageNet实验,由于计算量大,我们从3942个图样本中uniformly抽取了52个图。由于EfficientNet-B0是一个网络层只有16通道的小模型,因此我们不能使用其它设置的64节点图样本。按照第3节中相同的步骤,我们重新采样了48个16节点的关系图样本。
5 结果
在本节中,我们总结了我们的实验结果并讨论了我们的主要发现。我们收集了所有样本关系图在不同任务和体系结构上的top-1 errors,并记录了每个样本关系图的图度量(平均路径长度和聚类系数)。我们将这些结果表示为图形度量与预测性能的热图(heat maps of graph measures vs. predictive performance),见图4(a)(c)(f)。
5.1. 顶级神经网络的最佳选择
总的来说,图度量与预测性能的热图(图4f)表明存在比完整图(右下角的像素)基线更好的图结构。在CIFAR-10上,性能最好的关系图可以比完整的关系图基线高出1.4%的top-1错误,而在ImageNet上的模型则高出0.5%到1.2%。
值得注意的是,我们发现性能最好的图倾向于聚集在由和(图4f中的红色矩形)定义的空间中的一个最佳点。我们遵循以下步骤来确定一个最佳点:(1)我们对图4a中的3942个图进行下采样-聚合至52个bin的粗分辨率,并将其聚合为52个箱子的粗略分辨率,每个bin记录落入bin中的图的性能,(2) 我们确定具有最佳平均性能的bin,即图4f中的红十字,(3) 我们对每个bin相比表现最好的bin进行一次one-tailed t-test (we conduct one-tailedt-test over each bin against the best-performing bin),并记录没有明显差于表现最好的bin的bin(p值0.05作为阈值)。覆盖这些bin的最小面积矩形被视为一个最佳点(a sweet spot)。对于CIFAR-10上的5层MLP,最佳点是,。
5.2. 神经网络性能是图度量的平滑函数
在图4f中,我们观察到神经网络的预测性能近似地是其关系图的聚类系数和平均路径长度的平滑函数。在小范围内保持一个图度量不变(,),我们可视化了网络性能与其他度量的关系(如图4b、d)所示)。我们使用二次多项式回归来显示整体趋势。我们观察到,聚类系数和平均路径长度都与神经网络性能相关,显示出平滑的U形相关性。
5.3 不同网络结构之间的一致性
考虑到关系图定义了一个能用于各种神经网络结构的共享设计空间,我们观察到,具有特定图度量的关系图可能始终表现良好,而不管它们是如何实例化的。
定性一致性。 我们在图4(f)中直观地观察到,不同体系结构中的最佳点大致一致。具体地说,如果我们将各个体系结构中的最佳点结合起来,我们就得到了,这是跨体系结构的一致最佳点。此外,图4(b)(d)所示的图形度量和相应的神经网络性能之间的U形趋势在视觉上也是一致的。
定量一致性。 为了进一步量化任务和体系结构之间的一致性,我们在图4f 的热图中选择了52个bin,其中bin值表示落入该bin中关系图的性能的平均值。我们绘制了52个bin值在两两任务之间的相关性,如图4(e)所示。We observe that the performance of relational graphs with certain graph measures correlates across different tasks and architectures。例如,尽管ResNet-34比5层MLP复杂得多,ImageNet比CIFAR-10更具挑战性,但a fixed set relational graphs would perform similarly in both settings,Pearson相关系数为0.658(p-value < 10e-8 )。
5.4 快速确定最佳点Sweet Spot
训练成千上万的关系图直到收敛在计算量上是行不通的。因此,我们定量地表明,a sweet spot可以用更少的计算成本来识别,例如,通过采样更少的图,训练更少的epoch。
需要多少图? 以CIFAR-10上的5层MLP为例,我们考虑了图4(f)中52个bin上的热图,该热图是使用3942个图形样本计算的。我们研究了一个相似的热图是否可以用更少的图样本来生成。具体来说,我们对每个bin中的图进行子采样,同时确保每个bin至少有一个图。然后,我们计算使用所有3942个图和使用子采样较少的图计算的52个bin值之间的相关性,如图5(左)所示。我们可以看到,仅使用52个样本计算的bin值与使用完整的3942个图形样本计算的bin值具有很高的0.90 Pearson相关性。这一发现表明,在实践中,进行类似分析所需的图表要少得多。
需要多少个训练epoch? 以ImageNet上的ResNet34为例,在52个采样的关系图上,我们计算了只训练一部分epochs的验证j集top-1误差与训练了整整100个epoch的模型的验证集top-1误差之间的相关性,如图5(右)所示。令人惊讶的是,经过3个epoch训练的模型已经具有很高的相关性(0.93),这意味着良好的关系图即使在早期训练时期也表现良好。这一发现也很重要,因为它表明,一个关系图的性能是否promising的判断计算成本是可以大大降低的。
5.5 网络科学与神经科学的联系
网络科学。 我们测量的平均路径长度表征了信息在网络中的交换情况(Latora&Marchiori,2001),这与我们定义的由多轮消息交换组成的关系图一致。因此,图4(b)(d)中的U形相关性可能表明消息交换效率(Sengupta et al.,2013)和学习分布式表示能力(Hinton,1984)之间的权衡。
神经科学。 我们发现的性能最好的关系图惊人地类似于生物神经网络,如表2和图6所示。相似性表现在两个方面:(1)top人工神经网络的图测度(L和C)与生物神经网络非常相似(2) 通过关系图表示,我们可以将生物神经网络转化为5层MLP,并且发现这些网络的性能也优于基线完全图。虽然我们的发现是初步的,但我们的方法为网络科学、神经科学和深度学习的跨学科研究开辟了新的可能性。
6 相关工作
神经网络连接。 神经网络连接模式的设计主要集中在不同粒度(granularity)的计算图上:宏观结构,即跨层连接(LeCun et al.,1998;Krizhevsky等人,2012年;Simonyan&Zisserman,2015年;Szegedy等人,2015年;He等人,2016年;黄等,2017;Tan&Le,2019),以及微观结构,即层内连通性(LeCun et al.,1998;谢等,2017;张等,2018;Howard等人,2017年;Dao等人,2019年;Alizadeh等人,2019年)。我们目前的探索侧重于后者,但同样的方法可以扩展到宏观空间。深度扩展网络(Deep Expander Networks,Prabhu et al.,2018)采用扩展图生成二部结构。RandWire(Xie et al.,2019)使用现有的图形生成器生成宏结构。然而,在这些工作中,图结构度量和网络预测性能之间的统计关系还没有被探索。另一个相关的工作是跨信道通信网络(Cross-channel Communica-tion Network,Yang et al.,2019),其目的是鼓励神经元通过消息传递进行通信(encourage the neuron communication through message passing),其中仅考虑完整的图结构。
神经架构搜索。 努力学习微观的连接模式(Ahmed&Torresani,2018;Wortsman等人,2019年;Yang等人,2018),或宏观(Zoph&Le,2017;Zoph等人,2018)主要侧重于改进学习/搜索算法(Liu等人,2018;Pham等人,2018年;Real等人,2019年;Liu等人,2019年)。NAS-Bench101(Ying et al.,2019)通过枚举具有约束大小的DAG来定义图搜索空间(≤ 7节点,而我们工作中的64节点图)。我们的工作指出了一条新的路径:某些图生成器和图度量可以定义一个平滑的空间,而不是穷尽地搜索所有可能的连接模式,从而可以显著降低搜索成本。
7 讨论
神经网络的层次图结构。
作为这一方向的第一步,我们的工作主要集中在层级的图结构上。神经网络本质上是层次图(神经元连接成层、块、网络从神经元的连通性到层、块和网络的连通性(from connectivity of neurons to that of layers, blocks, and networks)),构成了比本文所考虑的更复杂的设计空间。在这一领域的广泛探索的计算量很大因而难以实现,但我们希望我们的方法和发现能得到推广。
高效实现。 我们当前的实现使用标准CUDA内核,因此依赖于权重掩蔽(weight masking),这导致与基线完整图相比,系统时间性能更差。然而,实际采用我们的发现并不牵强(not far-fetched)。作为对我们工作的补充,目前正在进行的工作,如块稀疏核(Gray et al.,2017)和快速稀疏ConvNets(Elsen et al.,2019),可以缩小理论FLOPs和实际之间的差距。我们的工作还可能为新硬件架构的设计提供信息,例如,具有尖峰模式的生物激励架构(biologically-inspired ones with spike patterns,Pei et al.,2019)。
先验 vs.学习。 目前,我们使用关系图表示作为结构先验,也就是说,在整个训练过程中,我们将图结构硬连接到神经网络上。研究表明,deep-ReLU神经网络可以自动学习稀疏表示(Glorot等人,2011)。另一个问题是:在不强加图先验的情况下,训练(完全连接的)神经网络是否会产生任何图结构?
作为初步探索,我们对训练好的神经网络进行了逆向工程,并对出现的关系图结构进行了研究。具体来说,我们在CIFAR-10上训练了一个完全连接的5层MLP(与之前的实验相同)。然后,我们尝试通过以下步骤来推断网络的底层关系图结构:(1)为了得到关系图中的节点,我们按照第2.2节中描述的过程,将所有隐藏层的权重叠加,并将它们分组为64个节点,(2)为了得到无向边,权值由它们的转置求和,(3) 计算权重的Frobenius范数作为边值,(4) 通过在一定阈值下对边值进行二值化得到稀疏图结构。
我们在图7中显示了不同阈值下提取的图。正如预期的那样,初始化时提取的图遵循E-R图的模式(图3(左)),因为权重矩阵是随机初始化的。有趣的是,经过收敛训练后,所提取的图不再是E-R随机图,而是向第5节中的sweet spot区域移动。注意,在这些学习到的图和作为结构先验的最佳性能图之间仍然存在差距,这可能解释了为什么完全连通MLP的性能较差。
在我们的实验中,我们还发现在一些特殊情况下,学习到的图的结构可以是更好的(即,当任务简单,网络容量大)。我们在附录中提供了更多的讨论。总的来说,这些结果进一步证明了研究神经网络的图结构对于理解其预测性能至关重要。
图7:先前与学习。CIFAR-10上5层MLPs的结果。当用作结构先验时,我们突出显示性能最佳的图。此外,我们训练一个完全连通的MLP,并将学习到的权值可视化为一个关系图(不同的点是不同阈值下的图)。学习到的图形结构在训练后会向“最佳点”移动,但不会缩小差距。
图神经网络(GNNs)和一般神经结构的统一视角。 我们将神经网络定义为图上的消息交换函数的方法部分受到GNNs的启发(Kipf&Welling,2017;Hamilton等人,2017年;Veliˇckovi´c等人 , 2018)。在关系图表示下,我们指出GNNs是一类特殊的一般神经结构,其中:(1)将图结构作为输入,而不是神经结构的一部分;因此,(2)在所有边上共享消息函数,以考虑输入图的不变性。具体来说,回想一下我们如何将一般神经网络定义为关系图:
对于GNN,在所有边上共享,由输入图数据集提供,而一般的神经结构没有这样的约束。
因此,我们的工作提供了一个GNNs和一般神经架构设计的统一视图,我们希望这可以架起两个社区的桥梁,并激发新的创新。一方面,一般神经结构中的成功技术可以自然地引入到GNNs的设计中,如可分离卷积(Howard et al.,2017)、group normalization(Wu&He,2018)和SE块(Hu et al.,2018);另一方面,新的GNN架构(You et al.,2019b;Chen等人,2019)超越常用范式(即公式6)可能会激发更先进的神经架构设计
8 结论
总之,我们提出了一个新的角度,利用关系图表示分析和理解神经网络。我们的工作提出了一个从研究传统计算结构到研究神经网络图结构的新的转变。我们表明,在其他科学学科(网络科学、神经科学等)中提供的成熟的图技术和方法有助于理解和设计深层神经网络。我们相信,这可能是未来研究一个富有成效的途径,以解决更复杂的情况。
附录
1. 生成关系图的详情
2 匹配参考FLOPs的详细信息
在这里,我们提供了关于匹配给定模型的参考触发器的更多细节。如第3.3节所述,我们改变神经网络的层宽度以匹配参考触发器。
具体来说,为了匹配参考触发器,如果所有层具有相同的宽度,我们将所有层的层宽度递增1,然后选择在参考触发器上方具有最少触发器的层宽度。在不同阶段的层宽度不同的情况下,我们通过迭代机制对每个阶段的网络宽度进行微调:(1)我们将最窄阶段的层宽度递增1,同时保持所有阶段的层宽度比率,然后固定该阶段的层宽度(2) 我们在剩下的阶段中对最窄的阶段重复(1)。利用这种技术,我们可以将模型的复杂度控制在基线触发器的0.5%以内。
三。挂钟运行时间详情
在CIFAR-10上训练一个基线MLP(用完整的图表翻译)在NVIDIA V100 GPU上大约需要5分钟,而在8个NVIDIA V100 GPU上训练所有基线resnet和EfficientNets大约需要一天。由于稀疏CUDA核缺乏成熟的支持,我们通过在稠密权矩阵上应用稀疏掩码来实现关系图。我们实验的最稀疏的图(稀疏度=0.125)比相应的基线图慢大约2倍(以挂钟时间为单位)。
4多图测度分析
在本文中,我们重点研究了两个经典的图度量:聚类系数和平均路径长度。这里我们使用更多的图度量来进行分析。具体来说,我们考虑以下额外的局部和全局图度量。
局部图度量。
(1) 平均度数:所有节点上的平均节点度数(2) 局部效率:当节点被移除时,节点的邻居交换信息的程度的度量,在所有节点上取平均值。
全局图度量。
(1) 代数连通性:拉普拉斯图的第二小特征值。图Laplacian被定义为− D、 其中A是邻接矩阵,D是度矩阵(2) 全球效率:衡量信息在整个网络中交换的程度。
我们在CIFAR-10数据集上绘制了5层mlp的性能与一个图结构度量,在我们实验的3942个关系图上。我们使用局部加权线性回归来可视化整体趋势。从图1中,我们可以看到更多的图度量显示了与神经网络预测性能相关的有趣的U形相关性。
5烧蚀研究
5.1. 神经网络的变宽变深
在这里,我们研究了网络宽度/深度对由同一组关系图翻译的神经网络性能的影响。具体来说,我们研究了具有[256、512、1024]维隐藏层的5层MLP和具有[3、5、7]层的512维MLP。我们可以看到,在不同宽度的网络中,具有特定结构度量的关系图的性能高度相关。
当改变网络深度时,行为不同:当MLP深度增加到7层时,与5层MLP保持高度相关性,而将MLP深度减少到3层时,相关性完全相反1。一种可能的解释是,虽然稀疏关系图可能代表一种更有效的神经元连接模式,但这些神经元需要进行更多轮的消息交换才能完全通信。了解一个给定的关系图需要多少轮消息交换才能达到最佳性能,这是留给未来工作的一个有趣方向。
5.2. 关系图中的可变节点数
在第2.3节中,我们证明了m-dim神经网络层可以灵活地用n节点关系图表示,只要n≤ m。在这里,我们表明在关系图中改变节点的数量对我们的发现几乎没有影响。
在图3中,我们展示了CIFAR10上5层MLP的结果,其中我们考虑使用52个节点(猫皮层图的节点数)和71个节点(猕猴整个皮层图的节点数)关系图,以及本文中使用的64个节点图。为了覆盖聚类空间C和路径长度L,我们对52个节点图生成了482个图,对64个节点图生成了449个图,对71个节点图生成了422个图。为了节省计算量,我们使用了比本文3942图更少的图。从结果中,我们可以看到最佳图的性能在这些不同的节点数上几乎是相同的,这证明了我们所声称的在关系图中选择节点数的灵活性。
6失效案例讨论
CIFAR-10上的卷积神经网络有一些特殊情况,其中一致的甜点模式(C∈ [0.43,0.50],升∈ [(1.82,2.28])的断裂,得到了近似全连通图的最佳结果。我们在图4中对这种现象进行了可视化和讨论。我们从分析ImageNet上8层64-dim CNN的结果开始,其中出现了一致的扫描斑点区域(图4(a))。然后我们固定模型,并将数据集切换到CIFAR-10。在CIFAR-10上,我们发现完整图的性能优于大多数稀疏图(图4(b))。
在没有对网络超参数化(?)和内在任务难度(?)进行理论讨论的情况下,我们为这些案例提供了一些经验直觉。正如我们在主要论文图7中所示,完全连接的神经网络可以在训练过程中自动学习图形结构。我们假设当任务简单时,相对于神经网络的表示能力和效率,结构先验的重要性较小,并且在这些设置下学习的图结构是足够的。
为了验证这一假设,我们通过将CNN的宽度从64维减小到16维来减小模型容量(图4(c)),并在CIFAR-10上再次训练它。在这种情况下,我们再次证明稀疏图结构显著优于完全图。我们在图5中提供了更多比较两种场景的示例。注意,在ImageNet中,稀疏关系图在最佳点区域始终产生更好的性能,即使模型容量增加了。