DeepWalk
通过随机游走(truncated random walk)学习出一个网络的表示,在网络标注顶点很少的情况也能得到比较好的效果。随机游走起始于选定的节点,然后从当前节点移至随机邻居,并执行一定的步数,该方法大致可分为四个步骤:
- (a) 展示了原始的用户行为序列。
- (b) 基于这些用户行为序列构建了物品相关图,可以看出,物品A,B之间的边产生的原因就是因为用户U1先后购买了物品A和物品B,所以产生了一条由A到B的有向边。如果后续产生了多条相同的有向边,则有向边的权重被加强。在将所有用户行为序列都转换成物品相关图中的边之后,全局的物品相关图就建立起来了。
- (c) 采用随机游走的方式随机选择起始点,重新产生物品序列。
- (d) 最终将这些物品序列输入word2vec模型,生成最终的物品Embedding向量。
环境
- python 3.6.8
- paddlepaddle-gpu 2.3.0
- numpy 1.19.5