基于反向生成网络的复杂网络影响力节点识别方法

文档序号:31528576发布日期:2022-09-14 15:52阅读:473来源:国知局
基于反向生成网络的复杂网络影响力节点识别方法

1.本发明涉及影响力节点识别技术领域,特别是涉及一种基于反向生成网络的复杂网络影响力节 点识别方法。


背景技术:

2.网络科学的繁荣引发了复杂网络中识别一组有影响力节点的新潮,现实生活中的许多领域包括 生物学、物理学、社会学、工程学等,都可以用复杂网络来表示。网络中的的关键节点或是影响力 节点可用于维持网络拓扑结构的稳定性、决定网络中如谣言等信息传递的效率,这些节点直接决定 了网络是否能够正常运转。通常将这些节点称之为影响力节点。而识别网络中一组有影响力的节点 就是经典的影响力最大化问题。加强对影响力节点的控制,为加快信息传播提供新机遇,这对病毒 式营销、识别药物靶标和必要蛋白质以及谣言控制等都具有十分重要的意义,例如在口碑营销中, 选取最具影响力的用户进行推广以保证花费最少预算达到最大的传播效果,又或如在社会网络中检 测舆情传播源头,可以控制舆情传播。随着大数据和5g时代的到来,网络的类型和规模也迅猛增 长,这对旧有的节点影响力度量方法提出了新的挑战。
3.基于社区发现的影响力节点识别方法在近几年引发了网络科学研究者的广泛关注。然而已有的 方法只是简单地利用了社区结构这一特性,并且一些基于三段式的方法在选择候选节点集和种子节 点时还存在一些不足。首先,现有的方法如随机游走、遗传算法或其他的一些启发式算法在选择候 选节点集时需要遍历整个网络,并且选择的候选节点之间可能存在彼此聚集的情况。若从这些候选 节点集中选择出来种子节点可能存在影响力范围重叠的问题。因此候选节点集的生成在整个种子节 点选择过程中尤为重要。其次,在种子节点识别阶段时,大量算法利用贪婪算法进行精确选择,尽 管在生成候选节点集中进行选择已大大提高了运行效率,但也是比较耗时的。


技术实现要素:

4.本发明旨在至少解决现有技术中存在的技术问题,特别创新地提出了一种基于反向生成网络的 复杂网络影响力节点识别方法。
5.为了实现本发明的上述目的,本发明提供了一种基于反向生成网络的复杂网络影响力节点识别 方法,包括以下步骤:
6.s1,社区划分:利用louvain算法对网络进行社区划分,缩小种子节点的搜索空间;
7.s2,候选节点集生成:利用图遍历收集节点信息从而辅助构造改进的反向生成网络,在这种 方法下构建网络时不必恢复原始网络即可选出高重要性节点;再选择一部分节点加入候选节点集;
8.s3,选择种子节点:从候选节点集中找出最终的k个有影响力节点作为种子节点。
9.进一步地,所述社区的规模至少具备以下条件:
10.c_size=size(g)*η
ꢀꢀꢀ
(9)
11.其中c_size表示社区大小;
12.size(g)表示网络g的节点数量;
13.η是一个可调参数,用于控制满足条件的社区大小。
14.进一步地,所述s2包括:
15.s2-1,计算剩余节点的加入代价,选择最小化代价函数的节点构建网络,代价函数为:
[0016][0017]
其中cost(u,n+1)表示节点u在(n+1)
th
时间步的代价函数;
[0018]
表示在(n+1)
th
时间步,将节点u加入到网络g中的最大连通分量的大小,即
[0019]
aucu表示节点u的auc值;
[0020]
auc
max
表示所有节点中最大的auc值;
[0021]
auc
min
表示所有节点中最小的auc值;
[0022]
ξ是一个足够小的正参数;
[0023]
s2-2,加入节点之后,需要更新网络中每个连通分量的大小,并记录网络中最大连通分量的大 小;
[0024]
s2-3,重复步骤s2-1~s2-2,直到剩余节点数量满足所需候选节点数量,与此同时停止构造网 络。
[0025]
利用改进的反向生成网络来生成候选节点集有以下优点,首先,可以使得生成的候选节点集更 加分散,节点少量聚集,并且都是网络中的关键节点。第二,选择的候选节点影响力范围重叠度低, 在第三阶段也可以用启发式方法与贪婪方法平衡来选择种子节点。第三,这些候选节点保证了网络 的健壮性,移除这些节点将很容易造成网络瓦解。第四,在生成候选节点时不用遍历整个网络,当 未加入节点满足候选节点集数量时即可停止构建网络。
[0026]
进一步地,所述s2还包括:
[0027]
为了进一步缩小搜索范围,并保证有质量合适的候选节点,在每个社区形成的独立网络中设置 候选节点集的大小,其公式表示如下:
[0028][0029]
其中cand_numi表示第i个社区候选节点集的大小;
[0030]
(c_size
i-c_size
min
)/(c_size
max-c_size
min
)表示第i个社区在所有选择社区中的比例;
[0031]
β是一个放大参数;
[0032]
k是最终需要选择的的种子节点数量。
[0033]
进一步地,所述图遍历包括:
[0034]
选择度中心性作为图遍历中的初始化中心分数,度中心性经过图遍历框架优化,可以产生更加 细粒度的衡量节点影响力的auc分数。
[0035]
进一步地,所述s3包括:
[0036]
s3-1,通过度折扣算法在候选节点集中选择k1个节点;
[0037][0038]
所述度折扣算法的计算公式为:
[0039][0040]
其中gddv表示节点v的度折扣;
[0041]dv
表示节点v的度;
[0042]
tv表示节点v的感染邻居数量;
[0043]
tw表示节点v的易感邻居节点w的感染邻居数;
[0044]
p表示传染概率;
[0045]
s3-2,通过改进的子模性算法选择k2个节点;
[0046]
k2=k-k1ꢀꢀꢀ
(13)
[0047]
其中k为最终需要选择的种子节点数量;
[0048]
μ是一个可调参数以平衡贪心算法和启发式算法;
[0049]
c表示网络中满足一定规模的社区的总数;
[0050]
cand_numi表示第i个社区候选节点集的大小;
[0051]
所述改进的子模性算法选择k2个节点具体步骤为:若在每轮改进的子模性算法选择的过程中选 择的节点u与之前选择的节点或启发式过程选择的节点相似,则不选择该节点,并将其从候选节点 集中剔除。
[0052]
改进的子模性算法相较于原来的子模性算法,进一步考虑了节点的位置信息以及节点之间的结 构相似性。
[0053]
进一步地,所述相似是通过下式来判断节点是否相似的,若满足下式,则节点u和节点v相似;
[0054][0055]
其中sim表示节点u和节点v的相似性;
[0056]
n(u)表示节点u的邻居节点集;
[0057]
n(v)表示节点v的邻居节点集;
[0058]
n(u)∩n(v)表示n(u)和n(v)共有的邻居数;
[0059]
|
·
|表示集合的数量;
[0060]
ε为一个趋近于0的参数;
[0061]
abs(
·
)表示取绝对值;
[0062]
ks(u)为节点u的归一化的k-壳指标;
[0063]
ks(v)为节点v的归一化的k-壳指标。
[0064]
进一步地,还包括通过以下性能指标对所述方法进行评价:鲁棒性值、累积分布函数、sir模 型以及平均最短路径长度。通过这四个性能指标能全面地判断本方法是否合理。
[0065]
综上所述,由于采用了上述技术方案,本发明的优点如下:
[0066]
(1)利用影响得分辅助构造反向生成网络,可以使生成的网络不必恢复到原始网络,未加入 到网络中的节点直接加入候选节点集,大大减小了计算时间。
[0067]
(2)考虑到节点与节点之间的共有邻居及位置关系会使选择出的节点集影响范围重叠,因此 提出了改进的celf算法。
[0068]
(3)考虑了网络的社区结构,利用社区对算法进行加速,并结合了网络的连通性、图遍历以 及启发式算法和贪心算法的优点。
[0069]
由此,本发明更能选择出网络中的关键节点或维持网络稳定性的节点作为候选节点,且提出的 方法选择的种子节点感染速度更快,感染规模更大,并且种子节点集之间在大部分网络上都是分散 的。
[0070]
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通 过本发明的实践了解到。
附图说明
[0071]
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理 解,其中:
[0072]
图1是本发明鲁棒性值r曲线图。
[0073]
图2是本发明图遍历中心性示意图。
[0074]
图3是本发明cbgn框架的整体示意图。
[0075]
图4是本发明的一个玩具网络示意图。
[0076]
图5是本发明6个实验网络的度分布图。
[0077]
图6是本发明6个真实网络在不同方法下的r曲线图。
[0078]
图7是本发明2个真实网络社区中的r曲线.
[0079]
图8是本发明degree和tarank_degree在3个网络上的cdf分布图。
[0080]
图9是本发明不同算法选择的种子节点在sir模型下的传播影响示意图。
[0081]
图10是本发明不同感染率下的传播规模示意图。
具体实施方式
[0082]
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的 标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例 性的,仅用于解释本发明,而不能理解为对本发明的限制。
[0083]
本发明提供了一种基于反向生成网络的复杂网络影响力节点识别方法,其具体实施例如下:
[0084]
s1,对舆情网络进行社区划分:利用louvain算法对舆情网络进行社区划分,缩小舆情种子节 点的搜索空间;
[0085]
s2,舆情候选节点集生成:利用图遍历收集舆情节点信息从而辅助构造改进的反向生成网络, 在这种方法下构建网络时不必恢复原始网络即可选出高重要性节点;再选择一部分节点加入舆情候 选节点集;
[0086]
s3,选择舆情种子节点:从舆情候选节点集中找出最终的k个有影响力节点作为舆情种子节点。
不同的社区,节点在相同社区可能联系更频繁。大量的基于社区的影响力最大化算法被提出,证明 了社区划分的有效性。
[0093]
基于以上讨论,在本发明专利中,提出了一种新的基于社区的反向生成网络 (community-basedbackwardgeneratingnetworks,cbgn)方法去识别复杂网络中的一组有影响力节 点,其中包括三个步骤:(1)社区划分;(2)候选集生成;(3)选择种子节点。首先,利用louvain算 法对网络进行社区划分,缩小种子节点的搜索空间。在第二步,利用图遍历去收集节点的信息,利 用这些节点信息不同,辅助构造反向生成网络,选择一部分节点加入候选节点集;最后,利用启发 式算法和改进的经典贪婪算法从候选节点中找出最终的top-k有影响力节点。
[0094]
1.2研究动机
[0095]
基于社区发现的影响力节点识别方法在近几年引发了网络科学研究者的广泛关注。然而已有的 方法只是简单地利用了社区结构这一特性,并且一些基于三段式的方法在选择候选节点集和种子节 点时还存在一些不足。首先,现有的方法如随机游走、遗传算法或其他的一些启发式算法在选择候 选节点集时需要遍历整个网络,并且选择的候选节点之间可能存在彼此聚集的情况。若从这些候选 节点集中选择出来种子节点可能存在影响力范围重叠的问题。因此候选节点集的生成在整个种子节 点选择过程中尤为重要。其次,在种子节点识别阶段时,大量算法利用贪婪算法进行精确选择,尽 管在生成候选节点集中进行选择已大大提高了运行效率,但也是比较耗时的。因此希望在第二阶段 选择出的候选节点集能对第三阶段有所帮助,并且不仅仅是缩小搜索范围的作用。
[0096]
2.相关概念
[0097]
让g=(v,e)表示一个复杂网络图,v=[v1,v2,...,vn]表示一组节点集,e=[e1,e2,...,em]表示一组边集。 节点表示复杂网络中的个体,边表示网络中个体之间的关系。在本发明专利中,只关注无向和无权 的简单网络,并且不允许存在自环。
[0098]
定义1,影响力节点top-k:top-k有影响力的节点定义为在特定场合中具有显著影响力的节 点,并且数量被指定为k。
[0099]
定义2,影响力最大化问题:影响力最大化问题是指去寻找一组影响力节点,使得以该k个节 点为源节点s,能够使得影响力在指定传播模型上传播时达到最大化,这可以表示为
[0100]
influ(s)=arg max
s∈v,|s|=k
σ(s)
ꢀꢀꢀ
(1)
[0101]
其中influ(s)表示源节点集s的影响力,σ(
·
)表示信息扩散函数,σ(s)表示以种子集s作为节 点集合,在指定模型上传播后能够影响的预期节点数量。
[0102]
定义3,鲁棒性值:鲁棒性值可以用来评估排序算法的性能。给定一个网络,在每个时间步移 除一个节点并计算剩余网络中最大连通分量的大小直至网络为空。其网络鲁棒性值r定义为
[0103][0104]
其中n是g中节点的数目,σ
gcc
(g)表示没有移除任何一个节点时网络的最大连通分量的大小, σ
gcc
(g\{v1,v2,...,vn})表示从网络中顺序移除集合k={v1,v2,...,vk}中的节点后剩余网络中的巨大连通分 量的大小。鲁棒性值r可以视为r曲线下的面积,如图1所示,
水平轴为k/n,垂直轴为 σ
gcc
(g\{v1,v2,...,vn})/σ
gcc
(g);图1的x轴表示移除节点的比例,y轴表示移除节点后剩余网络最大连 通分量的大小。
[0105]
在所有n个节点的网络中,最脆弱的网络为星型网络,最健壮的为全连接网络,在星型网络中,在完全网络中,因此,鲁棒性值的范围为更小的鲁棒 性值意味着算法更小的性能。
[0106]
在这一节,将介绍如下3个方面:社区检测,反向生成网络,图遍历方法。
[0107]
2.1.社区检测
[0108]
通常认为社区是一组相互联系紧密的节点,关注内容相似或拥有相同兴趣爱好的用户。社区内 部所有节点紧密聚集,而不同社区之间只是稀疏连接。研究网络中的社区结构检测问题,对于发现 社交网络中的群组结构、理解网络群组结构对信息传播的影响、识别复杂网络中的关键节点等都具 有重要意义。考虑现实世界网络特性,通过合理地利用社区结构,可以使算法复杂度大大减少。
[0109]
近十年大量杰出的社区发现算法如fpmqa,bilpa,communitygan,seal等被提出,但 newman算法和louvain毋庸置疑仍是被广泛利用的社区检测算法。在本发明专利中,选择louvain 算法对网络进行聚类,该算法是基于模块度的社区发现算法,其优化目标是最大化整个社区网络的 模块度。网络模块度定义为
[0110][0111]
其中q表示网络模块度;
[0112]ki
表示节点i相连的边的权重之和;
[0113]
kj表示节点j相连的边的权重之和;
[0114]aij
表示节点i、j之间边的权重;
[0115]
m表示所有边的权重之和;
[0116][0117]
其中a表示网络邻接矩阵,代表了节点之间边的权重,网络不是带权图时,所有边的权重视为 1;ki=∑
jaij
表示所有与节点i相连的边的权重之和,表示所有边的权重之和。louvain 算法主要包括modularity optimization和community aggregation两个阶段。前一阶段主要是将每个 节点划分到与其邻接的节点所在的社区中,以使模块度不断增大;后一阶段主要是将第一阶段划分 出来的社区聚合成一个点,再根据上一步的社区结构重新构造网络。阶段一需要计算模块度增益, 其计算公式为:
[0118][0119]
上式可以简化为:
[0120][0121]
其中∑
in
表示社区c内部所有边的权值之和,k
i,in
表示从节点i指向社区c的边的权值之和。 ∑
tot
表示指向社区c中节点的边的权值和。louvain算法可以获得网络更加自然的社区,并且也 是相当快速的算法,因此利用该算法对网络进行社区划分来加速所提出的算法。
[0122]
2.2.反向生成网络
[0123]
lin等人提出了backward generating networks(bgn)去识别复杂网络中的有影响力节点,该方 法通过最小化鲁棒性值r来得到节点重要性的排序。bgn旨在找到一个节点序列,使网络尽快地 崩溃,即网络中最大连通分量快速减小。bgn的核心是逆向过程,它没有选择从网络中删除节点, 而是依据网络中巨大连通分量大小增长尽可能慢的需求,逐个向空网络中添加节点去构造原始网络。 这样,节点的排序与添加的顺序相反,也就是说,后面添加的节点在维护网络连接方面更重要。
[0124]
逆向过程从空网络g0(v0,e0)开始,其中,并且在(n+1)
th
时间步即第n+1个节点 的时间步,将剩余节点中的一个节点添加到当前的网络gn(vn,en)中形成一个有n+1个节点的新网 络,即g
n+1
(v
n+1
,e
n+1
),vn表示网络gn的节点集,en表示网络gn的边集。重复此过程,直到网络恢 复为原始网络。注意,在这一过程中所有进行中的网络gn(n=0,1,2,...,n)都是网络g的诱导子图,gn表示n个节点的网络。根据bgn的策略,在每一个时间步中选择的节点应该尽可能最小化网络g
n+1
中的最大连通分量的大小。
[0125]
2.3.图遍历中心性
[0126]
图遍历框架可以纳入不同类型的中心性以提高现有性能。该方法从图遍历的角度解决影响力节 点识别问题,与现有方法完全不同。现有的任何中心性如度中心性,h-index等都可以通过该框架 生成重要性分数。图遍历中心性如图2所示,首先,对于网络中的每一个节点,通过逐层遍历图来 构建一个广度优先搜索树(bfs),其中目标节点为根节点,如图2(a)所示。每一个节点都有一个 初始中心性分数,可以从任意中心性度量方法获得。对于有影响力节点的树,一般在bfs树的顶 层会有较多节点,这是因为顶层节点属于根节点的局部邻居。第二,从每棵bfs树中构建一个长 度为h的累积分数向量vec=[l1,l2,...,lh],其中h表示最大的层数(根节点的层数为1)。li表示层数不大 于i的所有节点的分数之和,如图2(b)所示。第三,得分向量vec的前m个值被用来绘制曲线, 用曲线下的面积来量化节点的影响,将曲线下的面积记为auc值,以此来衡量每个节点的影响力; 如图2(c)所示,其中m(1≤m≤h)是用户特定的参数,本图中m=2;x轴表示bfs树的层数,y 轴表示每层的累积分数。
[0127]
在给定的网络图g中,假设初始化中心性分数为cs={c1,c2,...,cn},其中ci表示节点i的某种中心 性(如度、h-index等),n表示节点数量,cn表示第n个节点中心性分数。那么每个节点生成的bfs 树在第m层的累积分数可以被计算如下:
[0128][0129]
其中cum_score(m)表示每个节点生成的bfs树在第m层的累积分数;vj表示节点j,t(q)表示 某节点生成的bfs树中在第q层的所有节点,cj表示节点j的某种中心性。auc值通
过生成的得 分向量的前m项绘制曲线并计算面积获得,可以表示如下:
[0130][0131]
auc(m)值表示生成的得分向量的前m项绘制曲线并计算面积获得,表示一个节点的auc值, 以此衡量节点的重要性。
[0132]
通过图遍历获得的auc值可以更好地提升如度中心性等的性能,使已有的中心性排序方法更 加细粒度。
[0133]
3.提出的框架
[0134]
在这一章节中,将提出新的cbgn框架以实现网络中的影响力最大化。其算法伪代码如算法 1所示。该框架如图3所示由三部分组成:(1)社区划分;在这一阶段上采用一种适合应用数据集 的、考虑运行时间的社区检测算法(算法1line3)。(2)候选集生成;在反向网络生成中引入图遍历 这一概念。利用图遍历进一步优化的中心性度量来逐个向空网络中添加节点。最后,还没有加入到 网络中的节点即作为候选节点(算法1lines 4-10)。(3)选择种子节点。将启发式算法与贪婪算法平 衡以快速准确选择节点(算法1line12)。下面将会给出每一步的详细描述。
[0135]
3.1社区划分
[0136]
louvain算法被用来对本发明专利真实网络数据集进行划分。相比于其他的一些图分割方法、 层次聚类方法、标签传播方法等,louvain算法不需要关于社区数量的先验知识,可以发现更自然 的社区。因此,由louvain算法获得的社区更加接近真实网络的固有社区。并且该社区发现算法还 可以应用到大规模网络上。另外,对于划分社区后的网络,并不是所有的社区都是足够有意义地容 纳最终的种子节点,对于那些规模较小的社区,不将其送入候选节点选择阶段。考虑到规模更大的 社区有更多的影响力,每个社区规模至少具备以下条件
[0137]
c_size=size(g)*η
ꢀꢀꢀ
(9)
[0138]
其中size(g)表示网络g的节点数量,η是一个可调参数,用于控制满足条件的社区大小。本 发明专利设置η=0.01。
[0139][0140]
3.2候选节点选择
[0141]
在这一阶段,候选节点将在相互独立的社区中产生。通过减少需要评估的候选节点的数量来找 到最具影响力的节点,从而提高效率。在这一步中,每个社区将被看作一个诱导子图,一个独立的 网络。在每个网络中,通过最小化鲁棒性值执行反向生成网络的过程。当将节点u加入网络时,记 此时网络的最大连通分量为g[u]。根据反向生成网络策略,加入的节点u应最小化网络中最大化连 通分量的大小,但是可能存在两个或以上节点同时满足此条件,例如图4中的绿色节点,图4是一 个玩具网络.,图4(a)是在反向生成过程的第2个时间步,发现在保证最小化网络最大连通分量的 情况下,再加入一个节点时,这里有多个节点(节点1,2,3,4,6)可选,图4(b)在反向生成网络 的第4个时间步,这里有3个节点(节点1,3,4)可选。利用通过图遍历优化过的中心性来辅助构 造反向生成网络。将最小化连通分量大小这一目标转换为最小化代价函数。将其代价函数定义为:
[0142][0143]
其中,cost(u,n+1)表示节点u在(n+1)
th
时间步的代价函数,aucu表示节点u的auc值,auc
max
表示所有节点auc值最大的,auc
min
表示所有节点auc值最小的,表示在(n+1)
th
时间步, 将节点u加入到网络g中的最大连通分量的大小,即ξ是一个足够小的正参数,保 证这里选择度中心性作为图遍历中的初始化中心分 数,度中心性经过图遍历框架优化,可以产生更加细粒度的衡量节点影响力的auc分数。在每个 时间步将使得代价函数最小的节点加入到网络中,当剩余未加入节点数量满足候选节点数量需求时, 停止构造网络。其改进的在每个社区中用于生成候选节点的反向生成网络算法imp_bgn如算法2 所示。由于反向生成网络过程中先加入是较为不重要的节点,因此将剩余未用于构造原始网络的节 点则传入候选节点集。为了进一步缩小搜索范围,并保证有质量合适的候选节点,在每个社区形成 的独立网络中设置候选节点集的大小,其公式表示如下:
[0144]
[0145]
其中,cand_numi表示第i个社区候选节点集的大小,项(c_size
i-c_size
min
)/(c_size
max-c_size
min
)表 示第i个社区在所有选择社区中的比例,其值定义在[0,1]。β是一个放大参数,控制候选节点集的 规模大小。k是最终需要选择的的种子节点数量。利用改进的反向生成网络来生成候选节点集有以 下优点,首先,可以使得生成的候选节点集更加分散,节点少量聚集,并且都是网络中的关键节点。 第二,选择的候选节点影响力范围重叠度低,在第三阶段也可以用启发式方法与贪婪方法平衡来选 择种子节点。第三,这些候选节点保证了网络的健壮性,移除这些节点将很容易造成网络瓦解。第 四,在生成候选节点时不用遍历整个网络,当未加入节点满足候选节点集数量时即可停止构建网络。
[0146]
综上,利用imp_bgn生成候选节点是很具有意义的。
[0147][0148]
在算法2中,首先lines1-2行对算法进行初始化,之后lines3-11构建反向生成网络以生成候选 节点集。每次在网络中加入节点时,需要计算剩余节点的加入代价(lines4-5),选择最小化代价函 数的节点(line7)构建网络。在加入节点之后,需要更新网络中每个派系即连通分量的大小,并记录 网络中最大连通分量的大小(line8)。重复此过程,直到剩余节点数量满足所需候选节点数量。
[0149]
3.3选择种子节点
[0150]
通过前面两阶段,搜索空间已大大缩减。由于第二阶段的候选节点集节点之间彼此较为分散, 可以利用启发式算法部分选择节点来平衡算法效率。在这一阶段选择启发式方法结合贪婪方法一起 选择种子影响力节点。利用启发式算法结合改进的经典贪婪算法或者利用启发式算法结合经典贪婪 算法均可。优选用启发式算法结合改进的经典贪婪算法选择种子影响力节点,步骤如下所示:
[0151]
整体的种子节点选择分为两步:步骤1):通过度折扣算法在候选节点集中选择部分k1节点,步 骤2):通过改进的子模性celf算法选择部分k2节点。令k1、k2满足以下条件:
[0152][0153]
k2=k-k1ꢀꢀꢀ
(13)
[0154]
其中,k为最终需要选择的种子节点数量,c表示网络中满足一定规模的社区的总数。μ是一 个可调参数以平衡贪心算法和启发式算法。为方便,本发明专利设置μ=0.5。在启发式算法选择过 程中,令度折扣中的传染概率p大于网络的传播阈值。每个节点的广义折扣度用式(14)获得,将计 算结果从高到低排序,选择前k1个节点。
[0155][0156]
其中dv表示节点的度,tv表示节点v的感染邻居数量,tw表示节点v的易感邻居节点w的感染 邻居数。在贪婪的celf选择阶段,进一步考虑了节点的位置信息以及节点之间的结构相似性,若 在每轮改进的celf选择的过程中选择的节点u与之前选择的节点(选择阶段先选的节点,celf 算法需要迭代地选择节点)或启发式过程选择的节点相似,即只要有一个节点满足,那么就不选择 该节点,并将其从候选节点集中剔除。设计节点u和节点v相似性如下:
[0157][0158]
sim_loc=1-abs(ks(u)-ks(v))
ꢀꢀꢀ
(16)
[0159]
其中sim表示节点u和节点v的相似性,n(u)表示节点u的邻居节点集,n(v)表示节点v的邻 居节点集,abs(
·
)表示取绝对值。ks(u)为节点u的归一化的k-壳指标,ks(v)为节点v的归一化的k
ꢀ‑
壳指标。式中前项表示节点之间的结构相似性,后项表示节点之间的位置相似性。由于两个节点 之间的k-壳指标相等或相近,则他们应该位于网络的相近位置,这样的节点被认为在位置上相似。 位置相似sim_loc性通过式(16)计算。显然,sim_loc越大则节点位置越相似。式中ε为一个平衡结 构相似性和位置相似性的正参数,这里设置ε=0.1。其选择种子节点算法伪代码如算法3所示。
[0160]
[0161][0162]
其中,lines1-3对算法进行初始化,接着用度折扣算法选择部分k1节点(line5),最后用改进的 celf算法选择部分k2节点(lines12-19),sim_value表示相似性阈值,两节点之间的相似性大于该 相似性阈值,则认为他们是相似的。
[0163]
4实验结果
[0164]
为了将提出的cbgn方法与已有的算法(degree、k-shell、nc+、pagerank、clusterrank和 bgn)进行比较,在inf-usair、cenew、power、ca-grqc、hamster和router这6个真实网络上进 行了包括鲁棒性和sir模型的传播规模的仿真实验。
[0165]
4.1数据集
[0166]
本发明专利使用了6个不同类型和规模的真实网络数据集,其统计特性如表1。
[0167]
每个实验网络的度分布和网络社区划分如图5所示,分别为(a)inf-usair,(b)cenew,(c)power, (d)hamster,(e)ca-grqc,(f)router。其中横坐标表示网络中节点的度,纵坐标表示节点度出现的 频数。小图为网络的社区可视化结果。
[0168]
其中,1)inf-usair是一个美国航空网络,节点表示一个机场,边则表示两个机场之间有直飞 的航线。2)cenew是一个生物网络,描述的秀丽隐杆线虫代谢网络的边列表。3)power是一个无 向、无权网络,代表美国各州电网的拓扑结构,每个节点表示电力公司,每条边表示电力公司之间 的关系。4)hamster是一个描述网站”www.hamsterster.com”的用户之间的友谊关系。5)ca-grqc网 络是一个科学合作网络,涵盖了提交给广义相对论和量子宇宙学类别的论文的作者之间的科学合作。 6)router是自治系统级别上互联网结构的对称快照。
[0169]
表1网络的统计特性
[0170]
network|v||e|《k》k
max
《d》c_numβ
min
inf-usair332212612.8071392.73870.0231cenew45320258.942372.66490.0256power68512825.7431212.422170.2778hamster24261663113.7112733.671680.0241ca-grqc4158134226.456816.049400.0589router502262582.4921066.449550.0786
[0171]
在表1中,|v|表示网络中节点总数,|e|表示网络中边的数量。《k》=2|e|/|v|表示网络的平均度。 k
max
表示网络最大度。《d》表示网络平均最短路径长度。c_num表示网络中的社区个数。β
min
为网络 的传播阈值,通过公式《k》/(《k2》-《k》)计算。
[0172]
4.2性能指标
[0173]
(1)鲁棒性值
[0174]
可以运用鲁棒性来评价算法的性能,给定一个网络,在每个时间步删除一个节点,并计算剩余 网络中最大连通分量的大小。将这些每次加入节点时的最大连通分量加和,并用网络大小n归一 化即可得鲁棒性值。鲁棒性值通过式(2)计算得到,并且值越小则说明排序算法越能给出正确的排 序。
[0175]
(2)累积分布函数(cdf)
[0176]
累积分布函数能完整描述一个随机变量x的概率分布,对于所有的实数x,累积分布函数定义 如下:
[0177]fx
(x)=p(x≤x)for-∞《x《+∞
ꢀꢀꢀ
(17)
[0178]
可以用cdf确定取自总体的随机观测值小于或等于特定值的概率。本发明专利用cdf曲线来 测量排序算法区分节点重要性的能力。
[0179]
(3)sir模型
[0180]
sir模型是一种常见的描述传染病的扩散模型,其基本假设是将网络中的节点分为三类:a)易 感节点,指未被感染的但缺乏免疫能力的节点,b)感染节点,这类节点是已经被感染的节点,在每 个时间步可以以β的概率去感染邻居易感节点,c)恢复节点,同样在每个时间步,每个感染节点会 以γ的概率变为恢复状态,并且在之后不会参与感染和被感染过程。sir模型常被使用来衡量节 点的影响力规模。本发明专利使用sir模型来衡量选择的种子节点的最终感染规模。优秀的传播 者能迅速达到高感染水平,其在t时刻感染规模f(t)以及在感染过程中达到稳定状态的最终感染规 模f(tc)可以被表示为
[0181][0182][0183]
其中ni(t)表示t时刻感染节点的数量,nr(t)表示t时刻恢复节点数量,n是g中节点的数目,。
[0184]
(4)平均最短路径长度
[0185]
为了确保更广泛的覆盖范围,可以考虑所选择的种子节点散布在网络的各个部分。一般来说, 选择的节点越分散即均匀散布在网络中,则节点之间的影响范围重叠度越
小,可以期望的感染的范 围就更大。通常可以用平均最短路径长度来判断节点的分散程度,种子节点之间的平均最短路径长 度ls可以通过式(19)计算。
[0186][0187]
其中s表示选择的种子节点集,d
u,v
表示节点u到节点v的平均最短路径长度。
[0188]
4.3基线算法
[0189]
以6种先进的算法作为基准算法,分别在鲁棒性实验和传播规模实验与提出的cbgn方法进 行对比,其6种算法简要介绍如下。
[0190]
degree:该算法选择最大的度作为种子节点,是一种简单的、直观的以及常用的标准算法。
[0191]
k-shell:通过k-壳分解可以获得每个节点的k-壳值,k-壳方法考虑了节点在网络中的位置关 系。
[0192]
neighborhood coreness(nc):该方法是在k-壳方法上的进一步改进,每个节点的邻域核数c
nc
(v) 和扩展的邻域核数c
nc+
(v)计算如下,其中ks(w)表示节点w的k-壳值。
[0193][0194][0195]
其中n(v)表示节点v的邻居数量。
[0196]
pagerank:pagerank算法作为计算机互联网网页重要度的算法被提出。pagerank值越高,网 页就越重要,在互联网搜索的排序中可能就被排在前面。如果一个网页被很多其他网页链接到的话, 说明这个网页比较重要。如果一个pagerank值很高的网页链接到一个其他的网页,那么被链接到 的网页的pagerank值会相应地因此而提高。
[0197]
clusterrank:clusterrank算法不仅考虑了节点本身的影响力,还考虑了节点的聚类系数。它 考虑了网络的局部信息,缺乏性能保障。
[0198]
bgn:该算法是从网络鲁棒性的角度去考虑节点重要性的,考虑了网络的全局信息。
[0199]
4.4鲁棒性分析
[0200]
为了验证改进的反向生成网络算法的有效性,将imp_bgn与六种基线算法进行对比,分析其 鲁棒性。好的排序算法应该具备更小的鲁棒性值,即r曲线下的面积越小。图6可视化了6个网 络中反向生成网络过程中生成的r曲线,6个网络分别是(a)inf-usair,(b)cenew,(c)power,(d) hamster,(e)ca-grqc,(f)router。表2中给出了不同方法在6个真实网络的鲁棒性值r。从图6 及表2中可以看出,除了在inf-usair网络中,imp_bgn相较于其他6种基线方法,其鲁棒性值r 更小。由此可以说明利用该方法可以很好地选择出候选节点,这些候选节点有助于维持网络稳定性 及连通性。考虑到反向生成网络是应用在候选节点选择阶段,候选节点是在以社区形成的子网络中 进行的,为了进一步验证算法的有效性,在每个网络的规模较大的前2个社区中对算法鲁棒性进行 分析,其结果统计如表3,c1,c2表示社区规模排名前2的两个社区。在图7中对cenew和power 这两个网络中的前两个社区的r曲线进行可视化,图7为2个真实网络社区中的r曲线,横轴表 示种子节点比例,纵轴表示网络中最大连通分量的大小。图7(a)为cenew中的最大的社区,图 7(b)cenew中次大的社区,
图7(c)为power中最大的社区,图7(d)为power中次大的社区。
[0201]
从表3和图7中可以看出,imp_bgn算法在大部分网络的社区中表现也最出色,并且在 inf-usair网络的社区中也以微小优势胜过bgn算法。
[0202]
表2不同方法鲁棒性值r
[0203]
networkinf-usaircenewpowerhamsterca-grqcrouterk-shell0.16140.18730.42230.18150.23170.0285clusterrank0.11810.13010.21150.13710.10510.0158pagerank0.12270.12290.20190.14210.10270.0135nc+0.16430.16230.33290.16920.21430.0202bgn0.08990.11710.06330.10450.06060.0076degree0.12600.12000.22860.13840.13130.0121imp_bgn0.09610.07900.04310.08720.05380.0063
[0204]
表3不同算法在社区中的鲁棒性值r
[0205][0206]
另外,之所以选择经过图遍历优化过的度中心性来辅助构建反向生成网络,相比于直接用度中 心性来辅助构建更有效。这是因为度中心性经过图遍历框架优化过后变得更加细粒度。可以用分辨 率来区分节点重要性的能力,这样的分辨能力可以通过累积分布函数cdf来衡量。图8给出了在 3个网络中degree和经图遍历优化过的度中心性trank_degree的cdf曲线。3个网络分别为(a) inf-usair,(b)cenew,(c)power,图中x轴表示节点的等级,y轴表示各等级所占的比例。 其cdf曲线与x轴夹角越小则表明算法效果越好。可以看出trank_degree更能区分节点的重要性。 这更加验证了算法imp_bgn的有效性。
[0207]
4.5传播规模分析
[0208]
为验证所提出的cbgn方法选择影响力节点的能力,选用sir模型来衡量不同算法选择的种 子节点的最终感染规模f(tc)。选取β应高于网络的传播阈值β
min
,感染率设置为λ=β/γ。由于模 型存在随机性,实验结果通过对1000次独立实验求平均获得。选择的种子节点数量设置为网络规 模的3%。实验结果如图9所示,其中横坐标表示感染的时间t,纵坐标f(t)表示t时刻累积感染的 节点数,并且f(t)会随者时间的推移达到一个稳定值f(tc)。在更少的时间达到更大的f(tc),则表 明算法的性能更好。
[0209]
观察图9的sir模型时间步长实验,所提出的cbgn与另外的6个算法相比,在6个网络数 据集中传播规模都是最佳的,这6个网络分别为(a)inf-usair,(b)cenew,(c)power,(d)hamster, (e)ca-grqc,(f)router。在inf-usair网络中,所提出的cbgn方法感染规模明显高于其他6种基 线算法,而6种基线算法感染规模相当。在power网络中,cbgn算法感染规模以0.84%的优势胜 过最好的clusterrank算法。在网络cenew、hamster、ca-grqc和router中,cbgn方法的感染 规模分别高于最好的bgn算法0.59%、1.05%、0.71%和
0.14%。在这4个网络中,bgn算法都表 现出优秀的能力,但还是次于cbgn。另外,在sir模型中,不同的传染概率也会对传播规模造 成一定的影响,因此对sir模型的不同的传染率进行实验,设置λ范围为[1.0,2.0],实验结果如图 10所示。同样地,实验结果由1000次独立实验的平均获得。其中x轴表示传染率λ,y轴表示在 某一传染率下的稳定的最终感染规模f(tc)。
[0210]
在不同的感染概率下,所提出的cbgn方法感染规模都优于6种基线算法。除在cenew网络 中,cbgn方法与bgn算法表现相似,在其余网络中都以较大的优势胜过bgn算法。此外,在 选择候选节点时,改进的反向生成网络算法imp_bgn在inf-usair、router上并未始终收获最小的 鲁棒性值,但通过最终的cbgn方法选择出的种子节点却能成功感染最多的节点。由此可见,构 建的cbgn框架是循序渐进的和有效的。
[0211]
4.6平均最短路径长度分析
[0212]
通常来说,选择的种子节点集节点之间越分散,即平均最短路径越大,则扩散影响可以达到更 广的范围,因此种子节点集之间的平均最短路径长度ls通常作为一种衡量好坏的指标。ls并不是一 个绝对的指标,因为在选择节点时考虑的是节点的传播能力而不仅仅是节点的分散程度。
[0213]
表4平均最短路径长度
[0214]
networkinf-usaircenewpowerhamsterca-grqcrouterdegree1.01.307712.38091.69293.9363.6381k-shell1.01.30779.77621.99584.01173.1819nc+1.01.25278.67141.58713.97453.0253pagerank1.13331.318711.21431.73933.38533.6440clusterrank1.01.318710.65241.65412.92743.0640bgn1.01.46158.53812.10083.74634.1390cbgn1.21.527512.28572.26183.98214.0840
[0215]
表4给出了提出的cbgn方法与6种基线算法选择的种子节点之间的平均最短路径长度。可 以看出,在一半的网络中,通过cbgn方法选择出的种子节点集都是最分散的。而degree、k-shell 和bgn方法分别在power、ca-grqc和router网络中选择出最分散的节点。
[0216]
5结论
[0217]
本发明专利提出了一种基于社区的反向生成网络框架cbgn去解决影响力最大化问题。首先, 利用适合应用数据集的、考虑运行时间的louvain算法将网络划分成自然的社区,通过这一步缩小 影响力节点的搜索范围。然后,将每个社区视为原图的诱导子图,在每个子图中运用图遍历优化的 度中心性来辅助反向构建网络,每次向网络中加入最小化代价函数的节点,当剩余未加入网络的节 点满足候选节点数量时停止构建网络,所有的这些候选节点被送入候选节点集。通过分析鲁棒性实 验,改进的反向生成网络算法在整个网络或独立的社区中都能获得更小的鲁棒性值。这验证了改进 的imp_bgn算法更能选择出网络中的关键节点或维持网络稳定性的节点作为候选节点。最后,利 用度折扣和考虑网络结构和节点位置关系的贪婪算法在候选节点集中选择出最终的种子节点。通过 算法的传播规模和平均最短路径长度实验证明,提出的cbgn方法选择的种子节点感染速度更快, 感染规模更大,并且种子节点集之间在大部分网络上都是分散的。
[0218]
综上所述,本发明专利的主要贡献总结如下:
[0219]
(1)提出了一种新的最小化代价函数的反向生成网络方法imp_bgn,利用图遍历这一新视角, 通过构建一个目标节点为根节点的广度优先搜索树(bfs)来评估每一个节点,从bfs树中可以得到 每一个节点的影响得分,利用影响得分来辅助构造反向生成网络,并且由于首先加入的是最不重要 的节点,可以使生成的网络不必恢复到原始网络,未加入到网络中的节点直接加入候选节点集,大 大减小了计算时间。
[0220]
(2)改进了celf算法,考虑到节点与节点之间的共有邻居及位置关系会使选择出的节点集 影响范围重叠,设计出了一种相似性评价指标,应用在了celf选择种子节点的过程。
[0221]
(3)构想出了一个基于社区的反向生成网络框架cbgn来选择复杂网络中一组有影响力的节 点,考虑了网络的社区结构,利用社区对算法进行加速,并结合了网络的连通性、图遍历以及启发 式算法和贪心算法的优点。
[0222]
(4)对提出的cbgn方法进行鲁棒性、影响力传播规模和节点间平均最短路径长度等实验评 估,在inf-usair等6个真实网络上的实验结果表明,提出的算法相比已有的先进方法更有竞争性。
[0223]
此外,对于影响力节点识别问题,从不同角度来看仍有很多挑战,例如,如何高效地挖掘大规 模网络影响力节点,在时变网络上影响力节点可能会随着拓扑的变化而变化以及在多层网络中如何 更好地结合不同层之间的信息等。未来的工作将更进一步地扩展到加权网络、时变网络、多层网络 和异质网络上。
[0224]
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的 原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要 求及其等同物限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1