Maximizing the Spread of Influence through a Social

  • Slides: 35
Download presentation
Maximizing the Spread of Influence through a Social Network Authors: David Kempe, Jon Kleinberg,

Maximizing the Spread of Influence through a Social Network Authors: David Kempe, Jon Kleinberg, Éva Tardos KDD 2003 Adapted from: www. cs. cmu. edu/~xiaonanz/Maximizing-the-Spread-of-Influence. ppt http: //www. cs. washington. edu/affiliates/meetings/talks 04/kempe. pdf

Social Network and Spread of Influence n Social network plays a fundamental role as

Social Network and Spread of Influence n Social network plays a fundamental role as a medium for the spread of INFLUENCE among its members q Opinions, ideas, information, innovation… n Direct Marketing takes the “word-ofmouth” effects to significantly increase profits (Gmail, Tupperware popularization, Microsoft Origami …)

Problem Setting n Given q q n Goal q n a limited budget B

Problem Setting n Given q q n Goal q n a limited budget B for initial advertising (e. g. give away free samples of product) estimates for influence between individuals trigger a large cascade of influence (e. g. further adoptions of a product) Question q Which set of individuals should B target at?

What we need n n n Models of influence in social networks. Obtain data

What we need n n n Models of influence in social networks. Obtain data about particular network (to estimate inter-personal influence). Devise algorithm to maximize spread of influence.

Outline n Models of influence q q n Influence maximization problem q q q

Outline n Models of influence q q n Influence maximization problem q q q n Linear Threshold Independent Cascade Algorithm Proof of performance bound Compute objective function Experiments q q Data and setting Results

Models of Influence n Focus on operational models that explicitly represent the step-by-step dynamics

Models of Influence n Focus on operational models that explicitly represent the step-by-step dynamics of adoption. n General operational view: q q A social network is represented as a directed graph, with each person (customer) as a node Nodes start either active or inactive An active node may trigger activation of neighboring nodes Monotonicity assumption: active nodes never deactivate

Outline n Models of influence q q n Influence maximization problem q q q

Outline n Models of influence q q n Influence maximization problem q q q n Independent Cascade Linear Threshold Algorithm Proof of performance bound Compute objective function Experiments q q Data and setting Results

Independent Cascade Model n n When node v becomes active, it has a single

Independent Cascade Model n n When node v becomes active, it has a single chance of activating each currently inactive neighbor w. The activation attempt succeeds with probability pvw.

Example 0. 6 Inactive Node 0. 3 0. 2 X 0. 4 0. 5

Example 0. 6 Inactive Node 0. 3 0. 2 X 0. 4 0. 5 w 0. 2 U 0. 1 0. 3 0. 2 0. 5 v Stop! Active Node Newly active node Successful attempt Unsuccessful attempt

Outline n Models of influence q q n Influence maximization problem q q q

Outline n Models of influence q q n Influence maximization problem q q q n Independent Cascade Linear Threshold Algorithm Proof of performance bound Compute objective function Experiments q q Data and setting Results

Linear Threshold Model n A node v has random threshold θv ~ U[0, 1]

Linear Threshold Model n A node v has random threshold θv ~ U[0, 1] n A node v is influenced by each neighbor w according to a weight bvw such that n A node v becomes active when at least (weighted) θv fraction of its neighbors are active

Example Inactive Node 0. 6 0. 3 Active Node 0. 2 X Threshold 0.

Example Inactive Node 0. 6 0. 3 Active Node 0. 2 X Threshold 0. 2 Active neighbors 0. 1 0. 4 U 0. 5 w 0. 3 0. 5 Stop! 0. 2 v

Outline n Models of influence q q n Influence maximization problem q q q

Outline n Models of influence q q n Influence maximization problem q q q n Independent Cascade Linear Threshold Algorithm Proof of performance bound Compute objective function Experiments q q Data and setting Results

Influence Maximization Problem n Influence of node set S: f(S) q n expected number

Influence Maximization Problem n Influence of node set S: f(S) q n expected number of active nodes at the end, if set S is the initial active set Problem: q Given a parameter k (budget), find a k-node set S to maximize f(S)

Influence Maximization Problem n n NP-Hard Reduction from Set Cover. Sets, Si puv=1 Elements

Influence Maximization Problem n n NP-Hard Reduction from Set Cover. Sets, Si puv=1 Elements in set Si

f(S): properties (to be demonstrated) n n n Non-negative (obviously) Monotone: Submodular: q Let

f(S): properties (to be demonstrated) n n n Non-negative (obviously) Monotone: Submodular: q Let N be a finite set q A set function is submodular iff (diminishing returns)

Good News n We can use Greedy Algorithm! q q Start with an empty

Good News n We can use Greedy Algorithm! q q Start with an empty set S For k iterations: Add node v to S that maximizes f(S +v) - f(S). n How good (bad) it is? q Theorem by Nemhauser, Wolsey, Fisher '78 n n The greedy algorithm is a (1 – 1/e) approximation. The resulting set S activates at least (1 - 1/e) > 63% of the number of nodes that best k-sized set could activate.

Outline n Models of influence q q n Influence maximization problem q q q

Outline n Models of influence q q n Influence maximization problem q q q n Independent Cascade Linear Threshold Algorithm Proof of performance bound Compute objective function Experiments q q Data and setting Results

Key 1: Prove submodularity

Key 1: Prove submodularity

Submodularity for Independent Cascade 0. 6 n Coins for edges are flipped during activation

Submodularity for Independent Cascade 0. 6 n Coins for edges are flipped during activation attempts. 0. 3 0. 2 0. 1 0. 4 0. 5 0. 3 0. 5

Submodularity for Independent Cascade 0. 6 n n Coins for edges are flipped during

Submodularity for Independent Cascade 0. 6 n n Coins for edges are flipped during activation attempts. Can pre-flip all coins and reveal results immediately. 0. 3 0. 2 0. 1 0. 4 0. 5 Active nodes in the end are reachable via green paths from initially targeted nodes. Study reachability in green graphs 0. 3 0. 5

Submodularity, Fixed Graph n n Fix “green graph” G. g(S) are nodes reachable from

Submodularity, Fixed Graph n n Fix “green graph” G. g(S) are nodes reachable from S in G. Submodularity: g(T +v) g(T) g(S +v) - g(S) when S T. g(S +v) - g(S): nodes reachable from S + v, but not from S. From the picture: g(T +v) - g(T) g(S +v) - g(S) when S T (indeed!).

Submodularity of the Function Fact: A non-negative linear combination of submodular functions is submodular

Submodularity of the Function Fact: A non-negative linear combination of submodular functions is submodular n n g. G(S): nodes reachable from S in G. Each g. G(S): is submodular (previous slide). Probabilities are non-negative. f(S) is submodular.

Submodularity for Linear Threshold n n n Use similar “green graph” idea. Once a

Submodularity for Linear Threshold n n n Use similar “green graph” idea. Once a graph is fixed, “reachability” argument is identical. How do we fix a green graph now? Each node picks at most one incoming edge, with probabilities proportional to edge weights. Equivalent to independent cascade model (trickier proof).

Outline n Models of influence q q n Influence maximization problem q q q

Outline n Models of influence q q n Influence maximization problem q q q n Linear Threshold Independent Cascade Algorithm Proof of performance bound Compute objective function Experiments q q Data and setting Results

Key 2: Evaluating f(S)

Key 2: Evaluating f(S)

Evaluating ƒ(S) n n n How to evaluate ƒ(S)? Still an open question of

Evaluating ƒ(S) n n n How to evaluate ƒ(S)? Still an open question of how to compute efficiently But: very good estimates by simulation q q n repeating the diffusion process often enough (polynomial in n; 1/ε) Achieve (1± ε)-approximation to f(S). Generalization of Nemhauser/Wolsey proof shows: Greedy algorithm is now a (1 -1/e- ε′)approximation.

Outline n Models of influence q q n Influence maximization problem q q q

Outline n Models of influence q q n Influence maximization problem q q q n Linear Threshold Independent Cascade Algorithm Proof of performance bound Compute objective function Experiments q q Data and setting Results

Experiment Data n n n A collaboration graph obtained from coauthorships in papers of

Experiment Data n n n A collaboration graph obtained from coauthorships in papers of the ar. Xiv high-energy physics theory section co-authorship networks arguably capture many of the key features of social networks more generally Resulting graph: 10748 nodes, 53000 distinct edges

Experiment Settings n Linear Threshold Model: multiplicity of edges as weights q n weight(v→ω)

Experiment Settings n Linear Threshold Model: multiplicity of edges as weights q n weight(v→ω) = Cvw / dv, weight(ω→v) = Cwv / dw Independent Cascade Model: q Case 1: uniform probabilities p on each edge q Case 2: edge from v to ω has probability 1/ dω of activating ω. n Simulate the process 10000 times for each targeted set, rechoosing thresholds or edge outcomes pseudo-randomly from [0, 1] every time n Compare with other 3 common heuristics q degree centrality, distance centrality, random nodes.

Outline n Models of influence q q n Influence maximization problem q q q

Outline n Models of influence q q n Influence maximization problem q q q n Linear Threshold Independent Cascade Algorithm Proof of performance bound Compute objective function Experiments q q Data and setting Results

Results: linear threshold model

Results: linear threshold model

Independent Cascade Model – Case 1 P = 1% P = 10%

Independent Cascade Model – Case 1 P = 1% P = 10%

Current Efforts n Efficiently calculate f(S). q q q f(S) is #P hard to

Current Efforts n Efficiently calculate f(S). q q q f(S) is #P hard to calculate for both independent cascade and linear threshold model. Leskovec et al. expolit sub-modularity to reduce number of calls to f(S) function. Chen et al. have proposed various heuristics that directly work on the probabilistic graph.

Thanks!

Thanks!