基于概率跳转随机游走的节点重要性度量方法与流程

文档序号:11778199阅读:597来源:国知局
基于概率跳转随机游走的节点重要性度量方法与流程

本发明涉及一种复杂网络中节点的重要性识别方法,特别涉及一种基于概率跳转随机游走的节点重要性度量方法。



背景技术:

文献“基于自规避随机游走的节点排序算法[j].物理学报,2015,64(20):61-68”公开了一种结合网络结构局域信息和标签扩散的节点排序算法。该方法综合考虑了节点的直接邻居数量及与其他节点之间的拓扑关系,能够表征其在复杂网络系统中的结构影响力和重要性。该方法把网络中流动的对象都抽象为标签,认为在扩散中节点收到标签的数量,能够用来表征其对网络的影响力,从而判定节点在网络中的重要性。自规避随机游走是指在每一步游走过程中,不再选择那些已经到达过的节点,相对于传统随机游走,可以缩短时间,并且避免在扩散过程中形成区域范围内的标签扩散闭环。文献所述方法综合考虑了节点的局部信息和全局信息,可以在一定程度上反映节点在网络拓扑中的影响力,但是这种自规避机制使标签难以扩散到整个网络,会夸大网络社区结构中节点的重要性,其次可变的传递参数会影响到算法的有效性,需要针对不同网络进行单独设置调优,实际适用受到很大限制。



技术实现要素:

为了克服现有复杂网络中节点的重要性识别方法准确性差的不足,本发明提供一种基于概率跳转随机游走的节点重要性度量方法。该方法将网络中所有流动的对象都抽象为消息,在模拟消息的随机游走过程中,使用节点的平均度和网络的平均路径长度求得一个跳转概率值,通过这个值实现消息在整个网络中的随机跳转,能够避免消息在社区结构中的反复游走,最后统计消息在网络中随机游走时经过节点的频次,来确定网络中节点的重要程度。该方法能够适用于不同结构、不同规模的网络,在实际使用时没有可调参数,在计算时间小于全局方法的前提下能更真实地描述网络中各节点之间的差异性,准确性好。

本发明解决其技术问题所采用的技术方案:一种基于概率跳转随机游走的节点重要性度量方法,其特点是包括以下步骤:

步骤一、设定消息数量和随机游走步数,计算跳转概率。

假设在网络g中,存在数量为message_num的消息,这些随机分布于网络的不同节点,然后以随机游走的方式向外传播。为了避免消息陷入局部社区,引入了跳转概率pc,pc定义如下:

式中,<k>表示网络的平均度,<d>表示网络的平均路径长度。设定随机游走步数为step_num步,将各节点消息经过次数置零。

步骤二、完成基于概率跳转的随机游走。

消息在网络中进行随机游走时,选择下一个节点需要两步,先由跳转概率pc决定是否跳转,若跳转则随机选择网络中的节点,若不跳转再由转移概率pij=1/k(i)决定。转移概率pij表示从节点vi游走到其邻居节点vj的概率。即消息会以概率pc随机跳转至图g中的任一节点,或者以概率1-pc游走至邻居节点。

步骤三、统计各节点消息经过的次数。

在方法初始时刻,各节点统计的消息经过次数已全部置零,然后所有消息同时开始随机游走,经过设定的step_num步后,统计各个节点的消息途经次数。

步骤四、根据统计次数完成网络节点重要性排序。

消息经过某个节点的次数越多意味着该节点的重要程度越高,根据完成随机游走后各个节点统计的消息经过次数,完成节点的重要性排序。

本发明的有益效果是:该方法将网络中所有流动的对象都抽象为消息,在模拟消息的随机游走过程中,使用节点的平均度和网络的平均路径长度求得一个跳转概率值,通过这个值实现消息在整个网络中的随机跳转,能够避免消息在社区结构中的反复游走,最后统计消息在网络中随机游走时经过节点的频次,来确定网络中节点的重要程度。该方法能够适用于不同结构、不同规模的网络,在实际使用时没有可调参数,在计算时间小于全局方法的前提下能更真实地描述网络中各节点之间的差异性,准确性好。

下面结合附图和具体实施方式对本发明作详细说明。

附图说明

图1是本发明基于概率跳转随机游走的节点重要性度量方法的流程图。

图2是本发明方法与介数(bc)、度(dc)、接近中心性(cc)的重要节点排序结果分别采用attackrobustness评价模型移除i/n比例的节点后,与剩余节点中最大联通集的比例关系对比图。

图3是本发明方法与介数(bc)、度(dc)、接近中心性(cc)的重要节点排序结果分别选取不同前top-k节点作为感染节点,采用sir传播模型感染的范围对比图。

具体实施方式

参照图1-3。

