The Power of Pivoting for Exact Clique Counting

01/19/2020
by   Shweta Jain, et al.
0

Clique counting is a fundamental task in network analysis, and even the simplest setting of 3-cliques (triangles) has been the center of much recent research. Getting the count of k-cliques for larger k is algorithmically challenging, due to the exponential blowup in the search space of large cliques. But a number of recent applications (especially for community detection or clustering) use larger clique counts. Moreover, one often desires local counts, the number of k-cliques per vertex/edge. Our main result is Pivoter, an algorithm that exactly counts the number of k-cliques, for all values of k. It is surprisingly effective in practice, and is able to get clique counts of graphs that were beyond the reach of previous work. For example, Pivoter gets all clique counts in a social network with a 100M edges within two hours on a commodity machine. Previous parallel algorithms do not terminate in days. Pivoter can also feasibly get local per-vertex and per-edge k-clique counts (for all k) for many public data sets with tens of millions of edges. To the best of our knowledge, this is the first algorithm that achieves such results. The main insight is the construction of a Succinct Clique Tree (SCT) that stores a compressed unique representation of all cliques in an input graph. It is built using a technique called pivoting, a classic approach by Bron-Kerbosch to reduce the recursion tree of backtracking algorithms for maximal cliques. Remarkably, the SCT can be built without actually enumerating all cliques, and provides a succinct data structure from which exact clique statistics (k-clique counts, local counts) can be read off efficiently.

READ FULL TEXT
research
06/24/2020

Provably and Efficiently Approximating Near-cliques using the Turán Shadow: PEANUTS

Clique and near-clique counts are important graph properties with applic...
research
11/24/2019

Efficiently Counting Vertex Orbits of All 5-vertex Subgraphs, by EVOKE

Subgraph counting is a fundamental task in network analysis. Typically, ...
research
03/06/2021

The Automatic Quasi-clique Merger algorithm (AQCM)

The Automatic Quasi-clique Merger algorithm is a new algorithm adapted f...
research
02/24/2020

Parallel Clique Counting and Peeling Algorithms

Dense subgraphs capture strong communities in social networks and entiti...
research
04/27/2021

K-Clique Counting on GPUs

Counting k-cliques in a graph is an important problem in graph analysis ...
research
05/06/2019

Learning Clique Forests

We propose a topological learning algorithm for the estimation of the co...
research
10/23/2014

Capturing spatial interdependence in image features: the counting grid, an epitomic representation for bags of features

In recent scene recognition research images or large image regions are o...

Please sign up or login with your details

Forgot password? Click here to reset