Graph Sparsifiers Smaller graph that (approximately) preserves the - - PowerPoint PPT Presentation
Graph Sparsifiers Smaller graph that (approximately) preserves the - - PowerPoint PPT Presentation
Graph Sparsifiers Smaller graph that (approximately) preserves the values of some set of graph parameters Graph Sparsification Graph Sparsifiers Spanners Emulators Small stretch spanning trees Vertex sparsifiers
Graph Sparsifiers
Graph Sparsification
“Smaller” graph that (approximately) preserves the values of some set of graph parameters
Graph Sparsifiers
Graph Sparsification
- Spanners
- Emulators
- Small stretch spanning trees
- Vertex sparsifiers
- …
- Spectral sparsifiers
- Cut sparsifiers
Spectral Sparsification
Graph Sparsification
- Undirected graph G = (V, E); error parameter ε
- Goal: Gε = (V, Eε) with Õ(n/ε2) edges such that
for all n-dimensional vectors x, (1–ε) xT L(G) x ≤ xT L(Gε) x ≤ (1+ε) xT L(G) x
- Graph Laplacian L = D – A, where
– D = Diagonal Degree Matrix of the graph – A = Adjacency Matrix of the graph
Spectral Sparsification: Previous work
Graph Sparsification
Running time of the sparsification algorithm Number of edges in the sparsifier O(n3m) O(n/ε2) [Batson-Spielman-Srivastava ’09] O(n2m log3n + n4 log n) [Zouzias ’12] O(m logO(1) n) O(n logO(1) n/ε2) [Spielman-Teng ’04] O(m logO(1) n) O(n log n/ε2) [Spielman-Srivastava ’08] O(m log3 n) SS + [Koutis-Miller-Peng ’10, ’11] O(m log2 n) [Koutis-Levin-Peng ’12] O(m log n) O(n log3 n/ε2) [Koutis-Levin-Peng ’12] O(m) ??? ???
Spectral to Cut Sparsifiers
Graph Sparsification
- Gε = (V, Eε) is a spectral sparsifier of G = (V, E)
if for all n-dimensional vectors x, (1–ε) xT L(G) x ≤ xT L(Gε) x ≤ (1+ε) xT L(G) x
- xT L x = Σ(i, j) ϵ E (xi - xj)2
- Suppose x ϵ {0, 1}n; S = {i ϵ V: xi = 1}. Then,
xT L x = Σ(i, j) ϵ E (xi - xj)2 = Σ(i, j) ϵ (S, V - S) 1 = E(S)
Cut Sparsification
Graph Sparsification
Weight of every cut is preserved up to a multiplicative error of (1 ± Ɛ)
Cut Sparsification
- Undirected (unweighted) graph G = (V, E); error
parameter ε
- Goal: Gε = (V, Eε) with O(n log n/ε2) edges such
that for all cuts (S, V – S), (1–ε) E(S) ≤ Eε(S) ≤ (1+ε) E(S)
- Introduced by Benczur-Karger ’96
– O(m log2n)-time algorithm to find a cut sparsifier (with high probability) containing O(n log n/ε2) edges in expectation
Graph Sparsification
Graph Sparsification
Fung-Hariharan-Harvey-P.: A linear-time, i.e. O(m), algorithm that produces a cut sparsifier (whp) containing O(n log n/ε2) edges in expectation
Cut Sparsification by Sampling
- Uniformly sample all edges with prob p ≈ n/m
– Selected edge is given weight 1/p
Graph Sparsification
p ≈ 1/n; graph gets disconnected Non n
edge e with prob pe 1/pe
Sampling Probabilities
Graph Sparsification
Edge Connectivity λe = size of smallest cut containing e Belongs to a small cut Belong only to large cuts pe = log n/λe
Sampling by Edge Connectivity
- Sample edge e independently (of other edges)
with probability pe ≈ log n/λe
- If edge e is selected, it is given a weight of
1/pe in the sparsifier
- Sparsifier has O(n log n) edges in expectation
λe ≥ 1/re ΣeϵE 1/λe ≤ ΣeϵE re = n - 1
- Pr[Eε(S) ∈ (1±ε) E(S) for all cuts (S, V - S)]?
Graph Sparsification
Bounding Deviation
- Expected number of
edges in the cut ≥ log n
- Chernoff bounds:
Probability of εΔ error ≤ 1/poly(n)
- Exponential number of
cuts!
Graph Sparsification
∆ edges λe ≤ ∆, i.e. pe ≥ log n/∆
…
Bounding Deviation
- Error probability for
single cut ≤ 1/poly(n) but exp(n) cuts
- Cut projections
Categorize edges in a cut according to the value of λe (i.e., pe)
Graph Sparsification
pe = log n/n pe = 1
Bounding Deviation
- For λe ≈ Δ/k cut projection, pe = k log n/Δ
- Probability of εΔ error ≤ exp(-k log n) = n-Ω(k)
Graph Sparsification
∆ edges λe ≈ ∆ λe ≈ ∆/2 λe ≈ ∆/4
Cut Projections
Graph Sparsification
Lemma: There are ≤ nO(k) distinct (Δ, k) cut projections in cuts of size Δ
union bound on k, Δ
Theorem: Sampling edge e with probability log2 n / λe produces a cut sparsifier
Graph Sparsification
Difficulty: Edge connectivities (λe) are time-consuming to calculate (Gomory-Hu tree takes Õ(mn) time [Bhalgat-Hariharan-Kavitha-P., ’07])
Greedy Spanning Forest packing
Graph Sparsification
a b d f e g h c a b d f e g h c a b d f e g h c
T1 T2
Sampling by NI Index
Nagamochi-Ibaraki (NI) index of edge e ye = index of e in an arbitrary but fixed greedy spanning forest packing Proposed Cut Sparsification Algorithm
- Sample edge e with probability pe ≈ log2 n/ ye
- If edge e is selected, it is given a weight of 1/pe in the
sparsifier
Graph Sparsification
Sampling by NI Index: Cut preservation
Lemma: The graph Gε = (V, Eε) produced by sampling using NI indices is a cut sparsifier, i.e., with high probability, for all cuts (S, V-S) (1–ε) E(S) ≤ Eε(S) ≤ (1+ε) E(S)
– For each edge e, ye ≤ λe (if edge e is in ith forest, then its endpoints are connected by disjoint paths in the previous i-1 forests) – Now piggyback on the proof for sampling using edge connectivities
Graph Sparsification
Sampling by NI Index: Sparsification
Lemma: The sparsifier has O(n log3 n) edges in expectation
Σe∈E 1/ye = Σk |Tk|/k = (n-1) Σk 1/k = O(n log n)
Graph Sparsification
Sampling by NI Index: Running time
Lemma [Nagamochi-Ibaraki ’92]: The running time of the sampling algorithm (i.e., time taken to estimate the NI indices of all edges) is O(m)
Graph Sparsification
Graph Sparsification
We have shown: An O(m)-time algorithm that produces a cut sparsifier containing O(n log3 n) edges We had promised (see the paper): An O(m)-time algorithm that produces a cut sparsifier containing O(n log n) edges We will now show: An O(m)-time algorithm that produces a cut sparsifier containing O(n log2 n) edges
Sampling by NI Index: New Algorithm
Previous Algorithm
- Sample edge e with probability pe ≈ log2 n/ ye
- If edge e is selected, it is given a weight of 1/pe in the
sparsifier New Algorithm
- Sample edge e with probability pe ≈ log n/ ye
- If edge e is selected, it is given a weight of 1/pe in the
sparsifier
Graph Sparsification
Sampling by NI Index: New Algorithm
New Algorithm
- Sample edge e with probability pe ≈ log n/ ye
- If edge e is selected, it is given a weight of 1/pe in the
sparsifier
- Running time remains O(m)
- The expected number of edges is O(n log2 n)
- Is the sample a cut sparsifier?
[Note: We can no longer piggyback on the analysis for sampling with edge connectivity]
Graph Sparsification
Bucketing the forests
Graph Sparsification
T1 T2 T2
i-1
T2
i
T2
i+1
… … …
Fi Gi = Fi-1 + Fi
…
Properties of the bucketing
- Similarity property: All edges in Fi have sampling
probability pe ≈ log n / 2i-1 (up to a factor of 2)
- Overlap property: Every edge appears in Gi for at
most two values of i
- Connectivity property: Every edge in Fi has edge
connectivity ≥ 2i-1 in Gi
– The endpoints of the edge have 2i-1 disjoint paths between them, one in each forest, in Gi
Graph Sparsification
Analysis of a cut
Graph Sparsification
S V - S
C C XC,1 XC,2
…
XC,i
… C ∩ F1 C ∩ F2 C ∩ Fi
C YC,1 YC,2
…
YC,i
… C ∩ G1 C ∩ G2 C ∩ Gi
Input Graph G
Tail Bounds on Deviation
Graph Sparsification
S V - S
Cε Cε ZC,1 ZC,2
…
ZC,i
… Cε ∩ F1 Cε ∩ F2 Cε ∩ Fi
Sampled graph G ε
Tail Bounds on Deviation
- Need to show: whp, |C – Cε| < ε C for all cuts C
- whp, |XC,i – ZC,i| < ε XC,i for all cuts C and all i
Graph Sparsification
Lemma: whp, |XC,i – ZC,i| < εYC,i for all cuts C and all i
∑i YC,i = 2C by the
- verlap property
Tail Bounds on Deviation
- Lemma: whp, |XC,i – ZC,i| < εYC,i for all cuts C and all i
- Let Ck be cuts for which YC,i = |C ∩ Gi|= 2i+k
- By the connectivity property, every edge in XC,i is
2i-1-connected in YC,i
- By Cut Projection Counting Lemma,
There are at most n2^(i+k)/2^i = n2^k distinct XC,i in Ck
A General Framework for Graph Sparsification 31
Tail Bounds on Deviation
- Lemma: whp, |XC,i – ZC,i| < εYC,i for all cuts C and all i
- There are at most n2^k distinct XC,i in Ck
- By the similarity property + Chernoff bounds,
Pr[|XC,i - ZC,i | > ε YC,i] < exp(- 2i+k (log n / 2i)) = n–2^k union bound over distinct XC,i in Ck , all values of k and i
A General Framework for Graph Sparsification 32
Open Problems
- Linear-time spectral sparsification algorithm
- (Near)-linear time construction of O(n/ε2)-sized
cut/spectral sparsifiers
– Edge sampling has fundamental limitations (connectivity of Erdos-Renyi random graph has a probability threshold of log n/n) – Cut/spectral sparsifiers from spanning trees? [Goyal-Rademacher-Vempala ’09, Fung-Harvey ’10] – Cut/spectral sparsifiers from spanners? [Kapralov-Panigrahy ’12, Koutis ’14]
Graph Sparsification
Graph Sparsification