# 基于deepFM模型的点击率预估模型 以下是本例的简要目录结构及说明: ``` ├── sample_data #样例数据 ├── train ├── sample_train.txt #训练数据样例 ├── preprocess.py #数据处理程序 ├── run.sh #数据一键处理脚本 ├── download_preprocess.py #数据下载脚本 ├── get_slot_data.py #格式整理程序 ├── __init__.py ├── README.md #文档 ├── model.py #模型文件 ├── config.yaml #配置文件 ``` 注:在阅读该示例前,建议您先了解以下内容: [paddlerec入门教程](https://github.com/PaddlePaddle/PaddleRec/blob/master/README.md) ## 内容 - [模型简介](#模型简介) - [数据准备](#数据准备) - [运行环境](#运行环境) - [快速开始](#快速开始) - [模型组网](#模型组网) - [效果复现](#效果复现) - [进阶使用](#进阶使用) - [FAQ](#FAQ) ## 模型简介 `CTR(Click Through Rate)`,即点击率,是“推荐系统/计算广告”等领域的重要指标,对其进行预估是商品推送/广告投放等决策的基础。简单来说,CTR预估对每次广告的点击情况做出预测,预测用户是点击还是不点击。CTR预估模型综合考虑各种因素、特征,在大量历史数据上训练,最终对商业决策提供帮助。本模型实现了下述论文中的deepFM模型: ```text @inproceedings{guo2017deepfm, title={DeepFM: A Factorization-Machine based Neural Network for CTR Prediction}, author={Huifeng Guo, Ruiming Tang, Yunming Ye, Zhenguo Li and Xiuqiang He}, booktitle={the Twenty-Sixth International Joint Conference on Artificial Intelligence (IJCAI)}, pages={1725--1731}, year={2017} } ``` 在全量数据下模型的指标如下: | 模型 | auc | batch_size | thread_num| epoch_num| Time of each epoch | | :------| :------ | :------| :------ | :------| :------ | :------ | | deepFM | 0.8044 | 1024 | 10 | 2 | 约3.5小时 | ## 数据准备 ### 数据来源 训练及测试数据集选用[Display Advertising Challenge](https://www.kaggle.com/c/criteo-display-ad-challenge/)所用的Criteo数据集。该数据集包括两部分:训练集和测试集。训练集包含一段时间内Criteo的部分流量,测试集则对应训练数据后一天的广告点击流量。 每一行数据格式如下所示: ```bash