MD-CVAE: Mutually-Regularized Dual Collaborative Variational Auto-encoder for Recommendation Systems
The codes are associated with the following paper:
Mutually-Regularized Dual Collaborative Variational Auto-encoder for Recommendation Systems,
Yaochen Zhu and Zhenzhong Chen,
The Web Conference (WWW) 2022. [paper] [slides]
The codes are written in Python 3.6.5.
- numpy == 1.16.3
- pandas == 0.21.0
- tensorflow-gpu == 1.15.0
- tensorflow-probability == 0.8.0
The raw features of the established movielen-sub dataset can be obtained here: [Google Drive], [Baidu] (PIN:r8f0)
The processed datasets can be found here: [Google Drive], [Baidu] (PIN:l8wr)
For usage, please unzip the processed datasets and copy them into the data folder.
-
Pretrain the dual item content embedding VAE:
python pretrain_vae.py --dataset Name --split [0-9]
-
Iteratively train the collaborative and content VAEs:
python train_vae.py --dataset Name --split [0-9]
-
Evaluate the model and summarize the results into a pivot table
python predict.py --dataset Name --split [0-9]
python summarize.py
-
First, please change to the cold_start folder.
-
Download the processed data [Google Drive], [Baidu] (PIN:f4f7)
-
The way to run the codes and summarize the results is similar to the in-matrix case.
For advanced argument usage, run the code with --help argument.
@inproceedings{MDCVAE-WWW2022,
title={Mutually-Regularized Dual Collaborative Variational Auto-encoder for Recommendation Systems},
author={Zhu, Yaochen and Chen, Zhenzhong},
booktitle={Proceedings of the ACM Web Conference 2022},
year={2022},
}