Publication

Local Graph Partitioning using PageRank Vectors

Source:

FOCS, p.475 - 486 (2006)

Abstract:

A local graph partitioning algorithm finds a cut near a specified starting vertex, with a running time that depends largely on the size of the small side of the cut, rather than the size of the input graph. In this paper, we present a local partitioning algorithm using a variation of PageRank with a specified starting distribution. We derive a mixing result for PageRank vectors similar to that for random walks, and show that the ordering of the vertices produced by a PageRank vector reveals a cut with small conductance. In particular, we show that for any set C with conductance \Phiand volume k, a PageRank vector with a certain starting distribution can be used to produce a set with conductance O\left( {\sqrt {\Phi \log k} } \right). We present an improved algorithm for computing approximate PageRank vectors, which allows us to find such a set in time proportional to its size. In particular, we can find a cut with conductance at most \not o , whose small side has volume at least 2b, in time O\left( {2^b \log ^2 m/\not o^2 } \right) where m is the number of edges in the graph. By combining small sets found by this local partitioning algorithm, we obtain a cut with conductance \not o and approximately optimal balance in time O\left( {m\log ^4 m/\not o^2 } \right).