基于传播路径逆向追溯的信源和影响力节点定位方法与流程

文档序号:11388845阅读:396来源:国知局
基于传播路径逆向追溯的信源和影响力节点定位方法与流程

本发明涉及一种基于传播路径逆向追溯的信源和影响力节点定位方法,属于计算机网络技术领域。



背景技术:

1998年6月美国康奈尔大学的watts及其导师strogatz在《nature》上发表了题为“小世界网络的集体动力学”的文章;1999年10月barabasi和albert在《science》发表了题为“随机网络中标度的涌现”的文章。这两篇文章分别揭示了真实网络的小世界特征和无标度性质,为该领域研究奠定了坚实的理论基础。无标度特性揭示了一个网络中不同节点所扮演的角色可能大相径庭,因此,识别最有影响力的节点近年来成为网络科学领域的研究热点,此项研究对控制疾病爆发、优化网络资源、提升电子商务广告效应、避免交通或internet网络大面积瘫痪、促进媒体传播效果、预测科学网络中具有潜力的论文和作者均具有重要的实际意义。目前影响力度量方法主要基于网络的静态拓扑结构,但是真实网络的拓扑结构则是动态变化的,因此传统的度量方法并不适用于真实环境;随着大数据技术发展(获取数据的便捷性和处理数据能力的提高),基于数据驱动背景下的影响力节点定位技术就显得非常重要。类似于路由器转发数据时可获取分组的源地址和下一跳地址,采用传播路径也可有效刻画信息在社交网络的传播过程,例如新浪微博中当节点i转发所关注邻居好友j发布的一条热点新闻时,该信息的传播跳数加1,通过分析节点i的转发记录就可获知该节点的上游节点(父节点)为j;以此类推,通过逆向追溯就可以定位该热点新闻的发布源头(信源),同时在传播过程中影响力节点发布的信息越容易受到“粉丝节点”关注和转发,因此该类节点在逆向追溯过程中也更容易被发现。

专利申请号为cn201610255447.2的文献中给出了“基于快速密度聚类的电力通信网节点重要性评估方法”,其通过计算节点度、紧密度、介数、将计算得到的数据归一化输入到快速密度聚类算法中,分析计算出电力通信网的节点的重要性结果。此方法使用节点的多维拓扑属性综合计算影响力,当网络拓扑结构动态变化时就无法有效应用。

专利申请号为cn201210356136的文献中给出了“一种基于多属性决策的复杂网络节点重要度综合评价方法”,提出了一种基于多属性决策的复杂网络节点重要度综合评价方法,利用网络中单个节点的度中心性、介数中心性、接近中心性、结构洞等多个指标作为该节点重要性评价的多个属性进行综合计算,从而确定节点在网络中的重要程度。此方法同样只适用于静态网拓扑结构。

专利申请号为cn201510614670.7的文献中给出了“一种获得社交网络中影响力最大的前k个节点的方法”,根据信息的内容将信息分类到不同类别中,采用网络流模拟的方法计算相应类别下不同节点之间的流量,通过加权平均方式计算实际的影响力得出最后节点集合。此方法从数据流驱动角度研究影响力节点定位方法,但是在计算时需要提前获取网络的整个拓扑结构进而生成邻接矩阵,并且该方法采用模拟流量计算节点间的流量,无法刻画实际网络的真实环境。



技术实现要素:

本发明的目的是克服现有技术中存在的不足,提供一种网络数据视角下基于传播路径逆向追溯的信源和影响力节点定位方法,解决了现实网络中拓扑结构动态变化,传统方法无法适应的问题,从而最终提升了网络信源和影响力节点的定位效果。

按照本发明提供的技术方案,所述基于传播路径逆向追溯的信源和影响力节点定位方法包括以下步骤:

步骤1、利用社交网络官方api抓取特定主题的数据,包括转发该主题的节点id、转发时间、上游节点id、标题内容等;

步骤2、通过抓取的数据,针对信息进行逆向路径追溯。给定离散任意时刻t,从抓包数据中时间戳为t时刻转发该特定信息的节点开始追溯;若t时刻节点i转发邻居j发布的信息,则定义t-1时刻节点j已发布该信息并且j为节点i的上游节点,同时节点i一旦转发后未来将不再重复转发该信息;以此类推,当t=0时刻发布该信息的节点则为信源节点。为方便定位影响力节点,传播路径逆向追溯过程中每个中间节点均设置了计数器(counter),一旦节点j被下游节点i追溯到,则节点j计数器值加1;

步骤3、当追溯结束时,通过每个节点的累加计数器值定位影响力节点。影响力节点发布的信息容易受到“粉丝节点”关注和转发,因此影响力节点在传播路径追溯过程中也会更多地被下游节点所追溯,从而增加该节点的计数器值。需要说明的是网络中可能具有多个影响力节点,所以可以通过设定门限值或按照计数值降序排列的前n位节点进行定位。

