免责声明:网站内容仅供个人学习记录,禁做商业用途,转载请注明出处。

版权所有 © 2017-2020 NEUSNCP个人学习笔记 辽ICP备17017855号-2

影响力最大化-独立级联 (IC)模型+贪心算法(python代码)

贪心 (1)首先|S|=1,在所有点中选一个在IC模型下跑出感染的点数量最多的点加入S (此时跑了n趟IC) (2)再在剩下的点中选一个加入S后结果最好的点加入S (此时跑了n-1趟IC) (3)重复2,直到能S扩散的结果能覆盖所有点 IC (1)激活S中的所有节点,加入活集A(本轮被激活的所有点) (2)找到A的非活邻居集N(可能被传染的所有点),对于N中的每一个点,被传染的概率都为1-(1-Pa1,n)*(1-Pa2,n)。 (3)清空A (4)标记所有被传染的点,并放入A (4)重复2、3直到步骤2已...

继续阅读 »
分享到:

线性阈值模型(LT模型)算法实现(Python实现)

该算法每个节点的阈值设为 0.5 用Buv表示节点u对其邻居节点的影响力:Buv=1/Lin;Lin(v)-------点v的入度。 2、LT传播模型算法实现 linear_threshold.py (LT传播模型算法) Implement linear threshold models 社交网络影响力最大化 传播模型线性阈值(LT)模型算法实现 def linear_threshold(G, seeds, steps=0): #LT线性阈值算法 """""" Parameters ----...

继续阅读 »
分享到:

独立级联模型+线性阈值模型--NETINF

首先,我们将社交网络抽象为一个有向图 ,其中, 为节点的集合, 是边的集合,网络中的节点有两个状态激活(active)与未激活(inactive)。 在 独立级联模型 中,每一条有向边 都有一个对应的概率值 ,这表明已激活节点u通过边 使得未激活节点 激活的概率。在 的时刻,选定一个节点集合 未激活状态,其余未激活。在 的任意时刻 ,每一个在 时刻激活的节点 都会尝试通过边 去激活其未激活的邻居节点 ,并且有 的概率激活 。所有 的激活尝试都是独立事件,如果激活成功则 将参与 时刻的激活行为,未成功则 在...

继续阅读 »
分享到:

【Python】keras提示OSError: `pydot` failed to call GraphViz.Please install GraphViz (https://www.graphviz.org/)

模型可视化过程中需要使用 from keras.utils import plot_model plot_model(model, to_file='./model.png',show_shapes=True) 安装GraphViz过程中按网上的方法不行: 安装GraphViz 添加环境变量 pip 安装pydot 尝试用conda conda forge安装GraphViz 直接输入命令: ​​​​​​​conda install GraphViz --channel conda-forge -y ​​​...

继续阅读 »
分享到:

网络中影响力传播模型——独立级联模型&线性阈值模型

基本概念 : 社交网络上的影响力最大化问题需要借助于相应的影响力传播模型,在研究中一般将社交网络抽象成一个图G(V, E),其中V为网络中个体的集合,E为网络中个体之间交互和关系的集合;网络G上的每个节点初始时刻有两种状态,即激活和未激活,只有处于激活状态的节点且对它指向的节点才具有影响力,未激活的节点则对它指向的节点没有影响力,当一个节点被其它节点成功影响时,称此节点被激活;当一个节点被激活的邻居节点越来越多,该节点被激活的概率则越来越大,直到某一时刻该节点被激活,被激活的节点又可以影响它指向的节点...

继续阅读 »
分享到: