+ All Categories
Home > Documents > Edge Conductance Estimation using...

Edge Conductance Estimation using...

Date post: 20-Aug-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
59
Edge Conductance Estimation using MCMC Ashish Bora 1 Vivek S. Borkar 2 Dinesh Garg 3 Rajesh Sundaresan 4 1 Department of Computer Science, University of Texas at Austin 2 Department of Electrical Engineering, IIT Bombay, Mumbai, India 3 IBM India Research Lab, Bengaluru, India 4 Department of Electrical Communication Engineering and the Robert Bosch Centre for Cyber Physical Systems, Indian Institute of Science, Bengaluru, India. Allerton, 2016 Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 1 / 35
Transcript
Page 1: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Edge Conductance Estimation using MCMC

Ashish Bora1 Vivek S. Borkar2

Dinesh Garg3 Rajesh Sundaresan4

1Department of Computer Science, University of Texas at Austin

2Department of Electrical Engineering, IIT Bombay, Mumbai, India

3IBM India Research Lab, Bengaluru, India

4Department of Electrical Communication Engineering and the Robert Bosch Centre forCyber Physical Systems, Indian Institute of Science, Bengaluru, India.

Allerton, 2016

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 1 / 35

Page 2: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Outline

1 MotivationWhat is conductance?Why estimate conductances?

2 Notation

3 Prior Work

4 AlgorithmMotivationIdeaPseudocode

5 Theoretical results

6 Simulation ExperimentsCardinal EstimationOrdinal Estimation

7 Discussion

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 2 / 35

Page 3: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Outline

1 MotivationWhat is conductance?Why estimate conductances?

2 Notation

3 Prior Work

4 AlgorithmMotivationIdeaPseudocode

5 Theoretical results

6 Simulation ExperimentsCardinal EstimationOrdinal Estimation

7 Discussion

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 3 / 35

Page 4: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

What is conductance?Analogy

Given a graph G = (V ,E ), imagine each edge as a unit resistor.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 4 / 35

Page 5: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

What is conductance?Definition

i

j

Pick any two nodes i , j ∈ V .

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 5 / 35

Page 6: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

What is conductance?Definition

i

j

Pick any two nodes i , j ∈ V .

Inject unit current at i and extract it at j .

Effective resistance between i and j is the potential differencebetween them.

Effective conductance is inverse of effective resistance.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 6 / 35

Page 7: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

What is conductance?Definition

i

j

Pick any two nodes i , j ∈ V .

Inject unit current at i and extract it at j .

Effective resistance between i and j is the potential differencebetween them.

Effective conductance is inverse of effective resistance.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 6 / 35

Page 8: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

What is conductance?Definition

i

j

Pick any two nodes i , j ∈ V .

Inject unit current at i and extract it at j .

Effective resistance between i and j is the potential differencebetween them.

Effective conductance is inverse of effective resistance.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 6 / 35

Page 9: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Outline

1 MotivationWhat is conductance?Why estimate conductances?

2 Notation

3 Prior Work

4 AlgorithmMotivationIdeaPseudocode

5 Theoretical results

6 Simulation ExperimentsCardinal EstimationOrdinal Estimation

7 Discussion

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 7 / 35

Page 10: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Why estimate conductances?

Effective resistance as a robust measure of distance ([1], [2])

Considers all pathsLess sensitive to edge or node insertions and deletions

Sum of effective resistances across all pairs

measure of network robustnessequals network criticality parameter [4]

Edge resistances for graph sparsification [3]

Edges sampled (with replacement) according to their effectiveresistanceApproximately preseves quadratic form of Graph Laplacian (i.e. x>Lx)

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 8 / 35

Page 11: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Why estimate conductances?

Effective resistance as a robust measure of distance ([1], [2])

Considers all pathsLess sensitive to edge or node insertions and deletions

Sum of effective resistances across all pairs

measure of network robustnessequals network criticality parameter [4]

Edge resistances for graph sparsification [3]

