文献阅读(9)KDD2014-DeepWalk:online learning of social representations

本文是对《DeepWalk:online learning of social representations》一文的浅显翻译与理解,原文章已上传至个人资源,如有侵权即刻删除。

朋友们,我们在github创建了一个图学习笔记库,总结了相关文章的论文、代码和我个人的中文笔记,能够帮助大家更加便捷地找到对应论文,欢迎star~

Chinese-Reading-Notes-of-Graph-Learning

更多相关文章,请移步:文献阅读总结:网络表示学习/图学习

前言

文章提出了DeepWalk算法,是一种无监督的方法。算法将网络表示的问题视为NLP问题求解,首次将randomwalk算法和word2evc中skipgram算法的思想结合起来。算法认为现实世界网络的数据集与自然语言数据集都大致遵从幂律分布,因此可以将节点序列视为句子,从而进行学习。

算法通过randomwalk得到节点的邻居序列,再放入skipgram算法中预测其上下文节点,目标函数即使得预测概率最大化,就得到了相应的节点表示。


Title

《DeepWalk:online learning of social representations》(2014)
——KDD
Author: Bryan Perozzi


MainBody

1 基本概念

G=(V,E,X,Y),其中V为顶点集,E为边集,X为特征集,Y为标签集。

算法所学到的节点表示有着如下特点:
(1)Adaptability:适应性,现实世界网络在不断演化,出现新的社交关系时不需要重复地整体学习;
(2)Community aware:社区感知,向量相似的节点,对应在网路中被分为同类别的概率较大;
(3)Low dimensional:低维,产生低维的向量可以加速进一步的分类和其他问题的求解;
(4)Continous:连续性,在连续的空间中的节点表示,可以进一步增强分类的效果。

算法认为现实世界网络的数据集与自然语言数据集都大致遵从幂律分布,因此可以将节点序列视为句子,从而进行学习。
在这里插入图片描述
随机游走:即随机选定初始节点,随后每次从最新节点的邻居中随机选择下一步游走的节点。
幂律:节点具有的连线数和这样的节点数目乘积是一个定值,也就是几何平均是定值,比如有10000个连线的大节点有10个,有1000个连线的中节点有100个,100个连线的小节点有1000个,在对数坐标上画出来会得到一条斜向下的直线。

2 损失函数

算法引入自然语言处理的思想,将随机游走得到的节点序列视为一个句子:
在这里插入图片描述
那么就可以通过一个节点预测其周围节点,这种预测的概率即:
在这里插入图片描述
然而对于节点而言,概率是没有办法直接求得的,因此通过映射,将节点映射成为向量,就可以进行计算,此时有:
在这里插入图片描述
在这里插入图片描述

但随着步长的增加,对概率的计算变得不可行,因此规定窗口大小,只对窗口内的节点进行概率计算,即节点的上下文,此时有目标函数为:
在这里插入图片描述
这种对概率的计算不够方便,算法就引入了Hierarchical Softmax算法的思想,将节点视为二叉树的叶节点,那么随机游走达到该节点的概率,就与该节点的双亲有关,以此类推就得到了如下的概率计算形式:
在这里插入图片描述
其中b为树的节点序列,b_0表示根节点,b_log|V|即当前节点u_k。

3 算法模型

算法的执行流程如下:
在这里插入图片描述
输入:图G(V,E);窗口大小w;嵌入维度d;游走次数γ;游走长度t;
输出:节点表示
1:初始化φ;
2:建立二叉树T;
3:每个顶点产生γ个游走序列(外循环):
4:对节点集随机排序;
5:对每个节点操作(内循环):
6:得到节点的随机游走序列W_vi;
7:通过skipgram算法预测上下文节点;
8:结束内循环;
9:结束外循环;

其中,skipgram算法如下:
在这里插入图片描述
1:对序列中的每个节点操作(外循环):
2: 对窗口中的每个节点操作(内循环):
3: 计算概率损失函数;
4: 优化φ;
5: 结束内循环;
6:结束外循环;

算法的模型图解如下:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值