GraRep: Learning Graph Representations with Global Structural Information论文解读(翻译)

GraRep:全局结构信息的图表征学习

注:这篇论文是在网络表示学习(NRL: network representation learning)和网络嵌入研究领域(NE: network embedding)必读论文清单中的,但找了一下没有发现网上关于该论文的解读。不才写下一些解读供自己学习和大家探讨,斜体字是我自己加上的,与原论文无关(里面提到的共现co-occurrence指的是两个节点同时出现)。因为是个人整理可能会有出错的地方,希望能得到纠正,共同成长。
论文地址
代码地址

摘要

在这篇论文中,我们提出了GraRep(一种学习加权图节点向量表示的新的模型)。这个模型学习用低维向量表示出现在图中的节点向量,以及将图形的全局结构信息集成到学习过程中。论文中还会讲到我们的这种方法与之前已有研究(Deepwalk:Online learning of social representations.Distributed representations of words and phrases and their compositionality.)的联系
我们在一个语言网络、一个社交网络和一个引文网络上做了实验,结果表明:我们学习得到的全局表示可以有效的作为聚类、分类、可视化等的特征向量,并且表现比其他的方法都要好。

介绍

在很多实际问题中,信息通常使用图来组织。比如,在社交网络研究中,基于社交图将用户划分为有意义的社交组,这可以产生很多有用的实际应用(用户搜索、定向广告和推荐)。因此,从图中学习有用的信息是重要的。一种策略是学习图的图表征:图的每个节点都用一个低维向量表示,这个低维向量含有有意义的语义、关系和结构信息。
最近,从数据中学习图表征很火。比如,DeepWalk采用了平均采样(截断游走)将图形结构转换为由节点组成的线性序列的样本集。skip-gram模型,最初是为线性序列中学习单词表征而设计的,但它也可以用于从图的样本集中学习到节点表征。尽管这些方法在经验上是有效的,但是在他们的学习过程中,定义在图上的准确的损失函数并不是很清楚。本文的关键
在这,我们首先提出了一个定义在图上的基于skip-gram的明确的损失函数。我们展示了在不同的k值下,我们可以使用skip-gram去捕获每个节点的k阶邻居。skip-gram模型的一个限制是它将所有此类k步关系信息投射到公共子空间中。我们认为这样简单的处理会导致潜在问题,在我们的模型中,通过在不同的子空间中保存不同的k阶关系信息,克服了上述限制。
最近提出的另一个工作是LINE,它具有一个损失函数来捕获1阶和2阶的局部关系信息。为了捕捉这些局部信息中的某些复杂关系,他们还从这些数据中学习非线性变换。但是它们的模型不容易扩展到获取k阶(k > 2)关系信息来学习它们的图表示(提高模型的有效性的一个重要策略是考虑具有较小度节点的高阶邻居)。该策略在一定程度上隐式地将某些k阶信息捕获到它们的模型中。我们认为,不同顶点之间的不同的k值的k阶关系信息,揭示了与图相关的有用的全局结构信息,在学习一个好的图表征时,充分利用这一点是非常必要的。
本文提出了一种新的知识管理图表征学习模型GraRep。该模型通过操作定义在图上的不同全局转换矩阵,在不涉及缓慢和复杂的采样过程的情况下,直接获取图中节点间k值不同k阶关系信息。与现有的工作不同,我们的模型使用不同的损失函数来捕获不同的k阶局部关系信息。我们利用矩阵分解技术对每个模型进行优化,并结合从不同模型中得到的不同表示来构造每个顶点的全局表示。这种学习到的全局表示可以用作进一步处理的特性。
我们对这个模型进行了正式的处理,并展示了我们的模型与之前几个模型之间的联系。我们也证明了学习表征在解决几个现实问题中的经验主观性。具体来说,我们对一个语言网络聚类任务、一个社交网络多标签分类任务以及一个引文网络可视化任务进行了实验。在所有这类任务中,GraRep的性能都优于其他图形表示方法,并且可以并行化
我们的贡献如下:
1.我们提出了一种新的模型去学习图上节点隐式表示,该模型能够获取与图相关的全局结构信息。
2.我们从概率的角度出发,对DeepWalk中用于学习图形表征的均匀采样方法进行了理解,该方法将图形结构转换为线性序列。此外,我们显式地在图上去掉它们的损失函数,并将其扩展到支持加权图。
3.我们正式地分析了负采样skip-gram模型相关的决策。我们的模型得到了一个更精确的损失函数,它允许对不同的局部关系信息的非线性组合进行集成。
本文的结构如下所述。第二节讨论相关工作。第三节提出了损失函数,并给出了矩阵分解的优化方法。第4节给出了总体算法。第五部分用数学解释的方法说明了所提出的工作的合理性,并说明了它与之前工作的联系。第6节讨论评估数据并介绍算法。第7节给出了实验和参数灵敏度分析。最后,我们在第8节中总结。

2.相关工作

2.1线性序列表征方法

自然语言语料库是由词流组成的,可以被看做是特殊的图形结构,也就是线性链。目前,学习单词表征方法主要有两种:神经嵌入法(word2vec之类的)和矩阵分解法
神经嵌入法采用一种经过压缩的滑动窗口来捕获当前单词的上下文。比如skipgram等模型,为词汇表征的学习提供了一种有效的方法。虽然这些方法在某些任务上可能会产生良好的性能,但是它们捕获有用信息的能力很差,因为它们使用了各自的局部上下文窗口,而不是全局加入共现计数(未考虑整体)。另一方面,矩阵分解法家族可以利用全局统计量。之前的工作包括潜在语义分析(LSA),它分解term-document矩阵并生成潜在语义表示。Lund等人提出了HAL,将一个词-词共现计数矩阵分解来生成词表征。Levy等人提出了PMI矩阵的学习单词表示的矩阵分解方法,并证明了基于负采样的skip-gram可以被视为隐含该矩阵的模型。

2.2图表征方法

目前有几种学习低维图表征的经典方法,如多维标度(MDS)、异构化(IsoMap)、LLE和Laplacian特征映射。最近,Tang等人提出了学习图的潜在表征向量的方法,该方法可以应用于社交网络分类。Ahmed等人提出了一种图分解方法,使用随机梯度下降法对大型图的矩阵进行优化。Perozzi等人提出了一种利用截断随机游走算法将图结构转化为若干线性节点序列,利用skip-gram模型生成节点表征的方法。这被认为是k阶信息的相同权值线性组合。Tang等人后来提出了一种大规模的信息网络嵌入,它优化了一个损失函数,在学习过程中可以同时捕获1阶和2阶的关系信息。

3.图模型

在这一节中,我们定义了任务并给出了任务的损失函数,然后用矩阵分解方法对其进行了优化。

3.1图和图表征

定义1. G=(V,E)为图G,V={v1,v2,…,vn}是节点集合,E={ei,j}为连接节点i和节点j的边,path(路径)为连接节点序列的边序列。
我们首先对一个图定义邻接矩阵S。对于一个非加权图,我们有Si,j = 1,当且仅当存在一条从vi到vj的边,否则Si,j = 0。对于加权图,Si,j是一个实数,是边ei,j的权值,表示边的重要性。虽然权值可以为负,但本文只考虑非负权值。为了便于标注,我们还使用w和c来表示本文中的节点。
下面的对角阵是邻接矩阵S关于图的节点度矩阵(非加权图:对角线上对应的是每个节点的度。加权图:对角线上对应的是该节点所连接的边的权重之和。其他位置皆为0
在这里插入图片描述
假设我们想要捕获从一个节点到另一个节点的转移,并假设邻接矩阵Si,j(vi -> vj)的大小与转移的概率成正比,那么我们可以定义(一阶)概率转移矩阵A:
在这里插入图片描述
Ai,j是从节点vi经过一步到达节点vj的概率。可以看出,A矩阵可以看作是归一化后的S矩阵。

定义2.(全局结构信息的图表征)给定一个图G,学习全局结构信息图表征任务的目的是为完全图学习一种全局表征矩阵在这里插入图片描述,V为节点的数量,d为embedding后的节点维度大小。

在本文中,全局结构信息有两个功能:1)捕捉两个不同节点之间的长距离关系;2)根据不同的过渡步骤考虑不同的连接。稍后将进一步说明这一点。
正如我们前面所讨论的,在构造这样的全局图表征时,我们认为k阶(具有不同的k)图关系信息需要被捕获。为了验证这一点,图1给出了一些演示示例,展示了需要捕获A1和A2节点的k阶(k=1,2,3,4)关系信息的重要性。在图中,粗线表示两个顶点之间的强关系,而细线表示弱关系。在这里(a)和(e)展示了捕捉两个直接相连的节点之间简单的1阶信息的重要性(其中一个顶点的关系较强,另一个顶点的关系较弱)。(b)和(f)中显示了两阶信息,其中(b)中两个阶点都共享许多公共邻居,而(f)中它们之间只共享一个邻居。显然,2阶信息对于捕捉两个节点之间的联系强度是很重要的{它们共享的邻居越多,它们之间的关系就越强}。在©和(g)中,阐述了3阶信息的重要性。具体地说,在(g)中,尽管A1和B之间的关系很强,但是由于B和C以及C和A2之间的连接较弱,A1和A2之间的关系会减弱。而在©中,由于B与A2之间存在大量的共同近邻,使得A1与A2之间的关系保持较强的强度。显然,在学习好的全局结构信息图表征时,3阶信息是必不可少的。同样,这4阶信息也可以揭示图的全局关键属性,见(d)和(h)。在这里,(d)中,A1和A2的关系显然是强的,而在(h)这两个节点是无关的,因为不存在一条路径从一个节点到另一个节点。在缺乏4步关系信息的情况下,这些重要的区别是无法被正确捕捉的。
图1:在图表征中显示不同k节信息的重要性,k=1,2,3,4

图1:在图表征中显示不同k节信息的重要性,k=1,2,3,4

我们还认为,在学习图形表示时,区分对待不同的k阶信息是非常必要的。我们在图2 (a)中给出了一个简单的图。让我们集中学习图中节点A的表示。我们可以看到,A在学习它的表征时,接收到两种类型的信息:一种是来自B的一阶信息,另一种是来自所有C节点的两阶信息。我们注意到,如果我们不区分这两种不同类型的信息,我们可以构建一个如图2 (b)所示的替代图,其中A接收到与(A)完全相同的信息,但具有完全不同的结构。

图2:在图形表示中维护不同k阶信息的重要性。

图2:在图形表示中维护不同k阶信息的重要性。

在本文中,我们提出了一种学习精确图形表示的新框架,将各种k阶信息集成在一起,从而捕获与图形相关的全局结构信息。

3.2图的损失函数

在本节中,我们将讨论用于学习具有全局结构信息的图形表征的损失函数。假设我们现在有一个由节点和边组成的图。考虑一个节点w和另一个节点c。为了学习全局表示来捕捉它们之间的关系,我们需要理解这两个节点之间的联系有多强
让我们从几个问题开始。是否存在从w到c的一条路径? 如果是这样,如果我们从w开始随机采样一条路径,我们到达c的可能性有多大(在限定步数内到达的可能性)?为了回答这些问题,我们首先使用术语pk(c|w)来表示在k步内从w到c的概率。我们已经知道了1阶转移概率是多少,为了计算k阶转移概率我们引入下面的k阶转移矩阵:
在这里插入图片描述
我们观察到Akij(上标为k,下标为i,j)恰好是经过k步从节点i到节点j的转移概率,这直接导致了:
在这里插入图片描述
指的是节点w经过k步到达c的概率

让我们先考虑一个特殊的k。给定一个图G,考虑由k步组成的所有路径的集合,这些步骤可以从图中采样,从w开始到c结束(这里我们称w 为当前顶点,和c 为上下文顶点)。我们的目标是最大化:1)这些对来自图上的可能性,2)所有其他不是来自图的可能性(这里没看懂额。。。原文为Our objective aims to maximize:1) the probability that these pairs come from the graph, and 2) the probability that all other pairs do not come from the graph.)。
在Mikolov等人的skip-gram模型的激励下,我们采用Gutmann等人提出的噪声对比估计(NCE)来定义目标函数。在论文Neural word embedding as implicit matrix factorization中进行了类似的讨论,我们首先介绍定义在完全图上的k阶损失函数,如下所示:
在这里插入图片描述
其中:
在这里插入图片描述
这里pk(c|w)描述了w和c之间的k阶关系(从w到c的k阶转移概率)。σ(.)是sigmoid函数,定义为(x) = (1 + exp(-x))^(-1)。λ是一个超参数,表明负样本的数量。pk (V)是分布在图上的节点。术语在这里插入图片描述是当c’服从分布pk(V)时的期望,其中c’是负抽样得到的一个实例。这一项可以明确表示为:
在这里插入图片描述
这将导致一个局部损失(定义为(w,c)):
在这里插入图片描述
在此工作中,我们为所考虑的每个路径设置了最大长度。换句话说,我们假设是1≤k≤K。事实上,当k足够大时,转移概率收敛于某些已确定的值。分布pk©可计算如下:

