The Graph Mining Library

The mission of the Google Graph Mining team is to build the most scalable library for graph algorithms and analysis and apply it to a multitude of Google products. In particular, we develop tools for building similarity graphs, clustering, node classification, node embedding, training graph neural networks, graph visualization, diverse sampling and similarity ranking. For more information, see our NeurIPS'20 workshop.

This repository currently contains a collection of clustering algorithms. For our Graph Neural Network (GNN) framework, see TF-GNN (part of the TensorFlow project).

Clustering

This repository contains shared memory parallel clustering algorithms which scale to graphs with tens of billions of edges, as well as several sequential algorithms. The parallel algorithms are based on the following research papers:

This is not an officially supported Google product. For questions/comments, please create an issue on this repository.

Quickstart

  1. Install Bazel
  2. Run the example: bazel run //examples:quickstart