一个无自环的无向网络记为g=(v,e),其中v={v1,v2,…,vn}是网络中的所有节点集合,e={e1,e2,…,em}是节点间边的集合,|v|=n和|e|=m分别是该网络中的节点数和连边数。a=(αij)n×m为g的邻接矩阵,当节点vi和vj之间有边相连时αij=1,否则αij=0。节点vi和的度定义为k(i)=∑j∈γ(i)aij,其中γ(i)是节点vi的邻居节点集合。

本发明基于概率跳转随机游走的节点重要性度量方法具体步骤如下:

步骤一、设定消息数量和随机游走步数,计算跳转概率。

假设在网络g中,存在数量为message_num的消息,它们随机分布于网络的不同节点,然后以随机游走的方式向外传播。为了避免消息陷入局部社区,引入了跳转概率pc定义如下:

式中<k>表示网络的平均度,<d>表示网络的平均路径长度。设定随机游走步数为step_num步,将各节点消息经过次数置零。

步骤二、完成基于概率跳转的随机游走。

消息在网络中进行随机游走时,选择下一个节点实质经过两步,先由跳转概率pc决定是否跳转,若跳转则随机选择网络中的节点,若不跳转再由转移概率pij=1/k(i)决定。转移概率pij表示从节点vi游走到其邻居节点vj的概率。即消息会以概率pc随机跳转至图g中的任一节点,或者以概率1-pc游走至邻居节点。

步骤三、统计各节点消息经过的次数。

在方法初始时刻,各节点统计的消息经过次数已全部置零,然后所有消息同时开始随机游走,经过设定的step_num步后,统计各个节点的消息途经次数。

步骤四、根据统计次数完成网络节点重要性排序。

消息经过某个节点的次数越多意味着该节点的重要程度越高,根据完成随机游走后各个节点统计的消息经过次数,完成节点的重要性排序。

应用实施例:

一种基于概率跳转随机游走的节点重要性度量方法(pjrw)伪代码描述如下:

代码中的pass_count[vi]数组存放消息经过节点vi的次数;location[message_num]数组存放所有消息当前所在节点;location[j].neighbors表示第j条消息当前所在节点的所有邻居节点;rank(vi)为pjrw算法的节点排序输出结果。

为了验证方法的有效性,采用attackrobustness评价模型和sir传染病模型对pjrw方法以及bc、dc、cc这3种节点重要性评价指标进行了检验,实验中采用了人工生成的scale-free和small-world网络,以及6个真实网络:海豚网络(dolphins)、msn博客空间中交流的关系网络(blog)、洛维拉·依维尔基里大学成员邮件通信关系网(email)、美国国家电力网(power)、全球最大的社交网络facebook中部分用户关系网络(facebook)和enron公司电子邮件通信网络(email-enron)。8个网络的基本拓扑属性如表1所示。

表1实验使用的8个网络的拓扑属性参数表

其中n代表网络中的节点数,m代表网络中的边数。<k>是网络中的平均度值,<k2>是网络中的度平方平均值,<d>表示该网络的平均最短路径,cc是网络的集聚系数,pc为本发明方法在该网络中的跳转概率。.

attackrobustness模型着重考察网络中一部分节点移除后网络结构和功能的变化。该方法用σ(i/n)表示移除i/n比例的节点后,网络中属于巨片(giantcomponent)的节点数目与网络节点总数n的比例。若σ(i/n)值越小,说明剩余网络中的最大连通巨片越小,意味着网络被分割的越破碎,因此移除i/n比例的那部分节点越重要。网络的鲁棒性(robustness)可用r-指标刻画:

由于r值的取值范围确定,可定义v-指标来刻画网络受到攻击(移除节点)的脆弱性:

v=0.5-r(3)

v-指标越大表示采用某种节点重要性排序方法进行攻击(按重要节点排序依次移除节点)的效果越好。v-指标和r-指标可从整体上反应各种节点重要性评价方法的有效性。

参照图2,使用attackrobustness评价模型分析pjrw方法和bc、dc、cc四种方法得到的结果。其中横坐标表示移除前ρ=i/n的节点,纵坐标为σ(i/n),表示剩余节点中最大连通集的比例。右上方的子图给出了曲线下降接近稳定态时的放大图,下方给出了4种方法的v-指标计算值。从图中可以看到,pjrw方法和bc、dc在多数情况下能更快地破坏图的结构,即在移除节点的过程中,这三种方法的曲线下降更快,而cc指标结果相对较差。其原因是pjrw、bc和dc所得到的重要节点能较为离散的分布在网络中,移除这些节点会使整个网络快速分裂为多个部分,导致网络崩溃;而cc由于其评价机制所得到的重要节点比较靠近网络中心,部分重要节点可能会落在同一社区,因此,曲线下降速度相对较慢。从图中还可以看到,在facebook网络中,pjrw方法表现较差,这是因为该网络节点连接紧密(cc=0.6055,<k>=43.691),具有典型的高聚集低耦合特征,即不同的社区内部连接紧密,而社区和社区之间区分明显,仅通过有限的“桥”节点进行连接,因此bc指标表现最好。另外,从v-指标的值来看,pjrw方法多数情况下略优于其他三种方法,说明本方法对图的持续破坏更加优秀。另外,从局部放大的子图可以看出,使用pjrw方法移除节点时,在σ(i/n)的值趋于稳定前的一段时间,效果明显更好。

