BiNE:bipatite network embedding

bipatite 网络嵌入工作

bipatite network 分别有两种节点集合,以及集合之间的连接(边)构成,即(U,V,E),其中E的边可以构成一个 |U| x |V| 的权重矩阵W。

 

BINE: 的contribution之一即同时区别了显式(explicit)和隐式(implicit)的关系。其中,显式的关系和LINE的一阶概率是一致的,采用了KL散度对节点的向量进行计算——这里使用sigmoid函数计算节点的相似度,同时观察相似度利用节点权重(边)——我们知道,在PTE模型中,采用了softmax函数计算节点的二阶相似度,也就是所谓的隐式概率,在BiNE中,利用了DeepWalk类似的解决办法(结合skip-gram),也是其论文的重点。

 

explicit relations:一阶相似度,采用KL散度拟合边权重和sigmoid计算的节点相似度;

implicit relations:二阶相似度,首先采用随机游走生成两类序列,然后利用skip-gram学习。在构造2-阶相似度中,利用co-HITS算法,分别计算节点u,v的相关系数:


很明显,相似度U是集合了i到j之间的所有路径权重(2-hop),相似度集合了同时到达i,j的所有路径权重(2-hop),从而得到两个权重矩阵(邻接矩阵),基于这两个矩阵,生成随机游走的序列(具体见论文),但是论文其实也没有很详细的介绍过程,可能需要看相关的源码

BiNE

得到了序列之后,第二步就是根据序列学习每个节点的向量表示(distributed representation),运用skip-gram模型,把图的随机游走序列作为输入。这里,另一个trick,就是对每个节点,生成其对应的上下文表示,利用上下文表示进行概率计算 —— 这里怎么得到上下文表示呢?没有说明,应该是在随机节点向量的时候同时初始化的,但是会考虑上下文中其他节点的表示嘛?

同样的,需要采用负采用优化,这里的负采用不是随机选取负样本,而是通过LSH对向量进行映射,分组,在不同的桶里面选出不相干的负样本。

 

在得到这些数据之后,最后需要联合优化了:


其中O2,O3为二阶的目标函数,O1为一阶的目标函数。因为用到SGA,推导没看,所以略过这部分。

 

最后就是实验。但是没有对比PTE模型,因为本质上这还是同构的图,很难说在异构环境中的效果会怎么样。而且,BiNE模型明显要比PTE更加复杂。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值