LINE: Large-scale Information Network Embedding
概述
- LINE是一种Graph Embedding的方法,在非NN的方法中是比较好的。
- LINE的提出:考虑到因式分解的方法只适用于无向图、且只考虑一阶的相似关系;而DeepWalk方法没有明确表现出维持了什么特征。
- 所以LINE实现了可用于有向无向图、有权无权,以及维持了局部和全局结构(主要是二阶)。另外提出了一种边采样方法。
依据:真是世界的网络中,很多关系是没能被直接观测到的(即一阶相似性first-order),但他们可以通过邻居实现间接关联的(二阶相似性second-order)
定义
- 图、点、边——G、V、E,权重用w
- 一阶相似性,指直接相连的两个点(即边),权重即相似性,不相连则为0;一阶相似性通常表示两个直接关联物体,
- 二阶相似性,指结点的邻居之间的相似性。 p u = ( w u , 1 , . . . , w u , ∣ V ∣ ) p_u=(w_{u,1},...,w_{u,|V|}) pu=(wu,1,...,wu,∣V∣)表示结点u与邻居的的一阶相似性,则二阶相似性用 p u p_u pu和 p v p_v pv表示,若u,v没有共同邻居,则二阶相似性为0
- LINE(Large-scale Information Network Embedding)
建模
- 一阶相似性建模
p 1 ( v i , v j ) = 1 1 + e x p ( − u ⃗ i T ⋅ u ⃗ j ) p_1(v_i,v_j)=\frac{1}{1+exp(-\vec{u}^T_i \cdot \vec{u}_j)} p1(vi,vj)=1+exp(−uiT⋅uj)1
其中
u ⃗ i ∈ R d \vec{u}_i \in R^d ui∈Rd是结点 v i v_i vi的低维向量表示
p ( ⋅ , ⋅ ) p(\cdot,\cdot) p(⋅,⋅)是空间V*V的分布,其经验概率为 p ^ 1 ( i , j ) = w i j W \hat{p}_1(i,j)=\frac{w_{ij}}{W} p^1(i,j)=Wwij, W = ∑ ( i , j ) ∈ E w i j W=\sum_{(i,j)\in E}w_{ij} W=∑(i,j)∈Ewij
那么为了保持一阶相似性,则最小化目标函数:
O 1 = d ( p ^ 1 ( ⋅ , ⋅ ) , p 1 ( ⋅ , ⋅ ) ) O_1=d(\hat{p}_1(\cdot,\cdot),p_1(\cdot,\cdot)) O1=d(p^1(⋅,⋅),p1(⋅,⋅))
d ( ⋅ , ⋅ ) d(\cdot,\cdot) d(⋅,⋅)表示两个分布的距离,如KL散度则为
O 1 = − ∑ ( i , j ) ∈ E w i j log p 1 ( v i , v j ) O_1=-\sum_{(i,j)\in E}w_{ij} \log p_1(v_i,v_j) O1=−(i,j)∈E∑wijlogp1(vi,vj)
注意:一阶相似性只适用于无向图
- 二阶相似性
p 2 ( v j ∣ v i ) = e x p ( u ⃗ k ′ ⋅ u ⃗ i ) ∑ k = 1 ∣ V ∣ e x p ( u ⃗ k ′ ⋅ u ⃗ i ) p_2(v_j|v_i)=\frac{exp(\vec{u}'_k\cdot \vec{u}_i)}{\sum_{k=1}^{|V|} exp(\vec{u}'_k\cdot \vec{u}_i)} p2(vj∣vi)=∑k=1∣V∣exp(uk′⋅ui)exp(uk′⋅ui)
其中
u ⃗ i ′ \vec{u}'_i ui′是结点 v i v_i vi的“上下文”(邻居)低维向量表示
同样,使得环境的条件概率分布和经验条件概率近似
O 2 = ∑ i ∈ V λ i d ( p ^ 2 ( ⋅ ∣ v i ) , p 2 ( ⋅ ∣ v i ) ) O_2=\sum_{i\in V}\lambda_{i} d(\hat{p}_2(\cdot|v_i),p_2(\cdot|v_i)) O2=i∈V∑λid(p^2(⋅∣vi),p2(⋅∣vi))
p ^ 2 ( ⋅ ∣ v i ) = w i j d i \hat{p}_2(\cdot|v_i)=\frac{w_{ij}}{d_i} p^2(⋅∣vi)=diwij,di是结点i的出度, d i = ∑ k ∈ N ( i ) w i k d_i=\sum_{k\in N(i)} w_{ik} di=∑k∈N(i)wik
O 2 = − ∑ ( i , j ) ∈ E w i j log p 2 ( v j ∣ v i ) O_2=-\sum_{(i,j)\in E}w_{ij} \log p_2(v_j|v_i) O2=−(i,j)∈E∑wijlogp2(vj∣vi)
以后再补吧。。。