在这里插入图片描述
注意,这里N是图G中的节点数,q(w’)是选择w’作为路径中第一个节点的概率,我们假设它遵循一个均匀分布,即, q(w’) = 1/N。这将导致:
在这里插入图片描述
根据Neural word embedding as implicit matrix factorization我们定义e = w·c,并且设∂Lk/∂e = 0.浙这将产生以下结果:
在这里插入图片描述
其中:在这里插入图片描述
这就得出结论,我们本质上需要将矩阵Y分解成两个矩阵W和C,其中W的每一行和C的每一行分别由节点w和c的向量各自表征构成,Y的分量为:
在这里插入图片描述
现在我们已经成功定义了损失函数,并证明了优化所提出的损失本质上是一个矩阵分解问题。

3.3矩阵分解优化

根据Levy等人的工作,为了减少噪声,我们将Yk中的所有负项替换为0。这就得到了正的k阶对数概率矩阵Xk,其中:
在这里插入图片描述
虽然矩阵分解的技术多种多样,但由于奇异值分解方法的简捷性,本文主要研究奇异值分解方法。SVD在多个矩阵分解任务中都取得了成功,被认为是降维的重要方法之一。
对于矩阵Xk, SVD将其分解为:
在这里插入图片描述
其中U和V是正交矩阵,∑是一个对角矩阵,由一组有序奇异值组成()。
我们可以用Xkd(k为上标,d为下标)近似原矩阵Xk(k为上标):
在这里插入图片描述
其中∑kd是由最上面的d个奇异值组成的矩阵,Ukd和Vkd分别是Uk和vk的前d列(分别是XX.T和X.T X的各自的前d个特征向量)。
这样,我们就可以将Xk矩阵分解为:
在这里插入图片描述
其中:
在这里插入图片描述
得到的Wk给出当前节点的表征作为它的列向量,Ck给出上下文节点的表征作为它的列向量。最终的矩阵Wk作为降维到d维后的节点表征从算法中返回,这些节点在图中捕获了k阶全局结构信息。
在我们的算法中,我们考虑了所有k阶转移(k = 1;2,…,K),其中K为预先选择好的常数。在我们的算法中,我们在学习图形表示时集成了所有这些k阶信息,这将在后面讨论。
注意到:在这里我们实际上是寻找一个从行空间Xk(上标k)到更低的序列的行空间Wk(上标k)的映射关系。因此,也可以利用流行的SVD之外的其他方法。例如增量SVD,独立分量分析(ICA),以及深度神经网络。我们的工作重点是学习图形表征的新模型,所以我们不纠结用什么替代方法。事实上,如果在这个步骤中使用其他方法,如稀疏自编码器,要证明我们表示的经验有效性是由于我们的新模型,还是来自于这个降维步骤中引入的任何非线性,就变得相对困难了。为了保持与Levy等人的一致性,我们在这项工作中只使用SVD。

4.算法

我们将在这一节详细介绍我们的学习算法。通常,图表征是作为特征被其他应用程序所提取的,例如分类和聚类。
在实际中,一个有效的编码k阶表征的方法是:对于每个节点,将其k阶表征作为全局特征连接起来。因为不同的k阶反映了不同的局部信息。表1显示了整个算法,我们在这里解释了算法的基本步骤。
在这里插入图片描述
步骤一:得到k阶转移概率矩阵Ak(k为上标),其中k=1,2…K
如章节3所示,给定图G,我们可以通过度矩阵D的逆与相邻矩阵S逆的乘积来计算k阶转移概率矩阵Ak(k为上标)。对于加权图,S是实矩阵,对于非加权图,S是二进制矩阵。我们的算法适用于这两种情况。
步骤二:得到每个k阶表征
我们得到k阶对数概率矩阵Xk(k为上标),然后用log(β)减去每一项,然后用0替换负项。然后,我们构造出Wk(k为上标)的行表征向量,其中我们介绍了一种对正项对数概率矩阵Xk(为上标)分解的方法(SVD)。最后,我们得到图上每个节点的k阶表示
步骤三:连接所有的k阶表征
我们将所有k阶表征连接起来,形成一个全局表示,它可以作为特征在其他任务中使用

5.SKIP-GRAM是GraRep的一个特例

GraRep的目标是学习图表征(基于矩阵分解来优化损失函数)。另一方面,SGNS在处理线性结构(如自然语言句子)方面取得了成功。它们之间有什么内在联系吗?在本节中,我们将SGNS作为GraRep模型的一种特殊情况来介绍。

5.1Skip-Gram在图上的明确(explicit?)的损失

SGNS的目的是在线性序列中表征单词,因此我们需要将图形结构转换成线性结构。深度游走揭示了一种均匀采样(截断随机遍历)的有效方法。该方法首先从图中均匀采样一个随机顶点,然后随机走到它的一个邻点,重复这个过程。如果节点序列的长度达到某个预设值,则停止并开始生成新的序列。这个过程可用于从图中产生大量的序列。
从本质上讲,对于非加权图,这种均匀采样策略是可行的,而对于加权图,则需要一种基于边权值的概率采样方法,而这在DeepWalk中是不适用的。本文提出了一种适用于加权图的增强SGNS方法(E-SGNS)。我们还注意到DeepWalk优化了与负采样不同的另一个损失函数(分级softmax)。
一开始,我们考虑在整张图上的所有的k阶损失L:
在这里插入图片描述
在这里f(·)是一个线性组合,它的参数定义如下:
在这里插入图片描述
我们关注的是一个特定对:(w,c)的丢失,它们是图中的第i和第j个节点。与3.2节类似,我们将偏导数赋值为0,得到:
在这里插入图片描述
在这里,M为k阶转移概率矩阵,Mi,j(i,j是下标)是指从节点i到节点j的转移概率。在这里插入图片描述是E-SGNS的分解矩阵,并且:
在这里插入图片描述
E-SGNS与GraRep模型的区别在于f(·)的定义。E-SGNS可以看作是k阶损失的线性组合,每个loss具有相等的权值。我们的GraRep模型没有做出这样强的假设,但允许从实际数据中学习它们(潜在的非线性)关系。直观地说,不同k阶转移概率的权值应该不同,这些权值的线性组合对于异构网络数据可能达不到理想的效果

5.2采样和转移概率之间的内在联系

在我们的方法中,我们使用转移概率来测量节点之间的关系。这是合理的吗?在本节中,我们阐明采样和转移概率之间的内在联系。
在随机游走产生的序列中,我们假设顶点w出现的总次数为:
在这里插入图片描述
其中γ是序列的总长度,αw(w为下标)是所有序列中选择(observing)节点w的概率。我们将节点w作为当前节点,那么c1作为其直接邻居(距离w 1步)的期望次数为:
在这里插入图片描述
这既适用于非加权图的均匀采样,也适用于我们提出的加权图的概率采样。
进一步,我们分析了上下文窗口大小为2的w和c的期望共现次数:
在这里插入图片描述
其中c’可以是任何w和c2的中间节点。也就是说,c’是w和c2之间共享的邻居。同样,我们可以推出k = 3,4…,K的方程:
在这里插入图片描述
接下来我们将它们加起来,并且两边同时除以K,导致:
在这里插入图片描述
其中:#(w,c)是为K步内w与c的期望共现计数。
根据对Mw,c(w,c为下标)的定义,我们可以得到:
在这里插入图片描述
现在,我们也可以计算把c作为上下文节点的期望次数,#©:
在这里插入图片描述
我们考虑所有可能的节点到c点的转移。为了发现SGNS模型的关系,我们考虑αw(w为下标)的一个特殊情况。假设αw(w为下标)服从均匀分布,得到αw = 1/N。我们把这些预期值放入方程在这里插入图片描述可得到:
在这里插入图片描述
其中D为序列中所有观测数据集合,也就是说,|D| = γK。矩阵Y变成和SGNS描述的矩阵一致了
这告诉我们SGNS本质上是GraRep模型的一种特殊形式,SGNS只用于处理在图上采样得到的线性序列。与缓慢而昂贵的采样过程相比,我们的方法有几个优点,特别是涉及调优的参数中,例如线性序列的最大长度、每个顶点的采样频率等等。

6.实验设计

在本节中,我们将通过实验来评估GraRep模型的有效性。我们对几个不同任务的实词数据集进行了实验,并与基线算法(baseline algorithms)进行了比较。

6.1数据库和任务

为了演示GraRep的性能,我们在三种不同类型的图(社交网络、语言网络和引文网络)上进行了实验,这三种图包括加权图和非加权图。我们对三种不同类型的任务进行了实验,包括聚类、分类和可视化。正如我们在前面几节中提到的,这项工作的重点是提出一个新的框架,用于学习具有全局结构信息的图形的良好表征,并旨在验证我们提出的模型的有效性。因此,除了SVD,我们不使用其他有效的矩阵分解方法,并在本节中重点介绍以下三个实词数据集。
1.20-Newsgroup(qwone.com/~jason/20Newsgroups/) 是一个语言网络,拥有大约20,000新闻组文档以及被分成了20个不同的组别。在这个网络中,每篇文档可以用TF-IDF为每个单词进行向量表征,并且使用余弦相似度计算两个文档之间的相似度。根据每对文档的相似度评分,构建语言网络。根据(Learning deep representations for graph clustering),为了展示我们模型的稳健性,我们还分别从3个、6个和9个不同的新闻组中构建了如下3个图(NG就是Newsgroup的缩写):
3-NG:comp.graphics, comp.graphics and talk.politics.guns;
6-NG: alt.atheism, comp.sys.mac.hardware, rec.motorcycles,rec.sport.hockey, soc.religion.christian and talk.religion.misc;
9-NG: talk.politics.mideast, talk.politics.misc, comp.os.mswindows.misc, sci.crypt, sci.med, sci.space, sci.electronics,misc.forsale, and comp.sys.ibm.pc.hardware
除了从(Learning deep representations for graph clustering)中描述的主题中随机抽取200份文档外,我们还对所有文档进行了实验比较。每个文档上的主题标签被认为是正确的。
该语言网络是一个完全连通的加权图,我们将以图表示为特征,展示聚类的结果。

2. Blogcatalog2 是一个社交网络,节点代表一个博客作者,边代表作者之间的关系,39中不同的主题类别作为作者们的标签
Blogcatalog是一个未加权的图,我们在多标签分类任务中测试学习到的表征形式的性能,其中我们将每个作者节点分类为一组标签。从我们的模型中生成图表征,每个基线算法都被认为是特征
我们将模型和每个基线算法生成的图形表示形式视为特征。

3. DBLP Network 是一个引文网络。我们从DBLP中提取作者引文网络,其中每个顶节表示一个作者,一个作者引用另一个作者参考文献的数量作为这两个节点之间的权重。我们一共选择了6个不同的热门会议,并将其分为3组,其中WWW和KDD分别作为数据挖掘,NIPS和ICML作为机器学习,CVPR和ICCV作为计算机视觉。
我们使用可视化工具t-SNE[31]对所有系统的学习表征进行可视化,该工具为学习表示提供定性和定量结果。
我们会在6.4.3中提供更多细节。
综上所述,本文分别对加权图和非加权图、稀疏图和稠密图进行了实验,实验中进行了三种不同类型的学习任务。我们使用的图表的更多细节如表Table2所示。

在这里插入图片描述

6.2 基线算法(Baseline Algorithms)

我们使用下面的图表征方法作为基线算法
1. LINE LINE是近年来提出的一种学习大规模信息网络中图形表征的方法。LINE定义了一个基于节点间的1阶和2阶关系信息的损失函数。提高度较小顶点性能的一种策略是通过扩展其邻域使图的密度增大。如果将1阶和2阶关系信息的表示连接起来,并调优节点最大数目的阈值,LINE将获得最佳性能。
2. DeepWalk DeepWalk是一种学习社交网络表征的方法。原模型仅适用于非加权图。对于每个节点,使用截断随机游走将图结构转换为线性序列。采用分层softmax的Skip-Gram模型来作为损失函数。
3. E-SGNS Skip-Gram是一种学习大语料库中每个词的表征形式的有效模型。该方法首先对未加权图采用均匀采样,对加权图采用与边权成比例的概率采样,生成线性节点序列,然后引入SGNS进行优化。该方法可以看作是我们的模型的一个特例,其中对每个k阶信息的不同表征向量取平均。
4. Spectral Clustering 谱聚类是一种合理的基线算法,其目标是最小化正则分割(NCut)。像我们的方法一样,谱聚类也可以分解矩阵,但是它只关注图的不同矩阵–拉普拉斯矩阵。从本质上讲,谱聚类与E-SGNS的区别在于它们的不同损失函数

6.3参数设置

