一种基于节点能量模型的衡量网络信息传播能力的方法与流程

文档序号:18561024发布日期:2019-08-30 23:17阅读:381来源:国知局
一种基于节点能量模型的衡量网络信息传播能力的方法与流程

本发明涉及网络信息技术领域,一种基于节点能量的信息传播模型的衡量网络信息传播能力的方法。



背景技术:

衡量网络信息传播能力在舆论研究、信息推广、计算机病毒防控等有着广泛的应用,从人们开始对复杂网络进行研究以来,许多指标被提出用以来表征网络特征,如网络直径,三角形个数,节点中介系数等,这些指标都能从不同侧面表现出网络传播信息的能力。但是,这些指标只是一种理论指标,且忽略了节点结构对信息传播能力的综合影响,这种评价会有较大的误差。同时,信息在网络上进行传播存在着诸多的不确定性,目前还没有在网络上进行大量信息传播后得出的评价网络信息传播能力的指标。



技术实现要素:

本发明的目的在于克服上述现有技术不足,提出一种基于节点能量的信息传播模型的衡量网络信息传播能力的方法。

为实现上述目的,本发明采用如下的技术方案实现:

一种基于节点能量模型的衡量网络信息传播能力的方法,首先将模型在被测量网络上运行多次,分别统计该网络信息传播的成功率与感染率,计算测量网络成功率与感染率的乘积,具体包括以下步骤:

步骤1:按照节点度从小到大的方式,统计被测网络网络的节点序列node_array,对序列中相同节点的进行100次基于节点能量的信息传播模型实验,记录其成功率rsi与感染率rii;

步骤2:统计被测量网络的成功率rs与感染率ri;

步骤3:计算被测量网络的信息传播能力η=rs×ri。

上述步骤1中使用的基于节点能量的信息传播模型,模型运行步骤如下:

步骤1)读取测试网络g,初始化网络节点能量及相关属性;

步骤2)设置起始节点;

步骤3)判断网络上节点状态属性,若无信息传播节点则跳到步骤7;

步骤4)计算网络上节点能量变化;

步骤5)计算节点向其邻居进行传播信息的概率;

步骤6)计算节点接受来自邻居传来信息的概率,跳至步骤3;

步骤7)记录传播状态。

上述步骤1)中,初始化网络节点能量及相关属性,具体步骤如下:

步骤a)初始化节点能量为0,节点临时能量为0;

步骤b)设置接受能量时间序列为1;

步骤c)设置节点接收能量次数为0;

步骤d)设置初始传播信息标志位为true,设置节点状态为s;

步骤e)设置温度序列为空。

所述步骤2中,设置起始节点过程如下:

步骤1)获取被测量网络的节点度排序数组。

步骤2)在相同度节点中选出一个节点,作为初始节点

步骤3)设置初始节点状态为i,向节点添加初始温度t0。在信息未传播以前,网络上所有节点的状态为s,节点在接受来自邻居的信息后,其状态转变为i。一段传播后,节点失去对信息的关注,状态转变为r。

所述步骤4中,计算节点能量过程如下:

步骤1)遍历被测网络中节点;

步骤2)若节点状态为i,则根据节点相关属性参数进行能量计算ei,节点i的能量计算方式如下,

ei(t)=cmti(t)

上式中,m为节点的度,c为节点对信息的信任程度,ti(t)为在t时刻该话题对节点的吸引程度,t为信息传播过程中的时间。同时节点能量会随着时间的增加而衰减,衰减有两个因素,一是随着时间的增加,新信息的增加;二是节点对信息的遗忘,下式分别为两种能量衰减计算方式以及节点能量衰减计算方式;

hj(t)=lj(t)fj(t)

上式中,lj(t)为新信息增加而造成的衰减系数,tj为节点第j次接受该信息的时刻。τ为遗忘系数。hj(t)为总的能量衰减系数。

由于模型中允许节点多次接受同一则信息,故节点的能量计算方式如下:

步骤3)若ei<0,则节点状态变为r。

所述步骤5中,计算节点向其邻居进行传播信息的概率过程如下:

步骤1)遍历被测网络中的节点;

步骤2)若节点状态为i,则根据节点能量变化百分率γ与sigmoid函数计算出节点向其邻居转发信息的概率;

γ=(et-et-1)/et-1

上式中为节点i转发信息的概率;

步骤3)若随机数概率小于节点转发概率,则节点遍历其邻居,并在邻居相应属性上进行记录。

所述步骤6中,计算节点向其邻居进行传播信息的概率过程如下:

步骤1)遍历被测网络节点;

步骤2)若节点间状态为i或者s,则节点将会决定接收或拒绝邻居传来的信息;

步骤3)若随机数概率小于1/di则节点接受该信息;反之,则节点拒绝接受该信息。

附图说明

图1为信息传播时,三种状态节点随时间变化的趋势图

图2为信息传播时,成功率随参数τ的变化情况图

图3为信息传播时,感染率随参数τ的变化情况图

图4为整个网络信息传播能力测量流程图

具体实施方式

下面结合附图对本发明做详细描述。

本发明中通过将信息传播模型在网络上多次运行,从而得出相应的感染率与成功率,将实验得到的感染率与成功率相乘从而得到网络的信息传播能力衡量数值η,来衡量网络传播信息的强弱。

本发明包括以下步骤:

步骤1:按照节点度从小到大的方式,统计被测网络网络的节点序列node_array,对序列中相同节点的进行100次实验,实验在初始时,对节点的属性进行初始化,初始化属性包括节点初始能量为0,节点临时能量为0,接受能量时间序列为1,接受能量次数为0,信息传播标志位true,节点状态为s,设置温度序列为空。

在node_array中选出一个初始信息传播节点,对每一个存在的度数值进行100次实验,该实验中的节点是在相同度值的节点中随机选取的。节点初始温度为t0,节点状态为i。在本方法中初始温度t0=50。

信息传播过程如下:

1.遍历网络节点状态,判断网络上是否有被感染节点,若有则继续传播;若无,则传播结束。

2.计算节点的能量,遍历网络中节点,若节点为非i状态,则继续计算下一节点。若节点为i状态,则进行能量计算。节点能量计算方法如下。

ei(t)=cmti(t)

若节点能量ei(t)<1,则节点状态转变为r。

3.能量衰减主要有两个过程。a.新信息的出现导致的衰减;b.节点对信息的遗忘。计算公式分别如下:

下式为节点能量衰减的计算方式:

hj(t)=lj(t)fj(t)

4.节点转发信息计算。节点根据自身能量变化,算出转发信息的概率,计算方式如下:

γ=(et-et-1)/et-1

之后,本方法通过对比随机数与的值决定节点向其邻居转发信息。若节点向其邻居转发信息,则在其邻居节点处留下相关记录信息。

5.节点接受信息计算。处于i状态的节点会根据其接收来自邻居转发信息的个数,进行多次判断,每次判断接受的概率为1/di。

整个过程中,s,i,r节点数占总节点数量比例随时间变化如图1所示。在本图中,实验使用的网络为facebook,其节点数量约为64000。初始节点度为50,τ=1.1,φ=0.2。在本信息传播模型中,参数τ对信息传播影响最大。图2与图3分别显示了参数τ对成功率与感染的影响。

由于网络的复杂性,导致在使用上述参数时,有些网络成功率或者感染率达到饱和,从而无法对网络的信息传播能力进行衡量。为此,本发明采用了成功率与感染率变换的方法来对成功率与感染率进行统一,变换步骤如下:

1)将同一网络分别在τ1和τ2条件下进行实验,其中τ1<τ2。

2)实验将会得到rs1与ri1和rs2与ri2。在不同参数下,同一网络的信息传播能力是相同的。因此不同参数τ下的成功率换算系数如下,

式中rsi-j是指将τi下的成功率变换为τj下的成功率的变换系数。同理可以定义感染率的变换系数。一般情况下,无标量网络与真实社会网络的成功率与感染率不会出现饱和。

在一个度数值实验结束后,统计其成功率rsi与感染率rii。

步骤2:统计被测量网络的成功率rs与感染率ri。将每个节点度上的试验成功率与感染率分别与节点度所占总节点数量的权重相乘,可得到加权后的成功率rs与感染率ri。

步骤3:计算被测量网络的信息传播能力η=rs×ri。

本发明在不同规模的barabasi-albert网络上进行实验,网络规模分别为64万,6.4万,6400,640,这四个网络平均度相同。实验结果表明只要网络性质相同,则其感染率与成功率相似。通过其相似的成功率与感染率可以计算出这四个网络的信息传播能力,结果显示其传播能力基本相等。

同时,本发明中信息传播模型适用于规模较大的网络,规模较大是指节点数超过1000。这是为了降低节点数量较少给统计带来的不确定性。

图4是本发明的流程图,其介绍了本发明测量网络信息传播能力的主要流程。

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