cs224w 2-2 Traditional Feature-based Methods-Line
边层级
上节课我们介绍了关于节点相关的基础知识,这节课我们将关注于**“边”**。
任务:
利用现有的链接来预测新的链接的产生;我们需要评估所有为连接的节点对;并对他们进行排序,排名前K个为我们的预测结果;这里的重点是 “节点对” 特征的设计,我们可以将点A和点B的特征融合起来来作为“节点对”, 但失去了点之间的关系信息。
我们连接预测任务有两种类型:
随机缺失边预测:随机移除某些边,然后用机器学习方法尝试预测那些边;(蛋白质-蛋白质交互作用静态网络,探索蛋白质随机连接的种类)
随时间推移边预测:如果时间自然发展(如社交网络、协作网络),我们预测的边将在未来的时间出现,输入T0的图,预测T1时刻的边(随时间推移,人们认识的人会越来越多)
使用边的特征来完成任务:
为了更好的表示边的特征,我们对点进行相似性评分,计算两点间的相似性得分(如用共同邻居衡量相似性),然后将点对进行排序,得分最高的n组点对就是预测结果,与真实值作比。
1. 两点最短路径长度(Distance—base Feature):
这种方式没有考虑两个点邻居的重合度,如B-H有2个共同邻居,B-E和A-B都只有1个共同邻居,但是分值却相同。
2. 节点的邻域重叠数(Local neighborhood Overlap Feature):
Jaccard(杰卡德系数)将Common neighbors (普通系数)归一化了
Adamic—Adar index:降低邻居里有高度联系其他节点的“著名节点”影响,一堆度低的邻居比一堆“著名”邻居的得分更高。
3. 全局邻域重叠矩阵(Global neighborhood Overlap Feature):
节点的邻域重叠数(Local neighborhood Overlap Feature)有个问题:当两个节点没有共同邻居,值为0,但是他们有可能是相互连接的。(如图,A和E的领域重叠是什么?他们没有共同的领域,A到E只有四跳,且C和D有可能相连,但在他们的值在节点的邻域重叠数的标准下为0)所以,我们考虑采用全局邻域重叠矩阵(Global neighborhood Overlap Feature)来解决这个问题。Katz index:计算点对之间所有长度的路径的条数(长度1路径数A+长度2路径数B+…长度n路径数C)
如何计算?邻接矩阵求幂!
代表u和v之间长度为1的路径的数量;
代表u和v之间的路径长度为K的数量;
;计算A的k次幂,Auv将会告诉我们路径的数量;
=u和v之间路径长度为1的数量;
怎么算?
,更高的幂(更远的距离)就重复过程,继续乘起来;
所以我们可以得到Katz index的计算公式:
是和之间所有路径长度的路径数量,是折扣系数,,代表距离越远其影响值越小;
这里视频中讲的封闭式(closed-form),不太明白,上网搜了下,推导过程如下: