学习笔记 | 链路预测
学习来源:
图神经网络(3)_链路预测
《图机器学习》宣琦,高等教育出版社,2022.9
《图神经网络:基础、前沿、应用》吴凌飞等,人民邮电出版社,2022.12
文章目录
- 2. 链路预测(Link Prediction)
- 2.1 基本概念
- 2.2 基于路径的基础链路预测
- 2.3 启发式链路预测方法
- 2.3.1 局部结构相似性指标(节点周围的邻居)
- 2.3.2 全局结构相似性指标(以路径为特征)
- 2.3.3 类局部结构相似性指标
- 2.4 基于图嵌入的链路预测方法
- 2.4.1 节点嵌入
- 2.4.2 连边嵌入
- 2.5 基于深度学习的链路预测方法
- 2.5.1 GAE(图自编码器,Graph Auto-Encoder)
- 2.5.2 VGAE(变分图自编码器,Variational Graph Auto-Encoder)
- 2.5.3 SEAL(基于子图学习的图神经网络模型)
- 2.5.4 HELP
2. 链路预测(Link Prediction)
2.1 基本概念
(1)链路预测就是猜“哪些节点之间应该连一条边,但现在还没连”。
(2)是一个利用图网络做预测的经典任务。Link指节点与节点之间的连接,即图论中的边。

(3)图神经网络可以有效解决 90% 以上的链路预测任务。
(4)从机器学习角度,链路预测可以视作二分类问题,或是排序问题。
(5)建模为二分类问题时的评价指标:AUC(Area Under the ROC Curve)、AP(Average Precisio)
- AUC:模型整体排序有多好
AUC=n′+0.5n′′nAUC = \frac{n'+0.5n''}{n}AUC=nn′+0.5n′′
nnn:比较次数;
n′n'n′:存在的连边分数 > 不存在的连边分数 的次数;
n′′n''n′′:存在的连边分数 = 不存在的连边分数的次数; - AP:模型前几名预测有多准
AP=∑n(Rn−Rn−1)PnAP = \sum_n (R_n - R_{n-1})P_nAP=n∑(Rn−Rn−1)Pn
RnR_nRn:在第 n 个阈值下分类器的召回值;
PnP_nPn:在第 n 个阈值下分类器的精度值;
2.2 基于路径的基础链路预测
(1)路径(path)就是从一个节点走到另一个节点所经过的“节点序列”,要求每相邻两个节点之间都必须有边。

(2)用最简单的路径信息来猜两条节点未来会不会连边”的一类古老但有效的方法。
数一下两节点之间已有的路径,按路径数量和长度打分:路径越短、越多,就越认为它俩该连边。
2.3 启发式链路预测方法
用网络中的统计性指标来衡量两个节点之间的相似度,从而实现链路预测。
2.3.1 局部结构相似性指标(节点周围的邻居)
(1)Common Neighbors(CN):假设2个节点之间拥有的共同邻居数量越多,则越可能形成连边。
suvCN=∣Nu∩Nv∣s^{CN}_{uv} =|\mathcal{N}_u \cap \mathcal{N}_v|suvCN=∣Nu∩Nv∣
Nu\mathcal{N}_uNu:节点 uuu 的一阶邻居的集合。
(2)Salton Index(SA,余弦相似度):考虑共同邻居数量、节点本身的度值。
suvSA=∣Nu∩Nv∣ku×kvs^{SA}_{uv} =\frac{|\mathcal{N}_u \cap \mathcal{N}_v|}{\sqrt{k_u \times k_v}}suvSA=ku×kv∣Nu∩Nv∣
kuk_uku:节点 uuu 的度值。
(3)Jaccard Index(JAC):
suvJAC=∣Nu∩Nv∣∣Nu∪Nv∣s^{JAC}_{uv} =\frac{|\mathcal{N}_u \cap \mathcal{N}_v|}{|\mathcal{N}_u \cup \mathcal{N}_v|}suvJAC=∣Nu∪Nv∣∣Nu∩Nv∣
(4)Srensen Index(SI)
suvSI=2∣Nu∩Nv∣ku+kvs^{SI}_{uv} =\frac{2|\mathcal{N}_u \cap \mathcal{N}_v|}{k_u + k_v}suvSI=ku+kv2∣Nu∩Nv∣
(5)Hub Promoted Index(HPI)
suvHPI=∣Nu∩Nv∣min{ku,kv}s^{HPI}_{uv} =\frac{|\mathcal{N}_u \cap \mathcal{N}_v|}{\min\{k_u, k_v\}}suvHPI=min{ku,kv}∣Nu∩Nv∣
(6)HDI
(7)LHNI
(8)PA
(9)AA
(10)RA
2.3.2 全局结构相似性指标(以路径为特征)
(1)Katz Index
(2)LHN2
(3)ACT
(4)Cosine based on L*(cos*)
(5)RWR
2.3.3 类局部结构相似性指标
(1)LP
(2)LRW
(3)SRW
2.4 基于图嵌入的链路预测方法
2.4.1 节点嵌入
2.4.2 连边嵌入
2.5 基于深度学习的链路预测方法
2.5.1 GAE(图自编码器,Graph Auto-Encoder)
GAE = 图卷积神经网络(GCN)+ 自编码器(Auto-Encoder)
编码:Z=GCN(X,A)\textbf{Z}=GCN(\textbf{X}, \textbf{A})Z=GCN(X,A)
解码:A^=Sigmoid(ZZT)\hat{\textbf{A}} = Sigmoid(\textbf{Z}\textbf{Z}^T)A^=Sigmoid(ZZT)
X\textbf{X}X:节点特征矩阵
A^\hat{\textbf{A}}A^:重构的邻接矩阵

2.5.2 VGAE(变分图自编码器,Variational Graph Auto-Encoder)
VGAE = 变分贝叶斯 + 神经网络
编码器:

解码器:


2.5.3 SEAL(基于子图学习的图神经网络模型)
步骤:
- 封闭子图的提取
- 节点信息矩阵的构造
- 图神经网络的训练

