graph embedding 第二篇 node2vec and sdne

文章目录

承接上文 graph embedding第一篇——deepwalk and line 本篇主要介绍Node2vec与SDNE,下一篇主要介绍各个大厂是怎么应用graph embedding的。

参考

graph embedding
深度学习中不得不学的Graph Embedding方法
Embedding从入门到专家必读的十篇论文
DNN论文分享 - Item2vec
从KDD 2018最佳论文看Airbnb实时搜索排序中的Embedding技巧
Negative-Sampling Word-Embedding Method
推荐系统遇上深度学习(四十四)-Airbnb实时搜索排序中的Embedding技巧
理论优美的深度信念网络,Hinton老爷子北大最新演讲

Node2Vec

node2vec: Scalable Feature Learning for Networks
node2vec code

Deepwalk,line 的目标为:尽可能在低维空间中保留原始空间中的邻域关系。不同的采样策略将导致不同的邻域关系,因此能够学到不同的顶点表达。这也是deepwalk,line这类工作的主要缺点:不能为采样过程提供灵活性

比如对于下图:
在这里插入图片描述

  • u u u s 1 s_1 s1是相似的,因为他们属于同一个社区(根据deepwalk,line同样可以得到)
  • u u u s 6 s_6 s6是相似的,虽然他们不属于同一个社区,但是它们属于⽹络的同⼀种特殊连接模式。

因此,node2vec的方法就是想用一种灵活地算法采样到上述两种可能,从而使得顶点的representation具有更强的特征表达。我们来看两种极端的采样策略:
在这里插入图片描述
可以看出,BFS和DFS不同的采样策略能够帮助我们在上文中描述的两种规则之间选择,node2vec提供了一种能够采样策略,使得我们可以平滑的在BFS和DFS之间选择。

同样的,采用随机游走的方式采样,对于顶点 c i c_i ci的采样策略为:
在这里插入图片描述
对于其中 π v x \pi_{vx} πvx的定义为:
在这里插入图片描述
在这里插入图片描述
x x x的取值范围是有限的,只能选择 t t t本身,其一阶邻域与其二阶邻域。

  • return parameter p:控制重新访问上一步已访问节点的概率。如果 p > m a x ( 1 , q ) p>max(1,q) p>max(1,q)则接下来访问的顶点不大可能是上一步已经访问过的顶点;反之,一个较小的值会使得访问上一步已经访问过顶点的概率大幅增加。
  • in-out paramter q: 控制探索方向是向内搜索还是向外搜索。如果 q > 1 q>1 q>1那么倾向于向内搜索,类似BFS;反之倾向向外搜索,类似DFS。

其算法如下:
在这里插入图片描述

SDNE

Structural Deep Network Embedding

node2vec是想要通过一种灵活地采样方式从而保留网络的全局信息和局部信息,而SDNE是想要通过一阶邻近度和二阶邻近度 保留其网络结构;与LINE不同的是,LINE(1st)与LINE(2nd)不是共同训练的,在无监督学习中甚至没法将二者结合起来,SDNE提出一种保留一阶邻近度和二阶邻近度的方法,因此得到的embedding不仅具有网络的局部结构,更有网络的全局结构。

问题描述:
G = ( V , E ) G=(V,E) G=(V,E) V V V是所有顶点的集合, E E E是所有边的集合,对于顶点对 ( v i , v j ) (v_i,v_j) (vi,vj)的权重为 s i , j s_{i,j} si,j

  • 一阶邻近度,可以用其权重来刻画,比如 s i , j s_{i,j} si,j,表示顶点对 ( v i , v j ) (v_i,v_j) (vi,vj)的一阶邻近度。
  • 二阶邻近度刻画的是一对顶点的邻居之间的相似度(如果他们的共同邻居越多,则他们越相似):
    在这里插入图片描述

因此,经上述分析,我们知道SDNE通过邻接矩阵 S S S刻画一阶邻域和二阶邻域。SDNE采用深度自编码器学习二阶邻域的结果;采用监督方法学习一阶邻近度的结果;并将二者联合训练。

其网络架构如下:
在这里插入图片描述
一阶邻近度:
在这里插入图片描述
一阶邻近度用于保证网络的局部结构,上式迫使当 s i , j s_{i,j} si,j越大时,其低维空间的距离越近。

二阶邻近度:
采用深度自编码器的方式:
在这里插入图片描述
但是, S S S通常来说比较稀疏,如果直接按照eq(2)的方式去训练,自编码器会偏向于重建零元素。因此,我们在为非零元素设计一个比较大的误差:
在这里插入图片描述
将二者结合在一起,得到最终的目标函数
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值