This repository is the official implementation of paper
Nhu-Thuat Tran and Hady W. Lauw. 2024. Learning Multi-Faceted Prototypical User Interests. In Proceedings of 12th International Conference on Learning Representations (ICLR'24), Vienna, Austria, May 7-11, 2024.
- Anaconda: 4.12.0
- Python: 3.7.5
- OS: MacOS
Prepare the data as samples, i.e., tab-separated csv format. part1, part2, part3
are training, validation and test splits, respectively.
For more information on data format, please visit RecBole v1.1 documentation.
To create virtual environment
conda create --prefix ./myenv python=3.7.5 -y
Then activate environment
conda activate ./myenv
To install requirements
pip install -r requirements.txt
-
Create a YAML config file under
configs
folder as samples. -
Prepare
run.sh
file as follows
python run_facetvae.py --config_file <your_config_file> --device_id <ID of GPU machine>
- To run training and evaluation
bash run.sh
The default setting of RecBole 1.1 is to exclude user historical interactions in training and validation sets when evaluating on test set. However, some existing baselines only exclude user historical interactions in training set when evaluating on test set. Thus, for fair comparison, after installing RecBole, change line 264 RecBole/recbole/data/utils.py to
test_sampler = sampler.set_phase('train')
test_sampler.phase = 'test'
If you find our work useful for your research, please cite our paper as
@inproceedings{FacetVAE,
title={Learning Multi-Faceted Prototypical User Interests},
author={Nhu-Thuat Tran and Hady W. Lauw},
booktitle={The Twelfth International Conference on Learning Representations},
year={2024},
url={https://openreview.net/forum?id=MzjiMxlWab}
}