确定网络节点的重要性的方法和装置与流程

文档序号:12375725阅读:586来源:国知局
确定网络节点的重要性的方法和装置与流程
本发明实施例涉及计算机技术,尤其涉及一种确定网络节点的重要性的方法和装置。
背景技术
:衡量网络节点的重要程度是网络分析的一个重要方面,在衡量网络节点的重要程度时,被广泛使用的一个指标就是介度中心(BetweennessCentrality,BC)。介度中心算法在衡量网络节点重要程度时有着广泛的应用范围,例如在社区划分、查找恐怖组织的领导者、保护网络节点中的关键服务器、分析疾病传播途径、分析人体关键蛋白质的组成等计算中,都可以根据介度中心算法来计算网络中的每个网络节点的介度中心,介度中心的量化值越高则意味着该网络节点越重要。介度中心是基于最短路径计算的全局性衡量指标,使用介度中心算法时,首先将由多个网络节点组成的网络转化成图G(V,E),其中V表示网络节点的集合,E表示各网络节点之间连接路径的集合。对于任意的网络节点对(s,t)∈V,σst表示网络节点s和t之间的最短路径条数,σst(u)表示s,t之间的最短路径中经过网络节点u的路径条数,网络节点u的介度中心可以量化为:BC(u)=Σs∈Vδs(u),其中BC(u)表示网络节点u的介度中心量化值,δs(u)表示以网络节点s为源点遍历整个图G时网络节点s对网络节点u的依赖值。由此可见,目前的介度中心算法是以网络中的每个网络节点为源点做一次最短路径计算,计算出源点对于网络节点u的依赖值,然后对所有网络节点对网络节点u的依赖值进行累加,得到网络节点u的介度中心,这种算法的时间复杂度为O(V*E)。对于较大规模的网络,目前的介度中心算法的计算时间是无法接受的。例如对于中央处理器(CentralProcessingUnit,CPU)为InterXeonE5645的计算机,在操作系统为Linux2.6.32,单核执行的情况下。对于一个社交网络 soc-LiveJournall(4.8M个顶点和68M条边),一个顶点完成一次最短路径和依赖值的计算(简称一次遍历)的时间为7秒,完成所有顶点的遍历时间大约为13个月,显然这个时间是无法接受的。目前为了减少使用介度中心算法计算网络节点重要性的计算时间,可以通过并行计算的方式或近似计算的方式。其中,通过并行计算的方式需要相应地硬件平台的支持。通过近似计算的方式,是采用随机选取所有网络节点中的一部分点作为源点进行最短路径计算。但随机选取网络节点的方式中,若选取的网络节点数量较少,则近似计算的结果误差可能较大,若选取网络节点数量较多,则对于计算时间的提升又不大。技术实现要素:本发明实施例提供一种确定网络节点的重要性的方法和装置,能够在衡量网络节点的重要性的过程中降低网络节点的介度中心值计算复杂度、减少计算时间,提高系统效率。第一方面提供一种确定网络节点的重要性的方法,包括:根据网络中各个网络节点的流量确定第一节点集合,其中,所述第一节点集合中的网络节点的流量均高于第一阈值;分别根据向所述第一节点集合中的网络节点发送数据流的网络节点的权值计算所述第一节点集合中的各网络节点的当前权值;根据所述第一节点集合中各网络节点的当前权值和所述网络中各网络节点对于所述第一节点集合中各网络节点的依赖值计算所述网络中各网络节点的介度中心值;将所述网络中的各网络节点的介度中心值高于第二阈值的网络节点确定为所述网络中的重要网络节点。结合第一方面,在第一方面第一种可能的实现方式中,所述分别根据向所述第一节点集合中的网络节点发送流量的网络节点的权值计算所述第一节点集合中的各网络节点的当前权值包括:对所述第一节点集合中的每一个网络节点分别执行如下操作:根据与所述第一节点集合中第一网络节点相邻的网络节点确定第二节点集合,其中,所述第二节点集合中的网络节点均是与所述第一网络节点相邻 且向所述第一网络节点发送数据流的网络节点,并且所述第二节点集合中的网络节点不属于第一节点集合,所述第一网络节点为所述第一节点集合中的任意一个网络节点;根据所述第二节点集合中不属于第一节点集合的网络节点的权值的累加值更新所述第一网络节点的权值,以获取所述第一网络节点的当前权值。结合第一方面或第一方面第一种可能的实现方式,在第一方面第二种可能的实现方式中,所述根据所述第一节点集合中各网络节点的当前权值和所述网络中各网络节点对于所述第一节点集合中各网络节点的依赖值计算所述网络中各网络节点的介度中心值,包括:使用公式BC(u)+=(1+k)δs(u)u!=sBC(u)+=kδs(u)u==s,]]>u∈V,计算所述网络中各网络节点的介度中心值,其中u表示所述网络中的各网络节点,V表示所述网络的节点集合,s表示所述第一节点集合中的网络节点,k表示s的当前权值,δs(u)表示s对于u的依赖值,BC(u)表示网络节点u的介度中心值。结合第一方面第二种可能的实现方式,在第一方面第三种可能的实现方式中,使用公式计算s对于u的依赖值,其中,t表示所述网络中的每一网络节点,σst表示s与t之前的最短路径,σst(u)表示s与t之前的最短路径经过u的数量。结合第一方面至第一方面第三种可能的实现方式中任一种可能的实现方式,在第一方面第四种可能的实现方式中,所述网络中各网络节点的权值为1。第二方面提供一种确定网络节点的重要性的装置,包括:选择模块,用于根据网络中各个网络节点的流量确定第一节点集合,其中,所述第一节点集合中的网络节点的流量均高于第一阈值;计算模块,用于分别根据向所述第一节点集合中的网络节点发送数据流的网络节点的权值计算所述第一节点集合中的各网络节点的当前权值;根据所述第一节点集合中各网络节点的当前权值和所述网络中各网络节点对于所述第一节点集合中各网络节点的依赖值计算所述网络中各网络节点的介度中心值;确定模块,用于将所述网络中的各网络节点的介度中心值高于第二阈值的网络节点确定为所述网络中的重要网络节点。结合第二方面,在第二方面第一种可能的实现方式中,所述计算模块,具体用于对所述第一节点集合中的每一个网络节点分别执行如下操作:根据与所述第一节点集合中第一网络节点相邻的网络节点确定第二节点集合,其中,所述第二节点集合中的网络节点均是与所述第一网络节点相邻且向所述第一网络节点发送数据流的网络节点,所述第一网络节点为所述第一节点集合中的任意一个网络节点;根据所述第二节点集合中不属于第一节点集合的网络节点的权值的累加值更新所述第一网络节点的权值,以获取所述第一网络节点的当前权值。结合第二方面或第二方面第一种可能的实现方式,在第二方面第二种可能的实现方式中,所述计算模块,具体用于使用公式BC(u)+=(1+k)δs(u)u!=sBC(u)+=kδs(u)u==s,]]>u∈V,计算所述网络中各网络节点的介度中心值,其中u表示网络中的各网络节点,V表示所述网络的节点集合,s表示所述第一节点集合中的网络节点,k表示s的当前权值,δs(u)表示s对于u的依赖值,BC(u)表示网络节点u的介度中心值。结合第二方面第二种可能的实现方式,在第二方面第三种可能的实现方式中,所述计算模块,还用于使用公式计算s对于u的依赖值,其中,t表示所述网络中的每一网络节点,σst表示s与t之前的最短路径,σst(u)表示s与t之前的最短路径经过u的数量。结合第二方面至第二方面第三种可能的实现方式中任一种可能的实现方式,在第二方面第四种可能的实现方式中,所述网络中各网络节点的权值为1。本发明实施例提供的确定网络节点的重要性的方法和装置,将网络中流量高于第一阈值的网络节点确定为第一节点集合,并计算第一节点集合中各网络节点的当前权值,在计算网络中各网络节点的介度中心值时,仅使用第一节点集合中的网络节点的当前权值和依赖值进行计算,从而能够在衡量网络节点的重要性的过程中降低网络节点的介度中心值计算复杂度、减少计算时间,提高系统效率。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实 施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例的附图。图1A为以s为源点进行介度中心计算的示意图;图1B为以s的入边点为源点进行介度中心计算的示意图;图2为本发明实施例提供的确定网络节点的重要性的方法实施例一的流程图;图3A为一个网络的示意图;图3B为正常的介度中心计算方法示意图;图3C为本实施例提供的确定网络节点的重要性的方法中介度中心计算示意图;图4为本发明实施例提供的确定网络节点的重要性的装置实施例一的结构示意图;图5为本发明实施例提供的确定网络节点的重要性的装置实施例二的结构示意图。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。网络分析针对的样本一般都是由呈自然分布的一群网络节点组成的,网络中的各网络节点以及各网络节点之间的连接路径构成网络图G(V,E),其中,V为网络中的网络节点集合,E为网络中的路径(也称为边)集合。由于自然图的幂律分布特性,使得网络中的少部分网络节点成为网络的“枢纽”,这些“枢纽”网络节点对网络中的其它网络节点有着很高的影响力。“枢纽”网络节点的特征表现为流量较高。流量在网络图中也可以用出入度来表示。出入度包括出度和入度,为网络节点的一个特征,出度表示该网络节点指向其它网络节点的边的数量,入度表示其它网络节点指向该网络节点的边的数量。介度中心是衡量网络节点重要程度的重要指标,在计算介度中心值时,网络中的“枢纽”网络节点也会对其它网络节点产生很高的影响力。这些“枢 纽”网络节点对介度中心值的贡献较大,经研究发现,当采用近似计算的方法选择部分网络节点作为源点进行介度中心的计算时,选择高出入度的网络节点作为源点和选择低出入度的网络节点作为源点相比,介度中心的计算误差小4倍。另外,自然图的择优连接性使得新加入网络的低出入度网络节点都会连接到一些高出入度的网络节点上,以这些高出入度的网络节点和其入边(方向指向高出入度网络节点的边)的点分别为源点计算最短路径时,会存在大量的重复计算。图1A为以s为源点进行介度中心计算的示意图,图1B为以s的入边点为源点进行介度中心计算的示意图。其中,网络节点s为出入度高于预设阈值的网络节点,网络节点k1至kk为s的入边的点。在图1A中,在以网络节点s为源点遍历全图时,首先从网络节点s开始正向遍历进行最短路径计算,例如使用宽度优先搜索(BreadthFirstSearch,BFS)方法。接着从距网络节点s最远的网络节点开始反向遍历全图,计算依赖值并累加,分别使用图内的每一网络节点作为源点进行上述过程,最终得到图中每一网络节点的介度中心值。在图1B中,在以网络节点k1至kk为源点遍历全图时,可以看出,从网络节点k1到网络节点kk对其它网络节点依赖值的累加效果和网络节点s的效果是相同的。也就是在累加的过程中,会存在大量的重复计算。也就是在使用介度中心算法确定网络中网络节点重要程度的时候,会存在大量的重复计算,从而效率不高。本发明实施例从上述特性中得到启发,提出一种确定网络节点的重要性的方法,考虑采用流量较高的网络节点代替流量较低的网络节点进行依赖值的累加计算,从而能够在衡量网络节点的重要性的过程中降低网络节点的介度中心值计算复杂度、减少计算时间,提高系统效率。图2为本发明实施例提供的确定网络节点的重要性的方法实施例一的流程图,如图2所示,本实施例的方法包括:步骤S201,根据网络中各个网络节点的流量确定第一节点集合,其中,第一节点集合中的网络节点的流量均高于第一阈值。具体地,由于流量高的网络节点对于介度中心计算的贡献值较大,并且选择流量高的网络节点计算介度中心比选择流量低的网络节点计算介度中心的误差小。因此在本实施例中,在应用介度中心算法确定网络节点的重要性 时,首先根据网络的节点集合中各网络节点的流量选择流量高于第一阈值的网络节点,将流量高于第一阈值的网络节点作为网络的第一节点集合。在对网络进行遍历时,仅使用第一节点集合中的网络节点作为源点,计算依赖值以及进行依赖值的累加从而减少累加的计算量。其中,在选择流量高于第一阈值的网络节点时,可以使用网络节点的出入度来进行计算。第一阈值可以为出度和/或入度的值,或者第一阈值可以是出入度高于第一阈值的网络节点数量。当第一阈值为出度和/或入度的值时,可以先判断各网络节点的出度和入度,将各网络节点的出度和入度中较大的一个作为该网络节点的度,然后将度高于第一阈值的网络节点作为源点集合。当第一值为出入度高于第一阈值的网络节点数量时,设该数量为一个百分数y%,即预设将网络的节点集合中的y%个网络节点作为第一网络节点集合,则先判断各网络节点的出度和入度,将各网络节点的出度和入度中较大的一个作为该网络节点的度,然后按照度从大到小的顺序分别排列各网络节点,接着将度最高的y%个网络节点作为第一节点集合。步骤S202,分别根据向第一节点集合中的网络节点发送数据流的网络节点的权值计算第一节点集合中的各网络节点的当前权值。具体地,根据介度中心计算公式可知,对于网络中的一个网络节点u,其介度中心的量化值为BC(u)=Σs∈Vδs(u),其中,δs(u)表示以网络节点s为源点遍历整个网络时网络节点s对网络节点u的依赖值,这里的s是网络的整个节点集合中的每个网络节点。而在步骤S201中仅选择了流量高于第一阈值的网络节点作为第一网络节点集合作为源点,那么在计算网络节点u的介度中心值时,若仅将第一网络节点集合中的各网络节点对应的δs(u)累加,是无法计算出网络节点u的介度中心值的。根据图1A和图1B可知,在计算介度中心时,对依赖值进行累加的过程中,与高出入度的网络节点连接的低出入度网络节点在累加依赖值时的效果和高出入度网络节点时相同的。因此,在本实施例中,可以为第一网络节点合中的每个网络节点确定一个当前权值,该当前权值表征了网络的节点集合中其它网络节点对于第一节点集合中的网络节点的依赖程度。例如,该当前权值为一个自然数,表示了第一节点集合中的源点在累加依赖值时可以替代的网络节点数目。在介度中心计算时的依赖值累加阶段,对于第一节点集合 中的每个网络节点,将其对应的依赖值和当前权值相乘,即相当于使用第一节点集合中的每个网络节点替代了其它多个网络节点进行累加计算,最终集合得出各网络节点的介度中心值。在这里,可以设网络中的各网络节点的权值为1,即网络中各网络节点的初始权值。对于第一节点集合中的网络节点,将其能够代替的其他网络节点的权值进行累加,则可以得出第一节点集合中的网络节点的当前权值。实际上,第一节点集合中的网络节点的当前权值就是与第一节点集合相连的网络节点中,不在第一节点集合中的网络节点的数量。步骤S203,根据第一节点集合中各网络节点的当前权值和网络中各网络节点对于第一节点集合中各网络节点的依赖值计算网络中各网络节点的介度中心值。具体地,在确定了第一节点集合以及第一网络节点集合中每一网络节点的当前权值后,即开始进行介度中心的累加计算。与图1A和图1B所示的方法类似地,分别选择源点正向遍历全网络计算依赖值,然后反向遍历全网络累加介度中心值,其区别在于本实施例中仅使用第一节点集合中的网络节点作为源点遍历全网络。即分别以第一节点集合中的每一网络节点为源点s,先正向遍历全网络,计算源点s与网络中的每一网络节点t之间的最短路径的数量σst,然后从各网络节点t开始反向遍历全网络,计算源点t与网络中的每一网络节点t之间的最短路径中经过网络节点u的最短路径的数量σst(u),从而计算出s对于每一网络节点u的依赖值δs(u),根据介度中心的计算公式可知,BC(u)=Σs∈Vδs(u),在本实施例中,由于s是从第一网络节点集合中选取的,也即s并不属于V(V为网络的所有节点集合)因此,在累加介度中心时,需要累加第一网络节点集合中的各网络节点s的加权依赖值。第一网络节点集合中各网络节点s的加权依赖值为该网络节点s的依赖值δs(u)与步骤S202中计算出的该网络节点的当前权值之积。也即在进行介度中心值的累加时,使用第一节点集合中每一网络节点代替其当前权值数量的网络节点共同参与累加,从而得出网络中的节点集合中每一网络节点的介度中心值。由于在计算网络中各网络节点的介度中心值时,仅使用了第一节点集合中各网络节点的依赖值和当前权值,即仅以第一节点集合中的网络节点为源点对网络进行遍历,这就减少了遍历的次数,也就减少了在累加过程中的累加次数,从而减少了计算介度中心的计算量,节约了计算时间。步骤S204,将网络中的各网络节点的介度中心值高于第二阈值的网络节 点确定为网络中的重要网络节点。具体地,在计算出网络中各网络节点的的介度中心值之后,即可将介度中心值高于第二阈值的网络节点确定为网络中的重要网络节点。第二阈值可以为介度中心值的阈值,即只要介度中心值高于第二阈值的网络节点就是网络中的重要网络节点。第二阈值还可以是重要网络节点的数量,例如前网络中z%的网络节点为重要网络节点,即按照介度中心值的大小将各网络节点依次排列,选择前z%的网络节点为重要网络节点。本实施例,将网络中流量高于第一阈值的网络节点确定为第一节点集合,并计算第一节点集合中各网络节点的当前权值,在计算网络中各网络节点的介度中心值时,仅使用第一节点集合中的网络节点的当前权值和依赖值进行计算,从而能够在衡量网络节点的重要性的过程中降低网络节点的介度中心值计算复杂度、减少计算时间,提高系统效率。进一步地,在图2所示实施例中,步骤S201确定第一节点集合,具体可以包括:确定网络的节点集合中的每一网络节点的度,网络的节点集合中的每一网络节点的度为网络的节点集合中的每一网络节点的出度和入度中较高的一个;在网络的节点集合中选择度高于第一阈值的网络节点,得到网络的第一节点集合。当度的预设阈值为度的值时,具体地,选择第一节点集合的方法包括:在网络的节点集合中,以每一网络节点为源点,将其边的数量作为该网络节点的出度;在网络的节点集合中,以每一网络节点为终点,将其边的数量作为该网络节点的入度;将每一网络节点的出度和入度中较大的一个作为该网络节点的度,将度高于第一阈值的网络节点组成的集合作为待处理图的第一节点集合。当出入度的第一阈值为出入度高于第一阈值的网络节点数量时,具体地,选择第一节点集合的方法包括:在网络的节点集合中,以每一网络节点为源点,将其边的数量作为该网络节点的出度;在网络的节点集合中,以每一网络节点为终点,将其边的数量作为该网络节点的入度;将每一网络节点的出度和入度中较大的一个作为该网络节点的度;将每一网络节点按度由大到小的顺序排列,由大到小选择网络的节点集合中第一比例阈值数量的网络节点作为度高于第一阈值的网络节点,从而得到网络的第一节点集合。进一步地,图2所示实施例的步骤S202具体可以为:对第一节点集合中的每一个网络节点分别执行如下操作:根据与第一节点集合中第一网络节点相邻的网络节点确定第二节点集合,其中,第二节点集合中的网络节点均是与第一网络节点相邻且向第一网络节点发送数据流的网络节点,并且第二节点集合中的网络节点不属于第一节点集合,第一网络节点为第一节点集合中的任意一个网络节点;根据第二节点集合中不属于第一节点集合的网络节点的权值的累加值更新第一网络节点的权值,以获取第一网络节点的当前权值。具体地,由于第一节点集合中网络节点的权值体现了其它网络节点对其的依赖程度,因此可以根据各网络节点之间的流量来确定第一节点集合中网络节点对于其它网络节点的权值。具体方法可以为:对于第一节点集合中的任一个第一网络节点,确定与第一网络节点相邻的各网络节点,将与第一网络节点相邻的网络节点作为第二节点集合。其中,与第一网络节点相邻的网络节点是与第一网络节点之间有数据流量交互的网络节点。对于第一网络节点而言,将第二节点集合中不属于第一节点集合的网络节点的权值的累加,使用累加后的值更新第一网络节点的权值,得到第一网络节点的当前权值。一般而言,网络节点中各网络节点的初始权值为1,也就是说,第一网络节点的当前权值就是与第一网络节点相邻的网络节点中不属于第一节点集合的网络节点数量,也就是在计算介度中心值时第一网络节点能够替代的网络节点的数量。若将网络转化为图,从图的角度来看,上述过程可以为:以第一节点集合中的每一网络节点s为终点,遍历网络中以网络节点s为终点的边v,若v的起点不在第一节点集合中,则将网络节点s对其它网络节点的权值加1。也即以第一节点集合中的每一网络节点为终点,将网络的边中源点不在第一节点集合中的网络节点数量作为第一节点集合中每一网络节点对于述节点集合中其它网络节点的当前权值。进一步地,图2所示实施例的步骤S203具体可以包括:使用公式BC(u)+=(1+k)δs(u)u!=sBC(u)+=kδs(u)u==s,]]>u∈V,计算网络中个网络节点的介度中心值,其中u表示网络中的各网络节点,V表示网络的节点集合,s表示第一节点集合集合中的网络节点,k表示s的当前权值,δs(u)表示s对于u的依赖值,BC(u)表示网络节点u的介度中心值。具体地,在计算网络中各网络节点的介度中心值时,累加的是网络的节点集合中每一网络节点与每一第一节点集合中的网络节点的加权依赖值。而 加权依赖值是第一节点集合中的网络节点的当前权值与其依赖值之积。当计算网络节点u的介度中心值时,若u不是遍历过程中使用的源点s时,则源点s对于网络节点u的依赖值替代了源点s的当前权值数量的网络节点以及该源点s自身,也就是需要累加1+k次源点s对网络节点u的依赖值,k为源点s的当前权值。而当u为该源点s时,则在累加的过程中只需累加k次依赖值即可。其中,δs(u)表示s对于u的依赖值,使用公式计算s对于u的依赖值,其中,t表示网络中的每一网络节点,σst表示s与t之前的最短路径,σst(u)表示s与t之前的最短路径经过u的数量。计算第一节点中的网络节点的依赖值的过程与现有的介度中心算法相同,此处不再赘述。下面以一具体实施例对本发明实施例提供的介度中心计算方法进行进一步说明。图3A为一个网络的示意图,如图3A所示,将网络转化为一个待处理图,待处理图中包括网络节点30~网络节点36共7个网络节点,各网络节点之间的路径如图中所示。图3A示出的是一个无向图,即各网络节点之间的路径是没有方向性的,也即各网络节点之间都可以进行双向数据传输。按照正常的介度中心计算方法,在确定网络中各节点的重要程度时,需要以每个网络节点分别为源点遍历全图,计算依赖值后进行累加,如图3B所示,图3B为正常的介度中心计算方法示意图。在图3B中,分别以网络节点30~网络节点36为源点对全图进行遍历,然后将遍历得到的各网络节点的依赖值进行累加,一共需要进行7次遍历。而采用本发明实施例提供的确定网络节点的重要性的方法,在计算网络中各节点的介度中心时,首先计算各网络节点的出入度,由于图3A所示待处理图为无向图,出入度是相同的,因此计算各网络节点的出入度时,只需计算连接到该网络节点的其它网络节点的数量即可。从图3A中可以看出,网络节点30、网络节点31、网络节点33、网络节点35、网络节点36分别都只有一个与其连接的网络节点,而网络节点32有4个与其连接的其它网络节点,网络节点34有3个与其连接的其它网络节点。设待处理图的出入度阈值(即第一阈值)为3,则对于图3A所示的图而言,网络节点32和网络节点34将组成第一节点集合。在对待处理图进行遍历时,仅需以网络节点32和网络节点34为源点对全图进行2次遍历,然后将2次 遍历得到的各网络节点的依赖值进行累加。如图3C所示,图3C为本实施例提供的确定网络节点的重要性的方法中介度中心计算示意图。其中,在进行依赖值的累加时,还需考虑网络节点32和网络节点34的权值,使用加权依赖值进行累加。当网络节点32作为源点时,由于网络节点32分别与网络节点30、网络节点31、网络节点33、网络节点34连接,其中网络节点34处于第一节点集合中,因此网络节点32的当前权值为3,同理可得网络节点34的当前权值为2。在进行依赖值的累加时,当网络节点32作为源点时,若在累加除网络节点32之前其他网络节点的依赖值时,将网络节点32的依赖值乘以(1+3)=4后再进行累加;累加网络节点32的依赖值时,则仅需将网络节点32的依赖值乘以3后进行累加。同理,当网络节点34作为源点时,若在累加除网络节点34之前其他网络节点的依赖值时,将网络节点34的依赖值乘以(1+2)=3后再进行累加;累加网络节点34的依赖值时,则仅需将网络节点34的依赖值乘以2后进行累加。由此可见,针对图3A所示的网络,本发明实施例提供的确定网络节点的重要性的方法将计算介度中心值时的7次遍历减少为了2次遍历,从而降低了计算所需时间。在对本发明实施例提供的确定网络节点的重要性的方法进行实际测试时,对于多个实际的网络分布图进行介度中心的计算后得出的结果是,本发明实施例提供的确定网络节点的重要性的方法在进行介度中心计算时所需时间仅为正常的介度中心计算方法的3%左右。从而本发明实施例的方法可以大大缩短确定网络节点重要性所需时间。图4为本发明实施例提供的确定网络节点的重要性的装置实施例一的结构示意图,如图4所示,本实施例的确定网络节点的重要性的装置包括:选择模块41,用于根据网络中各个网络节点的流量确定第一节点集合,其中,所述第一节点集合中的网络节点的流量均高于第一阈值。计算模块42,用于分别根据向所述第一节点集合中的网络节点发送数据流的网络节点的权值计算所述第一节点集合中的各网络节点的当前权值;根据所述第一节点集合中各网络节点的当前权值和所述网络中各网络节点对于所述第一节点集合中各网络节点的依赖值计算所述网络中各网络节点的介度中心值。确定模块43,用于将所述网络中的各网络节点的介度中心值高于第二阈值的网络节点确定为所述网络中的重要网络节点。本实施例提供的确定网络节点的重要性的装置用于执行图2所示确定网络节点的重要性的方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。进一步地,在图4所示实施例中,计算模块42,具体用于对所述第一节点集合中的每一个网络节点分别执行如下操作:根据与所述第一节点集合中第一网络节点相邻的网络节点确定第二节点集合,其中,所述第二节点集合中的网络节点均是与所述第一网络节点相邻且向所述第一网络节点发送数据流的网络节点,所述第一网络节点为所述第一节点集合中的任意一个网络节点;根据所述第二节点集合中不属于第一节点集合的网络节点的权值的累加值更新所述第一网络节点的权值,以获取所述第一网络节点的当前权值。进一步地,在图4所示实施例中,计算模块42,具体用于使用公式BC(u)+=(1+k)δs(u)u!=sBC(u)+=kδs(u)u==s,]]>u∈V,计算所述网络中各网络节点的介度中心值,其中u表示网络中的各网络节点,V表示网络的节点集合,s表示所述第一节点集合中的网络节点,k表示s的当前权值,δs(u)表示s对于u的依赖值,BC(u)表示网络节点u的介度中心值。进一步地,在图4所示实施例中,计算模块42,还用于使用公式计算s对于u的依赖值,其中,t表示所述网络中的每一网络节点,σst表示s与t之前的最短路径,σst(u)表示s与t之前的最短路径经过u的数量。进一步地,在图4所示实施例中,所述网络中各网络节点的权值为1。图5为本发明实施例提供的确定网络节点的重要性的装置实施例二的结构示意图,如图5所示,本实施例的确定网络节点的重要性的装置包括:处理器501和存储器502。其中,处理器501和存储器502可以通过系统总线或其他方式相连,图5中以系统总线相连为例;系统总线可以是工业标准结构(IndustrialStandardArchitecture,ISA)总线、外部设备互联(PeripheralComponentInterconnect,PCI)总线或扩展工业标准结构(ExtendedIndustrialStandardArchitecture,EISA)总线等。所述系统总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。处理器501,用于根据网络中各个网络节点的流量确定第一节点集合,其中,所述第一节点集合中的网络节点的流量均高于第一阈值;分别根据向所述第一节点集合中的网络节点发送数据流的网络节点的权值计算所述第一节点集合中的各网络节点的当前权值;根据所述第一节点集合中各网络节点的当前权值和所述网络中各网络节点对于所述第一节点集合中各网络节点的依赖值计算所述网络中各网络节点的介度中心值;将所述网络中的各网络节点的介度中心值高于第二阈值的网络节点确定为所述网络中的重要网络节点。存储器502,用于存储处理器501所需处理的数据以及处理完的数据。本实施例的确定网络节点的重要性的装置用于执行图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。进一步地,图5所示实施例中,处理器501,具体用于对所述第一节点集合中的每一个网络节点分别执行如下操作:根据与所述第一节点集合中第一网络节点相邻的网络节点确定第二节点集合,其中,所述第二节点集合中的网络节点均是与所述第一网络节点相邻且向所述第一网络节点发送数据流的网络节点,所述第一网络节点为所述第一节点集合中的任意一个网络节点;根据所述第二节点集合中不属于第一节点集合的网络节点的权值的累加值更新所述第一网络节点的权值,以获取所述第一网络节点的当前权值。进一步地,图5所示实施例中,处理器501,具体用于使用公式BC(u)+=(1+k)δs(u)u!=sBC(u)+=kδs(u)u==s,]]>u∈V,计算所述网络中各网络节点的介度中心值,其中u表示网络中的各网络节点,V表示所述网络的节点集合,s表示所述第一节点集合中的网络节点,k表示s的当前权值,δs(u)表示s对于u的依赖值,BC(u)表示网络节点u的介度中心值。进一步地,图5所示实施例中,处理器501,还用于使用公式计算s对于u的依赖值,其中,t表示所述网络中的每一网络节点,σst表示s与t之前的最短路径,σst(u)表示s与t之前的最短路径经过u的数量。进一步地,图5所示实施例中,所述网络中各网络节点的权值为1。本发明实施例还提供一种数据处理的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令用于执行前述任意一个方法实施例所述的方法流程。本领域普通技术人员可以理解,前述的存储介质包括:U盘、移动硬盘、磁碟、光盘、随机存储器(Random-Access Memory,RAM)、固态硬盘(SolidStateDisk,SSD)或者非易失性存储器(non-volatilememory)等各种可以存储程序代码的非短暂性的(non-transitory)机器可读介质。需要说明的是,本申请所提供的实施例仅仅是示意性的。所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。在本发明实施例、权利要求以及附图中揭示的特征可以独立存在也可以组合存在。在本发明实施例中以硬件形式描述的特征可以通过软件来执行,反之亦然。在此不做限定。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1