Searching and Sampling Take a Walk Through a Network! Antonio - - PowerPoint PPT Presentation

searching and sampling
SMART_READER_LITE
LIVE PREVIEW

Searching and Sampling Take a Walk Through a Network! Antonio - - PowerPoint PPT Presentation

Searching and Sampling Take a Walk Through a Network! Antonio Carzaniga Faculty of Informatics Universit della Svizzera italiana Mach 4, 2020 Outline Applications The network as a linear transformation Other applications of linear algebra


slide-1
SLIDE 1

Searching and Sampling

Take a Walk Through a Network! Antonio Carzaniga

Faculty of Informatics Università della Svizzera italiana

Mach 4, 2020

slide-2
SLIDE 2

Outline

Applications The network as a linear transformation Other applications of linear algebra

slide-3
SLIDE 3
slide-4
SLIDE 4
slide-5
SLIDE 5

v

slide-6
SLIDE 6

v

slide-7
SLIDE 7

v a very limited local view of the network

slide-8
SLIDE 8

v local view Networks

◮ peer-to-peer ◮ . . .

Services

◮ address-based ◮ content-based ◮ multicast ◮ search ◮ sampling ◮ . . .

Algorithms

◮ random walks ◮ . . .

slide-9
SLIDE 9

GE VS TI VD FR BE OW NW UR GR NE LU ZG SZ GL SG JU SO BS BL AG SH ZH TG AR AL

slide-10
SLIDE 10

GE VS TI VD FR BE OW NW UR GR NE LU ZG SZ GL SG JU SO BS BL AG SH ZH TG AR AL

remaining hops: 9 remaining hops: 9

slide-11
SLIDE 11

GE VS TI VD FR BE OW NW UR GR NE LU ZG SZ GL SG JU SO BS BL AG SH ZH TG AR AL

remaining hops: 8 remaining hops: 8

slide-12
SLIDE 12

GE VS TI VD FR BE OW NW UR GR NE LU ZG SZ GL SG JU SO BS BL AG SH ZH TG AR AL

remaining hops: 7 remaining hops: 7

slide-13
SLIDE 13

GE VS TI VD FR BE OW NW UR GR NE LU ZG SZ GL SG JU SO BS BL AG SH ZH TG AR AL

remaining hops: 6 remaining hops: 6

slide-14
SLIDE 14

GE VS TI VD FR BE OW NW UR GR NE LU ZG SZ GL SG JU SO BS BL AG SH ZH TG AR AL

remaining hops: 5 remaining hops: 5

slide-15
SLIDE 15

GE VS TI VD FR BE OW NW UR GR NE LU ZG SZ GL SG JU SO BS BL AG SH ZH TG AR AL

remaining hops: 4 remaining hops: 4

slide-16
SLIDE 16

GE VS TI VD FR BE OW NW UR GR NE LU ZG SZ GL SG JU SO BS BL AG SH ZH TG AR AL

remaining hops: 3 remaining hops: 3

slide-17
SLIDE 17

GE VS TI VD FR BE OW NW UR GR NE LU ZG SZ GL SG JU SO BS BL AG SH ZH TG AR AL

remaining hops: 2 remaining hops: 2

slide-18
SLIDE 18

GE VS TI VD FR BE OW NW UR GR NE LU ZG SZ GL SG JU SO BS BL AG SH ZH TG AR AL

remaining hops: 1 remaining hops: 1

slide-19
SLIDE 19

GE VS TI VD FR BE OW NW UR GR NE LU ZG SZ GL SG JU SO BS BL AG SH ZH TG AR AL

remaining hops: 0! remaining hops: 0!

slide-20
SLIDE 20

GE VS TI VD FR BE OW NW UR GR NE LU ZG SZ GL SG JU SO BS BL AG SH ZH TG AR AL

node SG selected node SG selected

slide-21
SLIDE 21

Other Applications

Relevance score for hyper-linked documents (PageRank)

◮ Input: a large collection of linked documents such as Web

pages

◮ Output: a ranking of the pages by reputation ◮ a page that is linked by reputable pages acquires more

reputation

◮ equivalent to a random walk over the Web

slide-22
SLIDE 22
slide-23
SLIDE 23

Problem: given a directed graph G = (V, A), compute the probability pu that a sufficiently long random walk would end at node u ∈ V for all nodes u.

slide-24
SLIDE 24

Problem: given a directed graph G = (V, A), compute the probability pu that a sufficiently long random walk would end at node u ∈ V for all nodes u. Approaches:

  • 1. Simulation
  • 2. Math! (linear algebra)
slide-25
SLIDE 25

v local view Random Walks

slide-26
SLIDE 26

v

0.2 0.2 0.5 0.1

local view Random Walks Execution

◮ trivial, local process

slide-27
SLIDE 27

v

0.2 0.2 0.5 0.1

local view Random Walks Execution

◮ trivial, local process

Configuration and bias

◮ how do we choose

transition probabilities?

◮ is the sample biased?

How?

◮ how long do we walk?

slide-28
SLIDE 28

AL AG AR BE BL BS FR GE GL GR JU LU NE NW OW SG SH SO SZ TG TI UR VD VS ZG ZH

stationary distribution (hops → ∞)

slide-29
SLIDE 29

v1 v2 v3

1 1 0.5 0.5

slide-30
SLIDE 30

v1 v2 v3

1 1 0.5 0.5

let pi(t) = Pr[walk is at node vi at time t] p(0) = [0 1 0]T means the walk starts at v2

slide-31
SLIDE 31

v1 v2 v3

1 1 0.5 0.5

let pi(t) = Pr[walk is at node vi at time t] p(0) = [0 1 0]T means the walk starts at v2 p1(t + 1) = 0.5 · p3(t) p2(t + 1) = p1(t) + 0.5 · p3(t) p3(t + 1) = p2(t)

slide-32
SLIDE 32

v1 v2 v3

1 1 0.5 0.5

let pi(t) = Pr[walk is at node vi at time t] p(0) = [0 1 0]T means the walk starts at v2 p1(t + 1) = 0.5 · p3(t) p2(t + 1) = p1(t) + 0.5 · p3(t) p3(t + 1) = p2(t) p(t + 1) = Ap(t) p(t) = Atp(0)

slide-33
SLIDE 33

v1 v2 v3

1 1 0.5 0.5

let pi(t) = Pr[walk is at node vi at time t] p(0) = [0 1 0]T means the walk starts at v2 p1(t + 1) = 0.5 · p3(t) p2(t + 1) = p1(t) + 0.5 · p3(t) p3(t + 1) = p2(t) p(t + 1) = Ap(t) p(t) = Atp(0) p(0) = c1x1 + c2x2 + · · · + cnxn

slide-34
SLIDE 34

v1 v2 v3

1 1 0.5 0.5

let pi(t) = Pr[walk is at node vi at time t] p(0) = [0 1 0]T means the walk starts at v2 p1(t + 1) = 0.5 · p3(t) p2(t + 1) = p1(t) + 0.5 · p3(t) p3(t + 1) = p2(t) p(t + 1) = Ap(t) p(t) = Atp(0) p(0) = c1x1 + c2x2 + · · · + cnxn p(t) = Atp(0)

slide-35
SLIDE 35

v1 v2 v3

1 1 0.5 0.5

let pi(t) = Pr[walk is at node vi at time t] p(0) = [0 1 0]T means the walk starts at v2 p1(t + 1) = 0.5 · p3(t) p2(t + 1) = p1(t) + 0.5 · p3(t) p3(t + 1) = p2(t) p(t + 1) = Ap(t) p(t) = Atp(0) p(0) = c1x1 + c2x2 + · · · + cnxn p(t) = Atp(0) = λt

1c1x1 + λt 2c2x2 + · · · + λt ncnxn

slide-36
SLIDE 36

v1 v2 v3

1 1 0.5 0.5

let pi(t) = Pr[walk is at node vi at time t] p(0) = [0 1 0]T means the walk starts at v2 p1(t + 1) = 0.5 · p3(t) p2(t + 1) = p1(t) + 0.5 · p3(t) p3(t + 1) = p2(t) p(t + 1) = Ap(t) p(t) = Atp(0) p(0) = c1x1 + c2x2 + · · · + cnxn p(t) = Atp(0) = λt

1c1x1 + λt 2c2x2 + · · · + λt ncnxn

A is stochastic: 1 = |λ1| > |λ2| ≥ |λ3| ≥ . . .

slide-37
SLIDE 37

v1 v2 v3

1 1 0.5 0.5

let pi(t) = Pr[walk is at node vi at time t] p(0) = [0 1 0]T means the walk starts at v2 p1(t + 1) = 0.5 · p3(t) p2(t + 1) = p1(t) + 0.5 · p3(t) p3(t + 1) = p2(t) p(t + 1) = Ap(t) p(t) = Atp(0) p(0) = c1x1 + c2x2 + · · · + cnxn p(t) = Atp(0) = λt

1c1x1 + λt 2c2x2 + · · · + λt ncnxn

λ1 = 1 λ2,3 = −0.5 ± 0.5i

slide-38
SLIDE 38

v1 v2 v3

1 1 0.5 0.5

let pi(t) = Pr[walk is at node vi at time t] p(0) = [0 1 0]T means the walk starts at v2 p1(t + 1) = 0.5 · p3(t) p2(t + 1) = p1(t) + 0.5 · p3(t) p3(t + 1) = p2(t) p(t + 1) = Ap(t) p(t) = Atp(0) p(0) = c1x1 + c2x2 + · · · + cnxn p(t) = Atp(0) = λt

1c1x1 + λt 2c2x2 + · · · + λt ncnxn

λ1 = 1 λ2,3 = −0.5 ± 0.5i π

slide-39
SLIDE 39

v1 v2 v3

1 1 0.5 0.5

let pi(t) = Pr[walk is at node vi at time t] p(0) = [0 1 0]T means the walk starts at v2 p1(t + 1) = 0.5 · p3(t) p2(t + 1) = p1(t) + 0.5 · p3(t) p3(t + 1) = p2(t) p(t + 1) = Ap(t) p(t) = Atp(0) p(0) = c1x1 + c2x2 + · · · + cnxn p(t) = Atp(0) = λt

1c1x1 + λt 2c2x2 + · · · + λt ncnxn

λ1 = 1 λ2,3 = −0.5 ± 0.5i π ǫt ≈ |λ2|t → 0

slide-40
SLIDE 40

v1 v2 v3

1 1 0.5 0.5

let pi(t) = Pr[walk is at node vi at time t] p(0) = [0 1 0]T means the walk starts at v2 p1(t + 1) = 0.5 · p3(t) p2(t + 1) = p1(t) + 0.5 · p3(t) p3(t + 1) = p2(t) p(t + 1) = Ap(t) p(t) = Atp(0) p(0) = c1x1 + c2x2 + · · · + cnxn p(t) = Atp(0) = λt

1c1x1 + λt 2c2x2 + · · · + λt ncnxn

π ǫt ≈ |λ2|t → 0

Stationary distribution

slide-41
SLIDE 41

v1 v2 v3

1 1 0.5 0.5

let pi(t) = Pr[walk is at node vi at time t] p(0) = [0 1 0]T means the walk starts at v2 p1(t + 1) = 0.5 · p3(t) p2(t + 1) = p1(t) + 0.5 · p3(t) p3(t + 1) = p2(t) p(t + 1) = Ap(t) p(t) = Atp(0) p(0) = c1x1 + c2x2 + · · · + cnxn p(t) = Atp(0) = λt

1c1x1 + λt 2c2x2 + · · · + λt ncnxn

π ǫt ≈ |λ2|t → 0

Stationary distribution Mixing Time: τ ≈ log|λ2 | ǫ s.t.

ǫt < ǫ for t > τ

slide-42
SLIDE 42

Notice that, if the network is ergodic, then we know for sure that there is a stationary distribution π that satisfies the equation

π = Aπ.

So, we can compute the stationary distribution directly by solving this system of equations: Aπ = π

n

  • i=1

πi = 1