一、 研究背景
在社会和经济网络中,影响最大化问题在过去十年中得到广泛的研究,由于其广泛应用于病毒式营销[1,2],突破检测[3],谣言监测[4]等。例如公司可以通过向初始用户(称为种子)发送免费样品,并通过口碑(World of Mouth)效应,在社交网络中进行宣传活动,越来越多的用户受到社会关系的影响加入宣传活动,宣传促销活动。这个问题首先由Kempe等人提出[5],他们提出了独立的级联模型和线性阈值模型,考虑信息扩散的社会心理因素来模拟这种随机的收养过程。他们给出了influence maximization问题的形式化定义:给一个有向图G = (V,E) ,V代表节点,E代表有向边,每一条边有一个权值 ∈ [0,1],代表源点对终点的影响因子(源点有多大的几率对终点产生影响)。定义参数向量θ=( ) e∈E 代表每一条边上的影响因子。我们定义 (S)为影响传播函数,( (S)代表从S出发能传播到的所有节点数目的期望值) 其中L代表图G的子图, [L]代表在参数向量θ下子图L出现的概率。(每一条边出现的概率就是传播因子)RL(S)代表在子图L中从S节点能到达所有节点的个数。Influence maxization问题就是要找到使得 (S)取得最大值得集合S。
(S)具有下面三个性质:(1)(∀S⊆V, (S)≥0);(2)单调递增(∀S⊆T⊆V, (S)≤ (T));(3)(∀S⊆T⊆V, ∀v∈V, (S∪{v})− (S)≥ (T∪{v})− (T))。
正是由于 (S)具有这三个性质,使得greedy算法是正确的。
从此人们对影响力最大化进行了广泛的研究,特别是提高了求解独立级联模型中影响最大化问题的效率,但是所有这些都假设我们真正知道真实的影响概率,但是在真正的社交网络中影响概率并不容易计算。一些研究[6]提出了提取影响概率的学习方法。但是由于固有的数据限制,没有学习方法可以得到影响概率的精确值,但是我们可以实现的是对真实影响概率的估计,我们可以得到一个置信区间使得真实值落在区间内有极高的可能性。然而,影响概率估计的不确定性可能会对影响最大化任务的结果产生不利影响,但是这个话题大多没有被探索。解决这个问题的唯一尝试是[7]最近的一项研究,但[7]中研究结果相当有限。所以这篇论文就尝试来解决这个问题。
二、 现有研究方法
在这篇论文中,作者运用鲁棒优化的概念[8]进行研究,以解决不确定性影响最大化问题。本文的创新点在于:我们考虑到影响最大化任务的输入不再是社会图的每个边的影响概率,而是真正概率的置信区间。因此,输入实际上是参数空间Θ,它是所有边上的所有区间的乘积。对于任何种子集S,令 表示S在参数设置θ∈Θ下的影响扩展。然后我们将S的鲁棒比定义为 = 其中 表示 是在参数θ下达到最大影响扩展的最佳种子集。直观上,S的鲁棒率表示 与最坏影响参数θ∈Θ下的 之间的差距,因为我们不确定哪个θ∈Θ是真实概率设置。那么我们的优化任务是找到一个大小为k的种子集合,它可以使已知参数空间Θ下的鲁棒比值最大化 - 我们称之为鲁棒影响最大化(RIM)。下面形式化定义这个问题:给一个有向图G = (V,E) ,V代表节点,E代表有向边,每一条边有一个权值区间 ,代表源点对终点的影响因子的置信区间。定义参数空间Θ= (Θ实际就是每一条边上权值区间的笛卡尔乘积),我们希望能找到一个大小为k的集合,使得目标函数g(Θ,S)取得最大值。也就是找公式中的集合 (定义如下)
,
很明显,当影响概率不存在任何不确定性时,这意味着Θ坍缩成单个真实参数θ,RIM退化为经典的影响最大化问题。然而当存在不确定性时,解决RIM可能是一个更困难的任务。
在本文中,我们首先提出一个算法LUGreedy来解决RIM任务与其性能的解决方案依赖的约束,这意味着可以在选择种子集之后验证其性能。然后我们证明了如果只给出输入参数空间Θ,并且每条边上影响概率的区间不能减小,那么即使针对RIM问题最好的种子集合得到的鲁棒性也会很小(例如O( / ),其中n是图中的节点)。这促使我们研究采样方法以进一步收紧参数空间Θ,从而提高我们的算法的鲁棒性。
于是我们创新性的提出了采用均匀采样和自适应采样,以提高RIM性能。对于均匀采样,我们提供了时间复杂性的理论结果,以实现输出种子集的给定鲁棒比。对于自适应采样,我们提出了一种基于信息级联的启发式方法,将我们的采样效果能够自适应地偏移到重要的边上,降低重要边上影响概率的置信区间。通过广泛的实践评估,我们表明(a)鲁棒性对置信区间的宽度敏感,当置信区间的宽度增加时,鲁棒性迅速下降; 因此,由于相对较大的置信区间(因此具有很高的不确定性),之前研究的算法极有可能导致不良的鲁棒性。下面是在NetHEPT,Flixster(Mixed)和Flixster(Topic 8)上运行LUgreedy算法得到的鲁棒性的上界和下界。从图中可以看到,随着每一条边上置信区间的增大,鲁棒性的上界和下界迅速下降。
(b)基于信息级联的自适应采样方法比均匀采样更好,可以显着提高影响最大化任务的鲁棒性。下面是在NetHEPT集合上运行ICS-RIM(自适应采样),US-RIM(均匀采样)和OES-RIM(其他论文中的算法,在这里作为基准来对比均匀采样和自适应采样算法)算法得到的鲁棒性的上界和下界,从图中可以看出,随着采样次数的增多,ICS-RIM算法的优势很快显示出来,并且很快的稳定到达最大值。
三、 改进方法
仔细分析作者的论文就不难发现,作者提出的LUGreedy算法uniform sampling算法以及 adaptive sampling算法都是对Greedy算法结果的进一步加工,但是Greedy算法的时间复杂度比较高,是 O( k*n*m )这样的时间复杂度太高了,而且作者提出的adaptive sampling算法和uniform sampling算法要多次运行Greedy算法,所以说Greedy算法作为其他算法的基石必须要进行改进。
下面我就针对Greedy算法提出改进并用Greedy++算法进行命名。
分析贪心算法的伪代码就可以发现,贪心算法的思想其实很简单,
每一次循环都找到使得目标函数增长幅度最大的节点,然后加入到种子集合之中,但是我们每找一个节点都要把所有节点计算一遍,没有利用到之前的计算出来的信息,十分的慢。我的想法是基于一个假设,在一轮循环中,对目标函数贡献值大的节点但是没有被选为种子节点,在接下来的循环中极有可能被选为种子节点,所以我们可以优先计算这些节点的贡献值,这样的话,就可以减少很多不必要的计算。我的做法就是在找第一个节点的过程中使用一个优先队列来记录每一个节点对于目标函数的贡献,然后之后的每一次循环按照节点的贡献从大到小重新计算,然后到优先队列之中更新节点的贡献值。如果碰到某一个节点在一轮之中已经被计算过的话,那么这个节点就是我们想要的节点,它能使得目标函数的增长最大化,然后加入到种子节点之中。
因为我们往往很快就能够找到节点所以我们假设while循环的执行次数是O(1),每一次循环之中计算目标函数 是O(m),所以通过我的改进,使得算法的时间复杂度降低为O(k*m)。
实验结果对比
下面两个表格就是实验的结果图,第一个表格是在260个节点3900个边的社交网络图上进行的实验,第二个表格是在15233个节点58891个边的社交网络图上进行的实验,第一行是算法的运行时间,第二行是在两个算法分别找到的种子集合计算 (S)影响传播函数的大小。可以发现Greedy++算法能够很快的结束,而且时间并没有增长多少,不仅如此,对比Greedy算法的结果来看,Greedy++算法的运行结果和Greedy算法的结果近似相同。其实本质上来说,greedy++算法的结果应该和greedy算法的结果相同,但是实验表现却不如greedy算法的原因,我觉得是因为计算 的结果并不是精确的,(计算目标函数的精确解法时间复杂度是指数量级的,所以我就采用了模拟的方法来运行IC模型,得到近似的结果 ,使得时间复杂度随着图的规模线性增长)这样的话,如果某一个节点在greedy++算法中,计算出的贡献值小于真实的贡献值的话,那么在之后的循环之中,就不会优先计算它,甚至可能导致,永远不会再次计算它。这样的话,它就不可能加入到种子节点集合中,但是在greedy算法中,就算在某一次循环中,一个节点对于 的贡献被错误的估计了,那么在下一次的循环之中,这个节点的贡献值还要被重复计算,这样的话,就能防止种子节点被遗弃。总之在greedy++算法中,节点对于 的贡献被估计小了,那么它很难再次被计算,但是greedy算法中,它还可以被重复计算,这样的话减小了由于求解 采用近似算法引入的误差。所以图中greedy算法的结果要比greedy++算法的结果表现要好。
N=260,m=3900 |
Greedy |
Greedy++ |
|
|||
时间 |
12.546000s |
1.187000s |
|
|||
结果 |
66 |
52 |
|
|||
|
N=15233,m=58891 |
Greedy |
Greedy++ |
|||
|
时间 |
90.154000s |
1.375000s |
|||
|
结果 |
604 |
519 |
|||
|
||||||
四、 结论
这篇论文Robust Influence Maximization是influence maximization领域十分有名的论文,是微软亚洲研究院wei chen先生的论文,论文给我的感觉是数学知识十分的复杂,推导过程很艰深难懂,但是通过自己仔细的阅读研究还是能看出论文推理过程之中的一些疏漏,以及作者做得不够好的地方。通过我的改进使得算法的时间复杂度得以大幅下降,最好情况下的时间复杂度降低从O( k*n*m )降低到O(n*m),并且使得结果能够近似接近真实的结果,成功实现了算法的改进。
[1]P. Domingos and M. Richardson. Mining the network
value of customers. In KDD 2001.
[2] D. Kempe, J. Kleinberg, and E. Tardos. Maximizing
the spread of influence through a social network. In
KDD 2003.
[3] J. Leskovec, A. Krause, C. Guestrin, C. Faloutsos,
J. VanBriesen, and N. Glance. Cost-effective outbreak
detection in networks. In KDD 2007.
[4] C. Budak, D. Agrawal, and A. El Abbadi. Limiting
the spread of misinformation in social networks. In
WWW 2011.
[5] D. Kempe, J. Kleinberg, and E. Tardos. Maximizing
the spread of influence through a social network. In
KDD 2003.
[6] K. Saito, R. Nakano, and M. Kimura. Prediction of
information diffusion probabilities for independent
cascade model. In Knowledge-Based Intelligent
Information and Engineering Systems, pages 67–75.
Springer, 2008.
[7] X. He and D. Kempe. Stability of Influence
Maximization. ArXiv e-prints, Jan. 2015.
[8] A. Ben-Tal and A. Nemirovski. Robust
optimization–methodology and applications.
Mathematical Programming, 92(3):453–480, 2002.