Implementation for Simple Spectral Graph Convolution in ICLR 2021

Related tags

Deep Learning SSGC
Overview

Simple Spectral Graph Convolutional

Overview

This repo contains an example implementation of the Simple Spectral Graph Convolutional (S^2GC) model. This code is based on SGC. We will update the code in Text Classification and Node Clustering latter.

SGC removes the nonlinearities and collapes the weight matrices in Graph Convolutional Networks (GCNs) and is essentially a linear model. However, it also cannot beat GCNs in most benchmarks. S^2GC is a new baseline method for GCNs and downstream applications.

S^2GC achieves competitive performance while saving much training time, basically the computational cost is very close to SGC.

Dataset Metric
Cora Acc: 83.0 %
Citeseer Acc: 73.6 %
Pubmed Acc: 80.6 %
Reddit F1: 95.3 %

This home repo contains the implementation for citation networks (Cora, Citeseer, and Pubmed) and social network (Reddit).

Dependencies

Our implementation works with PyTorch>=1.0.0 Install other dependencies: $ pip install -r requirement.txt

Data

We provide the citation network datasets under data/, which corresponds to the public data splits.

Usage

$ python citation_cora.py
$ python citation_citeseer.py 
$ python citation_pubmed.py 
Comments
  • Citations Hyperparameter Search

    Citations Hyperparameter Search

    Hi, I'm a researcher looking at reproducing the results of the hyperparameter search and I'm struggling to get values similar to those in the paper. The implementations here have a few errors (I'm not sure if this is to do with pytorch version updates, but I don't think so...), so I've created PR #14 which makes things runnable. However, the results it generates are significantly worse than those published. Can you provide additional details about the hyperparameter search you conducted, or guidance on where I've gone wrong?

    Thanks in advance.

    opened by jackd 11
  • Question about reproducing test accuracy on citation datasets

    Question about reproducing test accuracy on citation datasets

    Hi, I have read your paper, downloaded the code, and ran it without any changes (I follow the same hyperparameters and random seeds). But I found that I can't reproduce the accuracy reported in the README.md file.

    My results (dataset, test accuracy) are:

    cora, 82.4%
    citeseer, 73.0%
    pubmed, 80.0%
    

    My version:

    PyTorch=1.7.1 with cuda
    networkx=1.11
    numpy=1.19.2
    scipy=1.5.2
    scikit-learn=0.24.1
    hyperopt=0.1.1
    

    did I miss some information or do something wrong?

    opened by Youth-49 3
  • tuning fix + added repeats

    tuning fix + added repeats

    This PR contains 3 main changes (probably should have been 3 PRs, but I'm not particularly fussed about whether it gets accepted or not - I'm mostly opening so that I can reference it from an issue).

    • added item as per #7
    • wrapped main functionality of citations_XXX in a loop and added repeats to args_XXX
    • fixed errors with tuning_XXX

    I've also added the results of hyperparameter tuning and --tuned runs to README.md, though there seems to be some missing seed controls to make this reproducible. Note that results are significantly worse than those reported.

    opened by jackd 0
  • The pyg implement of SSGC

    The pyg implement of SSGC

    Hi, I noticed an inconsistency between the paper and this implementation. Equation 13 in the paper, x_final = alpha * x_ori + (1 - alpha) * mean(x_list); But in the line 101 of ssgc-mlp.py, x_final = alpha * x_ori + mean(x_list). Could you tell me what causes the difference?

    opened by Haldate-Yu 1
  • OGB Hyperparameters

    OGB Hyperparameters

    Hello, are there any specific hyperparameters one should use when trying to reproduce the OGB node classification results? I extended the approach from the cora, citeseer, and pubmed dataset to the OGB-arxiv dataset but only achieve ~50% accuracy and not 70% as stated in the paper. This is especially weird because the cora, citeseer, and pubmed results are all agreeing with the ones in the paper. Also, your link to the preprocessed files is not working ("https://drive.google.com/drive/u/0/my-drive").

    opened by Timob12 3
  • 20NG Training Set Reported Results Question

    20NG Training Set Reported Results Question

    For your 20NG results reported in your original paper (88.6± 0.1), was the model trained on the full public 20NG train set, of size 11314, or were the reported results generated using the training code currently in this repo here and here, which appears to exclude the validation set from the data used to train the model? (The latter would use a training set of size 10183).

    Thanks!

    opened by jharrang 3
Owner
allenhaozhu
PhD Student
allenhaozhu
This is the codebase for the ICLR 2021 paper Trajectory Prediction using Equivariant Continuous Convolution

Trajectory Prediction using Equivariant Continuous Convolution (ECCO) This is the codebase for the ICLR 2021 paper Trajectory Prediction using Equivar

Spatiotemporal Machine Learning 45 Jul 22, 2022
PyTorch implementation of spectral graph ConvNets, NIPS’16

Graph ConvNets in PyTorch October 15, 2017 Xavier Bresson http://www.ntu.edu.sg/home/xbresson https://github.com/xbresson https://twitter.com/xbresson

Xavier Bresson 287 Jan 4, 2023
Python Implementation of algorithms in Graph Mining, e.g., Recommendation, Collaborative Filtering, Community Detection, Spectral Clustering, Modularity Maximization, co-authorship networks.

