30
Dynamic Influence Analysis in Evolving Networks 2016/09/8 VLDB 2016 Naoto Ohsaka (UTokyo) Takuya Akiba (PFN) Yuichi Yoshida (NII & PFI) Ken-ichi Kawarabayashi (NII)

Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Embed Size (px)

Citation preview

Page 1: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Dynamic Influence Analysis

in Evolving Networks

2016/09/8 VLDB 2016

Naoto Ohsaka (UTokyo)

Takuya Akiba (PFN)

Yuichi Yoshida (NII & PFI)

Ken-ichi Kawarabayashi (NII)

Page 2: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Influence estimation

Influence maximization[Kempe-Kleinberg-Tardos. KDD'03]

Influence analysis in online social networks

2

Introduction

Application: viral marketing[Domingos-Richardson. KDD'01]

Product promotion through

word-of-mouth effects

Q. How influential is a given group?

Q. How to select the most influential group?

Graph problems

Sample

Sample

Sample

Page 3: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Existing algorithms for influence maximization (2003ー2015)

3

Introduction

Strategy Scalability Accuracy

Simulation[Kempe-Kleinberg-Tardos. KDD'03]

[Kimura-Saito-Nakano. AAAI'07]

[Chen-Wang-Yang. KDD'09]

[O.-Akiba-Yoshida-Kawarabayashi. AAAI'14]

<100M edges

Quadratic time

Good

≈ 63% approx.

Heuristics[Chen-Wang-Yang. KDD'09]

[Chen-Wang-Wang. KDD'10]

[Jung-Heo-Chen. ICDM'12]

100M-1B edges Bad

No guarant.

Sketching[Borgs-Brautbar-Chayes-Lucier. SODA'14]

[Tang-Xiao-Shi. SIGMOD'14]

[Tang-Shi-Xiao. SIGMOD'15]

>1B edges

Near-linear time

Good

≈ 63% approx.

These algorithms are static

Real-world social networks are dynamic

↙our previous work

Page 4: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

4

Social networks are dynamic and evolving

Introduction

b

a

b

a

b

a

Methods are almost undeveloped[Zhuang-Sun-Tang-Zhang-Sun. ICDM'13]

Probing a small number of vertices

[Chen-Song-He-Xie. SDM'15] Edge operations only

Want to track influential vertices

Simply applying static methods ⇝ >Linear time

Accounts and friendships appear or disappear

Page 5: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Our contribution

Introduction

Fully-dynamic indices

for influence analysis in evolving networks

b

a

I1

b

a

I2

a is influential b's influence is 3

①IndexingAlmost-linear size

②Analysis queryAccuracy guarant.

③Index updateAny change

①③

② ②

Page 6: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Diffusion model: Independent cascade[Goldenberg-Libai-Muller. Market. Lett.'01]

6

Problem definition

Graph 𝐺 = (𝑉, 𝐸, 𝑝) with edge probabilities

Seed set 𝑆 ⊆ 𝑉

a

b

d

fe

ca

b

d

fe

ca

b

d

fe

c

0.6 0.1

0.3

0.4 0.8

0.2 0.5

Active to Inactive▶ Success w.p. 𝑝uv

▶ Failure w.p. 1 − 𝑝uv

Initialize vertex's state▶ Active if ∈ 𝑆▶ Inactive if ∉ 𝑆

u v

Page 7: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Diffusion model: Independent cascade[Goldenberg-Libai-Muller. Market. Lett.'01]

7

Problem definition

Graph 𝐺 = (𝑉, 𝐸, 𝑝) with edge probabilities

Seed set 𝑆 ⊆ 𝑉

a

b

d

fe

ca

b

d

fe

ca

b

d

fe

c

0.6 0.1

0.3

0.4 0.8

0.2 0.5

Influence spread

𝜎 𝑆 ≔ 𝐄[# active vertices given 𝑆]

Page 8: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Problem definition

Problem definition

Influence

estimationInput seed set 𝑆Output 𝜎 𝑆

Influence

maximization[Kempe-Kleinberg-Tardos. KDD'03]

Input integer 𝑘

Output

#P-hard[Chen-Wang-Wang. KDD'10]

Monte-Carlo is good approx.

NP-hard [Kempe+'03]

Greedy strategy is

𝟏 − 𝐞−𝟏 ≈ 63%-approx.[Nemhauser-Wolsey-Fisher. Math. Program.'78]

𝜎 ⋅ is submodular [Kempe+'03]argmax𝑆: 𝑆 =𝑘

𝜎 𝑆

Key: fast & accurate estimation of 𝜎(⋅)

∀𝑋 ⊆ 𝑌, 𝑣 ∉ 𝑌𝜎 𝑋 + 𝑣 − 𝜎 𝑋 ≥ 𝜎 𝑌 + 𝑣 − 𝜎 𝑌

8

Page 9: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Proposed methodWhat we need:① Indexing algorithm

② Influence query algorithms

③ Update algorithms

9

Page 10: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

z

a

b

d

fz

ca

bz

c

Index construction

Proposed method ①Indexing algorithm

Single sketch construction:▶ Randomly select a target vertex

▶ Conduct a reverse simulation from ▶ Sketch=( 's) ∪ ( 's)

zz

Redesign of Reverse Influence Sampling[Borgs-Brautbar-Chayes-Lucier. SODA'14]

a

f

za

z

Index size = # + ∑ 's in-deg = Θ 𝜖−3( 𝑉 + |𝐸|) log 𝑉

10

Page 11: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Property of our index

Proposed method ②Influence query algorithms

Vertices frequently appearing in sketches are influential

𝜎(𝑆) ∝ 𝐄[# sketches intersecting 𝑆][Borgs-Brautbar-Chayes-Lucier. SODA'14]

I1=

a

f

za

bz

ca

z

11

Page 12: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Query algorithms for influence analysis

12

Proposed method ②Influence query algorithms

Based on Reverse Influence Sampling[Borgs-Brautbar-Chayes-Lucier. SODA'14]

Influence estimation query (seed set 𝑆)

▶ Computing the size of union on sketches

▶ 𝝈 𝑺 ± 𝝐 𝑽 w.h.p. (Thm. 5.9)

Influence maximization query (solution size 𝑘)

▶ Solving maximum coverage on sketches

▶ 𝟏 − 𝐞−𝟏 − 𝝐 -approx. w.h.p. (Thm. 5.10)

We further introduce speed-up techniques (see our paper)

Page 13: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Overview of index update algorithms

Proposed method ③Update algorithms

Independently update each sketch so that“all can reach by passing through ”z

3 edge operations

▶ Edge addition

▶ Edge deletion

▶ Probability change

2 vertex operations

▶ Vertex addition

▶ Vertex deletion

a

b

d

fz

ca

b

d

fz

ca

b

d

fz

cDel ac Add db

⇝ Non-degeneracy = No need reindexing (Thm. 5.8)

13

Page 14: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Edge deletion example (1)

14

Proposed method ③Update algorithms

z

vu

Q. “Vertices that can reach ” decrease?z

Page 15: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Edge deletion example (1)

15

Proposed method ③Update algorithms

z

vu

Q. “Vertices that can reach ” decrease?

A. NO

z

Page 16: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Edge deletion example (2)

16

Proposed method ③Update algorithms

uv

z

Q. “Vertices that can reach ” decrease?z

Has no

out-neighbors

Page 17: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Edge deletion example (2)

17

Proposed method ③Update algorithms

uv

z

Q. “Vertices that can reach ” decrease?

A. YES

z

Page 18: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Perform a reverse BFS from

To detect , need to scan all

How about naive update for edge deletion?

Proposed method ③Update algorithms

z\SLOW/

zv

u

uv

z

Challenge 2:

Efficient reverse BFSesChallenge 1:

Detour detection

18

Page 19: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Fast edge deletion: Using reachability tree

19

Proposed method ③Update algorithms

A directed subtree of a sketch rooted on

Detour existence check

Limiting the search range* Can be used for vertex deletion

z

z

Page 20: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Fast edge deletion:

Detour existence check

20

Proposed method ③Update algorithms

uv ∉ tree ⇒ ∃ a detour from to * not vice versa

z

vu

zu

10% deletions are pruned

Page 21: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Fast edge deletion:

Limiting the search range

21

Proposed method ③Update algorithms

Verify a subtree Tu rooted on & update tree

uv

z

Tua few nodes

in ave.

u

> 100,000 nodesin ave.

Page 22: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Fast edge deletion:

Limiting the search range

22

Proposed method ③Update algorithms

uv

z

Verify a subtree Tu rooted on & update treeu

Tua few nodes

in ave. > 100,000 nodesin ave.

Page 23: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Why our techniques are effective?

23

Proposed method ③Update algorithms

http://www.cise.ufl.edu/research/sparse/

matrices/SNAP/soc-Epinions1.html

Core-fringe structure

Fringe is tree-like

Tu is small

2nd tech. works well

Core is dense

Many detours

1st tech. works well

[Leskovec-Lang-Dasgupta-Mahoney. WWW'08]

[Maehara-Akiba-Iwata-Kawarabayashi. PVLDB'14]

Core

Fringe

Page 24: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

ExperimentsIndex construction

Index update

Influence estimation query

Influence maximization query

Efficiency of

▶ Dataset:Koblenz Network Collection http://konect.uni-koblenz.de/

with timestamps at which edge was created

▶ Machine: Intel Xeon E5-2690 2.90GHz CPU + 256GB RAM

▶ Compiler: g++v4.6.3 (-O2)

▶ Index size = 32 𝑉 + |𝐸| log 𝑉▶ Edge prob. = randomly chosen from {0.1, 0.01, 0.001}

24

Page 25: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Index construction

25

Experiments

89

5,468

1

10

100

1,000

10,000

Ind

ex

ing

tim

e [

s]

1

31

1

10

100

Mem

ory

usa

ge [

GB

]

Network |𝑽| |𝑬|

Epinions 130K 840K

Flickr 2,303K 33,140K

▶ Can handle graphs with tens of millions of edges▶ Indexing is required just once

Page 26: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Index update time:

Edge operations

26

Experiments

89,100

4 1

163

6

5,468,000

90

2

1,706

125

1.E-01

1.E+00

1.E+01

1.E+02

1.E+03

1.E+04

1.E+05

1.E+06

1.E+07

Indexing Edge add. Edge del. Edge del.

(naive BFS)

Prob.

change

Pro

cess

ing

tim

e [

ms]

▶ (Update time) ≪ (Indexing time)

Network |𝑽| |𝑬|

Epinions 130K 840K

Flickr 2,303K 33,140K

>100x speed-up

Page 27: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Index update time:

Vertex operations

27

Experiments

▶ (Update time) ≪ (Indexing time)

▶ Vertex del. causes a number of edge dels.

89,100

1

15

575

5,468,000

0

459

10,000

1.E-04

1.E-02

1.E+00

1.E+02

1.E+04

1.E+06

Indexing Vertex add. Vertex del. Vertex del.

(naive BFS)

Pro

cess

ing

tim

e [

ms]

Network |𝑽| |𝑬|

Epinions 130K 840K

Flickr 2,303K 33,140K

0.001

>10,000

>10x speed-up

459

Page 28: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Influence estimation queries:

Time for estimating the influence of a vertex

28

Experiments

▶ Tracking 1M nodes/secJust perform table lookup

89,000

0

6,000 9,000

5,468,000

0

100,000 350,000

1.E-04

1.E-01

1.E+02

1.E+05

Avera

ge t

ime [

ms]

MC[Kempe+'03]

RIS[Borgs+'14]

Indexing Query

Network |𝑽| |𝑬|

Epinions 130K 840K

Flickr 2,303K 33,140K

This work Static methods

0.97μs 1.62μs

Page 29: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Influence maximization queries:

Time for selecting a seed set of size 100

29

Experiments

RIS[Borgs+'14]

IMM[Tang+'15]

PMC[Ohsaka+'14]

IRIE[Jung+'12]

Query

This work Static methods

▶ >10 times fasterSolve max. coverage

1

10

39

11 13 16

361173

497

0.1

1

10

100

1000

Ru

n t

ime [

s]

Ou

t-o

f-m

em

ory

Network |𝑽| |𝑬|

Epinions 130K 840K

Flickr 2,303K 33,140K

Page 30: Dynamic Influence Analysis in Evolving Networks (VLDB'16)

Future directions

▶ More space saving for billion-scale graphs

▶ Fast influence maximization query

Maximum Coverage in online setting

Proposed fully-dynamic indices

for influence analysis in evolving networks

① Indexing graphs w/ >10M edges in a few hours

② Reflect any graph change in 1 sec.

③ Fast influence analysis queries

Conclusion

30