RecBole-GNN is a library built upon PyTorch and RecBole for reproducing and developing recommendation algorithms based on graph neural networks (GNNs). Our library includes algorithms covering three major categories:
- General Recommendation with user-item interaction graphs;
- Sequential Recommendation with session/sequence graphs;
- Social Recommendation with social networks.
- Easy-to-use and unified API: Our library shares unified API and input (atomic files) as RecBole.
- Efficient and reusable graph processing: We provide highly efficient and reusable basic datasets, dataloaders and layers for graph processing and learning.
- Extensive graph library: Graph neural networks from widely-used library like PyG are incorporated. Recently proposed graph algorithms can be easily equipped and compared with existing methods.
recbole>=1.0.0
pyg>=2.0.4
pytorch>=1.7.0
python>=3.7.0
With the source code, you can use the provided script for initial usage of our library:
python run_recbole_gnn.py
If you want to change the models or datasets, just run the script by setting additional command parameters:
python run_recbole_gnn.py -m [model] -d [dataset]
We list currently supported models according to category:
General Recommendation:
- NGCF from Wang et al.: Neural Graph Collaborative Filtering (SIGIR 2019).
- LightGCN from He et al.: LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation (SIGIR 2020).
- SGL from Wu et al.: Self-supervised Graph Learning for Recommendation (SIGIR 2021).
- HMLET from Kong et al.: Linear, or Non-Linear, That is the Question! (WSDM 2022).
- NCL from Lin et al.: Improving Graph Collaborative Filtering with Neighborhood-enriched Contrastive Learning (TheWebConf 2022).
- SimGCL from Yu et al.: Are Graph Augmentations Necessary? Simple Graph Contrastive Learning for Recommendation (SIGIR 2022).
Sequential Recommendation:
- SR-GNN from Wu et al.: Session-based Recommendation with Graph Neural Networks (AAAI 2019).
- GC-SAN from Xu et al.: Graph Contextualized Self-Attention Network for Session-based Recommendation (IJCAI 2019).
- NISER+ from Gupta et al.: NISER: Normalized Item and Session Representations to Handle Popularity Bias (GRLA, CIKM 2019 workshop).
- LESSR from Chen et al.: Handling Information Loss of Graph Neural Networks for Session-based Recommendation (KDD 2020).
- TAGNN from Yu et al.: TAGNN: Target Attentive Graph Neural Networks for Session-based Recommendation (SIGIR 2020 short).
- GCE-GNN from Wang et al.: Global Context Enhanced Graph Neural Networks for Session-based Recommendation (SIGIR 2020).
- SGNN-HN from Pan et al.: Star Graph Neural Networks for Session-based Recommendation (CIKM 2020).
Social Recommendation:
- DiffNet from Wu et al.: A Neural Influence Diffusion Model for Social Recommendation (SIGIR 2019).
- MHCN from Yu et al.: Self-Supervised Multi-Channel Hypergraph Convolutional Network for Social Recommendation (WWW 2021).
- SEPT from Yu et al.: Socially-Aware Self-Supervised Tri-Training for Recommendation (KDD 2021).
We carefully tune the hyper-parameters of the implemented models of each research field and release the corresponding leaderboards for reference:
- General recommendation on
MovieLens-1M
dataset; - Sequential recommendation on
Diginetica
dataset; - Social recommendation on
LastFM
dataset;
With the sequential/session graphs preprocessing technique, as well as efficient GNN layers, we speed up the training process of our sequential recommenders a lot.
RecBole-GNN is developed and maintained by members from RUCAIBox, the main developers are Yupeng Hou (@hyp1231), Lanling Xu (@Sherry-XLL) and Changxin Tian (@ChangxinTian).
The implementation is based on the open-source recommendation library RecBole.
Please cite the following paper as the reference if you use our code or processed datasets.
@inproceedings{zhao2021recbole,
title={Recbole: Towards a unified, comprehensive and efficient framework for recommendation algorithms},
author={Wayne Xin Zhao and Shanlei Mu and Yupeng Hou and Zihan Lin and Kaiyuan Li and Yushuo Chen and Yujie Lu and Hui Wang and Changxin Tian and Xingyu Pan and Yingqian Min and Zhichao Feng and Xinyan Fan and Xu Chen and Pengfei Wang and Wendi Ji and Yaliang Li and Xiaoling Wang and Ji-Rong Wen},
booktitle={{CIKM}},
year={2021}
}