LINE:Large-scale Information Network Embedding
1.背景
LINE 这个模型就是把一个大型网络中的节点根据其关系的疏密程度映射到向量空间中去,使联系紧密的节点被投射到相似的位置中去,而在网络中衡量两个节点联系紧密程度一个重要的指标就是这两个节点之间边的权值。在这篇文章中作者在建模的时候不仅仅只考虑了一阶的关系,即两个点之间直接有较大权值的边相连就认为它们比较相似;同时考虑了二阶关系,即两个点也许不直接相连,但是如果它们的一阶公共节点比较多,那么它们也被认为是比较相似的。基于这两个角度的思考,作者提出了两个模型。
2.原理
2.1 相关定义
(信息网络):一个信息网络被定义为,其中是顶点集合,每个代表一个数据对象,是顶点之间的边集,代表两个数据对象之间的关系。 每个边是一个有序对,并且与权重相关联,表示关系的强度。 如果是无向的,则有和; 如果是有向的,我们有和。
负权重是有可能的,本实验中不考虑
(一阶相似度):网络中的一阶相似度是两个顶点之间的自身相似(不考虑其他顶点)。 对于由边连接的每一对顶点,边上的权重表示和之间的相似度,如果在和之间没有边连接,则它们的一阶相似度为0。
一阶邻近通常意味着现实世界网络中两个节点的相似性。例如,在社交网络中相互交友的人往往有着相似的兴趣;在万维网上相互链接的页面倾向于谈论类似的话题。
(二阶相似度):网络中一对顶点之间的二阶相似度是它们邻近网络结构之间的相似性。 在数学上,设表示与所有其他顶点的一阶相似度,则和之间的二阶相似度 由 和决定。 如果没有顶点与和都连接,则和之间的二阶相似度为0。
因为有些边观察不到等原因,一阶相似度不足以保存网络结构。因此提出共享相似邻居的顶点倾向于彼此相似,即二阶相似度。 例如,在社交网络中,分享相似朋友的人倾向于有相似的兴趣,从而成为朋友; 在词语共现网络中,总是与同一组词语共同出现的词往往具有相似的含义。
(大规模网络信息嵌入):给定一个大的网络,大规模信息网络嵌入问题的目的是将每个顶点表示成一个低维空间中的向量,即学习一个函数,其中。 在空间中,顶点之间的一阶相似度和二阶相似度都被保留下来。
2.2 LINE with First-order Proximity
对于每个无向边,定义顶点和的联合概率:
- 是一个低位向量,代表顶点;
-
是一个 的向量;
对于每个无向边,定义顶点和的经验概率分布:
其中:
起到归一化的作用;
为了保持一阶相似性,一个简单的办法是最小化联合概率分布和经验概率分布:
使用KL散度作为最小化目标,省略常量:
一阶相似度仅适用于无向图,而不适用于有向图。通过一阶相似度可以表示d维空间中的每个顶点。
2.3 LINE with Second-order Proximity
二阶相似度可以用于有向图和无向图,每个顶点需要表示顶点自身和附近顶点的邻居;为每个节点引入两个向量表示和:是作为顶点时的向量表示,是作为附近定点的邻居时的向量表示。
定义是的邻居的概率为:
其中,
定义是的邻居的经验概率为:
最小化联合概率分布和经验概率分布:
2.4 Model Optimization
对目标函数计算大家比较大,实际中参考了word2vec的思想,进行负采样。