DeepWalk 与 node2vec 将图上的随机游走转成节点序列,再用序列中的邻近关系学习节点向量。 它们沿用词表示的思路,但图没有现成的句子:如何生成“上下文”,本身就是方法设计的一部分。(Grover & Leskovec, 2016; Perozzi et al., 2014)

图怎样变成训练材料

设教学图有节点 ,一次游走生成序列 A → B → C → D。把 当作中心,窗口左右各取一步,就得到 — 和 — 两个正节点对。

重复从不同节点出发游走,可以得到大量训练序列。随后为节点学习向量,使同一采样策略下的上下文关系得到较好的拟合。节点不必是词,也可以是道路交叉口、论文或其他实体;但“边代表什么”必须先定义。

游走表示的关系来自图结构和采样过程;解释节点向量时,要结合图的边所代表的关系及游走设置。

DeepWalk:先用无偏游走生成序列

DeepWalk 的基本流程是从节点出发,在邻接关系上游走,把短序列送入 Skip-Gram 训练。原文采用层次 Softmax来降低输出计算成本,而不是把负采样当作唯一实现。(Perozzi et al., 2014)

因此,Skip-Gram、SGNS 和 DeepWalk 不是可互换的名称:Skip-Gram 描述中心与上下文的学习结构,SGNS 指其中使用负采样的目标组合,DeepWalk 还规定了图序列如何生成。现代实现若换用负采样,应明确说明配置。

node2vec:让下一步依赖上一步

node2vec 引入有偏的二阶游走。已从节点 走到 ,准备从 的邻居中选择下一节点 。转移权重由边权 与偏置 相乘,再归一化。以下写出无向图的标准情形。(Grover & Leskovec, 2016)

是图上的最短跳数距离,不是地图上的米数。 控制立即返回上一节点的相对权重; 调整向远离上一节点方向扩展的相对权重。二者都必须大于零。

一个可手算的转移例子

取无向、无权教学图,边为 t—v、v—a、t—a、v—b。当前刚走完 t → v,下一步候选是 。令 、。

下一节点与上一节点 的距离未归一化权重转移概率
0,立即返回
1,与 相连1
2,经 才能到达

权重之和为 3.5。这个设置降低立即返回的机会,提高走向 的机会;改变的是相对采样概率,不是强制选择某条路线。

在上述标准设置中, 会消除这项转移偏置,回到无偏游走采样。它不表示两套方法的全部窗口、输出目标与训练参数都相同。node2vec 原文采用负采样,并在比较中统一部分基线的训练目标;这不能倒推 DeepWalk 原文也使用 SGNS。(Grover & Leskovec, 2016)

城市网络和活动序列怎样借用这个思路

可以先定义道路、交通或设施联系图,再用游走生成上下文。也可以把真实观测到的地点访问序列转成窗口词对;后者使用的是观测行为,不是模拟图游走,不能默认两种序列有相同的统计含义。

这提供了将 SGNS 思路迁移到非文本对象的入口,不是本文已经完成的城市实验。至少需要检查三件事。

  • 关系定义:相邻表示道路连通、地理邻近,还是实际流量?窗口对应几步关系?
  • 数据质量:地点切换是否来自真实移动?轨迹乒乓效应可能制造虚假的反复邻接。
  • 评价与迁移:下游测试应有独立划分;按节点编号学习的向量表不会自动给新节点生成可靠表示,加入节点通常需要额外更新或归纳式编码器。

节点向量的余弦相似,不自动等于相同土地用途、空间因果关系或通行距离。用图时应报告图的构造、游走长度与次数、窗口、、训练目标和评价设置。

返回 词向量与表示学习专题,或继续读 图学习与城市计算、图的基本概念。

参考文献

Grover, A., & Leskovec, J. (2016). node2vec: Scalable Feature Learning for Networks. Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, 855–864. https://doi.org/10.1145/2939672.2939754
Perozzi, B., Al-Rfou, R., & Skiena, S. (2014). DeepWalk: Online Learning of Social Representations. Proceedings of the 20th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, 701–710. https://research.google/pubs/deepwalk-online-learning-of-social-representations/