基于点权的混合K-shell关键节点识别方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于点权的混合K-shell关键节点识别方法
王环;朱敏
【摘要】复杂网络中,评估节点的重要性对于研究网络结构和传播过程有着重要意义.通过节点的位置,K-shell分解算法能够很好地识别关键节点,但是这种算法导致很多节点具有相同的K-shell (Ks)值.同时,现有的算法大都只考虑局部指标或者全局指标,导致评判节点重要性的因素单一.为了更好地识别关键节点,提出了EKSDN(Extended K-shell and Degree of Neighbors)算法,该算法综合考虑了节点的全局指标加权核值以及节点的局部指标度数.与SIR(Susceptible-Infectious-Recovered)模型在真实复杂网络中模拟结果相比,EKSDN算法能够更好地识别关键节点.
【期刊名称】《华东师范大学学报(自然科学版)》
【年(卷),期】2019(000)003
【总页数】9页(P101-109)
【关键词】复杂网络;关键节点;K-shell分解算法;加权核值;度指标
【作者】王环;朱敏
【作者单位】华东师范大学计算机科学技术系,上海200062;华东师范大学计算中心,上海 200062
【正文语种】中文
【中图分类】TP391
0 引言
近些年来,学者们对复杂网络的研究正处于火热阶段,其思想已经渗透到各学科研究之中.现实生活中的许多行为都可以抽象成复杂网络,比如交通网、社交网、蛋白质基因相互作用网等[1].几乎每一个网络中,都存在着一个或者多个关键节点并在网络中占有非常重要的位置,如果删除这些关键节点,这个网络就有可能在结构和稳定性上受到很大的影响[2].例如,在社交网络中,如果删除了其中重要的节点,那么消息的传播会受到影响,但同样也可以通过删除这些节点来抑制谣言的传播.所以,挖掘网络中的关键节点对于认识网络特征、了解网络传播过程、保持网络结构等有着非常重要的意义.
识别网络中的关键节点存在很多种算法.大多数的算法都是利用网络的结构信息,为每个节点分配一个值,然后根据这个值决定节点的排名顺序[2].最容易想到的就是利用节点的局部特征度数(Degree Centrality,DC)(DC算法,又称为度中心算法)来判断节点的重要性[3],这是判断关键节点最直观简单的方法.但是利用节点局部特征的算法具有一定的缺陷,比如忽略了节点邻居的作用以及整个网络的拓扑结构,仅考虑单一因素使得节点重要性评判的依据不够充分.鉴于节点的重要程度和其邻居节点存在一定的联系,有些学者提出了介数中心性[4]、特征向量中心性[5]、接近度中心性[6]等,还有人考虑将PageRank算法[7]、H-index算法[8]以及累计提名算法[9]用于节点重要性排序中.介数中心性、特征向量中心性以及接近度中心性均从网络的全局角度出发,在评估节点重要性方面有了明显的效果,但这类算法时间复杂度都非常高,不适用于大规模的网络.PageRank算法最初用于网页排序,该算法认为节点的重要性由指向它的其他节点的数量及重要性决定,算法效果较好但是很容易陷入悬挂节点,并且不适用于节点连接紧密的网络.H-index算法通过统计论文引用数来评价学者的学术能力,将该算法运用在节点重要性排序中也取得了良好的效果.累计
提名算法是利用节点声望的迭代评判节点的重要程度,但以上两种算法均未从网络的拓扑结构综合地考虑节点的重要性.Chen[10]等人提出了LocalRank算法,该算法不仅利用了直接邻居的信息,还利用了四阶邻居信息,虽然算法效果较好,但是忽略了信息传播的过程.随着熵理论在复杂网络复杂性及不确定性研究中的应用,文献[11]的作者将熵理论应用到关键节点识别中,并取得了良好的效果.由于网络的结构和信息的传播有关,Kitsak[12]等人认为节点在网络中的位置对节点的重要性有一定的影响,于是提出将K-shell分解算法(Ks算法)应用到关键节点识别中,其主要思想是不断地去除网络中度数小于或等于k的节点,直到所有的节点都分配到一个K-
shell(Ks)值,根据这个Ks值判断节点的重要性.K-shell分解算法可以很好地显示网络的中心节点,具有良好的时间复杂度,但这是一种粗粒化的算法,所以经常会面临大量节点分配到相同Ks值的情形.为了克服K-shell分解算法带来的这种缺点,有些学者通过增加节点的额外信息来分解网络,从而提高算法的分辨率.Zeng等人提出了一种称为MDD(Mixed Degree decomposition)的混合度分解算法,即删除节点后,同时考虑网络中剩下的邻居节点以及删除的邻居节点的度数,然后按照混合Ks值来递归删除网络中的节点[13].文献[14]提出了一种基于两端节点的边加权算法,即wKs(weighted K-shell)算法,该算法在划分节点的度中加入了加权边ωij,引入加权边从而重新定义节点的混合Ks值.以上两种混合Ks值方法均有效地增加了分层的层数,提高了对节点重要性的判别.还有一部分学者通过对节点获得的Ks值处理来区分每个节点的重要性.Bae等人提出了核心中心性的算法,认为每个节点的得分应该是邻居的Ks值之和(Cnc+算法)[15].文献[16]首先定义每个节点的LKSS(Local K-shell Sum)值等于节点两跳内的邻居的Ks值总和,然后基于LKSS,节点最终的ELKSS(Extended Local K-shell Sum)值为邻居节点的LKSS之和(ELKSS算法).Ruan等人认为节点的重要性与连接的边有关系,在计算节点得分时加入了节点的网络连接系数,每个节点的最终得分为邻居节点的核数与连接系数乘积之和[17].
大多数算法仅从单方面改进传统的K-shell分解算法,且仅仅考虑了自身的Ks值,但这些是远远不够的.所以本文从两个角度来改进K-shell分解算法,提出了EKSDN 算法.首先,EKSDN算法通过增加节点的点权信息克服了传统K-shell分解算法的弊端;其次,基于有较多邻居节点且位于网络核心的节点影响力更大的思想,EKSDN算法加入了节点度指标以及目标节点两跳内节点的Ks值,进一步提升了算法识别关键节点的能力.几个真实网络的实验结果表明,本文提出的EKSDN算法在关键节点识别中可取得较好的效果.本文后续的安排:第1节介绍相关工作和算法;第2节介绍相关的实验;第3节总结全文并对未来研究方向进行展望.
1 相关工作和算法
1.1 K-shell分解算法
对于任一无权网络,一般用G=(N,E)表示,N代表网络中的节点数,E代表网络中的边数.通常用ei,j来表示节点i和节点j之间是否存在边,如果存在,则ei,j=1;否
则,ei,j=0.
一个节点的度定义为其邻居节点的个数,即.一般地,度数越大的节点意味着其邻居节点的数量越多.度指标仅仅只考虑了节点的邻居节点数量,然而节点所处的位置对节点重要性也起到一定作用.度数较小但处于网络核心的节点,其重要性较大.度数大但处于网络边缘的节点,其重要性也较小.K-shell分解算法是一种基于节点位置的粗粒度划分方法,核心思想是根据节点度数递归地删除网络中的节点.分解过程如下. (1)首先计算网络中节点的度数,删除节点度数为1的节点及其相连的边,更新网络再重新计算度数,再删除度为1的节点,直到网络中不存在度数为1的节点,记这些删除的节点Ks=1.
(2)递归地删除网络中节点度数小于等于2的节点及其相连的边,之后更新网络并重新计算度,记Ks=2.
(3)对于更新之后的网络,让度数为i(3,4,···,k)的节点重复上述过程,直到每个节点都
被赋予Ks值,记Ks=k.
1.2 改进的算法
加权网络中存在边权的概念,边权就是一条边两个节点的度数之和,即边的权重.边权用ωij表示,定义为
与边权相对应的是点权,又叫做点强度(Vertex Strength).点权定义为与它有关联的边权的总和,为
其中,Ti为节点i邻居节点的集合,N为网络中的节点数.
针对传统K-shell分解算法所面临的大量节点分配到相同Ks值的现象,本文基于文献[12]提出的加权边ωij,将加权网络中点权和边权的概念引入到无权网络,通过增加点权等信息来分解网络,从而克服了传统K-shell分解算法的弊端,提升了算法的分辨率.定义每个节点的混合km值为
计算每个节点的混合km值,然后根据这个km值按照K-shell的分解规则来分解网络.λ的取值范围为0∼1,经过多次实验证明,λ取值为0.45∼0.55效果最佳,且优于λ的其他取值仅0.01%.由此可见,λ的取值对实验效果影响较小,所以本文选取λ=0.5.由于km值不是一个整数,所以采用向下取整的方式来计算节点的Ks值.经过分解之后,每个节点都会获得一个Ks值.
为了进一步提升算法识别关键节点的能力,基于关键节点与位于网络核心的节点有更多连接的思想,所以本文在计算目标节点重要性时加入该节点两跳内节点的Ks值.由于判断节点重要性的因素较为单一,并且节点的度数在一定程度上反应了节点的影响力,所以在判断节点重要性时,又融入了节点的度指标.因此,定义每个节点的EKSDN值为
其中,Γi为与节点i相隔2跳之内节点的集合,N是网络中节点的个数.
为了比较各种算法的差异,对于图1给出的简单网络模型,本文分别用几种算法对其分解,进而获得了节点重要性的排序结果并对结果进行了分析.
表1所示的是节点重要性排序结果.从表中可以看出前4种算法都存在大量的拥有相同值的节点;本文的EKSDN算法很好地判断了图1所示网络的节点重要性,它能够区分节点1、节点2、节点3以及节点4,也能够区分节点7、节点9、节点23和节点24.因而本文提出的EKSDN算法相比于其他算法效果稍好.
2 实验结果
2.1 数据集
每个网络的拓扑结构不同,本文实验将在4个真实网络中进行:①Kar ate Club网络是一个社会网络,它是经过对美国一个大学空手道俱乐部观测而构建的
[18];②NetScience网络是一个从事网络理论和实验科学家合著的关系网络
[19];③Email网络是西班牙一所大学的电子邮件网络,包含教师、研究生、技术和管理人员[20];④Blogs网络是联合美国两个政治阵营的博客构建的[21].表2显示了这4种网络的一些统计特性,其中,N表示网络中节点的数量,E代表边数,k为网络的平均度数,C为平均聚类系数,d是平均最短路径,βth=该值表示网络理论上的传播阈值.
图1 示例网络图[16],图中节点1和节点16度数相同且最高为6,但节点1位于网络中心位置,节点16位于网络的边缘位置;K-shell分解算法根据节点的位置有效地判断节点的重要性,但不能很好地区分相同Ks值节点的重要性Fig.1 In an example network,nodes 1 and 16 have the highest degree;node 1 is at the core of the network,while node 16 is located at the edge of the network;the K-shell decomposition algorithm can judge the importance of
a node based on its position effectively,but the importance of nodes with the same Ks value cannot be distinguished well
表1 不同算法排序结果Tab.1 Sorting results using different algorithmsimages/BZ_110_471_2113_2142_2175.png1 1,16 1,2,3,4 1,16 1 1,2 1 1 2 2,4 5,11,12,13 2,4 2 4 2 4 3 3,5,13 others 3 4,16 3 4 2 4 22 5,13 3 13 3 3 5 6,8,11,12,21 22 5 5 16 16 6 others 11,12,21 13 11,12 5 5 7 6,8 11,12,21,22 16 13 13 8 others 6,8 10 11,12 11,12 9 17,18,19,20 21 6,8,21 10 10 10,14,15 6,8 10 21 11 7,9,23,24 14,15,17,18,19,20 14,15 6,8 12 22
17,18,19,20 17,18,19,20 13 7,9,23,24 22 22 14 7,9 14,15 15 23,24 7,9 16 23,24
表2 网络统计特性Tab.2 Network
statisticsimages/BZ_111_504_617_2054_671.pngKarate Club 34 78 4.58 0.129 0.571 2.41 NetScience 379 914 4.82 0.125 0.741 6.04 Email 1 133 5 451 9.62 0.054 0.221 3.61 Blogs 1 222 16 714 27.35 0.072 0.284 6.25
2.2 评估模型
本文使用文献[15]中的单调性指标(Monotonicity)评估算法效果,因为该指标量化了排序结果内节点分数的关系,所以选取单调性指标评估不同算法的分辨率,且分辨率代表了节点的传播能力.在任一算法中,网络中的每个节点均会分配到对应的分数,如果大多数节点的得分不同,则说明节点重要性划分得更加细腻.得分相同的节点越少,则单调性指标越大.单调性指标的定义为
其中,R代表将要排序的数据向量,n为R中元素的个数,nr表示的是R中相同得分的节点的数目.如果每个节点的得分都不同,意味着排序结果完全单调,则M(R)为1;如果每个节点的得分相同,即排序的结果全部相同,则M(R)为0.
在关键节点识别研究中,通常会选择3种模型来模拟信息传播:SI(Susceptible-Infectious)模型、SIS(Susceptible-Infectious-Susceptible)模型以及
SIR(Susceptible-Infectious-Recovered)模型.这3种模型均是度量节点传播影响力时广泛使用的工具.由于SIR模型广泛运用在描述人群中的信息和谣言传播过程中,所以本文使用该模型来评估节点的传播能力,从而衡量网络中节点的重要性[22-23].在SIR模型中,主要存在3种个体:易感染个体S、感染个体I以及免疫个体R. 初始的时候,在网络中随机选择一个或者多个节点作为感染个体I,其他的节点为易感染个体S.每一个时间步内,如果一个易感染个体S与一个或者多个感染个体I相连,则它会按照某个概率变成感染个体I.除此之外,感染个体I也会依照某个事先预定的治愈率变成免疫个体R.每个时间步,这些演化规则在网络中并行执行,直到网络中不存在感染个体I,然后按照最终感染的节点个数来衡量节点的传播效率.
为了进一步验证算法的性能,将SIR仿真模拟的实验结果和算法的结果进行比较.本文采用肯德尔相关系数(通常用希腊字母τ来表示)判断两者之间的相似性.将SIR模型仿真的结果视为随机变量X,算法的结果当成随机变量Y,它们的元素个数相同,均为N,随机变量的第i个值用xi和yi分别表示.从排序结果中构造序列对
(xi,yi)(i=1,2,···,N),如果同时满足xi>xj且yi>yj,或者满足xj>xi且yj>yi,则(xi,yi)和(xj,yj)是一致的;如果xi>xj且yi<yj,或者xj>xi且yj<yi,则这两个序列是不一致的.除此之外,如果满足xi=xj或者yj=yi,那么就可以认为(xi,yi)和(xj,yj)既不是一致的,也不是不一致的[24].两个随机变量的肯德尔相关系数τ定义为
其中,c和d分别表示N对(xi,yi)序列中一致的数量以及不一致的数量,n是排序向量中的元素个数,肯德尔相关系数τ可以用来判断不同排序结果的相似性,τ值越大,则相似性越高,反之相似性越低.
2.3 算法性能分析
本文的实验均是在Windows10操作系统下进行,开发语言为python.一共进行了3项实验,实验结果与分析如下.
实验一:为了进一步了解排名结果的分布情况,本文画出了4种网络中各种算法的累积分布函数(Cumulative Distribution Function,CDF)图像,如图2所示.CDF图像中横坐标表示节点得分,纵坐标表示对应横坐标值所出现的概率.从图2中可以看出:在前两种网络(Karate Club和NetScience)中,EKSDN算法的排名分布最广,Ks算法的排名分布最窄.在Email网络和Blogs网络中,EKSDN算法和wKs算法的排名分布相近.综上,通过排名结果的CDF图像可知,EKSDN算法相对其他几种算法在区分关键节点上较有优势,所得的结果分布也更广.
图2 4种网络的排名分布情况(CDF图像)Fig.2 Distribution of ranks in four real networks(via graph of the cumulative distribution function)
实验二:实验一的结果仅仅展示了各种算法的排名分布情况,但是不能直观地反映出排名的内部情况.由于单调性指标能够很好地考虑排序结果的内部情况,因此,表3给出了各种算法对应不同网络的单调性指标.从表3中可以看出,原始Ks算法的效果最差,原因在于很多节点被分配到相同的Ks值,这正是此算法的弊端;DC算法仅仅考虑了节点的度数,虽然分辨率较高,但是判断节点重要性的依据过于简单,可信度较小;MDD算法在小型网络(Karate Club)中的性能高于wKs算法,wKs算法在NetScience网络和Blogs网络中分辨率值均高于MDD算法;Cnc+算法在4种网络中的分辨率指标都较高.本文提出的EKSDN算法相较于其他5种算法有了一定的提升,特别是在Email网络中具有很好的分辨率.
表3 单调性指标Tab.3 Monotonicity
indeximages/BZ_113_508_658_2050_721.pngDC 0.707 9 0.887 4 0.764 2 0.565 4 Ks 0.495 8 0.808 8 0.642 1 0.467 0 MDD 0.753 6 0.922 9 0.821 5 0.590 6 wKs 0.687 8 0.920 1 0.824 1 0.603 2 Cnc+ 0.947 2 0.999 1 0.989 3
0.986 8 EKSDN 0.954 2 0.999 9 0.994 9 0.997 5
实验三:从图3中得到以下信息.Karate Club网络中,各个算法的波动都比较
大,MDD算法与wKs算法走势相似,Ks算法的效果稍逊于其他算法.在NetScience 网络中,初始时DC算法和Ks算法效果较好;但是当感染概率大于理论传播阈值βth 之后,这两种算法的效果较差,而EKSDN算法和Cnc+的算法效果较好.Email网络中,各种算法走势都比较相近,效果相差不大.图3(d)中,EKSDN算法和Cnc+算法均呈先上升后下降的走势,其余算法均呈下降趋势.总而言之,本文提出的EKSDN算法表现更加稳定,特别是当感染概率大于理论传播阈值βth时效果都优于其他算法. 图3 不同感染概率下,各算法排序结果与SIR模型产生排序结果的肯德尔系数值τFig.3 The Kendall coefficient value(τ)of the ranking res ult produced by each algorithm and the SIR model with different infection probabilities
3 总结
关键节点识别在复杂网络的研究中具有重要的理论和实践意义.本文提出了EKSDN 算法,首先通过加入网络节点的边权来细分节点的核数(混合km值),然后基于节点和邻居的关系,用节点及两跳之内节点的核数和度数来计算每个节点的最终得分.值得一提的是,这种算法不仅考虑了网络的全局指标核数,也考虑到了网络的局部指数度,从而更加全面地评判节点重要性.在实验部分,本文通过CDF图像和单调性指标分别比较了各算法的实验效果,同时还运用了SIR模型模拟网络信息的传播,并将得到的节点的传播能力与算法得出的排序结果进行了比较,各项实验结果证明本文提出的EKSDN算法较优于其他算法.接下来的研究中会将该算法应用到SI模型和SIS模型等传播模型中.考虑到本文提出的EKSDN算法仅适用于无权网络,所以下一步的研究方向将会扩展到加权网络中,同时会把网络规模对重要节点识别的影响纳入到研究中.
[参考文献]
【相关文献】
[1]LAWYER G.Understanding the influence of all nodes in a network[J].Scientific Reports,2015(5):8665.
[2]L¨U L Y,CHEN D B,REN X L,et al.Vital nodes identification in complex networks[J].Physics Reports,2016,650:1-63.
[3]BONACICH P.Factoring and weighting approaches to status scores and clique identification[J].Journal of Mathematical Sociology,1972,2(1):113-120.
[4]FREEMAN L C.A set of measures of centrality based on
betweenness[J].Sociometry,1977,40(1):35-41.
[5]BONACICH P.Some unique properties of eigenvector centrality[J].Social
Networks,2007,29(4):555-564.
[6]LATORA V,MARCHIORI M.Efficient behavior of small-world networks.[J].Physical Review Letters,2001,87(19):198701.
[7]WENG J S,LIM E P,JIANG J,et al.TwitterRank: finding topic-sensitive influential twitterers[C]//Proceedings of the 3rd International Conference on Web Search and Web Data Mining,WSDM 2010.ACM,2010:261-270.
[8]HIRSCH J E.An index to quantify an individual’s scientific research
output[J].Proceedings of the National Academy of Sciences of the United States of America,2005,102(46):16569-16572.
[9]POULIN R,BOILY M C,MˆaSSE B R.Dynamical systems to define centrality in social networks[J].Social Networks,2000,22(3):187-220.
[10]CHEN D B,L¨U L Y,SHANG M S,et al.Identifying influential nodes in complex networks[J].Physica A:Statistical Mechanics and its Applications,2012,391(4):1777-1787. [11]FEI L G,DENG Y.A new method to identify influential nodes based on relative entropy[J].Chaos Solitons&Fractals,2017,104:257–267.
[12]KITSAK M,GALLOS L K,HAVLIN S,et al.Identification of influential spreaders in complex networks[J].Nature Physics,2010,6(11):888-893.
[13]ZENG A,ZHANG C J.Ranking spreaders by decomposing complex networks[J].Physics Letters A,2013,377(14):1031-1035.
[14]WEI B,LIU J,WEI D J,et al.Weighted k-shell decomposition for complex networks based on potential edge weights[J].Physica A:Statistical Mechanics and its
Applications,2015,420:277-283.
[15]BAE J,KIM S.Identifying and ranking influential spreaders in complex networks by
neighborhood coreness[J].Physica A:Statistical Mechanics and its
Applications,2014,395(4):549-559.
[16]YANG F,ZHANG R S,YANG Z,et al.Identifying the most influential spreaders in complex networks by an Extended Local K-Shell Sum[J].International Journal of Modern Physics C,2017,28(1):925-214.
[17]RUAN Y R,LAO S Y,XIAO Y D,et al.Identifying influence of nodes in complex networks with coreness centrality:Decreasing the impact of densely local connection[J].Chinese Physics Letters,2016,33(2):149-152.
[18]ZACHARY W W.An information flow model for conflict and fission in small
groups[J].Journal of Anthropological Research,1977,33(4):452-473.
[19]NEWMAN M E J.Finding community structure in networks using the eigenvectors of matrices[J].Physical Review E:Statistical Nonlinear&Soft Matter Physics,2006,74(3 Pt 2):036104.
[20]LESKOVEC J,LANG K J,DASGUPTA A,et munity structure in large
networks:Natural cluster sizes and the absence of large well-defined clusters[J].Internet Mathematics,2009,6(1):29-123.
[21]GUIMER`A R,DANON L,D´IAZ-GUILERA A,et al.Self-similar community structure in a network of human interactions[J].Physical Review E:Statistical Nonlinear&Soft Matter Physics,2003,68(6 Pt 2):065103.
[22]NWEMAN M E.Spread of epidemic disease on networks[J].Physical Review E:Statistical Nonlinear&Soft Matter Physics,2002,66(1 Pt 2):016128.
[23]BALKEW T,MODEL S,RATE R R,et al.The SIR Model When S(t)is a Multi-Exponential Function[J].Dissertations&Theses-Gradworks,2010,14(6):50-50.
[24]WANG X Y.An image blocks encryption algorithm based on spatiotemporal
chaos[J].Nonlinear Dynamics,2012,67(1):365-371.。

相关文档
最新文档