如(Large-scale information network embedding)所示,对于LINE,我们将随机梯度下降(SGD)的mini-batch大小设为1,初始化学习率为0.025,负采样为5,样本总数为100亿。我们还将1阶和2阶的关系信息连接起来形成表征,并采用度较小节点的重构策略来实现最优性能。正如(Deepwalk:Online learning of social representations.)中提到的,对于DeepWalk和E-SGNS,我们将窗口大小设置为10,游走长度设置为40,每个单词都游走80次。根据(Line: Large-scale information network embedding.),当学习的图表征为L2正则时,LINE的效果更好,景尽管DeepWalk和E-SGNS在不正则的情况下就能达到最优性能。对于GraRep,我们发现L2正则可以得到更好的结果。我们根据每个系统的这些信息报告了所有结果。为了便于比较,对于(Line: Large-scale information network
embedding.)中使用的Blogcatalog network和DBLP network,表征维度d设置为128,对于(Learning deep representations for graph clustering.)中使用的20-NewsGroup network,表示维度d设置为64。对于GraRep,我们为Blogcatalog network和DBLP network设置β= 1/N,最大矩阵转移步长K=6,为20-NewsGroup network设置最大矩阵转移步长K=3。为了证明我们的模型捕获图的全局信息的优势,我们还对每个基线系统进行了在不同参数设置下的实验,这些将在下一节详细讨论。

6.4实验结果

在这一节中,我们给出了经验判断,我们的GraRep模型可以将不同kj阶的局部关系信息集成到不同类型的图的全局图表示中,从而可以有效地用于不同的任务。我们在https://github.com/ShelsonCao/GraRep 提供了GraRep的源代码。

6.4.1 20-Newsgroup Network

首先,我们利用k-means算法学习表征,通过聚类任务在语言网络上进行实验
为了评估结果的质量,我们报告了每个系统超过10次不同的运行的平均归一化互信息(NMI)评分。为了理解不同维数d对最终结果的影响,我们还对DeepWalk、E-SGNS和谱聚类将维数d设置为192时的结果进行了展示。对于LINE,我们采用了他们工作中提出的重建策略,通过增加邻居的邻居作为额外的邻居来提高性能。我们为实验设置k-max= 0,200,500,1000,其中k-max是一个参数,用于控制如何将高阶邻居添加到图中的每个阶点。
如Table3所示,每一列的最高结果以粗体突出显示。我们可以看到GraRep始终优于此任务的其他基线方法。对于DeepWalk,E-SGNS和谱聚类,增加d的表征维度对于提高性能并不是很有效。我们相信这是因为更高的维度并没有为表征提供不同的补充信息。对于LINE来说,重构策略是有帮助的,因为它可以捕获超过1阶和2阶的局部信息之外的图形的额外结构信息
在这里插入图片描述值得一提的是,GraRep和LINE在小图的情况下可以取得很好的性能。我们相信这是因为这两种方法在图很小的情况下也可以捕获丰富的局部关系信息。此外,对于标签较多的任务,如9NG, GraRep和LINE的性能比其他方法要好,GraRep的性能最好。一个有趣的发现是,当将维度d设置为16时,谱聚类的性能最好。而对于其他算法,当d设置为64时,得到的结果最好。当我们评估参数的敏感性时,我们在Figure5中显示了这些结果。
在这里插入图片描述由于篇幅有限,我们不报告所有基线方法中d=128和d=256以及k-max=500、1000的详细结果,且不考虑LINE的重构策略,这些结果并不优于表Table3所示的结果。在6.5节中,我们将进一步讨论参数敏感性的问题

6.4.2 Blogcatalog Network

在这个实验中,我们关注于一个社交网络上的监督任务。我们以学习到的图形表征为特征,通过多标签分类任务来评价不同图形表征的有效性
我们使用LIBLINEAR库来训练one-vs-rest逻辑回归分类器,我们运行这个过程10轮,并报告平均的Micro-F1 and Macro-F1度量。对于每一轮,我们随机采样10%到90%的节点并使用这些样本或训练,然后使用剩余的节点进行评估。我们分别将k-max设置为0,200,500和1000,当k-max=500时,我们得到了最佳性能。
Table4报告了GraRep和每个基线算法的结果。每个列对应于一个特定的训练/测试拆分,其最高性能以粗体突出显示。总的来说,GraRep明显优于其他方法,特别是在只有10%的顶点用于训练的情况下。这表明GraRep模型学习到的不同类型的丰富的局部结构信息可以用来相互补充,以捕获图形的全局结构属性。相对于现有的基线方法,尤其是在数据相对匮乏的情况下,这是一个显著的优势
在这里插入图片描述

6.4.3 DBLP Network

