论文地址:BiNE
Introduction
Bipartite Network(二分网络):如下图所示:
二分网络将节点分为两种类型,其中 边存在于两种类型之间,例如users-items组成的推荐网络,相同类型节点间不会产生边。传统的Network Embedding将bipartite network视为同质网络(homogeneous network), 也就是仅考虑直接联系的边。这样就存在一个问题,即在同一个类型中的节点,虽然没有直接的连接,但是也可能有间接的关系。比如两个用户同时连接到同一个商品,则这两个用户可能有有相同的购买偏好。
另一个问题,
如上两图所示, 图一可以看出,节点被访问的词数和考虑到的节点数呈现斜率为-1.582的幂律分布,但是基于随机游走的生成器相对于真实分布有所偏差, 文中分析原因在于基于随机游走的模型DeepWalk为每个节点生成相同长度的节点序列(walk_length)并且每个节点所需要的随机游走次数(walk per vertex)也是完全相同的,这样无法反应网络的特征以及异构性。
另外,对于Heterogeneous Network Embedding方法metapath2vec++, 此方法是次优的因为它将直接连接的节点与间接有关系的节点视为等价。
针对以上问题,BiNE为直接连接和间接关系分别设计了专用的目标函数,并且联合优化。 并且,所及游走的长度由该节点的重要程度决定,节点的重要程度通过HITS来衡量。
Model
如figure中的二分网络, 可以这样定义:
(取自作者的讲解ppt)
Explicit Relations
同LINE一样, 基于直接连接的目标函数表示为:
Implicit Relations
构造随机游走序列
这是本文的创新点,分别为
其中
其中
表示其中一次随机游走的节点集合
通过上面的推导,可以对分别对
对间接关系建模
如下图所示(图片取自作者的ppt),
对于
对于
Negative Sampling
本文的负采样方法是基于局部敏感哈希(LSH)来对与中心节点不相似的节点进行采样。
该方法的strategy是,给定一个中心节点,随机选取一个bucket(序列)并且这个序列不包含给定的中心节点,以此来获得和给定节点尽量不相似的负采样节点。
其中条件概率
其中
联合优化
通过随机梯度上升对3部分损失函数进行加权优化:
Conclusion
这篇文章提出的分布式训练以及负采样策略还是很值得学习的。