This repository contains PyTorch Implementation of ICDE 2022 paper:
Memorize, factorize, or be naive: Learning optimal feature interaction methods for CTR Prediction.
You can find our paper here.
Following the steps below to run our codes:
pip install -r requirements.txt
Please Download the Criteo and Avazu datasets.
- For Criteo dataset, copy the
train.txt
file underdatasets/Criteo
and rename it tofull.txt
. - For Avazu dataset, copy the
train.csv
file underdatasets/Avazu
and rename it tofull.csv
.
- For Criteo dataset, run
python preprocess/criteo.py
- For Avazu dataset, run
python preprocess/avazu.py
- For Criteo dataset, run
python learn/CriteoSearch.py
- For Avazu dataset, run
python learn/AvazuSearch.py
- For Criteo dataset, run
python learn/CriteoTrain.py --load XXX --model DNN_cart --alpha_mode 0
- For Avazu dataset, run
python learn/AvazuTrain.py --load XXX --model DNN_cart --alpha_mode 0
Here XXX
indicates the logs dictionary generated during the search stage.
- For Criteo dataset, run
python learn/CriteoTrain.py --model YYY
- For Avazu dataset, run
python learn/AvazuTrain.py --model YYY
Here YYY
could be {LR, FM, FNN, IPNN, DeepFM, PIN, Poly2, DNN_cart}
```
@article{lyu2021memorize,
title={Memorize, Factorize, or be Na$\backslash$" ive: Learning Optimal Feature Interaction Methods for CTR Prediction},
author={Lyu, Fuyuan and Tang, Xing and Guo, Huifeng and Tang, Ruiming and He, Xiuqiang and Zhang, Rui and Liu, Xue},
journal={arXiv preprint arXiv:2108.01265},
year={2021}
}
```