您当前的位置: 首页 > 

静静喜欢大白

暂无认证

  • 1浏览

    0关注

    521博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【图嵌入动机】

静静喜欢大白 发布时间:2020-07-17 16:08:09 ,浏览量:1

转载

网络表示动机

Graph Embedding可以用于真实网络数据,但是效果不好。原因:Network的邻接矩阵并不完整,比如某个元素值为0并不代表这两个节点之间没有关系,而我们要做的就是学习到这个关系,那么我们用什么指标呢?

  • 共现矩阵(邻居)
  • 高阶相似度

Network Embedding算法

主要有两类,一种是neighborhood-preserved算法,另一种是proximity-preserved算法。

下面先说一下第一种。

节点的邻居在网络中是非常重要的,因此直观的想法是通过Node embedding能够反映出邻居的情况。接下来要做的就是如何定义邻居了,在Deepwalk中是用的是truncated random walk来定义一个节点的邻居;在deepwalk的基础上,node2vec的idea是使用更为灵活的有偏random walk来衡量网络的局部和全局信息,更为具体的,此算法random walk出来的一条路径,可以是BFS的,也可以是DFS的。

第二种就是proximity,即相似。

所谓一阶相似度,就是两个顶点之间有边,而二阶相似度就是两个顶点之间没有边,但是两个顶点的相同邻居的比例。Line算法就是将这两种相似度结合在一起来定义节点的向量。具体的算法思想在这里简单的说一下,更深入了解需要去看论文。Line算法处理一阶和二阶相似度的想法很直观,就是最小化定义的一个目标函数,来学习每个节点的向量表示。这个目标函数是两个分布的KL散度——一是经验分布,二是通过节点向量内积计算的分布。具体的公式算法请自行查阅论文。【这里没有讲清,回头弄明白再仔细说说】。

还有一种通过神经网络做的Graph Embedding,将这两种方法得到的Embedding统一起来,SDNE。

Network Embedding还有什么前沿的工作正在做?(2018年)

  • 对于Network Embedding的解释性工作
  • 任意阶的相似度扩展
  • 新的embedding方法

基于random walk使用的就是Skip-gram,优化方法用的是负采样;现在有些思路是使用其他的embedding方法。

准备后面好好研读下论文并进行代码的复现,而不是只是停留在转载和看的上面。。。

后续参考https://segmentfault.com/a/1190000016491406学习

 

关注
打赏
1510642601
查看更多评论
立即登录/注册

微信扫码登录

0.0351s