PeiJieSun / NESCL

The code repository for the paper: Peijie et al., Neighborhood-Enhanced Supervised Contrastive Learning for Collaborative Filtering. IEEE TKDE, 2023.
https://arxiv.org/abs/2402.11523
MIT License
117 stars 18 forks source link
collaborative-filtering itemknn lightgcn nearest-neighbors neighborhood-recommendation self-supervised-graph-learning-for-recommendation self-supervised-learning sgl supervised-contrastive-learning userknn

PWC PWC

The Performance of All Models on the Gowalla Dataset

Rank Model Recall@20 NDCG@20 Paper Year
1 NESCL 0.1917 0.1617 Neighborhood-Enhanced Supervised Contrastive Learning for Collaborative Filtering 2024
2 BSPM-EM 0.192 0.1597 Blurring-Sharpening Process Models for Collaborative Filtering 2022
3 BSPM-LM 0.1901 0.157 Blurring-Sharpening Process Models for Collaborative Filtering 2022
4 LT-OCF 0.1875 0.1574 LT-OCF: Learnable-Time ODE-based Collaborative Filtering 2021
5 SimpleX 0.1872 0.1557 SimpleX: A Simple and Strong Baseline for Collaborative Filtering 2021
6 UltraGCN 0.1862 0.158 UltraGCN: Ultra Simplification of Graph Convolutional Networks for Recommendation 2021
7 Emb-GCN 0.1862 UltraGCN: Ultra Simplification of Graph Convolutional Networks for Recommendation 2021
8 GF-CF 0.1849 0.1518 How Powerful is Graph Convolution for Recommendation? 2021
9 LightGCN 0.183 0.1554 LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation 2020
10 NGCF 0.157 Neural Graph Collaborative Filtering 2019
  1. The code repository for the paper: Peijie Sun , Le Wu, Kun Zhang, Xiangzhi Chen, Meng Wang. Neighborhood-Enhanced Supervised Contrastive Learning for Collaborative Filtering (Accepted by TKDE).

  2. The dataset can refer to following links(Baidu Netdisk, Google Drive).

  3. The parameters files locate in config/amazon-book \ gowalla \ yelp2018 directories

  4. As we have updated the proposed model name to NESCL, its previous name is SUPCCL, it can be found in the path recbole/model/general_recommender/supccl.py

  5. To train the model, you should first prepare the training environment

  6. Then, you can execute following commands to train the model based on different datasets:

  1. The generated log files saved in log directory, and the temporal model parameters can saved in the saved directory.

If you are interested in my work, you can also pay attention to my personal website: https://www.peijiesun.com

You can cite our paper with:

@article{sun2023neighborhood,
  title={Neighborhood-Enhanced Supervised Contrastive Learning for Collaborative Filtering},
  author={Sun, Peijie and Wu, Le and Zhang, Kun and Chen, Xiangzhi and Wang, Meng},
  journal={IEEE Transactions on Knowledge and Data Engineering},
  year={2023},
  publisher={IEEE}
}