论文简介
NeurIPS 2020接收的,论文下载地址.
摘要
近年来,图神经网络(GNNs)已成为在图上执行机器学习任务的实际工具。大多数GNN属于消息传递神经网络族(MPNNs)。这些模型采用迭代邻域聚合(neighborhood aggregation)方案来更新顶点表示。然后,为了计算图的向量表示,它们使用一些置换不变函数(permutation invariant function)来聚合顶点的表示。因此,MPNN将图形视为集合,因此似乎忽略了从图形拓扑中产生的特征。
本文提出了一种更直观、更透明的图形结构数据体系结构,即随机步行图神经网络(RWNN)。模型的第一层由许多可训练的“隐藏图”组成,这些图与使用随机游走核(random walk kernel)产生图形表示的输入图进行比较。然后将这些表示传递给产生输出的完全连接的神经网络。所采用的随机游走核是可微的,因此该模型是端到端可训练的。演示了模型在合成数据集上的透明度。 此外,在图分类数据集上对模型进行了实证评估,并表明它具有很强的性能。
permutation invariant function:如求和、均值或最大值。指的是特征之间没有空间位置关系。但是对卷积网络而言情况就不同了,特征是有位置关系的。
介绍
虽然最近提出了许多GNN变体,但它们中的大多数都有相同的基本思想,可以重新制定为一个单一的共同框架,即所谓的消息传递神经网络(MPNNs)。这些模型使用消息传递过程来聚合顶点的局部信息。对于与图相关的任务,MPNN通常将一些置换不变函数permutation invariant readout function应用于顶点表示,以产生整个图的表示。常见的readout function将每个图视为一组顶点表示,从而忽略了顶点之间的相互作用。注:这些些相互作用被隐式编码到消息传递过程产生的学习顶点表示中。 然而,由于图结构与特征信息相结合带来的透明度不足,这一点很难得到验证。
在深度学习出现之前,图核graph kernels已经成为在图上执行机器学习任务的标准方法。图核是在图的空间上定义的对称正半定函数。核方法的复杂度,神经网络模型可以学习对特定任务有用的表示,使得核方法在很大程度上被GNN所掩盖。不同于核函数直接比较图模型,MPNNs首先通过聚合其顶点的表示将图转换为向量,然后将一些函数(多层感知器)应用于这些图表示。GNN模型对学到内容的缺乏解释性,理想情况下,希望有一个模型,它直接将某些函数应用于输入图,而不首先将它们转换为向量。
论文中,提出了随机游走图神经网络(RWNN)。 该模型包含许多可训练的“隐藏图”,并使用随机游走核比较输入图与这些图。然后将核值传递给产生输出的完全连接的神经网络。 所使用的随机游走核是可微的,因此可以在训练过程中用反向传播来更新“隐藏图”。所提出的神经网络是端到端可训练的。该方法保留了核方法应用于结构化数据的灵活性,也学习任务相关的特征,而不需要特征工程。
- 贡献1:提出RWNN,使用随机游走内核来产生图形表示。模型是高度可解释的。
- 贡献2:开发了一种有效的计算方案,以降低所提出的模型的时间和空间复杂度。
- 贡献3:评估性能。
About Graph Kernel
kernel method 在图结构中的研究主要有两类:
一是Graph embedding 算法,将图结构嵌入到向量空间,得到图结构的向量化表示,然后直接应用基于向量的核函数(RBF kernel, Sigmoid kernel, etc.) 处理,但是这类方法将结构化数据降维到向量空间损失了大量结构化信息;
二是Graph kernel算法, 直接面向图结构数据,既保留了核函数计算高效的优点,又包含了图数据在希尔伯特高维空间的结构化信息,针对不同的图结构(labeled graphs, weighted graphs, directed graphs, etc.) 有不同的Graph kernel。
图核的构建方法:
现在大多数的Graph Kernel都是基于Hausler在1999年提出的R-convolution理论构建的,这个理论的核心思想是设计一种图的分解方法,两个图的kernel value和分解后的子结构的相似程度有关。
给定两个图 G 1 ( V 1 , E 1 ) { {G}_{1}}\left( { {V}_{1}},{ {E}_{1}} \right) G1(V1,E1)和 G 2 ( V 2 , E 2 ) { {G}_{2}}\left( { {V}_{2}},{ {E}_{2}} \right) G2(V2,E2),一种图的分解方式是 F \mathcal{F} F,分解后的子结构为 F ( G 1 ) = { S 1 , 1 , S 1 , 2 , … , S 1 , N 1 } \mathcal{F}\left( { {G}_{1}} \right)=\left\{ { {S}_{1,1}},{ {S}_{1,2}},\ldots ,{ {S}_{1,{ {N}_{1}}}} \right\} F(G1)={ S1,1,S1,2,…,S1,N1}, F ( G 2 ) = { S 2 , 1 , S 2 , 2 , … , S 2 , N 2 } \mathcal{F}\left( { {G}_{2}} \right)=\left\{ { {S}_{2,1}},{ {S}_{2,2}},\ldots ,{ {S}_{2,{ {N}_{2}}}} \right\} F(G2)={ S2,1,S2,2,…,S2,N2},基于上述结构, G 1 { {G}_{1}} G1和 G 2 { {G}_{2}} G2的kernel value可以表示为:
k R ( G 1 , G 2 ) = ∑ n 1 = 1 N 1 ∑ n 2 = 1 N 2 δ ( S 1 , n 1 , S 2 , n 2 ) { {k}_{R}}\left( { {G}_{1}},{ {G}_{2}} \right)=\sum\limits_{ { {n}_{1}}=1}^{ { {N}_{1}}}{\sum\limits_{ { {n}_{2}}=1}^{ { {N}_{2}}}{\delta \left( { {S}_{1,{ {n}_{1}}}},{ {S}_{2,{ {n}_{2}}}} \right)}} kR(G1,G2)=n1=1∑N1n2=1∑N2δ(S1,n1,S2,n2)其中, δ ( S 1 , n 1 , S 2 , n 2 ) \delta \left( { {S}_{1,{ {n}_{1}}}},{ {S}_{2,{ {n}_{2}}}} \right) δ(S1,n1,S2,n2)表示在 S 1 , n 1 { {S}_{1,{ {n}_{1}}}} S1,n1和 S 2 , n 2 { {S}_{2,{ {n}_{2}}}} S2,n2同构时为1,不同时为0。任意一种图的分解式和子结构同构的判断方式的组合都可以定义一个新的Graph Kernel。常见的几种:基于游走(Random Walk);基于路径的;基于子树的等。
相关工作
MPNNs:采用消息传递过程,每个顶点通过聚合邻居的特征向量来更新其特征向量。在消息传递过程的k次迭代之后,每个顶点获得一个特征向量,该特征向量捕获其k跳邻域内的结构信息。MPNNs与Weisfeiler-Lehman subtree kernel (WL)密切相关。具体来说,这些模型将WL核的重新标记过程推广到顶点与连续特征向量相关联的情况。标准的MPNN在区分非同构图中的作用最大程度上与WL核一样强大。
预备知识
论文中重点在图形分类问题。形式上给定一组图形 { G 1 , … , G N } ⊆ G \left\{ { {G}_{1}},\ldots ,{ {G}_{N}} \right\}\subseteq \mathcal{G} { G1,…,G