CN109740106A - 基于图卷积神经网络的大规模网络介数逼近方法、存储装置及存储介质 - Google Patents
基于图卷积神经网络的大规模网络介数逼近方法、存储装置及存储介质 Download PDFInfo
- Publication number
- CN109740106A CN109740106A CN201910019855.1A CN201910019855A CN109740106A CN 109740106 A CN109740106 A CN 109740106A CN 201910019855 A CN201910019855 A CN 201910019855A CN 109740106 A CN109740106 A CN 109740106A
- Authority
- CN
- China
- Prior art keywords
- network
- betweenness
- node
- model
- neural network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 42
- 238000003860 storage Methods 0.000 title claims abstract description 30
- 238000012549 training Methods 0.000 claims abstract description 49
- 239000013598 vector Substances 0.000 claims abstract description 43
- 238000003062 neural network model Methods 0.000 claims abstract description 8
- 238000013507 mapping Methods 0.000 claims abstract description 7
- 238000004422 calculation algorithm Methods 0.000 claims description 65
- 230000006870 function Effects 0.000 claims description 43
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 claims description 14
- 230000004913 activation Effects 0.000 claims description 10
- 238000009826 distribution Methods 0.000 claims description 10
- 239000011159 matrix material Substances 0.000 claims description 9
- 230000007246 mechanism Effects 0.000 claims description 6
- 238000013527 convolutional neural network Methods 0.000 claims description 5
- 230000000306 recurrent effect Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 4
- 210000002569 neuron Anatomy 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 abstract description 23
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000005070 sampling Methods 0.000 description 26
- 238000004220 aggregation Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000002474 experimental method Methods 0.000 description 5
- 238000004088 simulation Methods 0.000 description 5
- 230000002776 aggregation Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 239000013604 expression vector Substances 0.000 description 4
- 238000009499 grossing Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 241000517645 Abra Species 0.000 description 3
- ZPOLOEWJWXZUSP-WAYWQWQTSA-N bis(prop-2-enyl) (z)-but-2-enedioate Chemical compound C=CCOC(=O)\C=C/C(=O)OCC=C ZPOLOEWJWXZUSP-WAYWQWQTSA-N 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
本发明提出了一种基于图卷积神经网络的大规模网络介数逼近方法、存储装置及存储介质,包括以下步骤:获取训练网络;利用训练网络训练表示学习模型,其中,表示学习模型为网络的节点到表示向量映射的神经网络模型;根据表示学习模型和多层感知器训练深度介数模型,其中,深度介数模型为具备多层感知器的神经网络模型;通过深度介数模型计算目标网络中节点的介数。该基于图卷积神经网络的大规模网络介数逼近方法,通过表示学习和多层传感器技术构建的深度介数模型,能够很好的解决大规模网络中介数逼近问题,介数计算准确率高,计算速度快。另外,本发明还提出了一种计算机可读存储介质和一种存储装置。
Description
技术领域
本发明涉及人工智能和网络科学技术领域,尤其涉及一种基于图卷积神经网络的大规模网络介数逼近方法、存储装置及存储介质。
背景技术
网络无处不在,不管是军事网络、病毒网络、社交网络、生物网络,还是交通网络,随着大数据时代的来临,这些网络的规模在不断增大,连接也越来越紧密,如何从这些错综复杂,动态变化的网络中,快速计算节点的介数,从而为分析这些网络中节点的介数分布,在如今的大数据时代,无疑具有重大的现实意义。
BC(Betweenness Centrality,介数中心性)是诸多网络分析(例如社交网络,交通网络,互联网和电网网络)中的基本指标之一,节点的介数定义为:网络中所有最短路径中经过该节点的路径的数目占最短路径总数的比例。介数计算是网络科学中许多应用的关键部分,比如社区检测和网络瓦解,也是网络科学领域的一个经典问题,一直是网络科学研究者们的研究重点。目前介数计算最优的精确解法是Brandes算法,对于无权网络来说其算法复杂度为O(|V||E|),对于加权网络来说其算法复杂度为O(|V||E|+|V|2log(|V|)),其中,|V|表示网络中的节点数目,|E|表示网络中的边的数目,因此该精确算法无法扩展到大规模应用场景中去。
目前,对网络中介数的计算问题的解决方案主要是基于采样方法,其基本思想是利用网络中的部分节点而不是全部节点来计算节点介数的逼近值,具体来说主要分为以下三类:
1)基于来源节点采样方法。源采样方法首先从网络中采样获得若干节点,作为枢轴节点。然后所有节点的介数计算均从这些枢轴节点出发,以此来计算其他非枢轴节点的路径依赖性并用于估计真实的介数值。
2)基于点对采样的方法。节点对采样的思想是直接从网络中随机采样出若干节点对,并计算它们之间的依赖关系,以此来用以逼近网络中所有节点的介数值。
3)基于有界遍历方法。有界遍历的思想是对具有特定最短距离的节点对进行采样,计算它们的相互依赖关系并使用这些值来近似介数中心性值。
具体地,现有技术中提出了如下算法:
一种名为RAND1的来源节点采样算法,该算法在来源节点采样上主要提出了均匀采样、度采样、最大或最小距离采样等四种方法;
一种名为RAND2的来源节点采样算法,该算法不同与RAND1,主要是对接近枢轴节点且具有较低贡献节点进行均匀随机采样;
一种名为GSIZE的来源节点采样算法,该算法主要根据网络中的节点个数进行渐进式采样;
一种名为ABRA的点对采样算法,该算法首先利用网络的结构特征和Rademacher平均复杂度来确定采样点对的个数,以此来确保采样算法的精度,同时利用渐进性采样直至终止条件满足,然后用这些采样得到的点对来计算网络中节点或边的介数,以此作为真实介数的逼近值;
一种名为DIAM的点对采样算法,该算法主要基于图中节点间的最短路进行采样,同时提供了一种采样算法的误差范围理论保证。该算法所需的采样节点个数与网络中的总节点个数独立,而只与采样所需的最短路中的节点数最大值相关;
一种名为KPATH的有界采样算法,该算法只对节点对中最短距离在K范围内的节点进行考虑,因此是一种典型的有界采样算法;
一种名为EGO的有界介数计算算法,该算法在计算节点介数时,只考虑节点及其邻居组成的网络(又称为自我网络或者Ego network),然后计算该节点在自我网络中的介数值,以此来作为其在真实网络中介数的逼近值。
上述技术的核心是根据某一准则,从网络中采样得到若干点(点对或者子图)用于对真实网络节点介数的逼近。尽管有的算法宣称有一定的误差范围保证。但它们大都需要在计算精度和运行时间上做权衡。同时大部分算法在处理大规模网络时非常耗时,无法实现大型动态网络上节点的实时计算,而且不能适应于动态网络中节点的计算,严重限制了其实际应用。
发明内容
本发明旨在至少在一定程度上解决现有技术中的问题。
为此,本发明的第一个目的在于提出一种基于图卷积神经网络的大规模网络介数逼近方法,以解决大规模网络中介数逼近问题,且介数计算准确率高,计算速度快。
本发明的第二个目的在于提出一种计算机可读存储介质。
本发明的第三个目的在于提出一种存储装置。
为达到上述目的,本发明第一方面实施例提出了一种基于图卷积神经网络的大规模网络介数逼近方法,包括以下步骤:获取训练网络;利用所述训练网络训练表示学习模型,其中,所述表示学习模型为网络的节点到表示向量映射的神经网络模型;根据所述表示学习模型和多层感知器训练深度介数模型,其中,所述深度介数模型为具备多层感知器的神经网络模型;通过所述深度介数模型计算目标网络中节点的介数。
根据本发明实施例的基于图卷积神经网络的大规模网络介数逼近方法,通过表示学习和多层传感器技术构建的深度介数模型,能够很好的解决大规模网络中介数逼近问题,介数计算准确率高,计算速度快。
另外,根据本发明上述实施例的基于图卷积网络的大规模网络介数逼近模型还可以具有如下附加的技术特征:
根据本发明的一个实施例,通过下式训练得到所述表示学习模型:
其中,ReLU表示神经网络的激活函数,Xv∈Rc,表示节点v的原始特征,c表示节点的原始特征的维度,GRUCell表示带有门限机制的递归神经网络的激活函数,表示GRUCell的更新门,表示GRUCell的重置门, ⊙表示矩阵对应元素相乘,N(v)表示节点v的邻居节点集合,V表示所述训练网络的节点集合,分别表示节点v和邻居节点在第l次迭代时的特征向量,l∈[1,K],ΘENC={W0∈Rc×p,W1,U1,W2,U2,W3,U3∈Rp×p},表示ENC函数参数集合,A表示邻接矩阵,其中p表示节点的表示向量的维度,p<c。
根据本发明的一个实施例,所述根据所述表示学习模型和多层感知器训练深度介数模型,包括:计算所述训练网络中节点v的真实介数值bv;根据所述表示学习模型并利用多层感知器计算所述节点v的介数逼近值yv;根据所述介数逼近值yv和所述真实介数值bv计算损失函数;根据损失函数并利用Adam算法得到所述深度介数模型。
根据本发明的一个实施例,根据如下公式计算节点v的真实介数值bv:
其中,σuv表示来源节点u和节点v之间的最短路条数,σus表示所述来源节点u和以所述来源节点u为根的最短路树上节点s的最短路条数,Pu(s)表示所述节点s的前向节点集合,δu·(s)表示节点s的来源依赖关系,其中,节点v位于所述来源节点u到所述节点s的最短路树上。
根据本发明的一个实施例,根据如下公式计算所述节点v的介数逼近值yv:
yv=DEC(hv;ΘDEC)=W5ReLU(W4hv)
其中,ReLU表示神经网络的激活函数,ΘDEC={W4∈Rp×q,W5∈Rp}表示DEC函数的参数集合,其中p表示节点的表示向量的维度,q表示神经网络隐含层的神经元个数。
根据本发明的一个实施例,所述根据损失函数并利用Adam算法得到所述深度介数模型,包括:根据损失函数并利用Adam算法更新模型参数Θ={ΘENC,ΘDEC},其中,损失函数Loss的表达式为
根据本发明的一个实施例,利用BA模型生成所述训练网络,或者,按照幂律分布生成所述训练网络。
根据本发明的一个实施例,所述基于图卷积神经网络的大规模网络介数逼近方法,还包括:根据所述介数逼近值yv的对数值和所述真实介数值bv的对数值计算损失函数;根据所述损失函数并利用Adam算法得到所述深度介数模型。
达到上述目的,本发明第二方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述实施例的基于图卷积神经网络的大规模网络介数逼近方法。
根据本发明实施例的计算机可读存储介质,在其上存储的与上述基于图卷积神经网络的大规模网络介数逼近方法对应的程序被处理器执行时,能够很好的解决大规模网络中介数逼近问题,计算准确率高,计算速度快。
为达到上述目的,本发明第三方面实施例提出了一种存储装置,包括上述实施例的计算机可读存储介质。
本发明实施例的存储装置,通过上述计算机可读存储介质,在存储介质上存储的与上述基于图卷积神经网络的大规模网络介数逼近方法对应的程序被处理器执行时,能够很好的解决大规模网络中介数逼近问题,计算准确率高,计算速度快。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是本发明实施例的基于图卷积神经网络的大规模网络介数逼近方法的流程示意图;
图2是本发明的基于图卷积神经网络的大规模网络介数逼近方法所采用的的模型结构框架示意图;
图3是本发明提供的一种介数精确算法的示意图;
图4是本发明提供的一种节点表示学习向量二维可视化图;
图5是本发明的DeepBC模型的训练收敛情况图;
图6是本发明与现有技术在网络瓦解任务上的鲁棒性得分曲线(曲线越低效果越好)。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
本发明将介数近似问题转化为一个学习问题,并设计了一个基于图卷积神经网络的编码-解码器的框架来解决这个问题。更具体地说,编码器利用网络结构将每个节点编码为一个实值连续的表示向量,该表示向量包含计算介数所需的基本结构信息;并且解码器将每个节点的表示向量解码为可以用作介数逼近值的实数。
下面参考附图描述本发明实施例的基于图卷积神经网络的大规模网络介数逼近方法。
图1是本发明实施例的基于图卷积神经网络的大规模网络介数逼近方法的流程示意图。
如图1所示,基于图卷积神经网络的大规模网络介数逼近方法,包括以下步骤:
S1,获取训练网络。
在本发明的实施例中,可利用BA模型生成训练网络,或者,按照幂律分布生成上述训练网络。
S2,利用训练网络训练表示学习模型,其中,表示学习模型为网络的节点到表示向量映射的神经网络模型。
具体地,可通过下式训练得到表示学习模型:
其中,ReLU表示神经网络的激活函数,Xv∈Rc,表示节点v的原始特征,c表示节点的原始特征的维度,GRUCell表示带有门限机制的递归神经网络的激活函数,表示GRUCell的更新门,表示GRUCell的重置门, ⊙表示矩阵对应元素相乘,N(v)表示节点v的邻居节点集合,V表示训练网络的节点集合,分别表示节点v和邻居节点在第l次迭代时的特征向量,l∈[1,K],ΘENC={W0∈Rc×p,W1,U1,W2,U2,W3,U3∈Rp×p},表示ENC函数参数集合,A表示邻接矩阵,其中p表示节点的表示向量的维度。
S3,根据表示学习模型和多层感知器训练深度介数模型,其中,深度介数模型为具备多层感知器的神经网络模型。
S4,通过深度介数模型计算目标网络中节点的介数。
在本发明的一个实施例中,上述步骤S3可包括以下步骤:
S31,计算训练网络中节点v的真实介数值bv。
具体地,可根据如下公式计算节点v的真实介数值bv:
其中,σuv表示来源节点u和节点v之间的最短路条数,σus表示来源节点u和以来源节点u为根的最短路树上节点s的最短路条数,Pu(s)表示节点s的前向节点集合,δu·(s)表示节点s的来源依赖关系,其中,节点v位于来源节点u到节点s的最短路树上。
S32,根据表示学习模型并利用多层感知器计算节点v的介数逼近值yv。
具体地,在训练得到表示学习模型后,即得到节点v对应的表示向量hv。
进一步地,可根据如下公式计算节点v的介数逼近值yv:
yv=DEC(hv;ΘDEC)=W5ReLU(W4hv),
其中,ReLU表示神经网络的激活函数,ΘDEC={W4∈Rp×q,W5∈Rp}表示DEC函数的参数集合,其中p表示节点的表示向量的维度,q表示神经网络隐含层的神经元个数。
S33,根据介数逼近值yv和真实介数值bv计算损失函数。
S34,根据损失函数并利用Adam算法得到深度介数模型。
具体地,可根据损失函数并利用Adam算法更新模型参数Θ={ΘENC,ΘDEC},其中,损失函数Loss的表达式为
在本发明的一个实施例中,还可以根据介数逼近值yv的对数值和真实介数值bv的对数值计算损失函数,进而根据损失函数并利用Adam算法得到深度介数模型。相较于直接根据介数逼近值yv和真实介数值bv训练得到的深度介数模型,利用其相应对数值训练得到的深度介数模型对介数的预测准确率更高。
为便于理解本发明的基于图卷积神经网络的大规模网络介数逼近方法,深度介数模型DeepBC的结构框架如图2所示,主要包括两大部分:编码器(Encoder)部分和解码器(Decorder)部分,下面进行详细介绍。
(1)模型中的符号含义。
为了叙述方便,将模型所涉及的参数及其含义列举在下表1中。
表1
(2)编码器(Encoder)部分。
编码器部分主要是学习每个节点v到其对应的特征向量hv∈Rp的映射。如图2所示,使用基于邻居-汇聚机制的前向神经网络来学习这一映射关系,具体来说主要包括以下四个方面:
①节点的邻居定义;
②邻居的汇聚方式;
③Combine函数的定义;
④神经网络层的汇聚方式。
本发明受介数精确算法Brandes的启发,首先介绍一下Brandes算法。如前所述,节点w的介数为所有经过节点w的最短路条数占网络中所有最短路条数的比例,即公式(1)。
其中,σuv表示来源节点u和目标节点v之间的最短路条数,σuv(w)表示节点u和节点v之间的最短路中经过要计算介数节点w的条数。对于这样的一个三元组节点u,v和w,定义它们之间的点对依赖关系为δuv,来源依赖关系为δu·具体定义如公式(2)。
根据公式(2),介数的计算可以简化为公式(3):
因此核心是如何计算节点w的来源依赖关系δu·(w),而Brandes证明了δu·(w)可以通过公式(4)进行迭代计算:
其中,Pu(s)表示以来源节点u为根的最短路树上节点s的前向节点集合。该公式可以从图3所示的情形中得到解释。其中节点w位于来源节点u到目标节点s1,s2和s3最短路树上(即节点s1,s2和s3为节点u的后继节点)。
①节点的邻居定义。
根据公式(4),网络中某个节点的介数计算与其直接邻居有着较大的关联性,因此本发明只对节点的直接邻居(一跳邻居)进行汇聚操作。
②邻居的汇聚方式(邻居表示向量)。
根据Brandes算法,每个节点的介数表现为其邻居节点介数的加权求和,权重表达为其中,σij表示节点i和节点j之间的最短路条数。但在实际中,这样的权重获取代价太高,因此本发明利用公式(5)所示的方式进行邻居的加权汇聚:
其中,dv表示节点v的度数,表示节点v的邻居节点j在l-1层上的表示向量,对于模型的输入层来说即输入层为节点j的输入特征。在这里,使用[1,1,dj]作为网络的输入特征。
③Combine函数的定义。
Combine函数主要用于定义当前层的邻居表示向量与上一层节点表示向量的聚合方式。与传统的SUM、Mean等方式不同,本发明利用带有门限机制的递归神经网络GRUCell来处理两部分的聚合,其详细过程定义如下系列公式(6)-公式(9):
其中,⊙表示矩阵对应元素相乘,zl表示GRUCell的更新门,用于决定上一层隐藏层状态中有多少信息传递到当前隐藏状态rl表示GRUCell的重置门,用于决定上一时刻隐藏状态的信息中有多少需要被遗忘。由于采用了GRUCell这种灵活的汇聚方式,本发明可以自由定义上一层节点特征和邻居节点的混合比例,因此在介数逼近任务中有良好的表现。
④神经网络层的汇聚方式。
每个神经网络传播层可看作是一种特殊的平滑形式,它混合了节点及其附近邻居的特征。但对所有节点重复相同数量的迭代(层)将导致具有不同局部结构的不同节点的出现过度平滑或欠平滑的情况发生。对于某些节点,尤其是具有高介数值的节点,其本身位于网络的核心区域或者距离核心区域几跳距离之内。因此,随着传播层的增加,它们的邻居可以快速扩展到几乎整个网络。对于具有低介数值的其他节点,例如度为1或局部聚类系数为1的节点,它们的邻居通常在相同数量的迭代传播中覆盖更少的节点。这意味着对于所有节点使用相同的迭代次数可能是不合理的。因此,本发明利用max-pooling的层汇聚方式来对每层学习到的表示向量进行汇聚,这样就可以有选择性地关注那些更有信息量的节点特征。
综上四个步骤,本发明的编码部分可以用以下公式(10)进行表示:
hv=ENC(A,Xv;ΘENC) (10)
其中,ΘENC={W0∈Rc×p,W1,U1,W2,U2,W3,U3∈Rp×p}表示模型的参数,A表示邻接矩阵,Xv表示节点的输入特征,整个编码算法如下所示:
算法1:(编码器部分)
模型输入:当前有效节点组成的网络G(V,E),其中V表示节点集合,E表示连边集合,节点的原始特征迭代次数k,可学习的权重参数W0∈Rc×p,W1,U1,W2,U2,W3,U3∈Rp×p。
模型输出:节点v最终的特征向量hv,
具体过程:
1、初始化:令
2、当迭代次数l=1to K时,根据下式计算第l次迭代时节点v(v∈V)的特征向量
其中,
直至计算得到第K次迭代时,节点v(v∈V)的特征向量
3、计算节点v最终的表示向量:
其中,ReLU表示神经网络的激活函数;N(v)表示节点v的邻居节点集合,V表示当前网络的节点集合;表示节点v和邻居节点在第l次迭代时的特征向量,hv则表示节点v最终的表示向量。
需要说明的是,上述算法1(即表示学习模型的训练)旨在学习一种映射,将网络中的节点映射到低维向量空间,使得节点在低维空间中的余弦相似性能够刻画其在高维原始网络中的结构相似性。目前,这一研究主要包括两大类,一类是与任务无关的,以捕捉网络中的拓扑结构为优化目标;另一类是与任务相关的,以在具体任务上的表现为损失函数。本发明的表示学习模型属于后者,在针对介数逼近这一具体任务上,在经典的“邻域-汇聚”模型的基础上,采用GRU(GatedRecurrent Unit,门限循环单元)门限机制组合节点的邻居向量和其上一层向量,采用max-pooling进行层间向量的汇聚,使得这种表示学习模型能够更多的捕捉节点之间的介数相关性,从而提高介数逼近的效果。
(3)解码器部分。
如图2所示,本发明的解码部分采用一个简单的多层感知器来学习节点表示向量到节点介数的映射关系,具体如下公式(11):
yv=DEC(hv;ΘDEC)=W5ReLU(W4hv) (11)
其中,ΘDEC={W4∈Rp×q,W5∈Rp}表示整个模型的可学习参数集合,其中p表示向量维度,q表示神经网络隐含层的神经元个数。
(4)模型的训练算法。
本发明在训练模型时是在规模较小的模拟网络上进行的,因此可以高效率利用Brandes算法获得网络中节点的真实介数值作为监督信号,则整个网络的损失函数可以定义如下:
其中,yv表示节点v经过编码-解码框架后预测出来的节点v的介数值,bv表示节点v的真实介数值,网络的损失函数即为真实值与预测值之间的平均平方差。由于真实世界中的介数和度一样,同样遵循着幂律分布,即介数值高的节点只有少部分,大部分节点的介数值很低,甚至很多为0,直接使用原始值进行预测效果不佳,为此使用介数的对数值来进行平滑处理,同时介数为0的节点比较容易识别,因此本发明在测试时直接将该部分节点设为0。
整个训练过程如下算法2描述:
算法2(整个DeepBC模型的训练过程)
模型输入:编码器参数ΘENC={W0∈Rc×p,W1,U1,W2,U2,W3,U3∈Rp×p},解码器参数ΘDEC={W4∈Rp×q,W5∈Rp}。
模型输出:训练好的模型。
具体过程:
1、For回合数e=1to N do;
2.利用现有网络生成模型生成一个训练网络图(比如BA模型);
3.按照某一分布(如幂率分布或BA模型)产生训练图G;
4、利用Brandes算法计算节点v的真实介数值bv,
5、利用算法1中的编码解码部分得到节点v的表示向量hv,
6、利用算法1中的MLP(Multi-Layer Perceptron,多层感知器)得到节点v的介数逼近值yv,
7、结合公式(12)利用Adam算法更新模型参数Θ={ΘENC,ΘDEC};
8、EndFor。
(5)整个算法的复杂度分析
由于真实世界中网络连接的稀疏性,因此邻接矩阵可以视作一个稀疏矩阵,从而整个DeepBC算法的时间复杂度为O(k|E|),其中,k表示编码器神经网络的传播层数,|E|表示网络中的节点个数。同时模型的空间复杂度为O(|V|p),其中,|V|表示节点个数,p表示向量维度。
需要说明的是,本发明已经过合成数据和真实数据的检验,下面对实验进行简单说明:
(1)节点表示向量可视化实验。
为了展示本发明学习到的节点表示向量在介数逼近任务上的有效性,首先利用幂律分布生成了一个节点数为50,平均度为4的模拟网络。然后选择节点表示学习算法node2vec(设置其默认参数p=1,q=2)、graphwave(采用默认参数)作为对比算法,而本发明则利用在1000-2000模拟网络上得到的模型,所有算法的表示向量维度均设置为128,利用TSNE将这些高维向量降为2维,具体效果如图4所示。其中图4中A图显示的是生成的具有50个节点,200条边无标度模拟网络。其中节点的大小代表介数的大小,颜色越深也表示其介数越大。B-D图显示了三种不同方法学习到的节点表示向量分布情况。从图中可以看出,本发明提出的DeepBC算法学习到节点表示向量,可以有效地保持介数的逼近性。(介数越近似,节点靠的越近)
(2)对比基线算法
选择四种具有典型代表性的现有技术作为本发明的对比技术,如前所述,分别为GSIZE、DIAM、ABRA和KPATH。
(3)数据集
同时在合成数据集和真实数据集上对本发明与现有技术进行对比。
①合成数据。对于合成数据,本发明利用幂律分布(按照参数m=4,p=0.05)分别生成了节点数为1000,3000,5000,10000,20000,50000,100000的网络各1个,以此来作为评测数据集。
②真实数据。对于真实数据,选择四个不同范围的真实大型网络作为评测结果。其网络特征如下表2所示:
表2
网络名称 | 节点数 | 边数 | 平均度 | 网络直径 |
Amazon | 2,146,057 | 5,743,146 | 5.35 | 28 |
Wiki-Talk | 2,388,953 | 4,656,682 | 3.90 | 9 |
cit-Patents | 3,764,117 | 16,511,741 | 8.77 | 26 |
com-LiveJournal | 3,997,962 | 34,681,189 | 17.35 | 17 |
(4)介数标签获得。
利用Brandes算法计算了合成数据集的介数值,而对于四个真实大型网络,将其真实值作为介数标签值,该数据集是利用并行化的Brandes算法在一台96000核心的超级计算机计算所得。
(5)评测指标。
本发明与现有技术,均从top1%准确率和运行时间两个角度进行对比,指标具体定义如下:
运行时间:算法开始到结束所经历的秒数。
(6)实验结果
所有技术的均在一台具有512G内存和16GB GPU的服务器上进行(20核心)。其中本发明分别在100-200,200-300,300-400,400-500,1000-1200和2000-3000范围上各生成的10000个网络及其介数标签作为训练集,同时各生成的100个网络及其介数标签作为验证集。本发明利用Tensorfiow进行实现,并利用Adam算法作为优化器,实验中具体的超参数设置如下表3所示:
表3
超参数 | 值 | 描述 |
学习率 | 0.0001 | Adam优化器材的学习率 |
表示向量维度 | 128 | 每个节点表示向量的维度 |
小批量样本大小 | 32 | 训练样本的小批量大小 |
最大训练回合数 | 10000 | 最大训练回合数目 |
层迭代次数 | 5 | 邻居汇聚的迭代次数 |
图5示出了本发明在100-200,200-300,300-400规模的网络上训练后,在验证集中的收敛情况。从图中可以看出,本发明随着训练回合的增加,Top l%准确率趋于稳定,说明本发明具有较好的收敛性。
表4和表5分别显示了本发明和各现有技术在不同规模上的合成测试图上的表现情况(所有得分均为在各个规模上30个随机生成网络得分的平均值)。从中可以看出,尽管在各个技术中GSIZE技术表现最好,但随着测试图规模的增大,它的运行时间却在快速增长,而本发明在最大的网络上只需5.78秒,同时准确率也可以保持在0.8879。同时从表6中可以看出随着训练图规模的增大,本发明在各个测试图上的表现也在逐步提高。
表4
表5
表6
表7和表8分别显示本发明与现有技术中ABRA和DIAM的对比情况(由于真实网络节点规模过大,GSIZE和KPATH运行时间过长,因此不将其列为对比对象)。从表7中可以看出,本发明在四个大规模网络上都取得较好的效果,同时在时间上本发明同样具有其他现有技术不可比拟和优势。
表7
表8
进一步地,为了说明本发明的有效性,将本发明学习到的介数应用到网络瓦解这一特定任务中去,并与现有的解决网络瓦解问题的技术进行对比。
网络瓦解或者复杂网络最优渗流,是网络科学领域的一个经典问题,一直是网络科学研究者们的研究重点。这类问题的目标在于从原始网络中找到一个最优的节点移除序列,能够以最小的代价使得剩余网络中的最大联通片的规模以最快的速度下降。网络瓦解问题已经被证明是一个典型的NP-hard问题,因此精确解法无法扩展到大规模网络场景。
①现有技术
一种自适应的高节点度的移除策略(HDA)。算法每次从网络中移除度最高的节点,然后按照上述步骤在剩余网络中迭代移除,直至满足终止条件。
用于信息搜索著名的PageRank算法。这里采用其迭代版本(HPRA)来进行网络瓦解。即算法每次从网络中移除PageRank最高的节点,然后按照上述步骤在剩余网络中迭代移除,直至满足终止条件。
一种基于集合影响力的自适应网络瓦解策略:集合影响力(CI)定义为节点自身的剩余度与K跳邻居节点剩余度之和的乘积。基于集合影响力的自适应网络策略则是每次移除网络中CI值最高的节点,然后重新计算剩余网络节点的CI,按照此策略迭代进行移除,直至满足终止条件。基于集合影响力的策略在以节点个数为代价的打击场景下,效果较好,且时间复杂度较小,可以扩展到大规模网络中。
一种基于消息传播的网络瓦解策略(Min-Sum)。文章证明了网络破环问题和网络瓦解之间的关系。并提出了一种有效的三阶段算法,它首先利用变体的消息传播算法来对网络进行破环,然后利用一种快速的树打击策略对剩余网络中的联通片进行打击,终止满足条件;最后贪婪性地插入第一阶段中移除的但不会增加最大联通片的节点。
②数据集
网络瓦解实验所用数据集,选用斯坦福大学J.Leskovec组分享的互联网P2P网络数据集,该数据集为2002年8月收集的Gnutella对等文件共享网络的9个快照。节点代表Gnutella网络拓扑中的主机,边代表Gnutella主机之间的连接。这9个数据集的基本信息统计如表9所示:
表9
表9中,Nodes表示节点数,Edges表示连边数,Nodes in LCC表示最大联通片中的节点个数,Edges in LCC表示最大联通片中的连边个数。
③评测指标。
对于网络瓦解任务,采用网络的鲁棒性得分作为评测指标。其定义如下:
其中,N表示原始网络的节点总数;q表示已经移除的节点数与原始网络节点数的比值(即移除程度);G(q)表示移除q*N个节点后,剩余网络中最大联通片的节点个数与原始网络节点数的比值;则R实际上为网络的鲁棒性曲线q~G(q)与两个坐标轴所围成图形的面积。R越小,说明策略越有效果。
图6和表10分别示出了本发明和现有技术在网络瓦解任务上的鲁棒性得分和运行时间情况。(由于介数精确算法运行时间过长,这里不将其列为对比技术。)在这一任务上,本发明采用的超参数与前面保持一致,从图中可以看出,本发明在鲁棒性得分上是所有方法中效果最好的。同时各个技术在时间复杂度上与网络中的边数是线性关系,从表10中可以看出,尽管时间稍稍比HDA技术慢一点,但无论从效果还是时间上,都可以在大规模网络上得到有效检验。
表10
综上所述,与现有技术相比,本发明的优点在于:
1)首次采用网络表示学习来解决介数逼近问题,弥合了深度学习和网络科学之间的差距,为解决此类问题,开辟了一个新的方向;
2)采用了一种“端到端”的学习框架,无需更多的先验知识,只需将网络本身作为输入,就能较好的学习到近似的介数值;
3)在小规模的模拟图上训练,训练的模型能够很好的扩展到大规模的网络,逼近精度能够跟目前最先进的近似算法持平,计算速度可以提高几个数量级,因而可以作为实际大规模网络中介数逼近的有效替代工具。
进一步地,本发明提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述实施例的基于图卷积神经网络的大规模网络介数逼近方法。
根据本发明实施例的计算机可读存储介质,在其上存储的与上述基于图卷积神经网络的大规模网络介数逼近方法对应的程序被处理器执行时,能够很好的解决大规模网络中介数逼近问题,计算准确率高,计算速度快。
更进一步地,本发明还提出了一种存储装置,包括上述实施例的计算机可读存储介质。
根据本发明实施例的存储装置,通过上述计算机可读存储介质,在存储介质上存储的与上述基于图卷积神经网络的大规模网络介数逼近方法对应的程序被处理器执行时,能够很好的解决大规模网络中介数逼近问题,计算准确率高,计算速度快。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种基于图卷积神经网络的大规模网络介数逼近方法,其特征在于,包括以下步骤:
获取训练网络;
利用所述训练网络训练表示学习模型,其中,所述表示学习模型为网络的节点到表示向量映射的神经网络模型;
根据所述表示学习模型和多层感知器训练深度介数模型,其中,所述深度介数模型为具备多层感知器的神经网络模型;
通过所述深度介数模型计算目标网络中节点的介数。
2.如权利要求1所述的基于图卷积神经网络的大规模网络介数逼近方法,其特征在于,通过下式训练得到所述表示学习模型:
其中,ReLU表示神经网络的激活函数,Xv∈Rc,表示节点v的原始特征,c表示节点的原始特征的维度,GRUCell表示带有门限机制的递归神经网络的激活函数,表示GRUCell的更新门,表示GRUCell的重置门, ⊙表示矩阵对应元素相乘,N(v)表示节点v的邻居节点集合,V表示所述训练网络的节点集合,分别表示节点v和邻居节点在第l次迭代时的特征向量,l∈[1,K],ΘENC={W0∈Rc×p,W1,U1,W2,U2,W3,U3∈Rp×p},表示ENC函数参数集合,A表示邻接矩阵,其中p表示节点的表示向量的维度。
3.如权利要求2所述的基于图卷积神经网络的大规模网络介数逼近方法,其特征在于,所述根据所述表示学习模型和多层感知器训练深度介数模型,包括:
计算所述训练网络中节点v的真实介数值bv;
根据所述表示学习模型并利用多层感知器计算所述节点v的介数逼近值yv;
根据所述介数逼近值yv和所述真实介数值bv计算损失函数;
根据损失函数并利用Adam算法得到所述深度介数模型。
4.如权利要求3所述的基于图卷积神经网络的大规模网络介数逼近方法,其特征在于,根据如下公式计算节点v的真实介数值bv:
其中,σuv表示来源节点u和节点v之间的最短路条数,σus表示所述来源节点u和以所述来源节点u为根的最短路树上节点s的最短路条数,Pu(s)表示所述节点s的前向节点集合,δu·(s)表示节点s的来源依赖关系,其中,节点v位于所述来源节点u到所述节点s的最短路树上。
5.如权利要求4所述的基于图卷积神经网络的大规模网络介数逼近方法,其特征在于,根据如下公式计算所述节点v的介数逼近值yv:
yv=DEC(hv;ΘDEC)=W5ReLU(W4hv)
其中,ReLU表示神经网络的激活函数,ΘDEC={W4∈Rp×q,W5∈Rp}表示DEC函数的参数集合,其中p表示节点的表示向量的维度,q表示神经网络隐含层的神经元个数。
6.如权利要求5所述的基于图卷积神经网络的大规模网络介数逼近方法,其特征在于,所述根据损失函数并利用Adam算法得到所述深度介数模型,包括:
根据损失函数并利用Adam算法更新模型参数Θ={ΘENC,ΘDEC},其中,损失函数Loss的表达式为
7.如权利要求1所述的基于图卷积神经网络的大规模网络介数逼近方法,其特征在于,利用BA模型生成所述训练网络,或者,按照幂律分布生成所述训练网络。
8.如权利要求7所述的基于图卷积神经网络的大规模网络介数逼近方法,其特征在于,还包括:
根据所述介数逼近值yv的对数值和所述真实介数值bv的对数值计算损失函数;
根据所述损失函数并利用Adam算法得到所述深度介数模型。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1-8中任一项所述的基于图卷积神经网络的大规模网络介数逼近方法。
10.一种存储装置,其特征在于,包括如权利要求9所述的计算机可读存储介质。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910019855.1A CN109740106A (zh) | 2019-01-09 | 2019-01-09 | 基于图卷积神经网络的大规模网络介数逼近方法、存储装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910019855.1A CN109740106A (zh) | 2019-01-09 | 2019-01-09 | 基于图卷积神经网络的大规模网络介数逼近方法、存储装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109740106A true CN109740106A (zh) | 2019-05-10 |
Family
ID=66364084
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910019855.1A Pending CN109740106A (zh) | 2019-01-09 | 2019-01-09 | 基于图卷积神经网络的大规模网络介数逼近方法、存储装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109740106A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110363282A (zh) * | 2019-06-06 | 2019-10-22 | 中国科学院信息工程研究所 | 一种基于图卷积网络的网络节点标签主动学习方法和系统 |
CN110781933A (zh) * | 2019-10-14 | 2020-02-11 | 杭州电子科技大学 | 一种用于理解图卷积神经网络的可视分析方法 |
CN110826700A (zh) * | 2019-11-13 | 2020-02-21 | 中国科学技术大学 | 建模邻居交互的双线性图神经网络模型的实现及分类方法 |
CN111950594A (zh) * | 2020-07-14 | 2020-11-17 | 北京大学 | 基于子图采样的大规模属性图上的无监督图表示学习方法和装置 |
CN112287043A (zh) * | 2020-12-29 | 2021-01-29 | 成都数联铭品科技有限公司 | 基于领域知识的图编码自动生成方法及系统、电子设备 |
CN116032828A (zh) * | 2023-02-27 | 2023-04-28 | 中国人民解放军国防科技大学 | 一种介数中心性近似计算方法及装置 |
-
2019
- 2019-01-09 CN CN201910019855.1A patent/CN109740106A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110363282A (zh) * | 2019-06-06 | 2019-10-22 | 中国科学院信息工程研究所 | 一种基于图卷积网络的网络节点标签主动学习方法和系统 |
CN110363282B (zh) * | 2019-06-06 | 2021-10-26 | 中国科学院信息工程研究所 | 一种基于图卷积网络的网络节点标签主动学习方法和系统 |
CN110781933A (zh) * | 2019-10-14 | 2020-02-11 | 杭州电子科技大学 | 一种用于理解图卷积神经网络的可视分析方法 |
CN110781933B (zh) * | 2019-10-14 | 2022-08-05 | 杭州电子科技大学 | 一种用于理解图卷积神经网络的可视分析方法 |
CN110826700A (zh) * | 2019-11-13 | 2020-02-21 | 中国科学技术大学 | 建模邻居交互的双线性图神经网络模型的实现及分类方法 |
CN111950594A (zh) * | 2020-07-14 | 2020-11-17 | 北京大学 | 基于子图采样的大规模属性图上的无监督图表示学习方法和装置 |
CN111950594B (zh) * | 2020-07-14 | 2023-05-05 | 北京大学 | 基于子图采样的大规模属性图上的无监督图表示学习方法和装置 |
CN112287043A (zh) * | 2020-12-29 | 2021-01-29 | 成都数联铭品科技有限公司 | 基于领域知识的图编码自动生成方法及系统、电子设备 |
CN116032828A (zh) * | 2023-02-27 | 2023-04-28 | 中国人民解放军国防科技大学 | 一种介数中心性近似计算方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109740106A (zh) | 基于图卷积神经网络的大规模网络介数逼近方法、存储装置及存储介质 | |
CN109948029B (zh) | 基于神经网络自适应的深度哈希图像搜索方法 | |
Yang et al. | Fast $\ell_ {1} $-Minimization Algorithms for Robust Face Recognition | |
CN111950594A (zh) | 基于子图采样的大规模属性图上的无监督图表示学习方法和装置 | |
CN110138595A (zh) | 动态加权网络的时间链路预测方法、装置、设备及介质 | |
CN109743196B (zh) | 一种基于跨双层网络随机游走的网络表征方法 | |
Rao et al. | Discovering nonlinear PDEs from scarce data with physics-encoded learning | |
Cheng et al. | NASGEM: Neural architecture search via graph embedding method | |
CN108764541B (zh) | 一种结合时空特征和误差处理的风能预测方法 | |
CN111488498A (zh) | 基于图神经网络的“节点-图”跨层图匹配方法及系统 | |
CN118132964B (zh) | 土壤空间温湿度预测方法、装置、设备、介质及程序产品 | |
Wang et al. | Lightweight deep neural networks for ship target detection in SAR imagery | |
CN109948242A (zh) | 基于特征哈希的网络表示学习方法 | |
CN115169555A (zh) | 一种基于深度强化学习的边攻击网络瓦解方法 | |
CN116208399A (zh) | 一种基于元图的网络恶意行为检测方法及设备 | |
Priya et al. | Community Detection in Networks: A Comparative study | |
Wu et al. | Heterogeneous representation learning and matching for few-shot relation prediction | |
CN118095341A (zh) | 一种基于深度神经网络的SimRank相似度计算方法 | |
CN117172376A (zh) | 基于网络重构的生成式图神经网络的图结构链路预测方法及系统 | |
CN112417224A (zh) | 一种基于熵驱动的随机游走的图嵌入方法及系统 | |
CN116467466A (zh) | 基于知识图谱的编码推荐方法、装置、设备及介质 | |
Dash | DECPNN: A hybrid stock predictor model using Differential Evolution and Chebyshev Polynomial neural network | |
CN116306834A (zh) | 一种基于全局路径感知图神经网络模型的链路预测方法 | |
JP2002175305A (ja) | 遺伝子ネットワークを推測するためのグラフィカルモデリング法及びそのための装置 | |
CN109859062A (zh) | 一种结合深度稀疏编码器和拟牛顿法的社区发现分析方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190510 |
|
RJ01 | Rejection of invention patent application after publication |