下载
中文
注册
DCN-PyTorch

概述

简述

Deep & Cross Network(DCN),是谷歌和斯坦福大学在2017年提出的用于Ad Click Prediction的模型,通过结合DNN和cross network,更加高效的学习特定阶数的组合特征。相比于DNN,DCN的logloss更低,而且参数的数量将近少了一个数量级。

  • 参考实现:

    [object Object]
  • 适配昇腾 AI 处理器的实现:

    [object Object]

准备训练环境

准备环境

  • 当前模型支持的 PyTorch 版本和已知三方库依赖如下表所示。

    表 1 版本支持表

    Torch_Version 三方库依赖版本
    PyTorch 1.5 -
    PyTorch 1.8 -
  • 环境准备指导。

    请参考《Pytorch框架训练环境准备》。

  • 安装依赖。

    在模型源码包根目录下执行命令,安装模型需要的依赖。

    [object Object]

准备数据集

  1. 下载数据集。

    请用户自行获取数据集kaggle-display-advertising-challenge-dataset.tar.gz,上传到服务器任意路径下并解压,解压后文件目录结构参考如下所示。

    [object Object]

    说明: 该数据集的训练过程脚本只作为一种参考示例。

  2. 数据集预处理。

    将模型根目录下的criteo_preprocess.py拷贝到数据集目录,然后进行预处理。

    [object Object]

    运行上述脚本后,将在train.txt的同级目录下生成 train_after_preprocess_trainval_0.93.txt 和 train_after_preprocess_test_0.07.txt两个文件。

开始训练

训练模型

  1. 进入解压后的源码包根目录。

    [object Object]
  2. 运行训练脚本。

    该模型支持单机单卡训练和单机8卡训练。

    • 单机单卡训练

      启动单卡训练。

      [object Object]
    • 单机8卡训练

      启动8卡训练。

      [object Object]

    --data_path参数填写数据集路径,需写到数据集的一级目录。

    模型训练脚本参数说明如下。

    [object Object]

    训练完成后,权重文件保存在当前路径下,并输出模型训练精度和性能信息。

训练结果展示

表 2 训练结果展示表

NAME AUC FPS Epochs AMP_Type Torch_Version
NPU-1p - 4693.515 2 O1 1.8
NPU-8p 80.75 12288.429 2 O1 1.8

版本说明

变更

2023.03.09:更新readme,重新发布。

2021.07.08:首次发布。

FAQ

无。

公网地址说明

代码涉及公网地址参考 ./public_address_statement.md

使用模型资源和服务前,请您仔细阅读并理解透彻 《昇腾深度学习模型许可协议 3.0》