Official implementation of our paper HAMUR: Hyper Adapter for Multi-Domain Recommendation in CIKM 2023.
You could cite our paper if you find this repository interesting or helpful:
@misc{li2023hamur,
title={HAMUR: Hyper Adapter for Multi-Domain Recommendation},
author={Xiaopeng Li and Fan Yan and Xiangyu Zhao and Yichao Wang and Bo Chen and Huifeng Guo and Ruiming Tang},
year={2023},
eprint={2309.06217},
archivePrefix={arXiv},
primaryClass={cs.IR}
}
Source code of HAMUR: Hyper Adapter for Multi-Domain Recommendation, in Proceedings of the 32nd ACM International Conference on Information and Knowledge Management(CIKM 23').
- torch >=1.7.0
- numpy >=1.23.5
- pandas >=1.5.3
- scikit-learn >=0.23.2
In this paper, we use two datasets, Aliccp and movieLens. Dataset samples are shown in example/ranking/data.
Real Dataset download methods:
- Aliccp : Dowload address https://tianchi.aliyun.com/dataset/408.
- Movielens : The raw data precess file could be found in Torch-Rechub-ml-1m. You coud direclt dowload precessed file from https://cowtransfer.com/s/5a3ab69ebd314e.
In this repo, we offer the following models, list as follows. And their suructure are shown in the picture.
- Pure MLP as Multi-domain Backbone models.
- MLP + HAMUR
- Pure Wide & Deep as Multi-domain Backbone models.
- Wide & Deep + HUMUR
- Pure DCN as Multi-domain Backbone models.
- DCN + HUMUR
git clone https://github.com/Applied-Machine-Learning-Lab/HAMUR.git
cd examples
# For Aliccp
python run_ali_ccp_ctr_ranking_multi_domain.py --model_name mlp_adp --epoch 200 --device cpu --seed 2022
# For MovieLens
python run_movielens_rank_multi_domain.py --model_name mlp_adp --epoch 200 --device cpu --seed 2022
Our code is developed based on Torch-RecHub. Thanks to their contribution.