zhanghaifeng的个人博客分享 http://blog.sciencenet.cn/u/zhanghaifeng

博文

让谣言制造者无处遁身——发现传播源的一种方法!

已有 8462 次阅读 2014-1-7 05:16 |系统分类:科研笔记

谁是谣言的制造者?哪台电脑最先被病毒攻击?哪个人或哪个地区是某种新型疾病的发源地?

这些问题都与我们的生活息息相关。而这些问题从网络科学的角度出发就归纳为一个问题——如果探测传播源,这方面最近有很多工作,比较有影响力的文章是PRL上面的一篇文章:

Locating the Source of Diffusion in Large-Scale Networks,Pedro C. Pinto, Patrick Thiran, and Martin Vetterli,Phys. Rev. Lett. 109, 068702 (2012).关于这篇这个文章我不做过多解释,这里我给大家提供一个关于这篇文章的科学报道:Focus: Tracking Down an Epidemics Sourcehttp://physics.aps.org/articles/v5/89

 

我今天介绍一篇计算机方面的文献,我感觉这是非常棒的一篇文章:Information Source Detection in the SIR Model:A Sample Path Based ApproachKai Zhu and Lei YingInformation Theory and Applications Workshop (ITA), 2013 http://arxiv.org/pdf/1206.5421.pdf

 

文章的出发点是这样的,在知道部分传播者的前提下如何找到传播源。作者考虑了SIR传播模型,考虑这个模型是因为有的谣言(病毒)传播者可能在传播过某个谣言以后变成恢复者(R),而这些恢复者有可能是传播源。因此现在的问题就是如何从有限的情报中(知道哪些人是感染者)从整个网络找出传播源。

 思路是这样的:在图论中有节点离心率eccentricity的定义——节点到其他节点的最大路径称为这个节点的离心率,而Jordan center"就是具有最小离心率的那个节点,类似于closenesss(注:这部分我没有认真考证!)。这篇文章基于这个思想定义了infection eccentricity"Jordan infection centers——就是到所有感染节点离心率最小的点。求Jordan infection centers是一个优化问题,真正求出来可能需要很大的计算量和很多的网络结构信息。为了克服这个问题,作者设计了一个方法。算法的核心思想是:让每个感染者广播一条带标签的消息(记节点v的标签卫"v"),然后向所有邻居传播这个标签(类似随机游走!),如果邻居的存储库中没有这个消息,那么这个邻居就记录下这个消息(v),并记录下收到这个消息的时间(t_v),然后再向他的邻居传播。如果找到一个节点收到了所有的标签,那么就终止程序,并认为此节点很大可能是信息源。如果同一个时刻存在多个这样的点,就选择时间和(sum(t_v))最小的点。

 

通过在实际数据上验证发现,该算法预测出节点虽然不一定是实际感染源,但他离感染源非常靠近,往往不超过两步。这个算法的好处就是不需要很多信息,也不需要大的计算量。

 



https://blog.sciencenet.cn/blog-291824-756623.html

上一篇:接种疫苗中的博弈现象
下一篇:在线网络演化新机制——传播动力学刻画在线网络的演化、形成过程
收藏 IP: 149.169.24.*| 热度|

2 苏日启 龚凯

该博文允许注册用户评论 请点击登录 评论 (10 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-12-22 00:10

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部