This repository contains the implementation of
- Is easy to implement (<50 lines of relevant code)
- Has a closed-form solution
- Has only a single hyper-parameter,
$\lambda$ - Even though simplistic, outperforms all complicated SoTA models
If you find any module of this repository helpful for your own research, please consider citing the below under-review paper. Thanks!
@article{sachdeva2022b,
title={Infinite Recommendation Networks: A Data-Centric Approach},
author={Sachdeva, Noveen and Dhaliwal, Mehak Preet and Wu, Carole-Jean and McAuley, Julian},
journal={arXiv preprint arXiv:2206.XXXXX},
year={2022}
}
Code Author: Noveen Sachdeva ([email protected])
pip install -r requirements.txt
Once you've correctly setup the python environment, the following script will download the ML-1M dataset and preprocess it for usage:
./setup.sh
- Edit the
hyper_params.py
file which lists all config parameters of$\infty$ -AE. Note that$\lambda$ is currently grid-searched inmain.py
so changing it will bring no difference, until the code is adjusted. - Finally, type the following command to train and evaluate
$\infty$ -AE:
CUDA_VISIBLE_DEVICES=0 python main.py
Below are the nDCG@10 results for the datasets used in the paper:
Dataset | PopRec | MF | NeuMF | MVAE | LightGCN | EASE |
|
---|---|---|---|---|---|---|---|
Amazon Magazine | 8.42 | 13.1 | 13.6 | 12.18 | 22.57 | 22.84 | 23.06 |
MovieLens-1M | 13.84 | 25.65 | 24.44 | 22.14 | 28.85 | 29.88 | 32.82 |
Douban | 11.63 | 13.21 | 13.33 | 16.17 | 16.68 | 19.48 | 24.94 |
Netflix | 12.34 | 12.04 | 11.48 | 20.85 | Timed out | 26.83 | 30.59* |
Note: