{"id":13481121,"url":"https://github.com/PurdueMINDS/RelationalPooling","last_synced_at":"2025-03-27T11:31:50.740Z","repository":{"id":108246289,"uuid":"174362434","full_name":"PurdueMINDS/RelationalPooling","owner":"PurdueMINDS","description":null,"archived":false,"fork":false,"pushed_at":"2019-06-10T17:10:31.000Z","size":121,"stargazers_count":35,"open_issues_count":0,"forks_count":8,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-10-30T14:43:31.660Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PurdueMINDS.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-03-07T14:40:07.000Z","updated_at":"2024-01-21T10:21:04.000Z","dependencies_parsed_at":"2023-05-05T20:46:49.927Z","dependency_job_id":null,"html_url":"https://github.com/PurdueMINDS/RelationalPooling","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PurdueMINDS%2FRelationalPooling","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PurdueMINDS%2FRelationalPooling/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PurdueMINDS%2FRelationalPooling/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PurdueMINDS%2FRelationalPooling/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PurdueMINDS","download_url":"https://codeload.github.com/PurdueMINDS/RelationalPooling/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245836240,"owners_count":20680339,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-31T17:00:48.886Z","updated_at":"2025-03-27T11:31:50.430Z","avatar_url":"https://github.com/PurdueMINDS.png","language":"Python","readme":"# Relational Pooling for Graph Representations\n\n## Overview\nThis is the code associated with the paper [Relational Pooling for Graph Representations](https://arxiv.org/abs/1903.02541).\nAccepted at ICML, 2019.\n\nOur first task evaluates RP-GIN, a powerful model we propose to make Graph Isomorphism Network (GIN) [Xu et. al. 2019](https://arxiv.org/abs/1810.00826) more powerful than its corresponding WL[1] test. \nOur second set of tasks uses molecule datasets to evaluate different instantiations of RP.\n\nThe models are described in plain English in the appendix of our paper, but feel free to contact us with any questions (see below).  \n\n## Requirements\n* [PyTorch](https://www.pytorch.org)\n* Python 3\n\nFor the first set of tasks, you will need\n* SciPy\n* scikit-learn\n* docopt and schema for parsing arguments from command line\n\nFor the molecular tasks, you will need\n* [DeepChem](https://github.com/deepchem/deepchem) and its associated dependencies\n\n## Examples: How to Run\n* An example call for the synthetic tasks follows.  We trained these models on CPUs.  Please see the docstring for further details\n```\npython Run_Gin_Experiment.py --cv-fold 0 --model-type rpGin --out-weight-dir /some/path --out-log-dir /another/path/ --onehot-id-dim 10\n```\n* Now we show examples for the molecular tasks.  The Tox 21 dataset is smaller so we demonstrate with that.\nFor the molecular k-ary tasks:\n```\npython Duvenaud-kary.py 'tox_21' 20\n```\n* For the molecular RP-Duvenaud tasks:\n```\npython rp_duvenaud.py 'tox_21' 'unique_local' 0\n```\n* For the molecular RNN task:\n```\npython RNN-DFS.py 'tox_21'\n```\n\n## Data\n* The datasets for the first set of tasks are available in the Synthetic_Data directory.\n* The datasets for the molecular tasks are all available in the DeepChem package.\n\n## Questions and Contact\nPlease feel free to reach out to Ryan Murphy (murph213@purdue.edu) if you have any questions.\n\n## Citation\nIf you use this code, please consider citing our paper.  Here is the Bibtex entry:\n```\n@InProceedings{murphy19a,\n  title = \t {Relational Pooling for Graph Representations},\n  author = \t {Murphy, Ryan and Srinivasan, Balasubramaniam and Rao, Vinayak and Ribeiro, Bruno},\n  booktitle = \t {Proceedings of the 36th International Conference on Machine Learning},\n  pages = \t {4663--4673},\n  year = \t {2019},\n  editor = \t {Chaudhuri, Kamalika and Salakhutdinov, Ruslan},\n  volume = \t {97},\n  series = \t {Proceedings of Machine Learning Research},\n  address = \t {Long Beach, California, USA},\n  month = \t {09--15 Jun},\n  publisher = \t {PMLR},\n  pdf = \t {http://proceedings.mlr.press/v97/murphy19a/murphy19a.pdf},\n  url = \t {http://proceedings.mlr.press/v97/murphy19a.html}\n}\n```  ","funding_links":[],"categories":["Deep Learning"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPurdueMINDS%2FRelationalPooling","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FPurdueMINDS%2FRelationalPooling","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FPurdueMINDS%2FRelationalPooling/lists"}