携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第22天,点击查看活动详情
前言
Hello! 非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~ 自我介绍 ଘ(੭ˊᵕˋ)੭ 昵称:海轰 标签:程序猿|C++选手|学生 简介:因C语言结识编程,随后转入计算机专业,获得过国家奖学金,有幸在竞赛中拿过一些国奖、省奖...已保研。 学习经验:扎实基础 + 多做笔记 + 多敲代码 + 多思考 + 学好英语! 唯有努力💪
知其然 知其所以然!
本文仅记录自己感兴趣的内容
简介
会议:KDD '18: Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (CCF-A)
年度:2018/08/19
ABSTRACT
网络嵌入近年来受到越来越多的研究关注
现有的方法表明,高阶邻近度在捕捉网络的底层结构方面起着关键作用
然而,保持高阶邻近性的两个基本问题仍然没有解决
- 首先,尽管不同的网络和目标应用通常需要不同阶次的邻近度,但所有现有的方法都只能保持固定阶次的邻近度
- 其次,在给定一定阶次邻近性的情况下,现有方法不能同时保证精度和效率
为了应对这些挑战,我们提出了一种基于奇异值分解框架的网络嵌入方法AROPE(AROPE)。从理论上证明了特征分解重权定理,揭示了不同阶次的邻近度之间的内在联系
利用这一定理,我们提出了一种可伸缩的特征分解解来导出嵌入向量,并将它们在任意阶的邻域之间移动
理论分析表明,该方法在不同阶次间移动嵌入向量具有较低的边际代价,在给定阶次的情况下,我们的方法可以得到全局最优解,并且该方法的总时间复杂度与网络规模呈线性关系
在几个大规模网络上的大量实验结果表明,我们提出的方法在包括网络重建、链路预测和节点分类在内的各种任务中都显著且一致地优于基线
1 INTRODUCTION
网络嵌入是一种在保持网络固有性质和结构的前提下,用低维向量表示节点的方法,近年来受到越来越多的研究关注。这样,基于特征的机器学习算法可以很容易地应用于网络分析。前人的工作已经证明,除了成对边之外,节点之间的高阶邻近度对于捕捉网络的底层结构非常重要[3,8,13,21,23],因此可以为学习嵌入向量提供有价值的信息。因此,人们提出了一系列在网络嵌入中保持高阶邻近度的方法
尽管取得了成功,但仍有两个根本问题没有解决
首先,现有的所有方法都只能保持定阶的邻近性。然而,具有特定顺序邻近度的嵌入不一定在所有网络和目标应用程序上执行得最好[3,24]
例如,在分类任务中,不同粒度的类通常需要不同阶的邻近度,即粗粒度的类需要高阶的邻近度,而细粒度的类需要低阶的邻近度[24]
我们还对阶数的影响进行了实证验证,如图5所示。要合并不同阶数的邻近度,现有方法必须多次重复运行,并分别为每个节点计算多次嵌入
例如,DeepWalk[23]通过超参数(即预定义的窗口大小)设置顺序,并且每次对于不同的超参数必须从头开始重新运行算法
考虑到更一般的情况,不同阶的邻近度需要用不同的权重来保存,例如像[14]中那样组合原子邻近度以形成更精细的邻近度度量,现有的方法由于不变地结合高阶邻近度而面临更多的困难。
其次,即使给定一定的阶次邻近性,现有方法如何同时保证精度和效率仍然是一个悬而未决的问题。例如,一系列的工作[13,23]采用随机游动来探索高阶逼近,并使用随机梯度下降(SGD)进行优化。由于目标函数不是凸的,而且为了保证效率,通常将优化的迭代次数设置得很小,这些方法不能保证全局最优解[4]。另一方面,基于矩阵分解[3,35]或深度学习[34]的网络嵌入方法存在效率问题。如何在保持任意阶邻近性的情况下同时保证精度和效率就更具挑战性了。
提出了一种基于奇异值分解框架的网络嵌入方法AROPE1(AROPE1)
我们从理论上证明了特征分解重权定理,它揭示了不同阶邻近度之间的内在联系是对维度进行重加权和重新排序
在这个定理的基础上,我们提出了一种可伸缩的解决方案来导出嵌入向量。同时,我们可以在任意阶的邻近度之间移动嵌入向量,即即使在不同阶的邻近度被任意加权的一般设置下,也可以从一些基本嵌入向量中有效地获得任意邻近度的嵌入向量
理论分析表明:
- i)在不同的阶数和权值之间移动嵌入向量时,我们的方法具有较低的边际代价
- ii)给定一定的阶数,我们的方法可以得到全局最优解
- iii)我们的方法的总时间复杂度是关于网络规模的线性的
在几个具有数百万个节点和边的大规模网络上进行了广泛的实验
实验结果表明,在网络重构、链路预测和节点分类等网络嵌入应用中,我们提出的方法在性能上都明显优于现有的网络嵌入方法
综上所述,本论文的主要贡献如下:
- 提出了一种新的网络嵌入方法AROPE,该方法以较低的边际代价支持任意阶次的移位
- 我们证明了特征分解重加权定理,以揭示奇异值分解框架中不同阶邻近度之间的内在联系。理论分析表明,该方法能够在线性时间复杂度下得到全局最优解
- 大量的实验结果表明,该方法在两个大型网络上的网络重构和链路预测的精度都提高了100%以上
2 RELATED WORK
网络嵌入最近已经成为一种用低维向量来表示节点的范例,旨在弥合网络分析和机器学习技术之间的差距。接下来,我们简要回顾了一些有代表性的网络嵌入方法,读者可以参考文献[8]进行全面的综述
早期的网络嵌入方法,也称为图嵌入,被作为降维问题来研究[36]。然而,这些方法侧重于两两相似。如何保持高阶邻近关系是最近一个非常吸引人的研究问题
- DeepWalk[23]首先提出使用截断随机游走来探索高阶邻接关系,并利用Skipgram模型[20]来推导嵌入向量。Line[30]采用了类似的想法,但将步行长度设置为具有明确目标函数的长度。
- Node2vec[13]是进一步提出的,它具有潜在的偏向随机游动,以获得更大的灵活性
- 如文[4,25]所示,这些基于随机游动的方法等价于分解高阶邻近矩阵。通过使用有效的优化方法,如随机梯度下降(SGD)[30],这些方法比一些矩阵分解方法更具伸缩性,但不能保证全局最优解
另一方面,还采用了显式矩阵分解方法来保持高阶逼近性
- GraRep[3]将奇异值分解直接应用于高阶邻接矩阵,取得了良好的性能
- 在[35]中应用了非负矩阵分解,以保持网络的高阶邻近性和社区结构。然而,这两种方法都存在可扩展性问题,无法应用于大规模网络。为了解决效率问题
- [4]引入了一个保持高阶邻近度的统一框架,并提出了一种稀疏化技术来加速SVD方法
- 在[38]中,在矩阵分解中引入了另一种逼近技术。尽管这些方法有了显著的改进,但仍然不能保证得到全局最优解
- 这种困境的一个例外是HOPE[21],它使用广义奇异值分解来保持具有线性时间复杂度的有向网络中的高阶邻近性。然而,它需要一种特殊形式的高阶近似。实际上,希望的目标函数是我们方法的一个特例,它将阶数设为无穷大,权重设为指数衰减(见定义3.1)。除此之外,希望不能保持其他order的接近,也不能在不同订单之间移动
研究了保持高阶邻近度的深度学习方法
- SDNE[34]首先考虑了网络嵌入中的高度非线性,并使用深度自动编码器同时保留了一阶和二阶邻近度。然而,SDNE只能保持前两阶的邻近性。此外,它还存在效率问题
探讨了如何将边信息融入到网络嵌入中。例如
- 文献[5,9]将元路径引入到嵌入异类信息网络中以处理节点类型
- 在[17,37]和[22,32,39]中分别将节点属性和节点标签合并到网络嵌入中
动态网络嵌入[19,41,42]进一步考虑了网络的演化特性
- DHNE[33]扩展了SDNE以保持超网络中的不可分解性
在本文中,我们关注的是最基本的情况,即只有静态网络结构可用
综上所述,如何在很大程度上保证高阶邻近关系的效率和准确性仍然是文献中未解决的问题
此外,现有的方法只能保持固定顺序的邻近度,不能跨顺序移动
3 PROBLEM FORMULATION
3.1 Notation
假设我们有一个网络,有个节点和条边
我们用表示邻接矩阵。和分别表示其第行和第列
是节点和之间边的权值
在本文中,我们主要考虑无向网络,所以是对称的,
对于无权网络是0或1,对于有权网络是任意非负数。表示的转置
在本文中,我们使用粗体大写字符表示矩阵,使用粗体小写字符表示向量。函数用花絮标记,例如F(·)。
3.2 Arbitrary-Order Proximity Preserved Network Embedding
Definition 3.1 (High-Order Proximity)
给定无向网络的邻接矩阵,将高阶接近度定义为的多项式函数
其中
- 为顺序
- 是权重值
请注意,我们将阶的接近程度称为从阶到阶的所有阶的加权组合,而不是单独的阶
如果和收敛,我们允许 按照前面的工作,我们将假设的。当提及不同的高阶邻近时,我们使用下标来区分,例如
先前的研究表明,许多最先进的网络嵌入方法显式或隐式地保留了这种高阶邻近性[4,25,38]
值得一提的是,一些工作表明额外的非线性包装函数是重要的[4],而其他工作表明额外的函数具有有限的效果[38] 我们在本文中不考虑包装函数,留给以后的工作
邻接矩阵可以用其他变换形式替换,如拉普拉斯矩阵[1],只要替换矩阵是稀疏对称的
为了简单起见,我们在本文的其余部分主要讨论邻接矩阵,但类似的想法可以直接推广
我们还重用了的表示法,当函数作用于一个数字时,Eq.(1)中的矩阵乘积被数字的乘积代替
为了在低维向量空间中保持高阶接近,广泛采用的方法是矩阵分解,它最小化了以下目标函数:
其中
- 是内容/上下文嵌入向量
- 是空间的维数
- 在不失一般性的情况下,我们使用作为内容嵌入向量
根据Ercart-Young定理,通过截断SVD[10]( truncated SVD)可以得到Eq.(2)的全局最优解
- 其中为的d顶维SVD结果( top-d SVD )
- 其中,每一列对应一个左/右奇异向量
- 为奇异值降序对角矩阵
将乘入即可得到嵌入:
但是,直接计算和执行既耗时又耗时
此外,由于不同的网络和目标应用通常需要不同订单的临近,如何在不同订单之间转换也是一个挑战
在下一节中,我们将展示一个可伸缩的解决方案,以保留基于上述公式的任意阶邻近性,该解决方案支持跨阶转移
4 AROPE: THE PROPOSED METHOD
4.1 Problem Transformation
求解方程(2)(3)中的SVD问题,我们首先将其转化为特征分解问题
表示的顶d特征分解为,其中
- 是特征值按绝对值降序排列的对角矩阵
- ,每一列对应一个特征向量
- 也被称为特征对
然后,通过以下定理将奇异值分解与特征分解联系起来
奇异值分解与特征分解得到的结果之间是有关联关系的
证明可以在线性代数教科书中找到,如[29]
利用该定理,我们可以很容易地由式(4)的特征分解得到SVD的结果,由式(5)得到SVD的结果
接下来,我们只需要专注于求解S的特征分解
利用特征分解得到的结果间接得到SVD的结果
4.2 Eigen-Decomposition Reweighting
为了高效地求解S的特征分解,我们的关键发现是利用Eq.(1)中定义的任意阶近邻的形式,不同近邻的特征分解结果是高度相关的
具体来说,我们有如下定理
定理表明,在不对S进行特征分解的情况下,用替换,就可以由的特征分解结果得到的特征分解结果
要计算的特征分解,只需要计算的特征分解 再对A特征分解得到的使用函数即可 即为的特征分解()
事实上,该定理揭示了不同阶近邻之间的内在关系。如果我们将每个特征向量视为网络中节点的“坐标”,将每个特征值视为坐标的“权值”,那么,保持不同阶的邻近性就相当于对维度进行重新加权
另一个问题是,在进行特征分解加权之后,特征值的阶数可能会发生变化,即的顶d特征分解不一定是A的顶变分解的加权
为了解决这个问题,我们可以证明任意的顶d特征分解保证是A的顶l特征分解的重权,其中是网络和d的函数
具体来说,表示为的顶退化值,其绝对值由高到低排列
从定理4.2,我们有
即是在高阶变换之前的阶数
因此,我们只需要顶部 的特征分解就可以得到为
我们可以证明以下定理:
我们还证明定理4.3在以下推论中是紧密的
由上述定理可知,要得到任意的顶维特征分解,需要计算的顶维特征分解,然后对维数进行加权和排序,再利用加权后的顶维得到嵌入向量。
对于和之间的关系,对于随机网络的最简单情况,即Erdos Renyi模型,由于Wigner半圆定律[11],对于足够大的网络,我们有l≈2d的期望关系。对于幂律分布的随机网络,在温和的[7]条件下也可以推导出相同的关系
对于真实网络,这种关系与网络的结构有关,但我们验证了我们所实验的所有网络都满足
一个重要的观察是,由于的顶特征分解是由任意阶近邻共享的,我们可以通过预计算特征分解,以较低的边际成本在不同阶的近邻之间移动
4.3 The Framework and Complexity Analysis
我们在算法1中展示了我们的算法框架
本文提出的AROPE方法利用特征分解重加权定理,可以得到任意阶近邻的全局最优解。此外,我们的方法还可以处理不同阶近度任意加权的一般情况
我们的方法的一个简化版本是将相等的权重或指数衰减的权重分配给不同的顺序
人们还可能关心我们方法的数值稳定性,特别是当特征值非常相似时
在实践中,我们发现我们的方法是相当稳定的,潜在的原因是建立的数值方法在解决特征分解问题上的成功
由算法可知,通过迭代逼近[16],行1的时间复杂度为,其中
- 为节点数
- 为边数
- 为迭代次数
从第3行到第6行,每个循环的时间复杂度为
所以总复杂度是
这有两个优点
- 首先,复杂度与网络规模(分别为和)呈线性关系,因此我们的方法具有扩展性,可以应用于大规模网络
- 其次,由于,通常为,因此第一项占主导地位,并且计算多个任意阶邻近需要较低的额外时间,即我们的方法支持跨阶移动,且边际成本较低
4.4 Special Cases of the Proposed Method
接下来,我们展示了我们的方法合并了许多常用的高阶近似作为特殊情况
4.4.1 Common Neighbors and Propagation
在网络分析中,有一种简单而被广泛研究的邻近测度是共同邻居[18],即反映节点的邻居的邻居的结构
如果我们将顺序设为,权值设为,即:
为了推广公共邻域,提出了一些基于传播的邻域,并考虑了网络的高阶结构
我们的方法在[14]中加入了常用的基于传播的接近度,通过设置为:
其中为传播权值
4.4.2 Katz Proximity
另一种常用的接近测度是Katz接近[15],它是权重指数衰减的不同阶接近的集合
我们的方法可以保持Katz接近度定义为
其中β是一个常数,控制权重衰减的速度
为了保证接近收敛,β必须小于A[29]的谱半径的倒数
4.4.3 Eigenvector Centrality
我们方法的另一种特殊情况是将维度设为d = 1,即我们只分析第一个维度的作用
我们发现,第一个维度实际上与特征向量中心性[2]高度相关,这是一种广泛应用于测量网络中节点重要性的方法
我们在下面的定理中说明这种情况
利用定理4.2和等式(3)(4),我们有:
由[26]可知,,其中为网络的平均度
然后,根据定理4.3,我们有,这就得到了结果
该定理表明,我们的嵌入向量的第一个维度包含所有的特征向量中心性信息,无论使用什么高阶接近
换句话说,我们可以使用我们的嵌入向量来衡量节点的重要性
有趣的是,这与节点的结构身份有关,这是网络嵌入[27]中最近出现的一个主题
虽然我们在设计我们的方法时没有表明这样的目的,但特征向量中心性是我们方法的一个特例
5 EXPERIMENTS
5.1 Experimental Setting
5.2 Preserving the High-Order Proximity
5.3 Network Reconstruction
5.4 Link Prediction
5.5 Node Structural Role Classification
......
6 CONCLUSION
本文研究了网络嵌入中保持任意阶邻近性的问题。通过证明和利用特征分解重加权定理,我们提取了不同阶近度之间的内在关系,并提出了一种可扩展的AROPE方法来导出嵌入向量
理论分析表明
- 我们的方法支持以较低的边际成本跨任意阶的移动
- 给定某个阶,我们的方法可以得到全局最优解
- 我们的方法的总体时间复杂度与网络大小成线性关系
大量的实验结果证明了该方法在网络嵌入中的几种应用中的有效性
未来的一个方向是将该框架推广到有向网络中,并结合节点内容和节点标签等侧信息
读后总结
主体思路还是利用矩阵分解的思想
创新之处在于可以模拟不同阶数的矩阵分解,用于提取不同阶数的特征
A为邻接矩阵,S为其高阶表示,如下(通过函数)
我们的目标就是分解S,得到
方法是利用SVD求得
再下面的经过运算,得到(作为最后的嵌入)
但是使用SVD直接计算U、V计算量非常大,销量低,故转为求S的特征分解
再利用求得的特征分解间接求得嵌入(文中有定理及其证明)
厉害,很多知识点都是课本上提到过的,但是一组合起来,没有想到可以这样应用,厉害厉害👍
结语
文章仅作为个人学习笔记记录,记录从0到1的一个过程
希望对您有一点点帮助,如有错误欢迎小伙伴指正