Edges sampled (with replacement) according to their effectiveresistanceApproximately preseves quadratic form of Graph Laplacian (i.e. x>Lx)

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 8 / 35

Page 12: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Why estimate conductances?

Effective resistance as a robust measure of distance ([1], [2])

Considers all pathsLess sensitive to edge or node insertions and deletions

Sum of effective resistances across all pairs

measure of network robustnessequals network criticality parameter [4]

Edge resistances for graph sparsification [3]

Edges sampled (with replacement) according to their effectiveresistanceApproximately preseves quadratic form of Graph Laplacian (i.e. x>Lx)

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 8 / 35

Page 13: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Notation

G = (V ,E ) is an undirected, unweighted, connected, finite graph.

m = |E |, n = |V |∂i = {j | (i , j) ∈ E}di = |∂i |dmax = maxi∈V di , dmin = mini∈V di

dij = min{di , dj}, Dij = max{di , dj}.πi = di/2m, stationary distribution of simple random walk on G

davg =∑

i∈V diπi

Gij = the effective conductance between i and j

Rij = the effective resistance between i and j

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 9 / 35

Page 14: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Prior Work

Nodes of the graph can be embedded in Euclidean space so that theresulting pair-wise distances encode the effective resistances.

The embedding depends on the edge-node adjacency matrix and theLaplacian of the graph.

[3] uses low dimensional random projection to preserve pairwisedistances to estimate resistances. Takes only O(m/ε2) steps, butrequires centralized computation.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 10 / 35

Page 15: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Prior Work

Nodes of the graph can be embedded in Euclidean space so that theresulting pair-wise distances encode the effective resistances.

The embedding depends on the edge-node adjacency matrix and theLaplacian of the graph.

[3] uses low dimensional random projection to preserve pairwisedistances to estimate resistances. Takes only O(m/ε2) steps, butrequires centralized computation.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 10 / 35

Page 16: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Prior Work

Nodes of the graph can be embedded in Euclidean space so that theresulting pair-wise distances encode the effective resistances.

The embedding depends on the edge-node adjacency matrix and theLaplacian of the graph.

[3] uses low dimensional random projection to preserve pairwisedistances to estimate resistances. Takes only O(m/ε2) steps, butrequires centralized computation.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 10 / 35

Page 17: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Outline

1 MotivationWhat is conductance?Why estimate conductances?

2 Notation

3 Prior Work

4 AlgorithmMotivationIdeaPseudocode

5 Theoretical results

6 Simulation ExperimentsCardinal EstimationOrdinal Estimation

7 Discussion

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 11 / 35

Page 18: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmMotivation

For large dynamic graphs, we would like algorithms that

Are distributed and use minimal local communication

Have low memory footprint

Use very few computations per step

Are easily parallelizable

Are incremental and adaptive

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 12 / 35

Page 19: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmMotivation

For large dynamic graphs, we would like algorithms that

Are distributed and use minimal local communication

Have low memory footprint

Use very few computations per step

Are easily parallelizable

Are incremental and adaptive

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 12 / 35

Page 20: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmMotivation

For large dynamic graphs, we would like algorithms that

Are distributed and use minimal local communication

Have low memory footprint

Use very few computations per step

Are easily parallelizable

Are incremental and adaptive

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 12 / 35

Page 21: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmMotivation

For large dynamic graphs, we would like algorithms that

Are distributed and use minimal local communication

Have low memory footprint

Use very few computations per step

Are easily parallelizable

Are incremental and adaptive

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 12 / 35

Page 22: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmMotivation

For large dynamic graphs, we would like algorithms that

Are distributed and use minimal local communication

Have low memory footprint

Use very few computations per step

Are easily parallelizable

Are incremental and adaptive

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 12 / 35

Page 23: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Outline

1 MotivationWhat is conductance?Why estimate conductances?

2 Notation

3 Prior Work

4 AlgorithmMotivationIdeaPseudocode

5 Theoretical results

6 Simulation ExperimentsCardinal EstimationOrdinal Estimation

7 Discussion

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 13 / 35

Page 24: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmIdea

We focus on edge effective conductance estimation as needed forgraph sparsification algorithm in [3].

We use random walks on the graph to estimate effective conductanceand effective resistances.

A random walk on the graph picks, from the current position, one ofthe neighbors with equal probability. Such random walks naturallygive us many of the desired properties.

We assume positive recurrence of the associated Markov Chain.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 14 / 35

Page 25: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmIdea

We focus on edge effective conductance estimation as needed forgraph sparsification algorithm in [3].

We use random walks on the graph to estimate effective conductanceand effective resistances.

A random walk on the graph picks, from the current position, one ofthe neighbors with equal probability. Such random walks naturallygive us many of the desired properties.

We assume positive recurrence of the associated Markov Chain.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 14 / 35

Page 26: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmIdea

We focus on edge effective conductance estimation as needed forgraph sparsification algorithm in [3].

We use random walks on the graph to estimate effective conductanceand effective resistances.

A random walk on the graph picks, from the current position, one ofthe neighbors with equal probability. Such random walks naturallygive us many of the desired properties.

We assume positive recurrence of the associated Markov Chain.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 14 / 35

Page 27: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmIdea

We focus on edge effective conductance estimation as needed forgraph sparsification algorithm in [3].

We use random walks on the graph to estimate effective conductanceand effective resistances.

A random walk on the graph picks, from the current position, one ofthe neighbors with equal probability. Such random walks naturallygive us many of the desired properties.

We assume positive recurrence of the associated Markov Chain.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 14 / 35

Page 28: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmIdea

Let pij denote the probability that a random walk starting at node ivisits node j before returning to node i .

i

j

i

j

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 15 / 35

Page 29: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmIdea

A key fact that underlies our algorithm is:

pij = Gij/di

We estimate this probability by averaging results from several i to ipaths in a random walk.

We will show how this can be done only with local communication foredge conductance estimation.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 16 / 35

Page 30: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmIdea

A key fact that underlies our algorithm is:

pij = Gij/di

We estimate this probability by averaging results from several i to ipaths in a random walk.

We will show how this can be done only with local communication foredge conductance estimation.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 16 / 35

Page 31: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmIdea

A key fact that underlies our algorithm is:

pij = Gij/di

We estimate this probability by averaging results from several i to ipaths in a random walk.

We will show how this can be done only with local communication foredge conductance estimation.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 16 / 35

Page 32: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmVariables

Let’s introduce some variables that will be used in the algorithm

pij is boolean. It denotes the the success or failure of visiting node jin an instance of a return path from node i to node i of the randomwalk.

Ni is the number of times node i was visited.

pij is a running estimate of pij .

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 17 / 35

Page 33: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmVariables

Let’s introduce some variables that will be used in the algorithm

pij is boolean. It denotes the the success or failure of visiting node jin an instance of a return path from node i to node i of the randomwalk.

Ni is the number of times node i was visited.

pij is a running estimate of pij .

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 17 / 35

Page 34: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmVariables

Let’s introduce some variables that will be used in the algorithm

pij is boolean. It denotes the the success or failure of visiting node jin an instance of a return path from node i to node i of the randomwalk.

Ni is the number of times node i was visited.

pij is a running estimate of pij .

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 17 / 35

Page 35: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmVariables

Let’s introduce some variables that will be used in the algorithm

pij is boolean. It denotes the the success or failure of visiting node jin an instance of a return path from node i to node i of the randomwalk.

Ni is the number of times node i was visited.

pij is a running estimate of pij .

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 17 / 35

Page 36: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmObservation 1

In the long run, every visit to node i marks the end of a return path.Thus, on visiting node i , we can update pij using pij .

i

j

pij i

previous visit current visit

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 18 / 35

Page 37: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmObservation 2

A visit to node i at time t will be a part of a cycle that originated atnode j prior to time t and a subsequent return to node j after time t(with probability 1, because of positive recurrence). Thus a visit tonode i can be used to update pji .

j pji ← 1 j

previous visit current future visit

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 19 / 35

Page 38: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Outline

1 MotivationWhat is conductance?Why estimate conductances?

2 Notation

3 Prior Work

4 AlgorithmMotivationIdeaPseudocode

5 Theoretical results

6 Simulation ExperimentsCardinal EstimationOrdinal Estimation

7 Discussion

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 20 / 35

Page 39: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

AlgorithmPseudocode

Algorithm 1 Visit Before Return

Require: T , G = (V ,E )1: ∀ i ∈ V ,Ni ← 02: ∀ (i , j) ∈ E , pij = pij = 0.3: Sample initial node X1 from the stationary distribution π.4: for t = [1, 2, 3, · · · ,T ] do5: Let i = Xt

6: for all j in ∂i do7: pij ← (pijNi + pij)/(Ni + 1)8: pij ← 09: pji ← 1

10: Ni ← Ni + 111: Jump to a neighbor of the current node as identified by the walk.

12: For every (i , j) ∈ E , output Gij = max(

1, di2 pij +dj2 pji

).

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 21 / 35

Page 40: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Complexity result

Theorem (Performance of VisitBeforeReturn)

Fix an edge (i , j) ∈ E . For any 0 < ε < d2ij/(4m) and 0 < δ < 1/2,

T = O

(Dij ·max{m,Dij tmix} ·

1

ε2log

1

δ

)steps suffice to ensure that the output Gij of the algorithmVisitBeforeReturn satisfies

P(|Gij − Gij | ≥ ε) ≤ δ.

If the algorithm is run for T steps, it requires O(davgT ) computation stepson the average (worst case O(dmaxT ) computations), and usesO(m logT ) space.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 22 / 35

Page 41: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Proof ideas

pij =

∑Nik=1 p

kij

Ni

.

Get concentration for Ni using McDiarmids inequality for Markovchains.

Get concentration for pij for a fixed Ni using Hoeffding’s inequality.

Combine the two.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 23 / 35

Page 42: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Proof ideas

pij =

∑Nik=1 p

kij

Ni

.

Get concentration for Ni using McDiarmids inequality for Markovchains.

Get concentration for pij for a fixed Ni using Hoeffding’s inequality.

Combine the two.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 23 / 35

Page 43: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Proof ideas

pij =

∑Nik=1 p

kij

Ni

.

Get concentration for Ni using McDiarmids inequality for Markovchains.

Get concentration for pij for a fixed Ni using Hoeffding’s inequality.

Combine the two.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 23 / 35

Page 44: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Proof ideas

pij =

∑Nik=1 p

kij

Ni

.

Get concentration for Ni using McDiarmids inequality for Markovchains.

Get concentration for pij for a fixed Ni using Hoeffding’s inequality.

Combine the two.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 23 / 35

Page 45: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Outline

1 MotivationWhat is conductance?Why estimate conductances?

2 Notation

3 Prior Work

4 AlgorithmMotivationIdeaPseudocode

5 Theoretical results

6 Simulation ExperimentsCardinal EstimationOrdinal Estimation

7 Discussion

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 24 / 35

Page 46: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Simulation ExperimentsCardinal Estimation

ε(t) =1

m

∑(i ,j)∈E

∣∣∣Gij(t)− Gij

∣∣∣

0 2 4 6 8 10

x 105

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Number of Steps t

ǫ(t)

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 25 / 35

Page 47: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Simulation ExperimentsCardinal Estimation

0 2 4 6 8 10

x 105

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

Number of Steps t

ǫ(t)√

t/mdavg

Example 1

Example 2

Example 3

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 26 / 35

Page 48: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Outline

1 MotivationWhat is conductance?Why estimate conductances?

2 Notation

3 Prior Work

4 AlgorithmMotivationIdeaPseudocode

5 Theoretical results

6 Simulation ExperimentsCardinal EstimationOrdinal Estimation

7 Discussion

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 27 / 35

Page 49: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Simulation ExperimentsTop-k set estimation

