A Survey on Network Embedding , TKDE 2018
本文是清华大学崔鹏老师组出的关于Network Embedding方面的综述论文,详细地介绍了该领域目前主要的方法和未来的研究方向。对于希望在该领域进行研究的同学来说非常值得阅读。
文章目录
模型 | 基于 | 节点相似度 | (un)directed/(un)weighted | year | 备注 |
---|---|---|---|---|---|
DeepWalk | 随机游走 | K阶 | undirected,unweighted | KDD 2014 | |
node2vec | 随机游走 | K阶 | KDD 2016 | ||
LINE | 类似随机游走 | 1阶+2阶 | WWW 2015 | ||
GraRep | K阶 | ||||
N-NMF | NMF | 1阶+2阶 | |||
SDNE | 1阶+2阶 | ||||
HOPE | 2016 | 非对称传递 |
Abstract
Network Embedding(NE,网络嵌入)是为网络中的节点学习得到一个低维的向量表示,并有效保留网络的结构。本文内容包括以下方面:
- 总结了network embedding的motivation
- 讨论经典的graph embedding算法和network embedding的关系
- 提供关于network embedding方法系统的介绍,包括:保留网络的结构特征以及性质,带有side information的NE方法等
- 多种评价方法
- 数据集和软件
- 未来方向
1 Introduction
传统的方法,我们通常将一个网络表示为一个图 G = < V , E > G = <V,E> G=<V,E> 但是大型网络中此表示方法不使用,存在以下挑战如:
- 高计算复杂度(需要不断地遍历节点,如计算节点之间的距离)
- 低并行化(节点之间紧耦合,相互依赖)
- 不适用于机器学习方法(节点之间相互依赖,无法分割为独立的向量。而ML方法通常假设样本可以分割为独立的向量)
使用边来显性地表示节点之间的关系,是传统方法最大的瓶颈所在。在network embedding空间中,节点之间的关系(传统方法用边来体现),通过节点之间的embedding向量距离来表示,其中节点的拓扑和结构特征已经被编码到embedding向量中。
NE representation学习低维连续稠密向量,在保留固有信息的同时有效减少了噪声和冗余信息。
NE应用
(1)Node classification(2)Node clustering(3)Network visualization(4)Link prediction
NE目标
(1)学到的embedding空间可以重建原网络。
网络中相邻节点在embedding空间距离应该小
(2)学到的embedding空间能够支持关于该网络的推断
预测未见过的链接、推断节点标签
2 方法分类
根据embedding所含有的信息类型分为以下三类
(1)网络结构和性质
(2)附加的信息(如节点和边的属性)
(3)高级信息(如针对具体任务节点分类,有节点标签信息)
之间已经介绍network embedding的目标包括网络的重建和推断。传统的graph embedding主要关注网络重建
Structure and property preserving network embedding
考虑只有拓扑信息的网络,只基于网络拓扑信息学习得到network embedding。相关的工作尝试保留网络的结构信息:如节点和边、邻居结构、高阶节点邻近度、社区结构等。
除了网络的结构信息之外,网络的性质对于建模网络的演化中也不可忽视(如三角闭合性、结构平衡性质)。
Network Embedding with Side Information
除了网络的拓扑之外,一些网络还伴随着丰富的附加信息,如:节点内容和标签、节点和边的属性、异构网络中节点的类型。
主要的挑战在于如何结合并平衡拓扑和附加信息在NE中的作用。
Advanced Information Preserving Network Embedding
之前两类方法学习网络表示通常使用无监督的方式,学得的embedding是通用的,可用于各种任务。而针对不同的目标问题可以进一步优化,通常采用有监督的方式。
以网络节点分类问题为例,如果我们有网络中一些节点的标签,可以将网络结构作为输入,节点标签作为监督信息,embedding表示作为隐含中间层。这样就能得到针对节点分类这项任务的embedding。
常用方法
基于矩阵分解
NE的目标是得到低维向量空间以表示网络,这与矩阵分解方法具有相同的目标。常用的矩阵分解模型:奇异值分解(SVD)、非负矩阵分解
基于随机游走
邻居结构可以用于描述一个节点的本地结构特征。尽管邻接矩阵刻画了节点的一阶邻近度,但是稀疏、离散、高维的向量表示不便于后续的应用。在NLP领域中,Word2Vec有效地将词向量从稀疏、离散、高维的向量转变为稠密、连续、低维的向量表示,通过重建词向量的“邻居词”(上下文词)共同出现的概率得到。一些NE方法借鉴了Word2Vec的想法,而关键在于如何定义网络中的邻居(neighborhood)。
类比于Word2Vec,基于随机游走的模型在网络中进行随机游走。将节点作为语言模型中的词,将随机游走作为句子,节点邻居可以用Word2Vec中共同出现的概率来定义。
代表工作:DeepWalk(KDD 2014),Node2Vec(KDD 2016)
深度神经网络
Network embedding本质是学习一个映射函数,将原网络空间映射到低维的向量空间。如基于矩阵的方法是假设这个映射函数是线性的。然而因为网络形成过程的复杂并且非线性,线性的映射函数并不足以将原网络空间映射到嵌入空间。
作为非线性的学习模型,深度神经网络取得了很大的成功。代表性的使用深度神经网络的NE方法:SDNE,SDAE,SiNE。
深度神经网络方法非常适用于端到端的NE方法。
3 Network Embedding和Graph Embedding对比
Graph embedding(GE)的目标与network embedding的目标相似,是将一个图(graph)嵌入到低维的向量空间。传统的图嵌入方法,图是从以特征表示的数据集中构造得到的,如图像数据集。GE综述(Fu and Ma 2012)
代表性的GE方法
GE方法起初是作为降维的技术。
代表工作:Isomap,LLE,LE;需要刻画节点对之间距离,计算复杂
Isomap
- 由数据特征之间的距离通过KNN选择连接,构造一张图以及对应的距离矩阵D。对D进行MDS得到i对应的坐标向量,保留了低维空间中节点对之间的距离
Locally linear embedding (LLE)
- 假设每个样本和其邻居都处于一个局部线性流形空间,, 一个节点的表示可以通过它的邻居节点的表示的线性组合来近似得到
Laplacian eigenmaps (LE) 拉普拉斯特征表
- 简单的假设两个相连的节点的表示应该相近。特别地,这里表示相近是由向量表示的欧氏距离的平方来定义。该优化问题可以类似地转化为 Laplace 矩阵的特征向量计算问题。
NE/GE区别
目标区别
Network embedding:重建原始网络+网络推断。
Graph embedding主要目标是网络的重建。
因此,graph embedding 可以视为一种特殊的Network embedding,只考虑重建网络的network embedding。而现在的研究更注重网络的inference,也是本paper接下来的重点。
假设区别
GE通常用于从特征表示的数据中构造得到的图,节点之间的相似性通过原始特征空间中定义的边的权重来编码得到;
NE通常在自然形成的网络中得到,如社交网络/生物网络,节点之间的相似性并不是显式的或直接定义,而是根据具体应用场景来定义。
4 Structure and Property Preserving Network
网络结构
邻居结构、高阶节点邻接性、网络社区
邻居结构和高阶节点邻接性
DeepWalk
DeepWalk发现节点在短的随机游走中出现的分布,与自然语言中词的分布相似。利用Skip-Gram最大化节点的邻居与节点共同出现的概率
Node2Vec
对邻居的定义更加灵活,同时用BFS和DFS对邻居节点进行采样,能够同时将在同一community中的节点、或者有相似角色的node表示成相似的embedding 。
LINE
考虑网络的一阶和二阶相似性。一阶相似性是联合概率分布,由节点对之间的相似性来度量;二阶相似性是条件概率分布,通过节点生成其上下文节点的概率来度量;
GraRep
LINE只考虑一阶和二阶,GrapRep考虑K阶(K>2)相似性。给定一个邻接矩阵 A A A ,k步概率转移矩阵可通过 $A^{k} = A…A $ 计算得到。
网络社区
M-NMF
提出了一种模块化的非负矩阵分解模型(MNMF),保留一阶和二阶节点相似性以及mesoscopic community structure。用了NMF模型保留微观结构(节点相似性),假设如果一个节点的表示与一个社区的表示相似,那么该节点很可能在这个社区中。使用了辅助的社区表示矩阵来联系节点表示和社区结构。
SDNE
深层模型。解决高非线性、结构保护和稀疏性问题。SDNE使用具有多个非线性层的深度自编码器来保留节点的邻居结构。
Cao 2017
借鉴PageRank,结合加权转移概率矩阵,可以主动构造节点的表示。捕获带权图结构和节点的非线性表示结构。
GEM-D 2017
提出一个NE框架,统一之前的算法。包括三个度量 [ h ( ⋅ ) , g ( ⋅ ) , d ( ⋅ , ⋅ ) ] [h(\cdot), g(\cdot), d(\cdot,\cdot)] [h(⋅),g(⋅),d(⋅,⋅)]。 分别为邻近度函数,非线性函数,度量h和g差异性的度量函数。
网络性质
保留网络性质的NE方法,目前主要集中在各种类型网络的网络传递以及符号网络中的结构平衡性质。
符号网络(signed graph):a signed graph is a graph in which each edge has a positive or negative sign.
Ou 2015
保留非传递属性(A和B有关系,B和C有关系但是A和C没有关系)利用投影矩阵,抽取M哈希表,得到 最终相似度可以通过其聚合得到。如果两个节点语义相似,那么至少有一个较大。
HOPE (2016)
考虑有向网络的非对称传递性。(A->B B->C 则有 A->C (而不是C->A))。为了度量这种高阶相似性,HOPE总结了4种度量方法,将原始SVD转变为通用的SVD问题,时间复杂度降低,使其方案具有可扩展性。
SiNE(2017)
符号网络embedding,考虑正边和负边。结构平衡理论表明符号网络中的用户与朋友的距离比敌人更近(相似度更高)。给定一个三元组 ( v i , v j , v k ) (v_i, v_j, v_k) (vi,vj,vk),其中 e i j =