扩展图神经网络:暴力堆叠模型深度并不可取( 三 )


在我们与 Ben Chamberlian、Davide Eynard 以及 Federico Monti 等人联合发表的论文 “SIGN: Scalable Inception Graph Neural Networks” 中 , 我们研究了为节点级分类问题设计简单、与采样无关的架构的可能性 。
考虑到上文介绍的采样技术的间接好处 , 读者可能会问:为什么我们要摒弃采样策略呢?
原因如下:节点分类问题的实例之间可能存在显著的差异 , 据我们所知 , 至今还没有工作系统地研究了「何时采样」能真正起到积极的作用 , 而不是仅仅减轻了计算复杂度 。
对采样方案的实现引入了额外的复杂性 , 而我们相信 , 我们需要的是一种简单、强大、与采样无关、可扩展的基线架构 。
3 方法探究 我们的方法受到了一些近期发布的实验结果的启发 。 首先 , 在很多情况下 , 简单的固定的信息聚合器(例如 GCN)比一些更加复杂的信息聚合器(例如 , GAT 和 MPNN)性能更好 。
此外 , 尽管深度学习的成功是建立在拥有多层的模型之上的 , 但是在图深度学习领域中 , 「模型是否需要很深」仍然是一个有待解决的开放性问题 。
具体而言 , Wu 等人在论文「Simplifying Graph Convolutional Networks」中指出 , 只拥有一个多跳信息传播层的 GCN 模型可以拥有与具有多个信息传播层的模型相当的性能 。
通过在单个卷积层中组合不同的、固定的邻居节点聚合器 , 我们可以在不使用图采样技术的前提下 , 得到具有非常大的可扩展性的模型 。 换句话说 , 我们在该架构的第一层进行所有与图相关的(固定的)操作 , 因此这些操作可以被预计算 。
接下来 , 这些预先聚合的信息可以作为模型其它部分的输入 , 而由于缺少邻居节点的信息聚合 , 这些部分可以被归纳为一个多层感知机(MLP) 。
需要指出的是 , 即使我们使用了这么浅的卷积方案 , 通过采用一些(可能专用的、更复杂的)信息传播算子 , 我们仍然能保留图卷积操作的表达能力 。 例如 , 我们可以设计一些算子来考虑「局部子图计数」或图中的模体(motif) 。
扩展图神经网络:暴力堆叠模型深度并不可取文章插图
图 2:SIGN 架构包含一个类似于 GCN 的层 , 它带有多个线性传播算子 , 这些算子可能作用于多跳邻居节点 。 在这个层后面 , 会连接着一个面向节点级别应用的多层感知机 。 该架构之所以具有较高的计算效率 , 是由于对被传播的特征的预计算(如图中红色部分所示) 。
我们提出的可扩展架构被称为 SIGN , 它面向的是如下所示的节点级分类任务:
Y = softmax(ReLU(XW? | A?XW? | A?XW? | … | A?XW?) W’)
其中 , A? 是线性传播矩阵(例如一个正则化的邻接矩阵 , 它的幂 , 或者一个模体矩阵) 。 W? 和 W’ 是可学习的参数 。 如图 2 所示 , 该网络可以通过加入面向节点的层变得更深:
Y = softmax(ReLU(…ReLU(XW? | A?XW? | … | A?XW?) W’)… W’’)
最后 , 当我们对相同的传播算子应用不同的幂(例如 , A?=B1, A?=B2 , 等等)时 , 图操作有效地在越来越远的跳中聚合了来自邻居节点的信息 , 这类似于在相同的网络层中感受野不同的卷积核 。
在这里 , 与经典的卷积神经网络中「Inception」模块的类比 , 解释了我们提出的论文的名字 SIGN 的由来 。
如前文所述 , 上述等式中矩阵的积 A?X,…, A?X 并不依赖可学习的模型参数 , 因此可以被预计算 。 具体而言 , 对于规模超大的图来说 , 我们可以使用 Apache Spark 等分布式计算架构高效地扩展这种预计算过程 。
这种做法有效地将整体模型的计算复杂度降低到了与多层感知机相同的水平上 。 此外 , 通过将信息传播过程转移到预计算步骤中 , 我们可以聚合来自所有邻居节点的信息 , 从而避免采样过程及其可能带来的信息损失与偏置 。


推荐阅读