gtrick: Bag of Tricks for Graph Neural Networks.
gtrick is an easy-to-use Python package collecting tricks for Graph Neural Networks. It tests and provides powerful tricks to boost your models' performance.
Trick is all you need! (English Document | 中文介绍)
Library Highlights
- Easy-to-use: All it takes is to add a few lines of code to apply a powerful trick, with as little changes of existing code as possible.
- Verified Trick: All tricks implemented in gtrick are tested on our selected datasets. Only the tricks indeed improving model's performance can be collected by gtrick.
- Backend Free: We provide all tricks both in DGL and PyG. Whatever graph learning library you use, feel free to try it.
Installation
Note: This is a developmental release.
pip install gtrick
Quick Start
It is very easy to get start with gtrick. You can enhance your GNN model with only a few lines of code.
For more detailed examples, see Example in Trick.
Trick
Trick | Example | Task | Reference |
---|---|---|---|
VirtualNode | DGL PyG |
graph | OGB Graph Property Prediction Examples |
FLAG | DGL PyG |
node* graph |
Robust Optimization as Data Augmentation for Large-scale Graphs |
Fingerprint | DGL PyG |
molecular graph* | Extended-Connectivity Fingerprints |
Random Feature | DGL PyG |
graph* | Random Features Strengthen Graph Neural Networks |
Label Propagation | DGL PyG |
node* | Learning from Labeled and Unlabeled Datawith Label Propagation |
Correct & Smooth | DGL PyG |
node* | Combining Label Propagation And Simple Models Out-performs Graph Neural Networks |
Common Neighbors | DGL PyG |
link* | Link Prediction with Structural Information |
Resource Allocation | DGL PyG |
link* | Link Prediction with Structural Information |
Adamic Adar | DGL PyG |
link* | Link Prediction with Structural Information |
Anchor Distance | DGL PyG |
link* | Link Prediction with Structural Information |
We have tested all these tricks on selected datasets, you can find the benchmark in PyG Benchmark and DGL Benchmark.
Contributing
Please let me know if you encounter a bug or have any suggestions by filing an issue.
I welcome all contributions from bug fixes, new tricks and better examples.
There are also some trciks I'm planning to add, feel free to implement one of them for gtrick: