Random Walk Graph Neural Networks

Overview

Random Walk Graph Neural Networks

This repository is the official implementation of Random Walk Graph Neural Networks.

Requirements

Code is written in Python 3.6 and requires:

  • PyTorch 1.5
  • scikit-learn 0.21

Datasets

Use the following link to download datasets:

https://ls11-www.cs.tu-dortmund.de/staff/morris/graphkerneldatasets

Extract the datasets into the datasets folder.

Training and Evaluation

To train and evaluate the model in the paper, run this command:

python main.py --dataset <dataset_name> 

Example

To train and evaluate the model on MUTAG, first specify the hyperparameters in the main.py file and then run:

python main.py --dataset MUTAG --use-node-labels

Results

Our model achieves the following performance on standard graph classification datasets (note that we used the evaluation procedure and same data splits as in this paper):

Model name MUTAG D&D NCI1 PROTEINS ENZYMES
SP 80.2 (± 6.5) 78.1 (± 4.1) 72.7 (± 1.4) 75.3 (± 3.8) 38.3 (± 8.0)
GR 80.8 (± 6.4) 75.4 (± 3.4) 61.8 (± 1.7) 71.6 (± 3.1) 25.1 (± 4.4)
WL 84.6 (± 8.3) 78.1 (± 2.4) 84.8 (± 2.5) 73.8 (± 4.4) 50.3 (± 5.7)
DGCNN 84.0 (± 6.7) 76.6 (± 4.3) 76.4 (± 1.7) 72.9 (± 3.5) 38.9 (± 5.7)
DiffPool 79.8 (± 7.1) 75.0 (± 3.5) 76.9 (± 1.9) 73.7 (± 3.5) 59.5 (± 5.6)
ECC 75.4 (± 6.2) 72.6 (± 4.1) 76.2 (± 1.4) 72.3 (± 3.4) 29.5 (± 8.2)
GIN 84.7 (± 6.7) 75.3 (± 2.9) 80.0 (± 1.4) 73.3 (± 4.0) 59.6 (± 4.5)
GraphSAGE 83.6 (± 9.6) 72.9 (± 2.0) 76.0 (± 1.8) 73.0 (± 4.5) 58.2 (± 6.0)
1-step RWNN 89.2 (± 4.3) 77.6 (± 4.7) 71.4 (± 1.8) 74.7 (± 3.3) 56.7 (± 5.2)
2-step RWNN 88.1 (± 4.8) 76.9 (± 4.6) 73.0 (± 2.0) 74.1 (± 2.8) 57.4 (± 4.9)
3-step RWNN 88.6 (± 4.1) 77.4 (± 4.9) 73.9 (± 1.3) 74.3 (± 3.3) 57.6 (± 6.3)
Model name IMDB-BINARY IMDB-MULTI REDDIT-BINARY REDDIT-MULTI-5K COLLAB
SP 57.7 (± 4.1) 39.8 (± 3.7) 89.0 (± 1.0) 51.1 (± 2.2) 79.9 (± 2.7)
GR 63.3 (± 2.7) 39.6 (± 3.0) 76.6 (± 3.3) 38.1 (± 2.3) 71.1 (± 1.4)
WL 72.8 (± 4.5) 51.2 (± 6.5) 74.9 (± 1.8) 49.6 (± 2.0) 78.0 (± 2.0)
DGCNN 69.2 (± 3.0) 45.6 (± 3.4) 87.8 (± 2.5) 49.2 (± 1.2) 71.2 (± 1.9)
DiffPool 68.4 (± 3.3) 45.6 (± 3.4) 89.1 (± 1.6) 53.8 (± 1.4) 68.9 (± 2.0)
ECC 67.7 (± 2.8) 43.5 (± 3.1) OOR OOR OOR
GIN 71.2 (± 3.9) 48.5 (± 3.3) 89.9 (± 1.9) 56.1 (± 1.7) 75.6 (± 2.3)
GraphSAGE 68.8 (± 4.5) 47.6 (± 3.5) 84.3 (± 1.9) 50.0 (± 1.3) 73.9 (± 1.7)
1-step RWNN 70.8 (± 4.8) 47.8 (± 3.8) 90.4 (± 1.9) 51.7 (± 1.5) 71.7 (± 2.1)
2-step RWNN 70.6 (± 4.4) 48.8 (± 2.9) 90.3 (± 1.8) 51.7 (± 1.4) 71.3 (± 2.1)
3-step RWNN 70.7 (± 3.9) 47.8 (± 3.5) 89.7 (± 1.2) 53.4 (± 1.6) 71.9 (± 2.5)

Cite

Please cite our paper if you use this code:

@inproceedings{nikolentzos2020random,
  title={Random Walk Graph Neural Networks},
  author={Nikolentzos, Giannis and Vazirgiannis, Michalis},
  booktitle={Proceedings of the 34th Conference on Neural Information Processing Systems},
  pages={16211--16222},
  year={2020}
}
Owner
Giannis Nikolentzos
Giannis Nikolentzos
A Python parser that takes the content of a text file and then reads it into variables.

