LINE理论
1)介绍
LINE也是一种基于邻域相似假设的方法,只不过与DeepWalk使用DFS构造邻域不同的是,LINE可以看作是一种使用BFS构造邻域的算法。此外,LINE还可以应用在带权图中(DeepWalk仅能用于无权图)。
LINE在图上定义了两种相似度:一阶相似度与二阶相似度。
一阶相似度:用于描述图中成对顶点之间的局部相似度。形式化描述为若之间存在直连边,则边权即为两个顶点的相似度;若不存在直连边,则一阶相似度为0。如上图中的6、7两个结点就拥有很高的一阶相似度。
二阶相似度:所比较的是两个结点邻居的相似程度。若之间拥有相同的邻居,他们也更加的相似;若不存在相同的邻居顶点,则2阶相似度为0。例如下图中的5、6两点拥有很高的二阶相似度。用一句俗话来概括就是“我朋友的朋友也可能是我的朋友”
2)优化目标
一阶相似度
一阶相似度只能用于无向图当中。
对于每一条无向边 ,定义经验分布(两个结点实际的一阶相似度):
定义顶点和之间的联合概率(两个结点embedding之间的相似度):
优化目标为最小化:
是两个分布的距离,常用的衡量两个概率分布差异的指标为KL散度:
已知,为常数项,求最小值时可忽视,有:
二阶相似度
这里对于每个顶点维护两个embedding向量,一个是该顶点本身的表示向量,一个是该点作为其他顶点的上下文顶点时的表示向量。
对于有向边 ,定义给定顶点 条件下,经验分布定义(两个结点实际的二阶相似度):
其中,是边的边权是顶点的出度,对于带权图,
产生上下文(邻居)顶点的概率(两个结点embedding的相似度):
其中,为上下文顶点的个数。
优化目标为最小化:
其中,为控制节点重要性的因子,可以通过顶点的度数或者PageRank等方法估计得到。
使用KL散度并设 ,忽略常数项,有:
最终要获得同时包含有一阶相似度和二阶相似度的embedding,只需要将通过一阶相似度获得的embedding与通过二阶相似度获得的embedding拼接即可。