sir模型是目前评价复杂网络中节点重要性广泛采用的方法。sir模型假设网络中的节点有三个状态:易染态s(susceptible),感染态i(infected),免疫态r(recovered,免疫态的节点不会再被感染,也不会传播病毒)。在sir模型中,处于i状态的节点以概率β感染其周围处于s状态的邻居节点,与此同时,处于i状态的节点以概率γ进行恢复,恢复后进入r态(不再被感染和传播病毒)。设置一个(组)节点为初始感染节点(即处于i态),观察每一时间步网络中处于i状态和处于r状态的节点数目,最终稳定态时(没有i态的节点时)被感染过的和恢复后的节点数目的总和即代表了该(组)节点的传播范围,传播范围越大,说明所选取的初始节点的影响力越大。因此,如果一个节点重要性排序方法的结果使得sir模型的感染范围越广,则说明该方法的评价效果越好。

采取全接触的sir传染模型对不同方法的结果进行实验,取前top-k节点作为初始感染节点,以概率βc=<k>/(<k2>-<k>),β=1.5βc对处于s状态的邻居节点进行传播,βc为sir传播模型的阈值,并以概率γ进行恢复,简单起见,这里设γ=1。此时,只需计算传播若干步至稳定态后恢复节点的数量f(t),即可描述节点重要性评价方法的传播范围,这里取t=30。在sir传播模型中,由于dolphins网络规模较小,选取了前1.6%~17.6%的top-k节点,email-enron网络规模较大,选取了前0.2%~1.2%的top-k节点,其它网络则选取了前2.5%~7.5%的top-k节点为作为初始感染节点。

参照图3,pjrw方法和bc、dc、cc四种方法在上述8个网络中采用了sir模型进行了传播的模拟。其中横坐标为初始节点感染的比例,纵坐标为传播t=30步至稳定态后(传播范围为传播过程中不再有感染节点),恢复节点在该网络中所占的比例。为了保证sir传播模型评价的有效性,所有实验结果均为1000次独立重复实验的平均值。从图中可以看出,pjrw方法在大多数网络中取得了略高于其他方法的传播范围,特别是在attackrobustness模型中本发明表现不佳的facebook网络中,sir模拟结果却远优于其他方法,结合前文的分析,说明了能同时兼顾局部信息与全局信息,更大限度的接近实际情况。另外,在更具一般性的人工生成网络scale-free和small-world中,pjrw方法同样取得了较好的结果,说明该方法能有效寻找各自网络中的关键节点,并且能适用于不同的网络拓扑结构,进一步证明了方法的有效性。

为分析pjrw方法与bc、dc、cc四种节点重要性评价方法所得结果之间的相关性,采用了肯德尔等级相关系数(kendall’stau)来衡量两种排序结果的一致性。肯德尔等级相关系数公式定义为:

其中,nc为具有一致性排序顺序的元素对数;nd为具有不一致性排序顺序的元素对数,n为网络的节点数。从表2的结果中可以看出,在大部分网络中,pjrw方法与dc强相关(τ>0.8),与bc显著相关(0.5<τ<0.8),而与cc弱相关(τ<0.5)。这是因为pjrw更多的使用了网络的局部信息,仅在概率跳转方面引入了部分全局信息,所以和dc呈现出很强的相关性。另外,由于跳转概率的引入,导致pjrw的计算结果和bc呈现显著的相关性,说明pjrw方法也可以很好的发现网络中的桥节点。

表2本发明方法(pjrw)与其他方法相关性分析

通过attackrobustness和sir节点重要性评价模型,可以证明pjrw方法在2个人工网络和6个真实网络中表现优秀,能有效发现网络中的top-k重要节点,并且在大部分网络中运行结果略优于度、介数、接近中心性评价指标。另外,相关性分析表明,pjrw方法和介数具有显著相关性,可以有效的通过少量全局信息来识别网络中桥节点。该方法实现简单,使用中没有可调参数,对网络重要节点的识别准确性高于中心性指标,对不同网络结构都具有良好的适应性,可快速准确定位大规模网络中的重要节点。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1