步骤4、定位信源节点。传播路径逆向追溯过程中,若t=1时刻节点i转发邻居j发布的信息,说明t=0时刻j已经发布该信息,则j为信源节点。在社交网络中存在多个信源同时发布同一条热点信息的情况,因此追溯过程最终可能会定位到多个信源,并且一个信源节点也可能被下游节点多次追溯。为找到具有影响力的信源,可根据信源被追溯的权重次数进行定位,一个信源被追溯的次数越多,说明该信源发布的信息对网络产生了越大的影响力。

本发明的有益效果如下:

若由于采集数据不完整导致无法定位初始信源,则利用节点计数器值和发布信息的时间戳找到距离信源最近的影响力节点,通过该影响力节点查找距离2跳范围内的邻居。因为信源并不一定就是影响力节点,信源发布的信息往往需要通过影响力节点才能有效扩散,若有邻居比该影响力节点更早发布信息,则定位该邻居节点为疑似信源。数据驱动的逆向追溯信源和影响力节点定位方法,不需要预先知道社交网络的拓扑结构,可以非常灵活地适应现实网络中拓扑结构动态变化的实际情形,克服了传统方法无法适应的问题,能够紧密结合大数据发展的时代背景,对网络中海量数据进行分析处理,挖掘出这些海量数据蕴含的价值,从而最终提升网络信源和影响力节点的定位效果。

附图说明

图1是本发明的流程图。

图2是实施例中按照本发明进行信源和影响力节点定位的示意图。图中a和o为信源节点,c、d、j、i为影响力节点。

图3是社交网络中信息的分享转发率曲线示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步说明。

如图1所示,本发明所述的基于传播路径逆向追溯的信源和影响力节点定位方法,其包括以下步骤:

步骤1、利用社交网络官方api抓取特定主题的数据,包括转发该主题的节点id、转发时间、上游节点id、标题内容等;例如使用r、python编写爬虫程序访问http://open.weibo.com/抓取新浪微博数据,回调地址改为127.0.0.1方便本地采集数据;

步骤2、通过抓取的数据,针对信息进行逆向路径追溯。给定离散任意时刻t,从抓包数据中时间戳为t时刻转发该特定信息的节点开始追溯;若t时刻节点i转发邻居j发布的信息,则定义t-1时刻节点j已发布该信息并且j为节点i的上游节点,同时节点i一旦转发后未来将不再重复转发该信息;以此类推,当t=0时刻发布该信息的节点则为信源节点。为方便定位影响力节点,传播路径逆向追溯过程中每个中间节点均设置了计数器(counter),一旦节点j被下游节点i追溯到,则节点j计数器值加1;

步骤3、当追溯结束时,通过每个节点的累加计数器值定位影响力节点。影响力节点发布的信息容易受到“粉丝节点”关注和转发,因此影响力节点在传播路径追溯过程中也会更多地被下游节点所追溯,从而增加该节点的计数器值。需要说明的是网络中可能具有多个影响力节点,所以可以通过设定门限值或按照计数值降序排列的前n位节点进行定位。

步骤4、定位信源节点。传播路径逆向追溯过程中,若t=1时刻节点i转发邻居j发布的信息,说明t=0时刻j已经发布该信息,则j为信源节点。在社交网络中存在多个信源同时发布同一条热点信息的情况,因此追溯过程最终可能会定位到多个信源,并且一个信源节点也可能被下游节点多次追溯。为找到具有影响力的信源,可根据信源被追溯的权重次数进行定位,一个信源被追溯的次数越多,说明该信源发布的信息对网络产生了越大的影响力。若无法定位初始信源,则利用节点计数器值和发布信息的时间戳找到距离信源最近的影响力节点,通过该影响力节点查找距离2跳范围内的邻居。因为信源并不一定就是影响力节点,信源发布的信息往往需要通过影响力节点才能有效扩散,若有邻居比该影响力节点更早发布信息,则定位该邻居节点为疑似信源。

下面结合图2和图3来阐述本发明一个具体实施例。