Incremental approximate estimation algorithms can typically recoverordering much faster than exact values.We test performance of our algorithm for recovering top-k edges withhigh conductance by plotting fraction of top-k largest conductanceedges correctly identified at time t.

0 2 4 6 8 10

x 105

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Number of Steps t

fk(t)

k =100

k =400

k =700

k =1000

increasing k

Figure:Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 28 / 35

Page 50: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Discussion

Our algorithm can be naturally distributed: each node storesinformation about its neighbors.

Parallelization can be easily obtained by running multiple randomwalks and avergaing their results.

Our guarantees are weaker as compared to [3]. Particularly, therestriction on ε forces it to be too small. Whether this can beremoved is an open question.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 29 / 35

Page 51: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Discussion

Our algorithm can be naturally distributed: each node storesinformation about its neighbors.

Parallelization can be easily obtained by running multiple randomwalks and avergaing their results.

Our guarantees are weaker as compared to [3]. Particularly, therestriction on ε forces it to be too small. Whether this can beremoved is an open question.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 29 / 35

Page 52: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Discussion

Our algorithm can be naturally distributed: each node storesinformation about its neighbors.

Parallelization can be easily obtained by running multiple randomwalks and avergaing their results.

Our guarantees are weaker as compared to [3]. Particularly, therestriction on ε forces it to be too small. Whether this can beremoved is an open question.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 29 / 35

Page 53: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Discussion

Our algorithm can be naturally distributed: each node storesinformation about its neighbors.

Parallelization can be easily obtained by running multiple randomwalks and avergaing their results.

Our guarantees are weaker as compared to [3]. Particularly, therestriction on ε forces it to be too small. Whether this can beremoved is an open question.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 29 / 35

Page 54: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Conclusion

We have presented a MCMC based scheme to approximate edgeconductances.

Our algorithm is incremental and iterative, can be easily distributed,works with local communication, and uses very little memory andcomputation per step.

We provide theoretical guarantees on the performance.

Simulation experiments support our theoretical results.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 30 / 35

Page 55: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

References

Aykut Firat, Sangit Chatterjee, and Mustafa Yilmaz. “Genetic clustering ofsocial networks using random walks”. In: Computational Statistics & DataAnalysis 51.12 (2007), pp. 6285–6294.

Francois Fouss et al. “Random-walk computation of similarities betweennodes of a graph with application to collaborative recommendation”. In:Knowledge and Data Engineering, IEEE transactions on 19.3 (2007),pp. 355–369.

Daniel A Spielman and Nikhil Srivastava. “Graph sparsification by effectiveresistances”. In: SIAM Journal on Computing 40.6 (2011), pp. 1913–1926.

Ali Tizghadam and Alberto Leon-Garcia. “On robust traffic engineering intransport networks”. In: Global Telecommunications Conference, 2008. IEEEGLOBECOM 2008. IEEE. IEEE. 2008, pp. 1–6.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 31 / 35

Page 56: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Thank you for your attention!Questions?

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 32 / 35

Page 57: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 33 / 35

Page 58: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Appendix A

Estimating resistances from conductances

P

(|Rij − Rij |

Rij≥ ε

)= P

(∣∣∣∣∣ Rij

Rij− 1

∣∣∣∣∣ ≥ ε)

= P

(∣∣∣∣∣Gij

Gij

− 1

∣∣∣∣∣ ≥ ε)

= P(|Gij − Gij | ≥ εGij)

≤ P(|Gij − Gij | ≥ ε),

where the last inequality follows because Gij ≥ 1.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 34 / 35

Page 59: Edge Conductance Estimation using MCMCashishbora.github.io/assets/edge_conductance/presentation.pdf · Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance

Appendix B

Our algorithm can be easily adapted for estimating the conductancevalue across any pair of nodes: maintain and update the variable pijand pij .

If effective conductances between far-off nodes is desired, thecommunication is however no longer local.

Ashish Bora, Vivek S. Borkar , Dinesh Garg, Rajesh Sundaresan Edge Conductance Estimation using MCMC 35 / 35


Recommended