opeltre / gnn

Message-Passing Neural Networks

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Graph Neural Networks

This didactic repository contains example code for desiging message-passing layers on graph and hypergraph structures.

It was prepared for a datacraft state-of-the-art session on Message-Passing Neural Networks for Generation of Chemical Structures (slides).

Installation

With python 3.9.18:

$ git clone git@github.com:opeltre/gnn && cd gnn
$ pip install -r requirements.txt && pip install -e .

With python 3.12, installation of torch-scatter may fail depending on the torch version. A working requirements.txt or pyproject.toml should be uploaded!

Useful links and references

Equivariant MPNNs

GNNs

Libraries

Datasets

QM9 dataset

The QM9 dataset contains ~130k small organic molecules, its upstream url is quantum-machine.org.

An interface to QM9 ships with torch_geometric, see QM9 and examples/graph_mpnn.py

QM7 dataset

Find the QM7 dataset and its description from quantum-machine.org:

export GNN_DATA=".data"
curl http://quantum-machine.org/data/qm7.mat > $GNN_DATA/qm7.mat

About

Message-Passing Neural Networks


Languages

Language:Python 100.0%