48
CS224W: Machine Learning with Graphs Jure Leskovec, Stanford University http://cs224w.stanford.edu

CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

CS224W: Machine Learning with GraphsJure Leskovec, Stanford University

http://cs224w.stanford.edu

Page 2: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ (1) New problem: Outbreak detection¡ (2) Develop an approximation algorithm§ It is a submodular opt. problem!

¡ (3) Speed-up greedy hill-climbing§ Valid for optimizing general submodular functions

(i.e., also works for influence maximization)¡ (4) Prove a new “data dependent” bound

on the solution quality§ Valid for optimizing any submodular function

(i.e., also works for influence maximization)

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 2

Page 3: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Given a real city water distribution network

¡ And data on how contaminants spread in the network

¡ Detect the contaminant as quickly as possible

¡ Problem posed by the US Environmental Protection Agency

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 3

SS

Page 4: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 4

Users/blogs

Posts

Time ordered

hyperlinks

Information cascade

Which users/news sites should one follow to detect cascades

as effectively as possible?11/12/19

Page 5: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 5

Detect allstories but late.

Want to read things before others do.

Detect blue & yellow stories soon but miss

the red story.

Page 6: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Both of these two are instances of the same underlying problem!

¡ Given a dynamic process spreading over a network we want to select a set of nodes to detect the process effectively

¡ Many other applications:§ Epidemics§ Influence propagation§ Network security

611/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu

Page 7: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Utility of placing sensors:§ Water flow dynamics, demands of households, …

¡ For each subset S Í V compute utility f(S)

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 7

S2

S3

S4S1 S2

S3

S4

S1

High sensing “quality” (e.g., f(S) = 0.9) Low sensing “quality” (e.g. f(S)=0.01)

High impact outbreak

Medium impactoutbreak

Low impactoutbreak

Sensor reducesimpact throughearly detection!

S1

Contamination

Set V of all network junctions

Page 8: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

Given:¡ Graph 𝐺(𝑉, 𝐸)¡ Data about how outbreaks spread over the 𝑮:§ For each outbreak 𝑖 we know the time 𝑇(𝑢, 𝑖)

when outbreak 𝑖 contaminates node 𝑢

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 8

Water distribution network(physical pipes and junctions)

Simulator of water consumption & flow(built by Mech. Eng. people)

We simulate the contamination spread for every possible location.

Page 9: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

Given:¡ Graph 𝐺(𝑉, 𝐸)¡ Data about how outbreaks spread over the 𝑮:§ For each outbreak 𝑖 we know the time 𝑇(𝑢, 𝑖)

when outbreak 𝑖 contaminates node 𝑢

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 9

The network of news media

Traces of the information flow and identify influence sets

Collect lots of articles and trace them to obtain data about information flow from a

given news site.

a

bc

a bc

Page 10: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

Given:¡ Graph 𝐺(𝑉, 𝐸)¡ Data on how outbreaks spread over the 𝑮:§ For each outbreak 𝑖 we know the time 𝑇(𝑢, 𝑖)

when outbreak 𝑖 contaminates node 𝑢

¡ Goal: Select a subset of nodes S that maximizes the expected reward:

subject to: cost(S) < B

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 10

Expected reward for detecting outbreak i

max.⊆0

𝑓 𝑆 =45

𝑃 𝑖 𝑓5 𝑆

P(i)… probability of outbreak i occurring.f(i)… reward for detecting outbreak i using sensors S.

Page 11: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Reward (one of the following three):§ (1) Minimize time to detection§ (2) Maximize number of detected propagations§ (3) Minimize number of infected people

¡ Cost (context dependent):§ Reading big blogs is more time consuming§ Placing a sensor in a remote location is expensive

11

outbreak i

Monitoring blue node saves more people than monitoring the green node

12

36

7

59

11

10

8

f(S)11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu

Page 12: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Penalty 𝝅𝒊(𝒕) for detecting outbreak 𝒊 at time 𝒕§ 1) Time to detection (DT)

§ How long does it take to detect a contamination?§ Penalty for detecting at time 𝒕: 𝜋5(𝑡) = 𝑡

§ 2) Detection likelihood (DL)§ How many contaminations do we detect?§ Penalty for detecting at time 𝒕: 𝜋5(𝑡) = 0, 𝜋5(∞) = 1

§ Note, this is binary outcome: we either detect or not

§ 3) Population affected (PA)§ How many people drank contaminated water?§ Penalty for detecting at time 𝒕: 𝜋5(𝑡) = {# of infected nodes

in outbreak 𝑖 by time 𝑡}.¡ Observation:

In all cases detecting sooner does not hurt!1211/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu

Page 13: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Observation: Diminishing returns

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 13

x1

x2

Placement S={x1, x2}

S’

New sensor:

Adding x’ helps a lot

x2

x4

x1

x3

Placement S’={x1, x2, x3, x4}

x’

Adding x’ helps very little

We define 𝒇𝒊 𝑺 as penalty reduction:𝑓5 𝑆 = 𝜋5 ∞ − 𝜋5(𝑇(𝑆, 𝑖))

Page 14: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Claim: For all 𝑨 ⊆ 𝑩 ⊆ 𝑽 and sensor 𝒙 ∈ 𝑽\𝑩𝒇 𝑨 ∪ 𝒙 − 𝒇 𝑨 ≥ 𝒇 𝑩 ∪ 𝒙 − 𝒇 𝑩

¡ Proof: All our objectives are submodular§ Fix outbreak 𝒊§ Show 𝒇𝒊 𝑨 = 𝝅𝒊 ∞ − 𝝅𝒊(𝑻(𝑨, 𝒊)) is submodular§ Consider 𝑨 ⊆ 𝑩 ⊆ 𝑽 and sensor 𝒙 ∈ 𝑽\𝑩§ When does sensor 𝒙 detect outbreak 𝒊?

§ We analyze 3 cases based on when 𝒙 detects outbreak i§ (1) 𝑻 𝑩, 𝒊 ≤ 𝑻 𝑨, 𝒊 < 𝑻(𝒙, 𝒊): 𝒙 detects late, nobody benefits:𝑓5 𝐴 ∪ 𝑥 = 𝑓5 𝐴 , also 𝑓5 𝐵 ∪ 𝑥 = 𝑓5 𝐵 and so𝑓5 𝐴 ∪ 𝑥 − 𝑓5 𝐴 = 0 = 𝑓5 𝐵 ∪ 𝑥 − 𝑓5 𝐵

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 14

Page 15: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Proof (contd.): § (2) 𝑻 𝑩, 𝒊 ≤ 𝑻 𝒙, 𝒊 ≤ 𝑻 𝑨, 𝒊 : 𝒙 detects after B but before A𝒙 detects sooner than any node in 𝑨 but after all in 𝑩. So 𝒙 only helps improve the solution 𝑨 (but not 𝑩)𝑓5 𝐴 ∪ 𝑥 − 𝑓5 𝐴 ≥ 0 = 𝑓5 𝐵 ∪ 𝑥 − 𝑓5 𝐵

§ (3) 𝑻 𝒙, 𝒊 < 𝑻 𝑩, 𝒊 ≤ 𝑻(𝑨, 𝒊): 𝒙 detects early𝑓5 𝐴 ∪ 𝑥 − 𝑓5 𝐴 = 𝜋5 ∞ − 𝜋5 𝑇 𝑥, 𝑖 − 𝑓5(𝐴) ≥𝜋5 ∞ − 𝜋5 𝑇 𝑥, 𝑖 − 𝑓5(𝐵) = 𝑓5 𝐵 ∪ 𝑥 − 𝑓5 𝐵§ Inequality is due to non-decreasingness of 𝑓5(⋅), i.e., 𝑓5 𝐴 ≤ 𝑓5(𝐵)

§ So, 𝒇𝒊(⋅) is submodular!¡ So, 𝒇(⋅) is also submodular

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 15

𝑓 𝑆 =45

𝑃 𝑖 𝑓5 𝑆

Remember 𝑨 ⊆ 𝑩

Page 16: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ What do we know about optimizing submodularfunctions?§ Hill-climbing (i.e., greedy) is near

optimal: (𝟏 − 𝟏𝒆) ⋅ 𝑶𝑷𝑻

¡ But: § (1) This only works for unit cost

case! (each sensor costs the same)§ For us each sensor 𝒔 has cost 𝒄(𝒔)

§ (2) Hill-climbing algorithm is slow§ At each iteration we need to re-evaluate

marginal gains of all nodes§ Runtime 𝑶(|𝑽| · 𝑲) for placing 𝑲 sensors

Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu Part 2-16

a

b

c

ab

cd

dreward

e

e

Hill-climbing

Add sensor with highest marginal gain

11/12/19

Page 17: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a
Page 18: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Consider the following algorithm to solvethe outbreak detection problem:Hill-climbing that ignores cost§ Ignore sensor cost 𝒄(𝒔)§ Repeatedly select sensor with highest marginal gain§ Do this until the budget is exhausted

¡ Q: How well does this work?¡ A: It can fail arbitrarily badly! L

§ There exists a problem setting where the hill-climbing solution is arbitrarily far from OPT

§ Next we come up with an example11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 18

Page 19: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Bad example when we ignore cost:§ 𝒏 sensors, budget 𝑩§ 𝒔𝟏: reward 𝒓, cost 𝑩,§ 𝒔𝟐…𝒔𝒏: reward 𝒓 − 𝜺, c = 𝟏§ Hill-climbing always prefers more expensive sensor 𝒔𝟏 with reward 𝒓 (and exhausts the budget).It never selects cheaper sensors with reward 𝒓 − 𝜺→ For variable cost it can fail arbitrarily badly!

¡ Idea: What if we optimize benefit-cost ratio?

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 19

𝑠5 = arg maxd∈(0\e)

𝑓 𝐴5fg ∪ {𝑠} − 𝑓(𝐴5fg)𝒄 𝒔

Greedily pick sensor𝒔𝒊 that maximizes benefit to cost ratio.

Page 20: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Benefit-cost ratio can also fail arbitrarily badly!¡ Consider: budget 𝑩: § 2 sensors 𝒔𝟏 and 𝒔𝟐:

§ Costs: 𝒄(𝒔𝟏) = 𝜺, 𝒄(𝒔𝟐) = 𝑩§ Benefit (only 1 cascade): 𝒇(𝒔𝟏) = 𝟐𝜺, 𝒇(𝒔𝟐) = 𝑩

§ Then benefit-cost ratio is:§ 𝒇 𝒔𝟏 /𝒄(𝒔𝟏) = 𝟐 and 𝒇(𝒔𝟐)/𝒄(𝒔𝟐) = 𝟏

§ So, we first select 𝒔𝟏and then can not afford 𝒔𝟐→We get reward 𝟐𝜺 instead of 𝑩! Now send 𝜺 → 𝟎

and we get an arbitrarily bad solution!

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 20

This algorithm incentivizes choosing nodes with very low cost, even when slightly more expensive ones can lead to much better global results.

Page 21: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ CELF (Cost-Effective Lazy Forward-selection)A two pass greedy algorithm:

§ Set (solution) 𝑺′: Use benefit-cost greedy§ Set (solution) 𝑺′′: Use unit-cost greedy

§ Final solution: 𝑺 = 𝒂𝒓𝒈𝒎𝒂𝒙(𝒇(𝑺′), 𝒇(𝑺′′))

¡ How far is CELF from (unknown) optimal solution?

¡ Theorem: CELF is near optimal [Krause&Guestrin, ‘05]

§ CELF achieves ½(1-1/e) factor approximation!

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 21

This is surprising: We have two clearly suboptimal solutions, but taking best of the two is guaranteed to give a near-optimal solution.

Page 22: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a
Page 23: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ What do we know about optimizing submodularfunctions?§ Hill-climbing (i.e., greedy) is near

optimal (that is, (1 − gr) ⋅ 𝑂𝑃𝑇)

¡ But: § (2) Hill-climbing algorithm is slow!

§ At each iteration we need to re-evaluate marginal gains of all nodes

§ Runtime 𝑂(|𝑉| · 𝐾) for placing 𝐾sensors

Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 23

a

b

c

ab

cd

dreward

e

e

Hill-climbing

Add sensor with highest marginal gain

11/12/19

Page 24: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ In round 𝒊 + 𝟏: So far we picked 𝑆𝑖 = {𝑠1, … , 𝑠𝑖}§ Now pick 𝐬𝒊w𝟏 = 𝐚𝐫𝐠𝐦𝐚𝐱

𝒖𝒇(𝑺𝒊 ∪ {𝒖}) − 𝒇(𝑺𝒊)

§ This our old friend – greedy hill-climbing algorithm. It maximizes the “marginal gain”

𝜹𝒊 𝒖 = 𝒇(𝑺𝒊 ∪ {𝒖}) − 𝒇(𝑺𝒊)

¡ By submodularity property:𝑓 𝑆5 ∪ 𝑢 − 𝑓 𝑆5 ≥ 𝑓 𝑆� ∪ 𝑢 − 𝑓 𝑆� for 𝑖 < 𝑗

¡ Observation: By submodularity:For every 𝒖𝛿5(𝑢) ≥ 𝛿�(𝑢) for 𝑖 < 𝑗 since 𝑆𝑖 ⊂ 𝑆𝑗Marginal benefits di(u) only shrink!(as i grows)

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 24

u

di(u) ³ dj(u)

Activating node u in step i helps more than activating it at step j (j>i)

Page 25: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Idea: § Use di as upper-bound on dj (j > i)

¡ Lazy hill-climbing:§ Keep an ordered list of marginal

benefits di from previous iteration§ Re-evaluate di only for top node§ Re-order and prune

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 25

a

b

c

d

Marginal gain

e

f(S È {u}) – f(S) ≥ f(T È {u}) – f(T) S Í T

S1={a}

Page 26: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Idea: § Use di as upper-bound on dj (j > i)

¡ Lazy hill-climbing:§ Keep an ordered list of marginal

benefits di from previous iteration§ Re-evaluate di only for top node§ Re-order and prune

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 26

a

d

b

c

e

Marginal gain

f(S È {u}) – f(S) ≥ f(T È {u}) – f(T) S Í T

S1={a}

Page 27: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Idea: § Use di as upper-bound on dj (j > i)

¡ Lazy hill-climbing:§ Keep an ordered list of marginal

benefits di from previous iteration§ Re-evaluate di only for top node§ Re-order and prune

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 27

a

c

d

b

e

Marginal gain

f(S È {u}) – f(S) ≥ f(T È {u}) – f(T) S Í T

S1={a}

S2={a,b}

Page 28: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ CELF (using Lazy evaluation) runs 700 times faster than greedy hill-climbing algorithm

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 28

CELF… raw CELFCELF+bounds … CELF together with computing the data-dependent solution quality bound

Page 29: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a
Page 30: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Back to the solution quality!

¡ The (1-1/e) bound for submodular functions is the worst case bound (worst over all possible inputs)

¡ Data dependent bound:§ Value of the bound depends on the input data

§ On “easy” data, hill climbing may do better than 63%

§ Can we say something about the solutionquality when we know the input data?

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 30

Page 31: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Suppose 𝑺 is some solution to 𝒇(𝑺) s.t. 𝑺 ≤ 𝒌§ 𝒇(𝑺) is monotone & submodular

¡ Let 𝑶𝑷𝑻 = {𝒕𝟏, … , 𝒕𝒌} be the OPT solution¡ For each 𝒖 let 𝜹 𝒖 = 𝒇 𝑺 ∪ 𝒖 − 𝒇 𝑺¡ Order 𝜹 𝒖 so that 𝜹 𝟏 ≥ 𝜹 𝟐 ≥ ⋯¡ Then: 𝒇 𝑶𝑷𝑻 ≤ 𝒇 𝑺 + ∑𝒊�𝟏𝒌 𝜹 𝒊§ Note:

§ This is a data dependent bound (𝛿 𝑖 depends on input data)§ Bound holds for any algorithm

§ Makes no assumption about how 𝑺 was computed

§ For some inputs it can be very “loose” (worse than 63%)11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 31

Page 32: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Claim:§ For each 𝑢 let 𝜹(𝒖) = 𝒇(𝑺 ∪ {𝒖}) − 𝒇(𝑺)§ Order 𝜹 𝒖 so that 𝜹 𝟏 ≥ 𝜹 𝟐 ≥ ⋯§ Then: 𝒇 𝑶𝑷𝑻 ≤ 𝒇 𝑺 + ∑𝒊�𝟏𝒌 𝜹(𝒊)