(1)首先定义无向无权图g={v,e},v表示图中节点,e表示边。令vi(t)=1表示节点i在t时刻转发或接收信息,vi(t)=0表示节点i在t时刻没有转发或接收信息;设节点的状态可以从状态“0”变为“1”,但是不能从状态“1”变为“0”;且一旦转发或接收后将不再重复转发或接收该信息。令a和o为信源节点,即va(0)=vo(0)=1,实施例中使用ic独立级联模型进行信息传播,网络节点被分成两类:激活节点和未激活节点。激活节点(vi(t)=1)表示已经接收或转发信息的节点,未激活节点表示尚未接收或转发信息的节点。假设t时刻已有一些处于激活状态的节点u,此时u将去尝试激活处于未激活状态的邻居节点v;但是u只有一次机会去激活v,若成功则在t+1时刻v变为激活节点,v重复上述过程激活邻居;一旦失败则u永远不再激活v,该过程持续到没有可以激活的节点则停止传播。独立级联模型符合实际网络中信息的传播机制,例如新浪微博中一旦节点u激活邻居节点v失败,则说明节点v对u发布的信息不感兴趣,未来v也不会再转发节点u的该条信息。

(2)如图2所示,a和o为信源节点。设β为相邻节点之间的传播概率,β∈[0,1],为了阐述方便,我们假设β=1。从图2可知当t=4时,网络中的所有节点都能接收到信源a和o发布的信息。定义从t=4时进行逆向路径追溯,vp(4)=vq(4)=vr(4)=1,通过追溯节点p,q,r的转发记录,可以发现它们转发的信息来自上游节点i,即prev(vp)=prev(vq)=prev(vr)=vi,并且vi(3)=1。由于节点i被下游节点p,q,r追溯了3次,因此节点i的计数器为3,即vi$counter=3。

需要说明的是,虽然节点j可通过路径a→c→d→e→k→j接收到信源a的信息,但是由于o也是信源并且传播的路径更短,因此节点j在t=1时就可收到并转发该信息(vj(1)=1),从而忽略了后续来自信源a的消息。

(3)按照上述步骤追溯结束时,通过每个节点的累加计数器值定位影响力节点。设定门限值θ=3,vj$counter=4、vi$counter=vd$counter=vc$counter=3、va$counter=2、vo$counter=1;因此定位影响力节点为c,d,i,j。从图3可知c,d,i,j四个节点对信息的接收转发将导致分享转发率曲线的上升,说明这四个节点拥有大量的粉丝节点,有助于信息在网络中的传播扩散。在t=1时节点c和j就可收到并转发信息,t=3时节点i收到并转发信息,从图3可以看到虽然随着时间推移导致热点消息的整体分享转发趋势逐渐下降,但是节点i由于具有较多的邻居仍然会导致局部分享转发率曲线的上升。

(4)社交网络中存在多个信源同时发布同一条热点信息的情况,因此追溯过程最终可能会定位到多个信源。如图2所示,当追溯结束时va(0)=vo(0)=1且va$counter=2、vo$counter=1。为找到具有影响力的信源,可根据信源被追溯的权重次数进行定位,显然在图2中节点a相对于节点o更具影响力。

但是在一些特殊情况如节点故意隐瞒信息来源或声称自己就是该信息的发布者时,则无法通过逆向追溯直接定位初始信源。这时可以利用节点计数器值和发布信息的时间戳找到距离信源最近的影响力节点,通过查找该影响力节点距离2跳范围内的邻居来定位疑似的信源节点。设从节点u去往节点v的有向路径为p,传播距离为t步(跳),则有向路径p可用从u去往v的中间节点按序表示,即u=q0→q1→…→qt=v。节点v能够被u激活的概率为由于级联模型传播概率通常设置为区间[0.01,0.1],因此节点v能够被u经过t步激活的最大概率为10-t,例如当t=3时v可以被u激活的最大概率只有0.001,所以可将节点u在t≥3时激活的节点数忽略不计,只考虑2跳范围内的邻居来定位信源。如图2和图3所示,节点c和j是影响力节点中最早转发信息的两个节点(vc(1)=vj(1)=1),以节点c为例查找距离2跳范围内的邻居,可以发现ve(3)=vi(3)=vh(3)=1,vd(2)=vg(2)=vf(2)=1,vb(1)=1,va(0)=1;由于节点a发布信息的时间早于影响力节点c,因此可以认为a为信源节点。

上述过程也可以迭代使用,例如节点i故意隐瞒信息来源时,查找该节点距离2跳范围内的邻居可以发现节点c更早于i转发信息,并且也可发现节点c是影响力节点,重复上面步骤直到定位信源a。

本发明首先采集网络数据;然后针对特定的一条信息进行逆向路径追溯,更新传播路径节点的计数器值,并最终通过节点计数器定位影响力节点;最后当逆向追溯不可实现时,利用节点计数器值和发布信息的时间戳找到距离信源最近的影响力节点,通过查找该影响力节点距离2跳范围内的邻居来定位信源,最终实现数据驱动下的信源和影响力节点定位。本发明解决了现实网络中拓扑结构动态变化,传统影响力节点定位方法无法适应的问题,最终提升了网络信源和影响力节点的定位效果。

以上是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,凡是依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化与修饰,均属于发明技术方案的范围内。

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