Skip to content
No description, website, or topics provided.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
GIN
Logs First Mar 7, 2019
MoleculeTasks
Synthetic_Data
README.md
Run_Gin_Experiment.py minor changes May 14, 2019
training_utils.py

README.md

Relational Pooling for Graph Representations

Overview

This is the code associated with the paper Relational Pooling for Graph Representations. Accepted at ICML, 2019.

Our first task evaluates RP-GIN, a powerful model we propose to make Graph Isomorphism Network (GIN) Xu et. al. 2019 more powerful than its corresponding WL[1] test. Our second set of tasks uses molecule datasets to evaluate different instantiations of RP.

The models are described in plain English in the appendix of our paper, but feel free to contact us with any questions (see below).

Requirements

For the first set of tasks, you will need

  • SciPy
  • scikit-learn
  • docopt and schema for parsing arguments from command line

For the molecular tasks, you will need

  • DeepChem and its associated dependencies

Examples: How to Run

  • An example call for the synthetic tasks follows. We trained these models on CPUs. Please see the docstring for further details
python Run_Gin_Experiment.py --cv-fold 0 --model-type rpGin --out-weight-dir /some/path --out-log-dir /another/path/ --onehot-id-dim 10
  • Now we show examples for the molecular tasks. The Tox 21 dataset is smaller so we demonstrate with that. For the molecular k-ary tasks:
python Duvenaud-kary.py 'tox_21' 20
  • For the molecular RP-Duvenaud tasks:
python rp_duvenaud.py 'tox_21' 'unique_local' 0
  • For the molecular RNN task:
python RNN-DFS.py 'tox_21'

Data

  • The datasets for the first set of tasks are available in the Synthetic_Data directory.
  • The datasets for the molecular tasks are all available in the DeepChem package.

Questions and Contact

Please feel free to reach out to Ryan Murphy (murph213@purdue.edu) if you have any questions.

Citation

If you use this code, please consider citing our paper. Here is the Bibtex entry:

@InProceedings{murphy19a,
  title = 	 {Relational Pooling for Graph Representations},
  author = 	 {Murphy, Ryan and Srinivasan, Balasubramaniam and Rao, Vinayak and Ribeiro, Bruno},
  booktitle = 	 {Proceedings of the 36th International Conference on Machine Learning},
  pages = 	 {4663--4673},
  year = 	 {2019},
  editor = 	 {Chaudhuri, Kamalika and Salakhutdinov, Ruslan},
  volume = 	 {97},
  series = 	 {Proceedings of Machine Learning Research},
  address = 	 {Long Beach, California, USA},
  month = 	 {09--15 Jun},
  publisher = 	 {PMLR},
  pdf = 	 {http://proceedings.mlr.press/v97/murphy19a/murphy19a.pdf},
  url = 	 {http://proceedings.mlr.press/v97/murphy19a.html}
}
You can’t perform that action at this time.