¡ Proof:§ 𝑓 𝑂𝑃𝑇 ≤ 𝑓 𝑂𝑃𝑇 ∪ 𝑆§ = 𝑓 𝑆 + 𝑓 𝑂𝑃𝑇 ∪ 𝑆 − 𝑓(𝑆)§ ≤ 𝑓 𝑆 + ∑5�g� 𝑓 𝑆 ∪ 𝑡5 − 𝑓 𝑆§ = 𝑓 𝑆 + ∑5�g� 𝛿(𝑡5)§ ≤ 𝑓 𝑆 + ∑5�g� 𝛿(𝑖) ⇒ 𝒇 𝑶𝑷𝑻 ≤ 𝒇 𝑺 + ∑𝒊�𝟏𝒌 𝜹(𝒊)

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 32

Instead of taking tiÎOPT (of benefit 𝛿(𝑡5)),we take the best possible element (𝛿(𝑖))

(we proved this last time)

Page 33: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a
Page 34: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Real metropolitan area water network § V = 21,000 nodes§ E = 25,000 pipes

¡ Use a cluster of 50 machines for a month¡ Simulate 3.6 million epidemic scenarios

(random locations, random days, random time of the day)

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 34

Page 35: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

Data-dependent bound is much tighter (gives more accurate estimate of alg. performance)

35

Solu

tion

qual

ity F

(A)

High

er is

bet

ter

0 5 10 15 200

0.2

0.4

0.6

0.8

1

1.2

1.4“Offline”

the (1-1/e) bound

Data-dependentbound

Hill Climbing

Number of sensors placed

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu

Page 36: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Placement heuristics perform much worse

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 36

Author Score

CELF 26

Sandia 21

U Exter 20

Bentley systems 19

Technion (1) 14

Bordeaux 12

U Cyprus 11

U Guelph 7

U Michigan 4

Michigan Tech U 3

Malcolm 2

Proteo 2

Technion (2) 1

Battle of Water Sensor Networks competition

[w/ Ostfeld et al., J. of Water Resource Planning]

Page 37: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Different objective functions give different sensor placements

37

Population affected Detection likelihood

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu

Page 38: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

Here CELF is much faster than greedy hill-climbing!§ (But there might be datasets/inputs where the CELF will

have the same running time as greedy hill-climbing)11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 38

Page 39: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

= I have 10 minutes. Which news sites should I read to be most up to date?

= Who are the most influential news sites?

39

?

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu

Page 40: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 40

Detect allstories but late.

Want to read things before others do.

Detect blue & yellowsoon but miss red.

Page 41: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Crawled 45,000 blogs for 1 year¡ Obtained 10 million news posts¡ And identified 350,000 cascades¡ Cost of a blog is the number of posts it has

4111/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu

Page 42: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Online bound turns out to be much tighter!§ Based on the plot below: 87% instead of 32.5%

Old bound

Our boundCELF

11/12/19 42Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu

vs.

Page 43: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Heuristics perform much worse!¡ One really needs to perform the optimization

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 43

Page 44: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ CELF has 2 sub-algorithms. Which wins?¡ Unit cost:§ CELF picks large

popular blogs¡ Cost-benefit:§ Cost proportional

to the number of posts

¡ We can do much better when considering costs

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 44

Page 45: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Problem: Then CELF picks lots of small blogs that participate in few cascades

¡ We pick best solution that interpolates between the costs

¡ We can get good solutions with few blogs and few posts

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 45

Each curve represents a set of solutions S with the same final

reward f(S)

Score f(S)=0.4f(S)=0.3

f(S)=0.2

Page 46: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ We want to generalize well to future (unknown) cascades

¡ Limiting selection to bigger blogs improves generalization!

Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 4611/12/19

Small blogs Big blogs

Page 47: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ CELF runs 700times faster than simple hill-climbing algorithm

11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 47

[Leskovec et al., KDD ’07]

Page 48: CS224W: Machine Learning with Graphs Jure …web.stanford.edu/class/cs224w/slides/15-outbreak.pdf¡1)New problem:Outbreak detection ¡ (2)Develop an approximation algorithm It is a

¡ Outbreak detection problem in networks

¡ Different ways to formalize objective functions§ All are submodular

¡ Lazy-Greedy algorithm for optimizing submodular functions

¡ CELF algorithm that combines 2 versions of Lazy-Greedy

¡ Data-dependent bound on the solution quality11/12/19 Jure Leskovec, Stanford CS224W: Machine Learning with Graphs, http://cs224w.stanford.edu 48