PyTorch implementation of residual gated graph ConvNets, ICLR’18
Branch: master
Clone or download
Latest commit f1da7d7 Oct 24, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
data commit_0.1 Apr 24, 2018
pic commit_0.1 Apr 24, 2018
util commit_0.1 Apr 24, 2018
.gitignore commit_0.1 Apr 24, 2018
01_residual_gated_graph_convnets_subgraph_matching.ipynb fix_typo_0.1 Oct 24, 2018
environment.yml commit_0.1 Apr 24, 2018

Residual Gated Graph ConvNets

April 24, 2018

Xavier Bresson


Prototype implementation in PyTorch of the ICLR'18 paper:
An Experimental Study of Neural Networks for Variable Graphs
Xavier Bresson and Thomas Laurent
International Conference on Learning Representations, 2018
ICLR OpenReview:
ArXiv extended version: arXiv:1711.07553
ICLR Poster


The code 01_residual_gated_graph_convnets_subgraph_matching.ipynb presents an application of the residual gated graph convNets for the problem of sub-graph matching.
The code 02_residual_gated_graph_convnets_semisupervised_clustering.ipynb shows another application for the problem of semi-supervised_clustering.


# Conda installation
curl -o ~/ -O # Linux
curl -o ~/ -O # OSX
chmod +x ~/
source ~/.bashrc

# Clone GitHub repo
git clone
cd spatial_graph_convnets

# Install python libraries
conda env create -f environment.yml
conda activate graph_convnets

# Run the 2 notebooks
jupyter notebook


GeForce GTX 1080Ti

  • Sub-graph matching: 01_residual_gated_graph_convnets_subgraph_matching.ipynb, accuracy= 98.85.
  • Semi-supervised_clustering: 02_residual_gated_graph_convnets_semisupervised_clustering.ipynb, accuracy= 75.88.

When to use this algorithm?

Any problem that can be cast as analyzing a set of graphs with variable size and connectivity, and one wants to use ConvNets for this analysis.