在这个实验中,我们通过研究一个真实的引文网络DBLP,来观察学习到的表征。我们将学习到的图形表征形式输入标准的t-SNE工具来布局图形,来自相同研究领域(数据挖掘、机器学习或计算机视觉领域之一,见第6.1节)的作者使用相同的颜色。图在二维空间中显示,Kullback-Leibler散度报告为(L. Van der Maaten and G. Hinton. Visualizing data using t-sne. JMLR, 9(2579-2605):85, 2008.)。它捕获输入对相似性误差,它在二维平面上的预测值如显示中所示(KL散度得分越低,表明性能越好)
在t-SNE工具箱的帮助下,我们设置了相同的参数配置,并导入每个算法生成的表征。从Figure3中,我们可以看出,使用谱聚类的布局信息不是很丰富,因为不同颜色的节点是混合在一起的。对于DeepWalk和E-SGNS,结果看起来要好得多,因为大多数相同颜色的节点似乎形成了组。然而,节点仍然没有出现在边界清晰的可分离区域中。对于LINE和GraRep,每组的边界变得更加清晰,不同颜色的顶点出现在清晰可区分的区域。GraRep的结果似乎更好,每个区域的边界都比LINE更清晰。
在这里插入图片描述Table5报告了迭代结束时的KL散度。在相同的参数设置下,KL散度越低,表示图形表示效果越好。从这个结果中,我们还可以看到GraRep比所有其他基线方法产生更好的表示。
在这里插入图片描述

6.5参数敏感度

我们在这一节讨论参数灵敏度。具体地说,我们评估了最大步长K的不同选择以及d维表征如何影响我们的结果

Figure4显示了Blogcatalog数据中K在不同选项上Micro-F1 and Macro-F1得分。我们可以观察到设置K=2比设置K=1有显著的改善,K=3的性能进一步优于K=2。这意味着不同的k阶可以学习到互补的局部信息。此外,如第3节所述,当k足够大时,学习到的k阶关系信息就会变弱,趋于稳定分布。
在这里插入图片描述根据经验,我们可以观察到K=7的性能并不比K=6好。在本文中,为了可读性和清晰度,我们只给出K=1、2、3、6和7的结果。我们发现K=4的性能略优于K=3,而K=5的结果与K=4相当。

Figure5显示了在3NG和9NG数据上,在维度d的不同设置下,每种算法的NMI评分。我们可以观察到GraRep始终优于其他学习相同维度表示的基线算法。这组实验是对Table3的补充。有趣的是,所有算法在d = 64时都能获得最优性能。当我们将d从64增加到更大的值时,似乎所有算法的性能都开始下降。尽管如此,我们的GraRep算法仍然优于不同d值的基线系统。
在这里插入图片描述
Figure6显示了不同维度上的运行时间以及不同图形大小上的运行时间。在Figure6(a)中,我们将K从1设置为7,其中每个互补特征向量的维数为128。这组实验是在包含大约10,000个节点的Blogcatalog数据集上进行的。可以看出,随着维数的增加,运行时间近似线性增加。在Figure6(b)中,我们根据图的大小分析运行时间。这组实验是在20-NewsGroup数据集的不同大小上进行的。结果表明,随着图形尺寸的增大,运行时间显著增加。导致运行时间大幅增加的原因主要是计算矩阵的幂和SVD过程所涉及的时间复杂度较高

在这里插入图片描述

7.总结

本文提出了一种学习更好的图形表示的新模型——GraRep。我们的模型将k阶损失函数定义在集成了与图相关的丰富局部结构信息的图上,它捕获了图的全局结构属性。我们也提供数学推导证明模型,并建立与以往研究成果的联系。从经验上看,学习表征可以作为聚类、分类等其他学习问题的特征。该模型有一个局限性:在学习过程中需要花费大量的时间来计算矩阵的幂和SVD。未来的工作将包括研究近似矩阵代数操作的常用和在线方法,以及研究通过使用深度架构来学习低维表示来代替SVD的替代方法。

8.感谢

作者要感谢匿名审稿人的有益评论。作者也要感谢Fei Tian, Qingbiao Miao and Jie Liu对这项工作的建议和帮助。本文的第一作者是SUTD的实习生。这项工作得到了SUTD grant ISTD 2013 064和Temasek Lab project IGDST1403013的支持。

9.参考文献

参考文献啥的就不列出了,想看的可以下载该论文看,论文的下载地址在最前面就已经列出了。

猜你喜欢

转载自blog.csdn.net/weixin_43968119/article/details/86091949