Text-File-Parser A Python parser that takes the content of a text file and then reads into variables. Input.text File 1. What is your ***? 1. 18 -

Kelvin 0 Jul 26, 2021
Practical Single-Image Super-Resolution Using Look-Up Table

Practical Single-Image Super-Resolution Using Look-Up Table [Paper] Dependency Python 3.6 PyTorch glob numpy pillow tqdm tensorboardx 1. Training deep

Younghyun Jo 116 Dec 23, 2022
This repository contains code released by Google Research.

This repository contains code released by Google Research.

Google Research 26.6k Dec 31, 2022
Code for ICLR2018 paper: Improving GAN Training via Binarized Representation Entropy (BRE) Regularization - Y. Cao · W Ding · Y.C. Lui · R. Huang

code for "Improving GAN Training via Binarized Representation Entropy (BRE) Regularization" (ICLR2018 paper) paper: https://arxiv.org/abs/1805.03644 G

21 Oct 12, 2020
YOLOv3 in PyTorch > ONNX > CoreML > TFLite

This repository represents Ultralytics open-source research into future object detection methods, and incorporates lessons learned and best practices

Ultralytics 9.3k Jan 07, 2023
Learning Logic Rules for Document-Level Relation Extraction

LogiRE Learning Logic Rules for Document-Level Relation Extraction We propose to introduce logic rules to tackle the challenges of doc-level RE. Equip

41 Dec 26, 2022
Example for AUAV 2022 with obstacle avoidance.

AUAV 2022 Sample This is a sample PX4 based quadrotor path planning framework based on Ubuntu 20.04 and ROS noetic for the IEEE Autonomous UAS 2022 co

James Goppert 11 Sep 16, 2022
Dist2Dec: A Simplicial Neural Network for Homology Localization

Dist2Dec: A Simplicial Neural Network for Homology Localization

Alexandros Keros 6 Jun 12, 2022
🔊 Audio and fastai v2

Fastaudio An audio module for fastai v2. We want to help you build audio machine learning applications while minimizing the need for audio domain expe

152 Dec 28, 2022
Contrastive Learning with Non-Semantic Negatives

Contrastive Learning with Non-Semantic Negatives This repository is the official implementation of Robust Contrastive Learning Using Negative Samples

39 Jul 31, 2022
Random Erasing Data Augmentation. Experiments on CIFAR10, CIFAR100 and Fashion-MNIST

Random Erasing Data Augmentation =============================================================== black white random This code has the source code for

Zhun Zhong 654 Dec 26, 2022
Systemic Evolutionary Chemical Space Exploration for Drug Discovery

SECSE SECSE: Systemic Evolutionary Chemical Space Explorer Chemical space exploration is a major task of the hit-finding process during the pursuit of

64 Dec 16, 2022
Joint detection and tracking model named DEFT, or ``Detection Embeddings for Tracking.

DEFT: Detection Embeddings for Tracking DEFT: Detection Embeddings for Tracking, Mohamed Chaabane, Peter Zhang, J. Ross Beveridge, Stephen O'Hara

Mohamed Chaabane 253 Dec 18, 2022
Fusion-in-Decoder Distilling Knowledge from Reader to Retriever for Question Answering

This repository contains code for: Fusion-in-Decoder models Distilling Knowledge from Reader to Retriever Dependencies Python 3 PyTorch (currently tes

Meta Research 323 Dec 19, 2022
Generative Adversarial Networks(GANs)

Generative Adversarial Networks(GANs) Vanilla GAN ClusterGAN Vanilla GAN Model Structure Final Generator Structure A MLP with 2 hidden layers of hidde

Zhenbang Feng 2 Nov 05, 2021
Official implementation of the paper 'Details or Artifacts: A Locally Discriminative Learning Approach to Realistic Image Super-Resolution' in CVPR 2022

LDL Paper | Supplementary Material Details or Artifacts: A Locally Discriminative Learning Approach to Realistic Image Super-Resolution Jie Liang*, Hu

150 Dec 26, 2022
Classification Modeling: Probability of Default

Credit Risk Modeling in Python Introduction: If you've ever applied for a credit card or loan, you know that financial firms process your information

Aktham Momani 2 Nov 07, 2022
Course content and resources for the AIAIART course.

AIAIART course This repo will house the notebooks used for the AIAIART course. Part 1 (first four lessons) ran via Discord in September/October 2021.

Jonathan Whitaker 492 Jan 06, 2023
PyTorch implementation of Advantage async actor-critic Algorithms (A3C) in PyTorch

Advantage async actor-critic Algorithms (A3C) in PyTorch @inproceedings{mnih2016asynchronous, title={Asynchronous methods for deep reinforcement lea

LEI TAI 111 Dec 08, 2022
Exploring Simple Siamese Representation Learning

G-SimSiam A PyTorch implementation which refers to repo for the paper Exploring Simple Siamese Representation Learning by Xinlei Chen & Kaiming He Add

zhuyun 1 Dec 19, 2021