作为脱胎于图论研究的热门研究领域,图神经网络(GNN)与经典的 WL 算法有诸多相似之处。众所周知,强大的 WL 算法对于聚合函数的单射性质有很强的要求,那么强大的 GNN 应该具备哪些性质呢?本文从对 WL 算法的分析入手,介绍了 GNN 的局限性,指出了未来可能的重点研究方向。
图 1:通往更强大的 GNN 的道路
对于图表征任务,我们有两种常用的范式:图核(Graph Kernel)和图神经网络(Graph Neural Network,GNN)。通常,图核基于图分解以一种无监督的方式创建图的嵌入。例如,我们可以计算一张图中三角形或更一般的三元组的个数,然后使用该计数结果来得到嵌入。众所周知,这是图元核( Graphlet Kernel)的一个实例。
图 2:以上所有图元的尺寸为 4。计算图中所有四元组的每种 图元 的个数可以得到一个 图元核。
这种范式主要的研究动机是:创建一种保持图之间同构关系的嵌入(即两张图是同构的,当且仅当与它们相对应的嵌入是相同的)。显然,如果有这样的嵌入,我们就可以解决图的同构问题。
而在当前看来,我们知道这个问题要比「P 问题」(存在多项式时间复杂度解法的问题)更难解决。然而,也存在诸如「Anonymous Walk Embeddings」(相关论文:https://arxiv.org/abs/1805.11921)这样保持了同构性的嵌入方法(当然,这是以计算时间为代价的)。
尽管如此,在这里本文想传达的主要信息是:人们曾经设计图核来解决图同构问题。如果嵌入能够将更多种类的图区分开来,那么嵌入就越好。曾经,这种原则被大家奉为圭臬。
图神经网络诞生后,这种原则产生了改变。除了解决图同构这一问题之外,我们可以试着解决任意给定的问题(例如,找到最短路径或者检测环结构)。这是十分有发展前景的,因为它让我们可以根据网络能够解决的问题来指导我们的网络设计。这听起来似乎很神奇:你可以直接训练你的网络,然后它就会为你找到合适的解,而不需要使用一些成熟的组合优化算法。
但我们也不禁要问:神经网络是通过随机梯度下降(SGD)搜索可行解的,它涉及许多其它的技术问题,如果你被困在了一个糟糕的局部最优点该怎么办?它如何才能解决任意的问题呢?事实上,图神经网络存在一些局限性,本文将在下面娓娓道来。
一、GNN 变得强大的条件
本文将基于论文「How Powerful are Graph Neural Networks」(论文链接:https://arxiv.org/abs/1810.00826)开始讨论。这篇论文引发了大量关于 GNN 的理论解释的研究。具体而言,作者将 GNN 与一种曾经被深入研究的图同构算法「Weisfeiler-Lehman」(WL 算法)做了比较。
何为 WL 算法 ?
这种算法描述起来很简单。给定一张图,图中每个节点都有一些颜色(如果没有,则它有关于度的信息)。在每一轮迭代中,每个节点都会获取一组其邻居节点的颜色信息,并以特定的方式更新其颜色。
具体而言,存在一种单射函数,它根据节点之前的颜色 c 以及邻居节点颜色 X 的有序列表为该节点创建一种新的颜色 c'。该算法在 n 轮迭代之后停止运行,并更新图的着色情况。
注:WL 使用单射函数是非常重要的,因为它保证不同的输入会得到不同的输出。一种 WL 使用的特定的单射函数是:它为每个输入的对象创建一种之前没有用到过的新颜色。由于该算法在离散域(可数的颜色)中运行,所以总是可以创建这样的映射。
图 3:上图从左到右分别为单射(但非满射)、双射、满射(但非单射)。
该算法主要的用途是检验两图是否同构。如果最后的着色情况不同,则这两张图「非同构」。如果两张图有相同的最终着色结果,那么 WL 将输出它们「可能同构」,但这仍然意味着它们有很小的概率不是同构的。
这种算法是上世纪 70 年代在苏联的秘密实验室里设计出来的,当时计算机仍然在使用打孔程序卡。但从那时起,世界各地的研究者们就开始研究它的性质,尤其是我们知道了各种应用 WL 算法将失效的图。
例如,对于任意两个包含 n 个顶点的「d-正则图」,最终的着色情况将是相同的。尽管如此,这是一种非常强大的检验同构性的方法。有些定理认为当 n 趋于无穷大时,WL 算法失败的可能性为 0,所以这是一种相当强大的算法。
再看 GNN
如果你研究过 GNN,你会注意到 GNN 更新节点特征的方式和 WL 算法更新节点颜色的方式有诸多相似之处。具体而言,GNN 使用一种消息传递机制更新特征。
不同的 GNN 之间的区别在于它们使用的聚合函数和读出函数。但是很容易理解的是,当聚合函数是单射函数时,那么如果 WL 将图映射到不同的着色方案上,则 GNN 也会将这些图映射到不同的嵌入上。
定理 3 是这种机制的形式化定义:
换而言之,GNN 有参数化的方程 φ 和 f,如果它们是单射的,那么它们保证 GNN 有很强的能力。这并不难理解,因为 WL 算法也要求其函数是单射的,而且在其它方面这两个程序是等价的。
请注意,在这里我们使用了一种特殊的方法更新节点的嵌入。我们得到之前的嵌入「h_v^(k-1)」和之前邻居节点的嵌入的多重集,将它们作为两个不同的参数, 而不是将二者合并时作为同一个参数。这一点对于下游任务是十分重要的。
因此,可以使用 GNN 来判断图是否是同构的,这与使用 WL 算法是等价的。
这就是它的神奇之处。GNN 突然变得与众所周知的算法等价了。但是它的局限在哪里呢?
二、GNN 的局限性何在?
上面提到的主要的局限性在于,你需要有单射函数 φ 和 f。那么这些函数是什么呢?这些函数将一个嵌入的多重集映射到新的嵌入上。例如,你可以使用「mean」函数。该函数将获取嵌入的均值,并将其赋予新的嵌入。然而,很容易看出,对于一些不同的图,这些函数会给出相同的嵌入,因此「mean」函数不是单射的。
图 4:即使图是不同的,节点 v 和 v' 嵌入的平均聚合函数(这里的嵌入对应于不同的颜色)将给出相同的嵌入。
但是,如果你以一种特定的方式获取嵌入的求和和变换结果,那么就有可能得到单射函数。引理 5 如下:
在这里,真正重要的是:你可以首先使用一个函数 f(x) 将每个求和符号下的嵌入映射到一个新的嵌入上,然后对其进行求和并得到一个单射函数。在证明过程中,他们实际上显式地声明了这个函数 f,它还需要两个额外的条件:(1)x 是可数的。(2)任意的多重集是有界的。
但这两个假设都不强,因为无论如何,我们都是将我们的 GNN 应用于有限图,其中特征和邻居节点的技术是有限的。但至少我们现在知道,如果我们使用了变换 f,并使用加法,我们可以得到一个单射映射。
然而,上面的定理 3(条件 a)中应该有一个特定的聚合方案,除了邻居节点的聚合函数之外,还应该使用当前节点「h_v^(k-1)」先前的嵌入。为了将其包含在内,我们需要使用另一个声明推论 6:
请注意,这里的函数 h 像之前那样,会取变换后的邻居特征之和,但是还额外地加入了「(1+eps)f(c)」,这个 eps 是任意的无理数。这样得到的函数 h 就是单射的。
那么,我们知道了聚合函数 φ 和 f 应该是单射函数,而且我们有单射函数 h。如果我们的目标是构建强大的嵌入,那么我们的目标就达成了。
但是,我们不仅尝试构建嵌入,而且还尝试解决一些下游任务(如通过一种有监督的方式进行节点分类)。函数 h 没有科学系的参数来拟合数据(也许 eps 除外)。
然而,GIN 架构提出使用多层感知机(MLP)替换函数 φ 和 f。根据通用近似定理,我们知道 MLP 可以近似任何函数,包括单射函数。因此,具体而言,GIN 的嵌入更新有以下的形式:
请注意,MLP 内部的东西并不一定是单射的,而且 MLP 本身也不一定是单射的。事实上,对于第一层来说,如果输入特征是独热编码,那么 MLP 中的求和将是单射的。从原则上来说,MLP 可以学到一个单射函数。但是在第二层和更高层中,节点嵌入将会变得不合理。一个很容易得到的例子是,嵌入的总和可能并不再是单射函数(例如,拥有一个嵌入等于 2 的邻居,或者有一两个嵌入等于 1 的邻居)。
因此,如果 MLP 和嵌入的和都是单射函数,那么 GIN 就和 WL 算法同样强大了。
但是,事实上,在训练过程中,没有任何东西可以保证这种单射性质,而且可能有一些图是 GIN 无法区分的,而 WL 算法可以。所以,对于 GIN 来说,这是一个过于强的假设。如果违反了该假设,则 GIN 的能力就是有限的。
后来,论文「Discriminative structural graph classification」(论文链接:https://arxiv.org/abs/1905.13422)对这种局限性进行了讨论,它指出嵌入的输出的尺寸应该与输入特征的尺寸成指数关系,从而使 MLP 成为单射的,尽管这里的分析是针对无界的邻居(无限图)进行的。
找到一种拥有单射聚合函数并且对于下游任务有充分的表达能力的架构是一个有待探索的问题,尽管有几种架构将 GIN 推广到了高维 WL 算法以及其它问题上;然而,并不能保证学习到的 GNN 架构对于所有的输入图都可以解决特定的任务。
此外,论文「The Expressive Power of Graph Neural Networks」(论文链接:https://arxiv.org/abs/2003.04078)便很好地解释了近年来在 GNN 的能力的理论性解释方面的研究进展。
三、结语
如今,对 GNN 的特性的研究是一个非常活跃的研究领域(读者可以前往该链接跟进最新的发展趋势:https://towardsdatascience.com/top-trends-of-graph-machine-learning-in-2020-1194175351a3),有许多开放性问题有待解决。
本文要传达的主要信息是:目前 GNN 并不一定能收敛到与 WL 算法一样强大的状态,尽管往往会有一组参数使 GNN 变得强大。GNN 可以解决图上的各种问题,但目前的研究主要集中在它们可以解决/无法解决哪些问题,而不是它如何才能对得到的解有所保障,这才是今后的研究重点。
via https://towardsdatascience.com/limitations-of-graph-neural-networks-2412fffe677 雷锋网(公众号:雷锋网)雷锋网雷锋网
雷锋网原创文章,未经授权禁止转载。详情见转载须知。