Link prediction 链路预测方法简述

链路预测

  • 0 引言
  • 1 链路预测问题定义
  • 2 链路预测相关方法
    • 2.1 启发式算法(基于打分的算法)
    • 2.2 基于图表示学习的方法
      • 2.2.1基于图表示学习-图嵌入技术的方法
      • 2.2.1 基于图表示学习-图深度学习技术的方法(常用)
    • 2.3 基于非图深度学习的方法
      • 2.3.1 分阶段训练
      • 2.3.2 端到端训练(常用)

0 引言

链路预测、边预测是graph中的一个常见的问题,讨论这个问题的论文也比较多,其中一篇经典论文node2vec中对这一个问题做了精简的方法概述,并且论文(node2vec 2018)也是第一次将表示学习类算法(node2vec)用于链路预测当中。

1 链路预测问题定义

链路预测问题是指,我们给定一个删除一定比例边的网络后,去预测其中缺失的边。
我们首先生成标签数据集如下:

  1. 为了获取正样本,我们随机从网络中移除50%边,同时确保在移除边之后的图仍然为连通的。(我理解的是:只要没有孤立点即可,不必是全连通,即所有点彼此可以到达)。
  2. 获取负样本,为了获取负样本,我们随机从网络中挑选与正样本等量的节点对作为负样本边,注意不要挑选到第一步剔除的正样本边,他们即使被剔除了但仍然是正样本。

2 链路预测相关方法

2.1 启发式算法(基于打分的算法)

参考文献:Link prediction Based on Graph Neural Network (NeurIPS 2018)
首先,链路预测的启发式算法(也可以称之为启发式得分方法、基于打分的方法)都有一个前提假设就是更“相似”的节点更容易产生链接。(这里的相似是人为定义的,例如可以定义为共同邻居越多节点越相似)。
Node2vec的作者在这里根据一对节点(u,v)的邻居来定义启发式得分heuristic scores(也可理解为相似度得分)如下所示:

Link prediction 链路预测方法简述_第1张图片
根据相似度得分的高低,设定一个阈值,我们就可以对节点对之间的关联进行预测。

另外,我们也可以定义一些其他的打分方法,例如点积:
点积、内积是一个东西的相关CSDN
深入思考内积运算,再看傅里叶系数、伽辽金法本质

向量的积有2种:
数量积(也叫内积,点积),是数量,是实数
向量积(也叫外积,差积),是向量

点积(数量积)是人为定义的一种运算方式,描述了向量的长度和角度,其有两种等价的定义方式,代数定义和几何定义。
两种写法,第一种是几何、第二种是代数。
Link prediction 链路预测方法简述_第2张图片

Link prediction 链路预测方法简述_第3张图片

如何衡量两组向量的相似度,还有其他一些好办法:这里知乎的一个答案,从距离(例如:欧氏距离)、相似度(例如:余弦相似度)这两个角度给出了一些方案。

2.2 基于图表示学习的方法

2.2.1基于图表示学习-图嵌入技术的方法

Node2vec(2018)作者指出since none of feature learning algorithms have been previously used for link prediction. (以前没有特征学习算法被用于链路预测)

如何将表示学习用于链路预测呢?实现思路是什么?
首先,从网络中学习每个节点的特征表示(node feature),然后在一对节点(u,v)上,可以根据节点的特征通过一个二元操作o(u,v)得到边的特征,有了边的的特征就可以作为而分类问题来求解了。可以对边特征应用各种分类方法来进行关联预测。

下图是作者采用的一些计算边特征的二元操作o:
Link prediction 链路预测方法简述_第4张图片
下图是作者的实验结果:和基于打分的方法和其他一些网络特征学习方法进行比较。

Link prediction 链路预测方法简述_第5张图片

  • 相关论文参考:DEMLP

2.2.1 基于图表示学习-图深度学习技术的方法(常用)

图深度学习的方法技术的典型代表就是GCN,通过图卷积等图深度学习方法来进行节点的特征表示,而且与图嵌入技术不同,图深度学习技术通常可以结合下游任务进行端到端的训练),即学到的节点对特征直接在模型中进行拼接(相加)等融合操作操作(这些操作的目的可以等价理解为获取边的特征),并把节点对的特征用于下游任务-例如链路预测或者节点分类。

这里的融合方法除了拼接和相加(通常这两种够用,论文中常用拼接),还可以用下面这些操作,类似于得到变的特征:
Link prediction 链路预测方法简述_第6张图片
然后讲这些特征投入端到端的分类模块中。融合的过程也需要在模型内完成。

  • 相关论文参考MSHGANMDA

2.3 基于非图深度学习的方法

和图表示学习方法一样,可以分阶段,先学特征再用分类器进行预测;也可以端到端来训练和预测。

2.3.1 分阶段训练

2.3.2 端到端训练(常用)

你可能感兴趣的:(图神经网络/图表示学习,链路预测)