Project description
Scikit-Recommender
Scikit-Recommender is an open source library for researchers of recommender systems.
Highlighted Features
- Various recommendation models
- Parse arguments from command line and ini-style files
- Diverse data preprocessing
- Fast negative sampling
- Fast model evaluation
- Convenient record logging
- Flexible batch data iterator
Installation
You have three ways to use Scikit-Recommender:
- Install from PyPI
- Install from Source
- Run without Installation
Install from PyPI
Binary installers are available at the Python package index and you can install the package from pip.
pip install scikit-recommender
Install from Source
Installing from source requires Cython and the current code works well with the version 0.29.20.
To build scikit-recommender from source you need Cython:
pip install cython==0.29.20
Then, the scikit-recommender can be installed by executing:
git clone https://github.com/ZhongchuanSun/scikit-recommender.git
cd scikit-recommender
python setup.py install
Run without Installation
Alternatively, You can also run the sources without installation.
Please compile the cython codes before running:
git clone https://github.com/ZhongchuanSun/scikit-recommender.git
cd scikit-recommender
python setup.py build_ext --inplace
Usage
After installing or compiling this package, now you can run the run_skrec.py:
python run_skrec.py
You can also find examples in tutorial.ipynb.
Models
MMRec |
Implementation |
Paper |
Publication |
MGCN |
PyTorch |
Penghang Yu, et al., Multi-View Graph Convolutional Network for Multimedia Recommendation |
ACM MM 2023 |
BM3 |
PyTorch |
Xin Zhou, et al., Bootstrap Latent Representations for Multi-modal Recommendation |
WWW 2023 |
FREEDOM |
PyTorch |
Xin Zhou, et al., A Tale of Two Graphs: Freezing and Denoising Graph Structures for Multimodal Recommendation |
ACM MM 2023 |
SLMRec |
PyTorch |
Zhulin Tao, et al., Self-supervised Learning for Multimedia Recommendation |
TMM 2022 |
LATTICE |
PyTorch |
Jinghao Zhang, et al., Mining Latent Structures for Multimedia Recommendation |
ACM MM 2021 |
Recommender |
Implementation |
Paper |
Publication |
SelfCF |
PyTorch |
Xin Zhou, et al., SelfCF: A Simple Framework for Self-supervised Collaborative Filtering |
TORS 2023 |
LayerGCN |
PyTorch |
Xin Zhou, et al., Layer-refined Graph Convolutional Networks for Recommendation |
ICDE 2023 |
DENS |
PyTorch |
Riwei Lai, et al., Disentangled Negative Sampling for Collaborative Filtering |
WSDM 2023 |
LightGCL |
PyTorch |
Xuheng Cai, et al., LightGCL: Simple Yet Effective Graph Contrastive Learning for Recommendation |
ICLR 2023 |
SGAT |
TensorFlow (1.14) |
Zhongchuan Sun, et al., Sequential Graph Collaborative Filtering |
Information Sciences 2022 |
LightGCN |
PyTorch |
Xiangnan He et al., LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation. |
SIGIR 2020 |
SRGNN |
TensorFlow (1.14) |
Shu Wu et al., Session-Based Recommendation with Graph Neural Networks. |
AAAI 2019 |
HGN |
PyTorch |
Chen Ma et al., Hierarchical Gating Networks for Sequential Recommendation. |
KDD 2019 |
BERT4Rec |
TensorFlow (1.14) |
Fei Sun et al., BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representations from Transformer. |
CIKM 2019 |
SASRec |
TensorFlow (1.14) |
Wangcheng Kang et al., Self-Attentive Sequential Recommendation. |
ICDM 2018 |
GRU4RecPlus |
TensorFlow (1.14) |
Balázs Hidasi et al., Recurrent Neural Networks with Top-k Gains for Session-based Recommendations. |
CIKM 2018 |
Caser |
PyTorch |
Jiaxi Tang et al., Personalized Top-N Sequential Recommendation via Convolutional Sequence Embedding. |
WSDM 2018 |
MultiVAE |
PyTorch |
Dawen Liang, et al., Variational Autoencoders for Collaborative Filtering. |
WWW 2018 |
TransRec |
PyTorch |
Ruining He et al., Translation-based Recommendation. |
RecSys 2017 |
CML |
TensorFlow (1.14) |
Cheng-Kang Hsieh et al., Collaborative Metric Learning. |
WWW 2017 |
CDAE |
PyTorch |
Yao Wu et al., Collaborative Denoising Auto-Encoders for Top-n Recommender Systems. |
WSDM 2016 |
GRU4Rec |
TensorFlow (1.14) |
Balázs Hidasi et al., Session-based Recommendations with Recurrent Neural Networks. |
ICLR 2016 |
AOBPR |
C/Cython |
Steffen Rendle et al., Improving Pairwise Learning for Item Recommendation from Implicit Feedback. |
WSDM 2014 |
FPMC |
PyTorch |
Steffen Rendle et al., Factorizing Personalized Markov Chains for Next-Basket Recommendation. |
WWW 2010 |
BPRMF |
PyTorch |
Steffen Rendle et al., BPR: Bayesian Personalized Ranking from Implicit Feedback. |
UAI 2009 |
Pop |
Python |
Make recommendations based on item popularity. |
|
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions