论文链接:https://arxiv.org/abs/1711.10730
本文中,我们提出一种新奇的基于异构网络节点表示学习的异构网络推荐方法:HERec。为了学习网络节点的表示,我们设计了一种基于Meta-Path的随机游走方法来生成许多有意义的节点序列。
1. 基于元路径的随机游走采样方法
如图3所示,为了学习用户和项目的有效表示,我们只考虑起始类型为用户类型或项目类型的元路径。这样,我们就可以得到一些元路径,比如umu、umdmu和mum。以UMU的元路径为例。我们可以根据公式1生成一个采样序列u1→m1→u2→m2→u3→m2→u4。一旦构建了序列,我们进一步删除与起始节点相比具有不同类型的节点。这样,我们最终获得了一个同构节点序列“u1→u2→u3→u4”。因此,尽管节点序列是使用具有异构类型的元路径构造的,但最终的表示是使用同构邻域学习的。
2.学习同构序列的表示(算法框架)
用于单个元路径的HIN嵌入算法
算法1:用于单个元路径的HIN嵌入算法
输入: 给定一个异构信息网络G = { V , E } ,给定原路径ρ ;目标节点类型 A t A_t At;向量维度d;游走长度wl;领域规模ns(相当于词向量训练的窗口大小);每个节点的行走次数r
输出:目标节点类型w.r.t嵌入单个元路径,用e表示
- 用标准正态分布初始化e;
- paths = []
- (外层循环)遍历顶点集合中的每一个属于 A t A_t At类型的顶点v(例如用户顶点):
- (里层循环)随机游走r次
- path = []
- 一次路径没走完
- 按照元路径进行采样,得到下一个节点x
- 如果x是 A t A_t A