Graph Mining Author: Jiayi Chen Time: April 2021 Implemented Algorithms: Network: Scrabing Data, Network Construbtion and Network Measurement (e.g., P

Jiayi Chen 3 Mar 3, 2022
Spectral Temporal Graph Neural Network (StemGNN in short) for Multivariate Time-series Forecasting

Spectral Temporal Graph Neural Network for Multivariate Time-series Forecasting This repository is the official implementation of Spectral Temporal Gr

Microsoft 306 Dec 29, 2022
Official implementation of Self-supervised Graph Attention Networks (SuperGAT), ICLR 2021.

SuperGAT Official implementation of Self-supervised Graph Attention Networks (SuperGAT). This model is presented at How to Find Your Friendly Neighbor

Dongkwan Kim 127 Dec 28, 2022
Code for HodgeNet: Learning Spectral Geometry on Triangle Meshes, in SIGGRAPH 2021.

HodgeNet | Webpage | Paper | Video HodgeNet: Learning Spectral Geometry on Triangle Meshes Dmitriy Smirnov, Justin Solomon SIGGRAPH 2021 Set-up To ins

Dima Smirnov 61 Nov 27, 2022
A Research-oriented Federated Learning Library and Benchmark Platform for Graph Neural Networks. Accepted to ICLR'2021 - DPML and MLSys'21 - GNNSys workshops.

FedGraphNN: A Federated Learning System and Benchmark for Graph Neural Networks A Research-oriented Federated Learning Library and Benchmark Platform

FedML-AI 175 Dec 1, 2022
Expressive Power of Invariant and Equivaraint Graph Neural Networks (ICLR 2021)

Expressive Power of Invariant and Equivaraint Graph Neural Networks In this repository, we show how to use powerful GNN (2-FGNN) to solve a graph alig

Marc Lelarge 36 Dec 12, 2022
Facial Action Unit Intensity Estimation via Semantic Correspondence Learning with Dynamic Graph Convolution

FAU Implementation of the paper: Facial Action Unit Intensity Estimation via Semantic Correspondence Learning with Dynamic Graph Convolution. Yingruo

Evelyn 78 Nov 29, 2022
Adaptive Graph Convolution for Point Cloud Analysis

Adaptive Graph Convolution for Point Cloud Analysis This repository contains the implementation of AdaptConv for point cloud analysis. Adaptive Graph

null 64 Dec 21, 2022
[ICCV2021] Official code for "Channel-wise Topology Refinement Graph Convolution for Skeleton-Based Action Recognition"

CTR-GCN This repo is the official implementation for Channel-wise Topology Refinement Graph Convolution for Skeleton-Based Action Recognition. The pap

Yuxin Chen 148 Dec 16, 2022
Key information extraction from invoice document with Graph Convolution Network

Key Information Extraction from Scanned Invoices Key information extraction from invoice document with Graph Convolution Network Related blog post fro

Phan Hoang 39 Dec 16, 2022
Unofficial pytorch implementation of the paper "Dynamic High-Pass Filtering and Multi-Spectral Attention for Image Super-Resolution"

DFSA Unofficial pytorch implementation of the ICCV 2021 paper "Dynamic High-Pass Filtering and Multi-Spectral Attention for Image Super-Resolution" (p

null 2 Nov 15, 2021
Implementation of Geometric Vector Perceptron, a simple circuit for 3d rotation equivariance for learning over large biomolecules, in Pytorch. Idea proposed and accepted at ICLR 2021

Geometric Vector Perceptron Implementation of Geometric Vector Perceptron, a simple circuit with 3d rotation equivariance for learning over large biom

Phil Wang 59 Nov 24, 2022
Official pytorch implementation of paper "Inception Convolution with Efficient Dilation Search" (CVPR 2021 Oral).

IC-Conv This repository is an official implementation of the paper Inception Convolution with Efficient Dilation Search. Getting Started Download Imag

Jie Liu 111 Dec 31, 2022
A PyTorch implementation of "Capsule Graph Neural Network" (ICLR 2019).

CapsGNN ⠀⠀ A PyTorch implementation of Capsule Graph Neural Network (ICLR 2019). Abstract The high-quality node embeddings learned from the Graph Neur

Benedek Rozemberczki 1.2k Jan 2, 2023
A PyTorch implementation of "Predict then Propagate: Graph Neural Networks meet Personalized PageRank" (ICLR 2019).

APPNP ⠀ A PyTorch implementation of Predict then Propagate: Graph Neural Networks meet Personalized PageRank (ICLR 2019). Abstract Neural message pass

Benedek Rozemberczki 329 Dec 30, 2022
A PyTorch implementation of "Graph Wavelet Neural Network" (ICLR 2019)

Graph Wavelet Neural Network ⠀⠀ A PyTorch implementation of Graph Wavelet Neural Network (ICLR 2019). Abstract We present graph wavelet neural network

Benedek Rozemberczki 490 Dec 16, 2022
Spectral Tensor Train Parameterization of Deep Learning Layers

Spectral Tensor Train Parameterization of Deep Learning Layers This repository is the official implementation of our AISTATS 2021 paper titled "Spectr

Anton Obukhov 12 Oct 23, 2022