All Projects → daiquocnguyen → QGNN

daiquocnguyen / QGNN

Licence: MIT license
Quaternion Graph Neural Networks (ACML 2021) (Pytorch and Tensorflow)

Programming Languages

python
139335 projects - #7 most used programming language
C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to QGNN

Walk-Transformer
From Random Walks to Transformer for Learning Node Embeddings (ECML-PKDD 2020) (In Pytorch and Tensorflow)
Stars: ✭ 26 (-16.13%)
Mutual labels:  graph-embeddings, node-classification, graph-neural-networks, node-embeddings
3DInfomax
Making self-supervised learning work on molecules by using their 3D geometry to pre-train GNNs. Implemented in DGL and Pytorch Geometric.
Stars: ✭ 107 (+245.16%)
Mutual labels:  graph-neural-networks, graph-representation-learning
Awesome Graph Classification
A collection of important graph embedding, classification and representation learning papers with implementations.
Stars: ✭ 4,309 (+13800%)
Mutual labels:  graph-classification, graph-representation-learning
GNNLens2
Visualization tool for Graph Neural Networks
Stars: ✭ 155 (+400%)
Mutual labels:  graph-neural-networks, graph-representation-learning
walklets
A lightweight implementation of Walklets from "Don't Walk Skip! Online Learning of Multi-scale Network Embeddings" (ASONAM 2017).
Stars: ✭ 94 (+203.23%)
Mutual labels:  node-classification, graph-neural-networks
FEATHER
The reference implementation of FEATHER from the CIKM '20 paper "Characteristic Functions on Graphs: Birds of a Feather, from Statistical Descriptors to Parametric Models".
Stars: ✭ 34 (+9.68%)
Mutual labels:  graph-classification, node-classification
Ampligraph
Python library for Representation Learning on Knowledge Graphs https://docs.ampligraph.org
Stars: ✭ 1,662 (+5261.29%)
Mutual labels:  graph-embeddings, graph-representation-learning
resolutions-2019
A list of data mining and machine learning papers that I implemented in 2019.
Stars: ✭ 19 (-38.71%)
Mutual labels:  graph-classification, node-classification
EgoCNN
Code for "Distributed, Egocentric Representations of Graphs for Detecting Critical Structures" (ICML 2019)
Stars: ✭ 16 (-48.39%)
Mutual labels:  graph-embeddings, graph-neural-networks
GE-FSG
Graph Embedding via Frequent Subgraphs
Stars: ✭ 39 (+25.81%)
Mutual labels:  graph-classification, graph-representation-learning
Graph Based Deep Learning Literature
links to conference publications in graph-based deep learning
Stars: ✭ 3,428 (+10958.06%)
Mutual labels:  graph-neural-networks, graph-representation-learning
ASAP
AAAI 2020 - ASAP: Adaptive Structure Aware Pooling for Learning Hierarchical Graph Representations
Stars: ✭ 83 (+167.74%)
Mutual labels:  graph-classification, graph-neural-networks
grail
Inductive relation prediction by subgraph reasoning, ICML'20
Stars: ✭ 83 (+167.74%)
Mutual labels:  graph-neural-networks, graph-representation-learning
PDN
The official PyTorch implementation of "Pathfinder Discovery Networks for Neural Message Passing" (WebConf '21)
Stars: ✭ 44 (+41.94%)
Mutual labels:  graph-classification, node-classification
gnn-lspe
Source code for GNN-LSPE (Graph Neural Networks with Learnable Structural and Positional Representations), ICLR 2022
Stars: ✭ 165 (+432.26%)
Mutual labels:  graph-neural-networks, graph-representation-learning
awesome-efficient-gnn
Code and resources on scalable and efficient Graph Neural Networks
Stars: ✭ 498 (+1506.45%)
Mutual labels:  graph-neural-networks, graph-representation-learning
SubGNN
Subgraph Neural Networks (NeurIPS 2020)
Stars: ✭ 136 (+338.71%)
Mutual labels:  graph-neural-networks, graph-representation-learning
GNN-Recommender-Systems
An index of recommendation algorithms that are based on Graph Neural Networks.
Stars: ✭ 505 (+1529.03%)
Mutual labels:  graph-neural-networks, graph-representation-learning
GraphScope
🔨 🍇 💻 🚀 GraphScope: A One-Stop Large-Scale Graph Computing System from Alibaba 来自阿里巴巴的一站式大规模图计算系统 图分析 图查询 图机器学习
Stars: ✭ 1,899 (+6025.81%)
Mutual labels:  graph-neural-networks
Quadcopter SimCon
Quadcopter Simulation and Control. Dynamics generated with PyDy.
Stars: ✭ 84 (+170.97%)
Mutual labels:  quaternion

Quaternion Graph Neural NetworksTwitter

GitHub top languageGitHub repo size GitHub last commit GitHub forks GitHub stars GitHub

This program provides the implementation of our QGNN as described in our paper, where we propose to learn embeddings for nodes and graphs within the Quaternion space.

QGNN GNNs for knowledge graph completion

Usage

News

  • September 2021: Our paper has been accepted to ACML 2021.
  • August 2021: Release a Pytorch implementation of Gated Quaternion Graph Neural Networks.
  • July 2021: Release a Pytorch implementation of Dual Quaternion Graph Neural Networks as described in our new paper about knowledge graph embeddings.
  • June 2021: Release a Pytorch implementation of Simplifying Quaternion Graph Neural Networks.
  • December 2020: Release a Pytorch implementation (v2) of QGNN for downstream tasks.
  • November 2020: The extended abstract of our paper has been accepted to the NeurIPS 2020 Workshop on Differential Geometry meets Deep Learning (DiffGeo4DL).
  • September 2020: A new blog on Quaternion Graph Neural Networks.

Requirements

  • Python 3.7
  • Networkx 2.3
  • Scipy 1.3
  • Tensorflow 1.14 or
  • Pytorch 1.5.0 & CUDA 10.1

Training

Regarding knowledge graph completion:

SimQGNN$ python main_SimQGNN.py --dataset codex-s --num_iterations 4000 --eval_after 2000 --batch_size 1024 --lr 0.01 --emb_dim 128 --hidden_dim 128 --encoder QGNN

SimQGNN$ python main_SimQGNN.py --dataset codex-m --num_iterations 4000 --eval_after 2000 --batch_size 1024 --lr 0.005 --emb_dim 128 --hidden_dim 128 --encoder QGNN

SimQGNN$ python main_SimQGNN.py --dataset codex-l --num_iterations 2000 --eval_after 1000 --batch_size 1024 --lr 0.0001 --emb_dim 128 --hidden_dim 128 --encoder QGNN

Regarding node classification:

QGNN$ python train_node_cls.py --dataset cora --learning_rate 0.05 --hidden_size 16 --epochs 100 --fold 2

QGNN$ python train_node_cls.py --dataset citeseer --learning_rate 0.05 --hidden_size 16 --epochs 100 --fold 4

QGNN$ python train_node_cls.py --dataset pubmed --learning_rate 0.01 --hidden_size 64 --epochs 200 --fold 6

Regarding graph classification:

QGNN$ python train_graph_Sup.py --dataset IMDBBINARY --batch_size 4 --hidden_size 128 --fold_idx 2 --num_epochs 100 --num_GNN_layers 2 --learning_rate 0.0005 --model_name IMDBBINARY_bs4_hs128_fold2_k2_1

QGNN$ python train_graph_Sup.py --dataset DD --batch_size 4 --hidden_size 256 --fold_idx 5 --num_epochs 100 --num_GNN_layers 3 --learning_rate 0.0005 --model_name DD_bs4_hs256_fold5_k3_1

Cite

Please cite the paper whenever QGNN is used to produce published results or incorporated into other software:

@inproceedings{Nguyen2021QGNN,
	author={Dai Quoc Nguyen and Tu Dinh Nguyen and Dinh Phung},
	title={Quaternion Graph Neural Networks},
	booktitle={Asian Conference on Machine Learning},
	year={2021}
}

License

As a free open-source implementation, QGNN is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. All other warranties including, but not limited to, merchantability and fitness for purpose, whether express, implied, or arising by operation of law, course of dealing, or trade usage are hereby disclaimed. I believe that the programs compute what I claim they compute, but I do not guarantee this. The programs may be poorly and inconsistently documented and may contain undocumented components, features or modifications. I make no guarantee that these programs will be suitable for any application.

QGNN is licensed under the MIT License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].