您好, 访客   登录/注册

基于深度残差网络的DeepFM点击率预测模型

来源:用户上传      作者:

  摘 要:广告点击率预测是互联网广告投放系统中的核心组件,用户个性化广告推荐的准确度对于提高商业系统回报率有着至关重要的作用。提出一种基于深度残差网络的DeepFM点击率预测架构,将深度残差网络引入其中的深度神经网络,解决其随着网络变深产生的梯度消失和模型性能退化问题,从而更有效地提取高阶组合特征。为了避免过拟合引入Dropout机制,并且对输入特征的预处理引入最大支持的维度参数,以避免独热码映射时出现维度灾难。基于Criteo公开数据集的研究表明,原生DeepFM的性能优于其它主流CTR预测模型,而提出的模型则具有更低的Logloss和更高的AUC,相比原生DeepFM分别改进了1.26%和0.93%。
  关键词:点击率预测;DeepFM;因子分解机;深度神经网络;深度残差网络;随机失活
  DOI:10. 11907/rjdk. 192670
  中图分类号:TP303   文献标识码:A                 文章编号:1672-7800(2020)003-0074-05
  A Click-through Rate Prediction Model of DeepFM
  Based on Deep Residual Network
  LI Yao, LI Ye
  (School of Optical-Electrical & Computer Engineering, University of Shanghai for Science &Technology, Shanghai 200093, China)
  Abstract: Advertising click-through rate prediction is a core component of Internet advertising system. The accuracy of user personalized recommendations is critical to improve the commercial income. This paper proposes a DeepFM CTR prediction model based on deep residual network. Deep residual network is introduced into the deep neural network to solve the problems of gradient disappearance and model performance degradation caused by the deepening of the network and consequently high-order feature interactions can be learned more effectively. In addition, the Dropout mechanism is adopted to prevent overfitting, and a maximum supported dimension parameter is used in the preprocessing of input features to avoid dimensional disasters. Studies on Criteo public data sets show that the native DeepFM model performs better than other mainstream CTR prediction models, while the proposed model has a lower Logloss and a higher AUC compared to native DeepFM, with improvements of 1.26% and 0.93%, respectively.
  Key Words: click-through rate prediction; DeepFM; factorization machine; deep neural network; deep residual network; dropout
  0 引言
  用戶点击率预测(Click-through Rate,CTR)研究是推荐系统中十分重要的组成模块,也是程序化广告交易框架中的智慧核心组件,学习和预测用户行为模式对个性化推荐系统、智能信息检索等领域都有着极其重要的意义。为了提升用户点击率预测准确率,过去数十年内不同的学者对这一领域提出了各种特征提取模型和用户行为学习模型。构建好的特征对于机器学习任务而言至关重要。He等[1]将决策树与Logistic回归(Logistic Regression,LR)相结合,提出梯度提升决策树(Gradient Boost Decision Tree,GBDT)模型,其研究表明,捕获用户和广告历史信息特征对于系统性能具有决定性影响;田嫦丽等[2]基于Hadoop大数据平台研究了GBDT模型的多维特征提取方法;Qiu等[3]提出了一种采用多粒度级联森林(gcForest)结合GBDT的集成学习方法,以提高CTR准确率并降低超参数调整工作量;潘书敏等[4]提出了基于用户相似度和特征分化的CTR方法,根据混合高斯分布评估用户相似度,将其划分为多个群体,针对不同群体,分别构建子模型并进行有效组合,从而挖掘同一特征对不同群体的差异化影响。   交叉组合原始特征构成新的特征是有效的特征构建方法。匡俊等[5]的研究表明基于因子分解机(Factorization Machine,FM)模型和GBDT+LR模型的预测精度优于基于LR的模型,并且将用户特征和视频特征进行交叉组合能够改进点击率预测精度[6]。FM作为一种矩阵分解模型,能够有效降低高维数据稀疏性,并且对噪声和冗余不敏感,拥有良好的可扩展性[7];邓路佳等[8]针对传统单一模型对CTR预测效果较片面、且广告日志数据存在稀疏性问题,提出一种将高斯混合模型(Gaussian Mixture Model,GMM)与因子分解机相结合的广告点击率预测模型;朱志北等[9]对训练数据采用隐狄利克雷分配模型(Latent Dirichlet Allocation,LDA)进行主题分割,用于训练多个因子分解机模型,然后依据广告属于各主题的概率对模型进行加权集成;JUAN等[10-11]引入场的概念,提出了场感知因子分解机(Field-aware Factorization Machines,FFM)模型,使得每两组特征交叉的隐向量都是独立的,取得了更好的组合效果;Pan等[12]很大程度减少了FFM模型的参数量,提高了算法计算效率,降低了存储空间要求。这些方法都取得了不错的效果,然而,FM类模型只能有效提取一阶和二阶特征,难以挖掘高阶特征信息,限制了模型性能的进一步提升。
  FM模型与深度学习模型的集成为传统模型的深度扩展提供了思路[13],深度神经网络(Deep Neural Network,DNN)通过构建深层网络架构,可以逐级提取从浅层到深层的特征,从海量数据中挖掘丰富而有价值的信息,近几年性能最显著的CTR模型均是基于深度学习而构建的[14-21]。当前最具代表性的CTR预测架构是深度因子分解机(Deep Factorizations Machine,DeepFM)模型[18],DeepFM将FM和深度神经网络(Deep Neural Network,DNN)相结合,较好地解决了高阶特征挖掘的问题。但是,传统DNN在反向传播时存在梯度逐渐消失、参数不能有效更新的问题,导致模型难以收敛。并且随着网络深度的增加,网络性能可能产生退化,即先趋于最优,然后迅速下降。针对这些问题,提出一种基于深度残差网络的DeepFM架构,并引入失活(Dropout)机制抑制过拟合。
  1 基于DeepFM的经典CTR预测模型
  1.1 嵌入编码层设计
  由于CTR预测中原始输入特征具有多样数据类型,部分维度甚至是残缺的,为了将不同类型的特征分量进行归一化映射,同时降低输入特征向量的维度,一般而言需要将输入特征先进行独热码向量映射(One Hot Vector Mapping),紧接着在极其稀疏的独热码输入层后级联嵌入编码层(Embedding Layer)。与FFM[10]一样,deepFM把具有相同性质的特征归结为一个场(Field)。如图1所示,嵌入层编码将不同场的独热码稀疏向量映射到低维向量,这样可以压缩原始数据信息,极大降低输入维度。
  其中,x为嵌入编码后的响应向量,S为独热码稀疏特征向量,M为参数矩阵,其元素为图1中连接线的权重参数,这些参数在CTR预测模型训练过程中由学习迭代收敛而得到。
  1.2 因子分解机
  在CTR预测中由于输入特征极具稀疏性,同时输入特征之间存在关联性,Rendle于2010年提出了因子分解机模型[5],旨在预测用户点击率时充分考虑一阶特征和二阶组合特征。因子分解机中的回归预测模型为:
  其中,[yFM]为预测输出,[n]为输入特征向量的维度,[xi]为第[i]维输入特征向量,[ωi]为一阶特征的权重参数,[ωij]为二阶组合特征的权重参数。该模型的二阶组合特征的待学习参数量众多,为n(n-1)/2,而由于实际应用中数据的稀疏性,使得该模型难以训练。将矩阵[{ωij}]分解为[VTV],其中矩阵[V]为:
  其中,[vi]为与[xi]关联的k维隐向量,[<vi,vj>]描述了两个互异特征分量[xi]和[xj]之间的相互关系。通过这种因子分解,模型的时间复杂度降低为[O(nk)]。
  1.3 深度神经网络架构
  DeepFM预测模型引入了DNN对嵌入编码后的特征向量[x]进行全连接层级联,建立一个回归或者分类模型,图2给出了一个典型的DNN模型,其每一个神经元的输出为上一层神经元的线性加权值作非线性映射之后的响应,即对于[l+1]层神经元而言,其输出响应值为:
  其中,[w(l)]、[a(l)]和[b(l)]分别表示第[l]层的权重矩阵、第[l]层神经元的输出响应、连接第[l]层和第[l+1]层的偏置值向量。[φ(?)]为非线性映射函数,常用如下Sigmoid函数或ReLU函数。
  2 基于深度残差网络的DeepFM架构
  DeepFM模型架构的FM具有一阶特征和二阶组合特征的建模能力,而DNN负责对高阶特征进行提取。但是由于DNN模型是逐步级联的,当全连接层数量增加后,会产生冗余的连接层,此时冗余层由于学习了不是恒等映射的参数而造成网络性能退化。同时,随着网络层数的增大,梯度回傳迭代时可能产生梯度弥散,出现难以收敛的窘境。因此,将深度残差网络(Deep Residual Network,DRN)[22]引入到DeepFM模型中(DRN-DeepFM),其架构如图3所示,其中DNN模块每两层增加一个跳变(shortcut)连接,构成一个残差块。通过引入残差结构,将低阶的特征与高阶的选通相加,其相加的权重参数由模型训练过程中学习得到。最后在Fusion层将FM和DNN的预测结果进行融合并作概率归一化映射。
  其中,非线性映射函数[f(?)]为Sigmoid函数,[β]为折衷系数。   2.1 残差网络层设计
  图4给出了残差网络级联的基本方式,全连接层的输出响应F(x)为高阶组合特征的表征,它与更低阶的组合特征(如x)加权组合后再作非线性映射,其机制类似于FM中一阶和二阶组合特征的关系,不过残差网络刻画的是高阶和更高阶之间的线性组合。因此,基于残差网络的DNN结合FM可以对用户数据的一阶、二阶以及高阶组合特征进行回归建模,更有利于挖掘数据之间的关联性。
  2.2 Dropout机制
  为了防止在CTR预测训练过程中出现过拟合现象,在DNN模型的全连接层引入Dropout机制[23]。如图5 全连接层中防止过拟合的随机失活机制所示,在训练过程中每一个神经元以概率p保留其激活状态,这样得到一个期望输出为:
  在测试时神经元总是激活,但其连接权重采用概率p进行加权。
  Dropout强迫单一神经元和随机挑选出来的其它神经元共同工作,减弱神经元节点间的共适应性(Co-adapting),在测试时则可以获得相当于对多个剪枝(Thinned)网络取平均的效果,从而显著降低过拟合,增强泛化能力[23]。
  3 独热码映射
  CTR预测中的原始输入可能包括不同的数据类型,如数值型、枚举型、哈希值等;为了对异构的数据规整化,同时避免特征工程的繁琐过程,将其转化为独热码是最常用的有效手段,然而当遇到某些维度特征分布极其分散的情况下,会导致转化后的独热码向量极其稀疏。为了避免枚举类型或者哈希值型在独热码映射时出现维度灾难,在独热码生成过程中引入一个最大支持维度参数[Q]。例如,统计数据集中某一个哈希值类型的维度数据,并建立原始数据与发生频数的字典映射关系为:
  其中,[ρi]为第i个不同的哈希值,[Ci]为其发生的频数,T为哈希可能取值的总数量。当[TQ]时,只需要将独热码向量中索引A(A为[ρi]在所有可能取值中的排序索引)处取值为1即可。当[TQ]时,对发生的频数[Ci]进行二次映射,构建新的字典映射表,直至其维度小于[Q]为止。
  4 实验结果与分析
  4.1 Criteo数据集
  为了验证所提出的CTR预测模型的性能,选取Criteo公开数据集进行评估,该数据集中包括了4.5亿多用户点击事件记录,数据类型有数值型和哈希值两大类,其维度分别为13维和26维,正负样本占比分别为22.912 5%和77.087 5%,根据7∶1的比例将此数据集划分为训练数据集和测试数据集。
  4.2 CTR预测性能评价指标
  CTR预测性能评估指标使用了二元交叉熵损失函数Logloss以及AUC(Area Under Curve)。Logloss定义为:
  其中,N为测试集上样本总数量,[y(i)]和[y(i)]分别为测试集合上第i个样本的类别真值和预测用户点击的概率值。
  AUC的定义为ROC(Receiver Operating Characteristic)曲线下坐标轴所闭包的区域面积为:
  其中,[fpr]为假阳率。不同分类阈值下假阳率不同,通过变化分类阈值,可以得到不同假陽率下的真阳率曲线,即ROC。
  4.3 实验
  基于Tensorflow对CTR预测模型进行开发实现,图6给出了Tensorboard中对模型结构和数据流图的可视化,从图中可以看出嵌入编码层、FM层、DNN层、Fusion层均有参数需要学习,由Adam优化器进行迭代求解。
  4.3.1 实验设置
  为了降低样本排列顺序对最终模型训练后的性能影响,首先对数据集中的样本进行随机化洗牌,并将带有标签的数据集D划分为两部分,即训练数据集[Dtrain]和测试数据集[Dtest]。实验中Batch尺寸为128,学习速率为0.001,嵌入编码层尺度为8,[β=1.0],独热码映射时的最大支持维度为450。首先分别对矩阵分解超参数k、随机失活的概率p、自适应残差DNN全连接层数的影响进行研究,选取最优参数,然后将本文方法与主流CTR预测模型进行对比。
  4.3.2 超参数影响研究
  表1给出了矩阵分解超参数k对AUC的影响。可以看出,随着k的增大,测试集上的AUC越来越好,说明二阶组合特征所覆盖的用户信息越来越丰富,在[k=16]时,测试集AUC值趋于饱和,为0.808 1。表2给出了随机失活概率p和自适应残差DNN的全连接层数对AUC的影响。可以观察到,当随机失活概率逐渐增大,测试集上的AUC性能先逐渐变优,但是当失活概率超过0.3时,测试集AUC性能开始下降。这是由于当失活的神经元过多时,有效的神经元数量不足以学习表征CTR用户的特征信息。由表2中还可以看出,随着DNN中全连接层数的增加,测试集AUC逐渐升高并趋于饱和,当全连接层数为4时,测试集AUC值开始饱和,即为0.808 1。实验结果表明,矩阵分解超参数k、随机失活的概率p、自适应残差DNN全连接层数的选择对于模型的泛化性能均有重要影响。
  4.3.3 模型性能评估
  根据表1和表2实验结果,矩阵分解超参数k取16,DNN全连接层数取4,Dropout机制随机失活概率取30%。
  图7给出了训练过程中Logloss值和CTR预测准确度随迭代次数收敛图,在模型迭代55个Epoch时,其Logloss下降收敛至0.417 3,分类精确度达到了82.521%。图8给出了最优k、全连接层数和失活概率下不同Epoch下的整个测试集合上Logloss值和准确度分布图,可以看出在模型训练迭代到23个Epoch时,其测试集性能表现最优,Logloss值为0.445 17,准确度收敛至80.752%,后期由于网络参数在训练集上出现了过度优化,产生过拟合,导致性能有所下降。图9给出了测试集上AUC值随着Epoch迭代次数的分布图,其在第23个Epoch后达到最大值0.808 1。   为了对比不同模型之间的性能,表3给出了与目前主流CTR预测模型在Criteo数据集上的Logloss值和AUC值对比结果。可以看出,DeepFM的性能优于其它主流CTR预测模型,而DRN-DeepFM的Logloss与AUC值则比DeepFM分别改进了1.26%和0.93%,这归功于对DNN引入深度残差网络可以更好地对用户点击事件中的高阶特征进行抽象建模。
  5 结语
  提出了一种基于深度残差网络的DeepFM点击率预测架构,将深度残差网络引入DNN模型,解决DNN随着网络变深产生的梯度消失和模型性能退化问题,从而更有效地提取高阶组合特征。此外,为了避免过拟合引入Dropout机制,并且对输入特征的预处理引入最大支持维度参数,以避免独热码映射时出现维度灾难。基于Criteo公开数据集的研究表明,相比众多主流CTR预测模型,本文提出的DRN-DeepFM模型具有更低的Logloss和更优越的AUC性能。未来将在所提预测架构下对不同场之间的交互建模开展进一步研究。
  参考文献:
  [1]HE X R,PAN J F,JIN O,et al.Practical lessons from predicting clicks on ads at Facebook[C]. Proceedings of the Eighth International Workshop on Data Mining for Online Advertising,2014: 1-9.
  [2]田嫦丽, 张珣, 潘博, 等. 互联网广告点击率预估模型中特征提取方法的研究与实现[J]. 计算机应用研究,2017,34(2): 334-338.
  [3]QIU X K,YUAN Z,LIU G N. ETCF: An Ensemble Model for CTR Prediction[C]. 2018 15th International Conference on Service Systems and Service Management (ICSSSM),2018: 1-5.
  [4]潘书敏,颜娜,谢瑾奎,等. 基于用户相似度和特征分化的广告点击率预测研究[J]. 计算机科学, 2017, 44(2): 283-289.
  [5]匡俊,唐卫红,陈雷慧,等. 基于特征工程的视频点击率预测算法[J]. 华东师范大学学报(自然科学版),2018,(3): 77-87.
  [6]RENDLE S.Factorization machines[C]. 2010 IEEE International Conference on Data Mining. IEEE, 2010: 995-1000.
  [7]赵衎衎,张良富,张静,等. 因子分解机模型研究综述[J]. 软件学报,2019,30(3): 799-821.
  [8]邓路佳,刘平山. 基于GMM-FMs的广告点击率预测研究[J].  计算机工程, 2018, 45(5): 128-132.
  [9]朱志北,李斌,劉学军,等. 基于LDA的互联网广告点击率预测研究[J]. 计算机应用研究,2016,33(4): 979-982.
  [10]JUAN Y C,ZHUANG Y,CHIN W S,et al.Field-aware factorization machines for CTR prediction[C]. Proceedings of the 10th ACM Conference on Recommender Systems,2016: 43-50.
  [11]JUAN Y C,LEFORTIER D, CHAPELLE O. Field-aware factorization machines in a real-world online advertising system[C].  Proceedings of the 26th International Conference on World Wide Web Companion. International World Wide Web Conferences Steering Committee, 2017: 680-688.
  [12]PAN J W,XU J,RUIZ A L,et al. Field-weighted factorization machines for click-through rate prediction in display advertising[C].  Proceedings of the 2018 World Wide Web Conference. International World Wide Web Conferences Steering Committee,2018:1349-1357.
  [13]燕彩蓉, 周灵杰, 张青龙, 等.  因子分解机模型的宽度和深度扩展研究[J].  软件学报, 2019, 30(3): 822-844.
  [14]张志强, 周勇, 谢晓芹, 等.  基于特征学习的广告点击率预估技术研究[J].  计算机学报, 2016, 39(4): 780-794.
  [15]ZHANG W N,DU T M,WANG J.Deep learning over multi-field categorical data[C]. European conference on information retrieval. Springer, Cham, 2016: 45-57.   [16]QU Y R,CAI H,REN K,et al.Product-based neural networks for user response prediction[C]. 2016 IEEE 16th International Conference on Data Mining,2016: 1149-1154.
  [17]CHENG H T,KOC L,HARMSEN J,et al.Wide & deep learning for recommender systems[C]. Proceedings of the 1st workshop on deep learning for recommender systems,2016: 7-10.
  [18]GUO H F,TANG R M,YE Y M,et al.DeepFM: a Factorization-Machine Based Neural Network for CTR Prediction[C]. Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence,201:1-8.
  [19]ZHOU G R,MOU N,FAN Y,et al.Deep interest evolution network for click-through rate prediction[C]. Proceedings of the AAAI Conference on Artificial Intelligence,2019, 33: 5941-5948.
  [20]GAN M X,XIAO K J.R-RNN: extracting user recent behavior sequence for click-through rate prediction[J].  IEEE Access, 2019, 7: 111767-111777.
  [21]SUN F,LIU J,WU J,et al. BERT4Rec: sequential recommendation with bidirectional encoder representations from transformer[DB/OL]. arXiv preprint arXiv: 1904.06690, 2019.
  [22]HE K M,ZhANG X Y,REN S Q,et al.Deep residual learning for image recognition[C]. Proceedings of the IEEE conference on computer vision and pattern recognition,2016: 770-778.
  [23]SRIVASTAVA N,HINTON G,KRIZHEVSKY A,et al. Dropout: a simple way to prevent neural networks from overfitting[J]. The journal of machine learning research, 2014, 15(1): 1929-1958.
  (責任编辑:孙 娟)
  收稿日期:2019-11-28
  作者简介:李遥(1993-),男,上海理工大学光电信息与计算机工程学院硕士研究生,研究方向为深度学习、推荐系统;李烨(1974-),男,博士,上海理工大学光电信息与计算机工程学院高级工程师,研究方向为机器学习、移动通信。
转载注明来源:https://www.xzbu.com/8/view-15217388.htm