现存的GNN都无法获取点的位置信息,不能很好的处理同构的点, 作者提出一种用于计算位置感知节点嵌入的新型图形神经网络P-GNN(位置感知图神经网络), 用于解决这个问题。该方法主要在于选取锚集,计算给定目标节点到每个锚集的距离,然后学习锚集上的非线性距离加权聚合方案。通过这种方式,P-GNN可以捕获节点相对于锚节点的位置信息。
Problem statement
现有GNN体系结构的主要限制是无法捕获节点的位置,在更广泛的图结构上下文中。例如,如果两个节点位于图中非常不同的部分但如果具有拓扑上相同的(局部)邻域结构,则具有相同的GNN结构。因此,GNN将在嵌入时将它们嵌入到同一点空间(忽略节点属性)。
如图,其中GNN不能区分节点v1和节点v2,并且总是将它们嵌入到同一点,因为它们具有同构网络邻域。因此,GNN将永远不能将节点v1和v2划分为不同的类,因为从GNN的角度来看,它们是不可区分的(不考虑节点属性)。
P-GNN可以利用v3作为锚点打破对称性,那么最短路径距离(v1, v3)和(v2, v3)是不同的,从而可以区分节点v1和v2。
提出定义(划分嵌入方法)
一种节点嵌入 ,如果存在一个函数g可以计算出两个点的最短距离通过公式 ,则为position-aware(位置感知)。如果嵌入函数f它是关于点v的q-hot网络邻居的函数,则为structure-aware(结构感知)。
命题:当且仅当不存在一对节点有同构的q-hot邻居网络时,存在映射将结构感知嵌入函数映射到位置感知嵌入函数。(被Appendix证明)
Method(s)
框架
首先,需要确定锚集,锚集是所有节点随机选择的子集(图左),在计算节点嵌入时,允许P-GNN聚合来自锚集的消息,而不是只聚合从节点的本地网络中邻居的消息。注意,锚集会在每次向前运行模型时重新采样。其次,在执行消息聚合时,不是让每个节点独立地聚合信息,而是在所有节点之间耦合聚合,以区分网络中位置不同的节点(图中间)。设计的P-GNN使节点每个嵌入维对应于根据一个锚集计算出的消息,这使得计算出的节点嵌入位置敏感(图右)。
算法
具体地说,第l层P-GNN层首先随机采样k个锚集Si。通过消息计算函数F计算来自锚集内各节点的消息传递获得 ,然后应用消息聚合函数AGGm聚合一个锚集中获得的多个 为一个向量 ,然后在使用AGGs聚合k个锚集的 获得 作为下一层的输入。如果为最后一层则利用获得的k个 ,通过权重矩阵w和激活函数得到标量,从而嵌入到对应的空间。算法中需要确定的有锚集的选择方法,F函数,和集合函数AGG(AGGm和AGGs)。
锚集选择
依靠Bourgain’s Theorem来指导锚集的选择,以保证所得到的表示具有低失真。具体来说,失真度量的是嵌入从一个度量空间映射到另一个度量空间时保留距离的正确性。接下来定义了失真率α:
通过上面两个定理,PGNN选择 个随机锚集来保证低失真嵌入。其次,对任意一个锚集 每个点的采样可能性都是 ,这些锚集的大小呈指数分布。
函数F
F函数必须同时考虑基于位置的相似性和特征信息,基于位置的相似性是揭示节点位置信息的关键,而特征信息可能包括对预测任务有用的其他侧面信息。所以,F函数需要分为两部分:衡量距离,聚合特征。
- 基于位置的相似性可以通过最短路径距离来计算,但计算比较复杂。所以提出q-hop最短路径距离。
归一化后
- 特征信息可以通过将邻近节点的信息传入,像GCN一样。
最终,得到锚集内聚合函数F
聚合函数 AGG
任意的置换不变函数都可以作为AGG函数,例如Mean, MIN, MAX, SUM,文中使用了Mean(效果最好)
文中通过证明得到了,PGNN在图表示学习中提供了比GNN更一般的一类归纳偏差的结论。
Evaluation
实验中使用了两种不同的P-GNN的变种,分别是:一层和二层的网络被标记为1L,2L;简化的2-hop的最短路径选取方法P-GNN-F;使用全最短路径的方法P-GNN-E。然后,针对两种不同的任务去衡量模型的效果:
链路预测
节点分类
Conclusion
提出了一种新的图形神经网络——位置感知神经网络,用于计算节点嵌入,它包含节点位置信息,同时保留归纳能力和利用节点特征。P-GNNs在各种任务和数据集中始终比现有的GNNs更好。
Notes
创新点主要在于将GNN中的消息传递从对邻居进行,变成对锚集进行,使得模型具有了更好处理同构节点的能力。但是为了保证一个低的失真,采样的锚点集个数为 ,因此只使用PGNN获得的最后嵌入的维度也为k,无法直接嵌入到更低维的空间。
注:去年阅读该论文,现将论文笔记整理上传。