Graph embedding

文章介绍了几种图嵌入技术,包括DeepWalk通过随机游走和word2vec获取节点embedding,LINE侧重于1阶和2阶相似度,Node2vec结合DFS与BFS优化游走策略,Struc2vec处理无近邻节点的结构相似性,以及SDNE利用非线性层捕获相似性。
摘要由CSDN通过智能技术生成

一、DeepWalk

它的主要思想是在由物品组成的图结构上进行随机游走,产生大量物品序列,然后将这些物品序列作为训练样本输入word2vec进行训练,得到物品的embedding。

 

与NLP中的词向量训练任务十分相似,把每一个词当成图中的节点,节点越近,边权重越大之间关系就越紧密。

采用随机游走的方式随机选择起始点,重新产生物品序列。

最终将这些物品序列输入word2vec模型,生成最终的物品Embedding向量。

总之,DeepWalk使用DFS随机游走在图中进行节点采样,使用word2vec在采样的序列学习图中节点的向量表示。

二、LINE

LINE也是一种基于邻域相似假设的方法,LINE可以看作是一种使用BFS构造邻域的算法。此外,LINE还可以应用在带权图中(DeepWalk仅能用于无权图)。

 

first-order proximity

1阶相似度用于描述图中成对顶点之间的局部相似度,形式化描述为若 u , v 之间存在直连边,则边权 即为两个顶点的相似度,若不存在直连边,则1阶相似度为0。 如上图,6和7之间存在直连边,且边权较大,则认为两者相似且1阶相似度较高,而5和6之间不存在直连边,则两者间1阶相似度为0。

 

second-order proximity

仅有1阶相似度就够了吗?显然不够,如上图,虽然5和6之间不存在直连边,但是他们有很多相同的邻居顶点(1,2,3,4),这其实也可以表明5和6是相似的,而2阶相似度就是用来描述这种关系的。 形式化定义为,令表示顶点 u 与所有其他顶点间的1阶相似度,则 u与 v 的2阶相似度可以通过 p_u 和 p_v 的相似度表示。若u与v之间不存在相同的邻居顶点,则2阶相似度为0。

 

 

三、Node2vec

在DeepWalk的基础上更进一步,通过调整随机游走权重的方法使graph embedding的结果在网络的同质性(homophily)结构性(structural equivalence)中进行权衡。

网络的“同质性”指的是距离相近节点的embedding应该尽量近似,u与s1,s2,s3;s6与s7,s8,s9,s5

游走时用DFS

“结构性”指的是结构上相似的节点的embedding应该尽量接近,u与s4,s5,s6

游走时用BFS

 

四、Struc2vec

之前的node embedding的方式,都是基于近邻,但是有些节点没有近邻,但也有相似的结构

 

定义距离信息

 

构建多层带权重图

 

顶点采样序列

 

五、SDNE

 

相似度定义

SDNE中的相似度定义和LINE是一样的。简单来说,1阶相似度衡量的是相邻的两个顶点对之间相似性。2阶相似度衡量的是,两个顶点他们的邻居集合的相似程度。

 

总结Graph Embedding:

1.DeepWalk:采用随机游走,形成序列,采用skip-gram方式生成节点embedding

2.node2vec:不同的随机游走策略(BFS结构性,DFS同质性),形成序列,类似采用skip-gram方式生成节点embedding

3.LINE:捕获节点的一阶和二阶相似度,分别求解,再将一阶二阶拼接在一起,作为节点的embedding

4.struc2vec:堆土的2结构信息进行捕获,在其结构重要性大于邻居重要性时,有较好的效果

5.SDNE:采用了多个非线性层的方式捕获一阶二阶的相似性,最后形成embedding

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值