SEAL—链接预测 图卷积网络 Revisting Graph Neural Networks for Link Prediction

以kipf 的GAE为对照组,SEAL以source和target表示link,在子图添加label,使得最后效果好195%,并且提出只是简单的aggregating node feature是非常无效的,提出了properly labeled subgraphs around links(用最短路径提取子图)


引言

传统启发式的方法,通过计算节点相似度来表示链接存在的似然可能性,如相同节点,择优链接,Katz index,这些都可以作为一些预定义的图结构特征

同时,Embedding的方法,如MF,Node2Vec,还有基于Feature的方法,但他们没考虑过structure

提出SEAL并与GAE对比,乍一看这些GNN方法都把图结构的feature和目标链接关联在一起,但实际上这两个方法在结构信息表示上有本质区别


上图可以看出来的(v_2, v_3 )结构功能很像但是在GAE中 和表示方法上没有什么不同

所以通过增加标签(labeling trick)和局部同构(local isomorphism)使得结构信息在embed特征学习的范围内

基本定义

方法

GAE的方法及其弱点

使用message passing 代替原本GAE中的两层GCN,形成Encoder

(提出怀疑GAE方法普适性太强,没有learn到structre信息)

SEAL表示方法

作弊标签(labeling trick)


上图中$(v_1,v_2)$和$(v_1,v_3$的label 会有不同,并且通过$(s,t)$之间的距离确定节点的距离label

通过(s,t)之间的距离确定节点的距离label,利用Double Radius Node Labeling(DRNL)的方法,给(s,t)之间不同距离的点标注不同label。

举例:上图中(v_1,v_2) 和(v_1,v_3)的label 会有不同。起始点s和终点t都标注为1,距离s和t距离为1的,标注为2,距离为2的标注为3,以此类推。最终会得到在子图中两点距离的一个作弊标签。代码实现由最短路径标注实现。

基于最短路径抽取子图(Enclosing subgraph)

此子图的特性:在这个提取的封闭子图中,A_S^n 其中i是包含在节点集合S的初始节点,所有在d(i,j)距离内的节点j都可以提取到子图A中。

局部同构(local isomorphism)

寻找h-hop的局部图中的同构子图。如果他们基于h-hop的最短路径子图(S,A_S^h)和(S‘,〖A’〗_S^h)是同构的,则他们是h-hop的局部同构子图。因为查找两个图的同构太过严格和复杂,这个局部同构是更好构建的。由前人证明,在节点个数为n的图中,至少(n-logn)的节点是非同构性质的,所以对每个节点/边求同构,条件过严,不如查找两个图的最短路径抽取子图是否同构。这样的条件更好实现,并且有较强的普适性。

求这个性质,是因为有局部同构性质的节点,有更大的可能性,可以分类为一类节点。

在GCN网络后添加SortPooling层


通过 WL算法 可以对节点进行着色,而节点的颜色可以定义节点之间的次序,有了节点的次序,我们就可以通过1-D卷积的方法进行卷积运算。(18年的池化层设计)颜色比较的部分,为了说明WL靠拢的情景,实现上由排序完成。


排序池层的主要功能是对特征描述符进行排序,每个特征描述符代表一个节点,在将它们放入传统的1-D卷积和全连接层之前,按照一致的顺序排序。在图里面,可以根据节点在图中的结构角色对其进行排序。

SortPooling作为图卷积层和传统层之间的桥梁,还有一个很大的好处,就是它可以通过记住输入的排序顺序,将损失梯度返回到前一层,使前一层参数的训练变得可行。相比之下,由于(Niepert,

Ahmed, and Kutzkov 2016)在预处理步骤中对顶点进行排序,因此在排序之前不能进行参数训练。

实验

社交网络


不同模型对比


你可能感兴趣的:(SEAL—链接预测 图卷积网络 Revisting Graph Neural Networks for Link Prediction)