欢迎访问一起赢论文辅导网
本站动态
联系我们
 
 
 
 
 
 
 
 
 
 
 
QQ:3949358033

工作时间:9:00-24:00
SCI期刊论文
当前位置:首页 > SCI期刊论文
基于融合结构的在线广告点击率预测模型
来源:一起赢论文网     日期:2020-03-03     浏览数:1360     【 字体:

 bedding layer for DPSN,where nodes come from not only the embedding vector but alsothe weight of each feature,which are both pre-trained by FM model.To our best knowledge,this is the first attempt to improve the prediction performance by adding few weight nodes in theembedding layer.Furthermore,a simplified analysis of the parameter complexity is given;meanwhile,the convergence of the DPSN model is analyzed and proved.We evaluate the predictionperformance of the proposed model based on two real-world data sets,iPinYou and Criteo,byusing LogLoss and AUC metrics.In the first and second experiments,we verify the convergence ofthe DPSN model and illustrate the performance improvements of FNN and PNN by adding theweight nodes of each feature in the embedding layer.In the third experiment,we analyze theinfluences of different model parameters on the prediction performance of DPSN,including thenumber of hidden layers,hidden layer nodes,activation function,and embedded vector dimension.The fourth experiment is used to evaluate the effects of the new embedding layer on the predictionperformance of the DPSN model.The fifth and sixth experiments respectively compare theinfluences of different architectures and negative sampling ratios on DPSN prediction performance.The last experiment is to compare the performance of the DPSN model with other typical CTRprediction models,and the experimental results demonstrate that the new model has betterperformance than major stat-of-the-art models on LogLoss metrics and AUC metrics.Keywords click-through rate;logistic regression;factorization machine;deep neural network;hybrid network1 引 言随着互联网的广泛普及以及大数据技术的快速发展,广告商利用互联网平台进行广告精准营销成为可能.与传统广告相比,在线广告在覆盖范围、灵活性、针对性、成本和效果评估等方面拥有得天独厚的优势,而 亿 产业[1].在线广告的主要目标之一是在给定预算的情况下,最大化广告商的收益,例如最大化广告的点击次数或者转换次数[2].因此,在线广告的一个重要环节是对将广告投放到一个曝光机会(ad impression)的用户点击概率进行预测,应尽可能将广告投放到预测点击率高的曝光机会,这就是点击率(Click-ThroughRate,CTR)预测问题.CTR预测是一个典型的回归问题.目前工业界应用最广泛的预测方法 (LogisticRegression,LR)来学习 CTR 预测模型[2-4].LR 的优点是简单、非常容易实现大规模实时并行处理,但是线性模型的学习能力有限,不能捕获高阶特征携带的信息(非线性信息)[5],从而限制了 LR 的预测性能.为此文献[6]提出可以利用 Poly2模型[7]来进行CTR 预测,该模型不仅考虑了一阶特征携带的信息,而且考虑了二阶特征组合携带的信息,但是由于CTR预测模型的输入特征通常是经过独热(one-hot)编码[8]后的高维稀疏二值化特征向量,将特征进行两两组合的计算复杂度会变得非常大,导致学习效率大幅降低.因此在工业界,更多采用的是特征工程来完成手动的特征组合工作,以捕获特征间的高阶信息.近几年,非线性模型在 CTR 预测中逐渐 获得关注.例如因子分解机模型(Factorization Machine,FM)[9-10]通过将高维稀疏特征映射到低维稠密向量中,并通过向量内积的方式来学习特征两两之间的隐含信息,从而大幅减少了特征两两组合导致的计算复杂度;FM 的缺陷在于每个特征都只学习一个隐含向量,在与其它特征进行组合时,同一个特征产生的影响力是相同的,而事实上当与不同特征域的特征组合时,隐含向 量可能表现 出不同的 分布.为此,文献[6]进一步提出了特征域相关的因子分解机模型FFM(Field-aware Factorization Machines),其基本思想是将特征分割为若干域,每个特征将针对不同特征域学习不同的隐含向量,利用 FFM 方案,作者分别在 Criteo和 Avazu举办的全球 CTR 预测大赛中获得了冠军[6].Poly2、FM、FFM 都是在 LR基础上增加对二阶特征组合的权重 动学习的模7期 刘梦娟等:基于融合结构的在线广告点击率预测模型1751,Facebook的研究人员提出了另一种筛选特征和特征组 合的 方式,称为 GBDT+LR 方案[11],该方案利用 GBDT(Gradient Boost DecisionTree)来帮助筛选有区分度的特征和组合特征,作为LR模型的输入,从而增强 LR的非线性学习能力.图 1 DPSN 采用的融合结构深度学习在计算机视觉[12]、语音识别[13]、自然语言处理[14]等领域取得巨大成功,其在探索特征间高阶隐含信息的能力也被 应用 CTR 预测中.文献 [5]提 FNN(Factorization Machine sup-ported Neural Network)模型,该模型利用一个带嵌入层 (Embedding layer)的 (DeepNeural Network,DNN)来完成点击率预测,其特点是通过FM 模型预先训练得到每个特征域的稠密隐含向量,将隐含向量作为 DNN 的输入进行训练.文献[15]仍然使用 DNN 来预测点击率,不同之处在于 DNN 的结构中引入了一个 Product层,DNN 的输入单元不仅包括每个特征域的隐含向量,还包括任意两个特征域向量的积运算,这种方案称为 PNN(Product-based Neural Network).FNN 和PNN 充分利用了 DNN 对特征高阶隐含信息的表示能力,但忽略了一阶特征携带的信息,而实验证明一阶特征对于 CTR 预测也是非常重要的,为此 Google的研究人员在文献[16]中提出一种深度学习融合结构 Wide &Deep,该结构将线性模型和深度学习模型进行巧妙地融合,不仅考虑了低阶特征携带的信息,也考虑了高阶特征之间的交互信息,因 FNN PNN 性能.文献[17]在 Wide &Deep的基础上,将线性模型(Wide)替换为FM 模型,从而提出 DeepFM.本文借鉴 Wide &Deep的思路,设计了一个基于融合结 CTR 模型,称为 DPSN(Deep&Product supported StackingNetwork),如 示.该 Deep Network、Product Network和Stacking Network三部分组成,其 Deep Network和 Product Network分 于学习特征 示,Deep Network是 简单 DNN,Product Network PNN 在DNN 的输入 置增 Product层;最 过Stacking Network将 合训练,以有效捕获不同特征表示之间的 关系,从 而得到最终的 CTR预测值.与已有的深 度学习方 案类似,DPSN 中也 层,用 始高维稀疏的二值化特征映射为固定维度的低维 稠密向量,作为 Deep Network和 Product Network的共同输入.为了验证 DPSN 的预测性能,本文利用iPinYou和 Criteo的公开数据集完成了大量实验,2751 计  算  机  学  报 2019年LogLoss和 AUC 上,DPSN 够比传统的点击率预测模型以及已有的基 于深度学习的预测模型获得更好的性能.2 相关工作相比于传统 习,DNN 方面表现出 力[5],因此,近 DNN 用于 CTR预测已经成为一种研究 趋势.本节将对几种典型的基于 DNN CTR 预测模型进行介绍和对比.在此之前,首 先对 CTR 测模型 的预处理方法 DNN 法进行简单介绍[5,18].在 CTR预测中,使用的特征主要是分类特征(categorical features),例如用户的性别(Gender)、所在的城市(City)等,分类特征不能直接用于预测计算,因此通常使用独热(one-hot)编码对分类特征 进行预处理,例如 Gender特 征有两种可能取值(Female/Male),因此 Gender特征可编码为2比特,[0,1]表示 Female,[1,0]表示 Male;City特征有三种可能取值(Beijing/Shanghai/Chengdu),因此 City特征可编码为3比特,分别对应[0,0,1],[0,1,0],[1,0,0].例如,一个位于北京的男性用户,其编码后的原始特征向量为[1,0烐烏 烑]Gender=Male[0,0,1烐烏 烑]City=Beijing.在 CTR 预测中,通常将独热编码后的每个比特称为一个特征,例如[1,0]中第一个比特表示男性特征,第二个比特表示女性特征,样本中出现的特征取值为1,其余取值为0.因此对于一个样本,编码后的特征向量是一个超高维度的稀疏向量,如果将该特征向量直接输入到 DNN 中会使得需要学习的参数非常多,产生巨大的计算开销.因此在基于 DNN的 CTR 预测模型中,通常会在输入层和第一个隐藏层之间增加一个嵌入层,用于降低 DNN 的输入单元数.这里引入了特征域(field)和嵌入向量(embeddingvector)的概念,首先将编码后的特征按照其物理属性划分为若干特征域,例如[b1,b2]表示 Gender特征域,[b1,b2,b3]表示 City特征域,在每个样本中,每个特征域中只有一个特征的值为1,其余为0.假设特征域c在整个样本集中有 种取值可能,则独热编码后的表示如式(1),c是一个由二值化元素组成的向量,每个元素bi∈{0,1}.c= b1,b2,…,b( )M,∑Mi=1bi=1 (1)如前所述,为了减少 DNN 中的输入单元数,在基于 DNN 的 CTR 预测模型中,需要将独热编码后的每个特征映射为一个固定维度的嵌入向量,再将所有嵌入向量拼接起来作为输入.假设独热编码后的特征数为n,每个嵌入向量的维度为 D,特征的嵌入向量v可以写为一个矩阵,如式(2)所示.v=v1v2v熿燀燄n燅=v11v21… vD1v12v22… vD2   v1nv2n… vD熿燀燄n燅(2)对于一个样本,由于属于相同特征域的特征只有1个有取值,因此 DNN 模型的输入单元数为 N×D,这里 N 表示特征向量中特征域的个数.图2展示了将特征映射为嵌入向量作为输入的一个示例.假设独热编码后的样本特征为[1,0,0,0,1],其中前两个比特为 Gender特征域,后三个比特为 City特征域,嵌入向量的维度为2,可将男性特征和 Beijing特征映射为两个嵌入向量,假设为[0.2,0.8]和[0.6,0.4],最后将两个嵌入向量拼接起来作为输入,因此映射后的嵌入单元的数量为4.需要说明的是不同的特征对应的嵌入向量是不同的,例如 Male和 Female分别对应的是不同的嵌入向量.此外,如果样本中包含有数值特征,在 CTR 预测中通常 将数值特 征利用分箱技术转化为分类特征,再按照分类特征的预处理方法来编码.图 2 嵌入向量的示例本节将详细介绍几种比较典型的基于 DNN 的CTR预测模型,各种模型的结构如图3和图4所示.图3(a)是 FNN 模型[5],它是一个采用因子分解机模型 FM 预先初始化嵌入向量的前馈神经网络,其特点是嵌入的特征域向量是预先训练的,因此可以大幅降低 DNN 参数训练的计算复杂度.图3(b)是PNN 模型[15],不同于 FNN,它在 Embedding layer和第一个隐藏层之间增加了一个 Product layer,以捕捉高阶特征之间的相互作用.根据 product操作的不同类型,有三种变化:IPNN、OPNN、PNN*,其中IPNN 表示任意两个特征域的嵌入向量做内积,7期 刘梦娟等:基于融合结构的在线广告点击率预测模型37512018-04-29;在线出 版 日 期:2019-01-25.本 课 题 得 到 国 家 自 然 科 学 基 金 (61202445,61502087)、中 央 高 校 基 本 业 务 费 项 目(ZYGX2016J096)资助.刘梦娟,博士,副教授,主要研究方向为数据挖掘、广告计算、机器学习.E-mail:mjliu@uestc.edu.cn.曾贵川,硕士研究生,主要研究方向为广告计算、机器学习.岳 威,硕士研究生,主要研究方向为广告计算、机器学习.刘 瑶,博士,副教授,主要研究方向为数据挖掘、机器学习.秦志光,博士,教授,博士生导师,主要研究领域为数据挖掘、网络安全.基于融合结构的在线广告点击率预测模型刘梦娟 曾贵川 岳 威 刘 瑶 秦志光(电子科技大学信息与软件工程学院 成都 610054)摘 要 点击率预测作为推荐系统和在线广告的关键环节,在学术界和工业界均受到了极大的关注.论文首先对几种典型的点击率预测模型进行研究,然后探索了基于融合结构的深度学习方法,并在此基础上提出一种基于融合结构的点击率预测模型,该模型能够灵活融合不同结构的深度神经网络来分别学习原始高维稀疏特征的高阶表示,从而使点击率预测模型能够利用更丰富的高阶特征信息.论文利用真实数据集来评价模型的预测性能,实验结果显示,基于融合结构的深度学习预测模型,能够比传统的点击率预测模型以及最新的基于深度学习的预测模型获得更好的性能.关键词 点击率预测;逻辑回归;因子分解机;深度神经网络;融合结构中图法分类号 TP18   DOI号 10.11897/SP.J.1016.2019.01570A Hybrid Network Based CTR Prediction Model for Online AdvertisingLIU Meng-Juan ZENG Gui-Chuan YUE Wei LIU Yao QIN Zhi-Guang(Department of Information and Software Engineering,University of Electronic Science and Technology of China,Chengdu 610054)Abstract  As the key component of recommender system and online advertising,the click-throughrate(CTR)prediction has received great attention in both the academia and the industry.The mostcommon approaches to CTR prediction are regarding it as a regression prediction task in machinelearning.At beginning,simple models like logistic regression(LR)and factorization machine(FM)are used to do predictions,however the prediction performances are not so good because onlylow-order feature interactions are explored.Therefore,models with stronger ability of featurerepresentation learning are developed,for example,a Factorization-machine supported NeuralNetwork(FNN)and a Product-based Neural Network(PNN),which are promising to exploitdeep neural networks to learn sophisticated and selective feature interactions.The major downsideof FNN and PNN is that they focus more on high-order feature interactions while capture littlelow-order interactions.In order to make full use of low-and high-order feature interactions,somehybrid architectures are proposed,containing both a shallow component and a deep component.In this paper,we firstly study several typical CTR prediction models,especially the deep learningmodels based on hybrid architectures,to describe the development process of CTR prediction;and then,inspired by existing works,a new click-through rate prediction model based on a hybridnetwork is proposed—DPSN(Deep &Product supported Stacking Network).The new model canintegrate different deep neural networks(DNNs)to learn the high-order representation of originalhigh-dimensional sparse features respectively,which enables the prediction model to take advantageof more abundant information of high-order feature interactions.In addition,we also design a图 3 FNN 模型和 PNN 模型的结构图 4 两种典型的融合结构OPNN 表示任意两个 特 征域的嵌 入 向 量做外 积,PNN*表示将内积和外积的输出结果拼接起来.不同于 FNN,PNN 在嵌入层的输入中不仅考虑了一阶特征的嵌入向量,还考虑了任意两个特征嵌入向量之间的组合操作.这里 FNN 模型和 PNN 模型忽略了一阶特征的相互作用.为此 Google提出一种能够同时考虑低阶和高阶特征相互作用的融合结构 Wide&Deep[16],如图4(a)所示,该结构将线性模型和 DNN 结合起来联合训练,相比于单独的线性模型和深度学习模型,融合结构的预测性能有一定提升,但是其 Wide部分仍然依赖于特征工程.文献[17]提出的 DeepFM模型重新设计了融合结构,如图4(b)所示,该结构将 FM 模型和 DNN 结合起来联合训练,优点是不需要特征工程支持,同时也可以学习低阶和高阶特征的相互作用.表1展示了几种典型基于 DNN 的 CTR 预测模型与 DPSN 的特点对比.分析发现几种典型方案均选择了前馈神经网络来学习高阶特征的表示,在网络结构上均在第一个隐藏层(Hidden layer)之前加入了嵌入层,其中 FNN、PNN 以及 Wide &Deep和 DeepFM 的 Deep 部 分 的 输 入 只 依 赖 于 嵌 入 向量;而在低阶部分,Wide &Deep输入的是原始特征和交叉积的变换特征,DeepFM 输入的是原始特征及嵌 入 向 量 的 内 积.基 于 上 述 分 析,本 文 提 出 的DPSN 模型采用了与 Wide &Deep和 DeepFM 类似的融合结构,其特点是利用两个不同的前馈神经网络来分别学习特征之间的高阶表示,通过 StackingNetwork将两个前馈网络输出的特征域高阶表示拼接起来作为一个新的 DNN 输入进行 CTR 预测.此外,DPSN 不同于其它深度学习模型之处在于嵌入层的设计,除了包括每个特征的嵌入向量,还包括特征的一阶权重,作为对嵌入向量表示的补充.表 1 基于 DNN 的 CTR 预测模型的特点FNN PNN  DPSN  Wide&Deep  DeepFM特征工程 × × × √ ×低阶特征 × × × √ √高阶特征 √ √ √ √ √嵌入层 √ √ √ √ √网络结构 DNN DNN 3个DNN LR+DNN FM+DNN嵌入向量训练 预训练嵌入向量 嵌入向量作为整体训练4751 计  算  机  学  报 2019年合结构的 CTR 预测模型本节将详细介绍论文提出的 DPSN 模型,如图1所示.首先介绍模型设计的动机;然后按照由底向上的顺序逐一介绍模型的组成,包括:(1)嵌入层,着重介绍从原始输入特征到嵌入层一阶特征权重单元和嵌入向量单元的映射方法;(2)Deep Network,前馈神经网络,用于学习输入仅为一阶特征相关信息的高阶 特征表达;(3)Product Network,前馈神经网络,用于学习输入增加了二阶交叉特征的高阶特征表达;(4)Stacking Network,前馈神经网络,用于拼接前两个 DNN 的输出,并进一步挖掘不同的高阶特征表达之间的交叉信息;在此基础上,介绍模型参数的学习算法,并对模型的参数复杂度给出了简化的理论分析;最后分析和证明了 DPSN 模型的收敛性.3.1 设计动机本文在设计 DPSN 模型时,主要受到两个方面的启发.一是 FNN 和 PNN 采用 FM 模型进行预训练,从而得到每个特征的嵌入向量,这里认为嵌入向量携带了对应特征的重要信息,因此可以在嵌入层采用嵌入向量来替代原始特征.而 FM 模型中不仅可以学到特征的嵌入向量,还可以学到一阶特征在预测 CTR 时对应的权重,如3.2节的式(3)所示,这里一阶特征的权重也携带了反 映该特征的重要信息,而在目前已有的基于 DNN 的预测模型中,都只考虑了每个特征对应的嵌入向量,而忽略了一阶特征的权重.因此,本文尝试将一阶特征的权重也作为信息单元,引入到嵌入层,并在后续实验中验证该设计的有效性,在嵌入层中加入一阶特征权重单元的FNN 和PNN 方案都显著优于只考虑嵌入向量单元的方案.第二个启发是 Wide&Deep和 DeepFM 的融合结构,这两个方案采用的都是“深度模型+浅层模型”的结构,将样本原始特征分别输入到两个不同的模型学习不同的特征表达,然后拼接起来联合学习,完成最终的 CTR 预测,其基 本思路是在最终预测时比单一深度学习模型增加更多的有效信息.受这一思想启发,本文设计出一种“深度模型+深度模型”的结构,将经过预处理后的嵌入层单元分别输入到两个不同结构的 DNN 中,一个 DNN 只考虑一阶特征的信息作为输入进行高阶交叉特征的探索,另一个DNN 同时考虑一阶和二阶组合特征的信息作为输入,进行高阶交叉特征的探索,从而得到更多不同的高阶特征的组合模式,提供给最终的 CTR 预测.在后续实验中,论文也通过单一结构和融合结构的对比实验,验证了该设计的有效性.下面将按照由底向上的顺序介绍本文提出的 DPSN 模型包含的 各组成部分.3.2 嵌入层如前所述,CTR 预测中使用的原始特征通常是超高维度的稀疏向量,如果将其直接输入到 DNN中,将会产生非常巨大的计算开销,因此将每个原始特征映射为固定维度的嵌入向量将会大幅降低输入单元的个数.在 DPSN 中设 计 了 一 个 不 同 于 FNN和 PNN 的嵌入层,其中的单元除了每个特征对应的嵌入向量还包括一阶特征的权重,如图5所示.图 5 嵌入层的结构在 CTR 预测中,可利用的特征主要来自 于 三个方面:广告特征(如广告创意、广告内容类别等)、上下文特征(如网页内容主题、广告位的位置及尺寸等)、用户特征(如用户类别标签、地理位置、人口统计特征等)[19].假设独热编码后的原始特征向量中有 N 个特征域,第i个特征域中有 M 个特征,每个特征对应的嵌入向量的维度为 D,则对应的嵌入层中有 N 个嵌入向量,每个嵌入向量中有 D 个单元节点,由于同一个样本中每个特征域只可能出现一个特征,因此嵌入层中的一阶特征的权重单元数为N,嵌入层中总的单元数为(D+1)×N.类似于 FM模型,在 DPSN 的嵌入层每个特征都有自己的一阶权重,因此特征域i的 M 个特征的一阶权重可用向量wei=[wei1,wei2,…,weiM]表示.每个特征的嵌入向量和一阶权重可以作为模型参数进行端到端的统一训练(例如 Wide &Deep和DeepFM),也可以采用其它 CTR 预测模型进行预先训练.在本文提出的 DPSN 中采用 FM 模型[10]在训练集上进行预训练,从而得到每个特征的嵌入向量和一阶权重,公式如式(3)所示,这里f(we,v,xi)表示基于样本i的点击率预测值,xi表示样本i特征向量,xi=(x1i,x2i,…xni),n表示独热编码后的特征数,xki和xli分别表示样本i的第k 个特征的值和第l7期 刘梦娟等:基于融合结构的在线广告点击率预测模型5751vk和vl表示第k 个特征和第l个特征的隐含向量.用训练好的 FM 模型中每个特征的一阶权重初始化嵌入层的一阶权重节点的值,用 FM 模型中每个特征的隐含向量初始 化嵌入向量节点的值.仍然沿用图 2 的例子,假设训练好的 FM 模型中,男性特征的一阶权重为0.4,北京特征的一阶权重为0.2,则嵌入层的映射结果如图6所示,包括6个单元节点.f(we,v,xi)=weTxi+∑nk=1∑nl=k+1(〈vk·vl〉·xki·xli)(3)其中,〈vk·vl〉=∑Dd=1vDkv Dl.图 6 嵌入层映射的例子3.3 Deep NetworkDeep Network是一个包含多个隐层的前馈神经网络,用于学习输入仅为一阶特征相关的高阶特征之间的交互信息,如图1所示.在 Deep Network中,嵌入层的每个节点与第1个隐层的每个节点全连接,第1个隐层中每个节点的输出值采用式(4)计算,其中h1∈Rn1是第1个隐层节点的输出向量,n1是第1个隐层的节点数,W0表示嵌入层节点到第1个隐层节点的连接权重,W0∈Rn1×n0,n0是嵌入层的节点数,x0∈Rn0是嵌入层的输出向量,b0表示第 1个隐层的偏置向量,b0∈Rn1,隐层节点的激活函数f(·)采用 ReLU[20].h1=f(W0x0+b0) (4)Deep Network是一个前馈深度神经网络,每个隐层的节点数和隐层的层数可调整,隐层之间每个节点均采用全连接,第l+1个隐层节点的输出值计算如式(5)所示,Wl表示第l 个隐层节点到第l+1个隐层节点的连接权重,Wl∈Rnl+1×nl,nl和nl+1分别是第l个隐层和第l+1个隐层的节点数,hl∈Rnl是第l个隐层节点的输出值,bl表示第l+1个隐层的偏置向量,bl∈Rnl+1,隐层中所有节点的激活函数f(·)都采用 ReLU;最后1个隐层节点的输出值将直接作为输入传 输到 Stacking Network 输入层的部分节点;hl+1=f(Wlhl+bl) (5)需要说明的是,由于在 DNN 隐层节点的计算中是按“节点”进行交叉组合,因此输入如果只考虑特征的嵌入向量,将会使交叉组合不是按照每个“特征”来完成,各嵌入向量的每个单元节点将作为一个独立的输入值,只有一阶特征对应的权重才反映的是一个完整特征信息,示意如图7所示.因此,直观地认为一阶特征的权重值在隐层节点的交叉组合中将起着更为有意义的作用.图 7 嵌入层到隐层节点的连接示意3.4 Product NetworkProduct Network也是一个包含多个隐层的前馈神经网络,不同于 Deep Network,它在嵌入层和第1个隐层之间增加一个 Product层,如图1所示,该层不仅包含嵌入层的单元节点,还包含任意两个特征的嵌入向量进行两两内积的单元节点,计算如式(6)所示,这里pi,k表示嵌入向量vi和vk的内积,因此在 Product层有 N×(N-1)/2个 Product节点,这里 N 表示嵌入层嵌入向量的个数;Product层的节点与第1个隐层的节点全连接,隐层中每个节点的激活函数f(·)都采用 ReLU,因此每个节点输出值的计算方法与 Deep Network相同;在 ProductNetwork中最后1个隐层节点的输出值将直接作为输入传输到Stacking Network输入层的部分节点.pi,k=〈vi·vk〉= v1iv2i… vD[ ]iv1kv2kvD熿燀燄k燅=∑Dt=1vtivtk(6)由于 DNN 中,是按照“节点”进行加权求和来完成特征交叉,没有考虑“叉积”这样的组合方式,因此在 Product Network中输入信息不仅包含了一阶特征相关的信息,还包含了二阶特征的“叉积”信息,从而使输入 DNN 的信息更丰富,可以得到更多的不同于 Deep Network的高阶特征组合模式.3.5 Stacking NetworkStacking Network主要用于将 Deep Network和 Product Network输出的高阶特征表示拼接起来作为一个新的 DNN 的输入,使得整个模型能够联6751 计  算  机  学  报 2019年数训练.为了进一步挖掘不同高阶特征之间的交叉信息,DPSN 中将拼接后的特征向量输入到一个新的 DNN 中,如图1所示.这里隐层的数量是可调整的,当隐层数为0时,Stacking Network就简化为拼接各高阶特征,然后进行预测输出的功能.实际上,后续实验结果说明,增加少量隐层确实可以在一定程度上提升预测性能.假设Stacking Network的输入层有(nD+nP)个节点,这里nD表示 Deep Network的最后1个隐层的节点数,nP表示 Product Network的最后1个隐层的节点数,输入层的节点与第1个隐层的节点全连接,隐层之间的节点都采用全连接,隐层中每个节点的激活函数f(·)都采用 ReLU,因此隐层中每个节点的输出值都采用式(5)计算,最后输出节点用于计 算 预 测 点 击 率,输 出 节 点 的 激 活 函 数 采 用Sigmoid函数[21],预测点击率p的计算公式如式(7)所示,这里WSL表示最后1个隐层到输出节点的权重向量,WSL∈RnL,hSL表示最后 1 个隐层的输出向量,hSL∈RnL,bSL表示输出节点的偏置.p=Sigmoid(WSLhSL+bSL) (7)3.6 模型训练为了对融合结构中的权重和偏置参数进行学习,本论文使用对数损失函数作为目标函数来优化模型参数,如式(8)所示,  L(θ)=-1N∑Ni=1(yilogp(xi,θ)+(1-yi)log(1-p(xi,θ)))+λ2w22(8)这里 L(θ)是 对数损失函 数,θ 表示融合 结构的参数,p(xi,θ)表示根据样本i的特征向量xi基于融合结构当前参数θ 计算得到的预测点击率,yi表示样本i中关于点击行为的真实标记,有点击行为为1,无点击行为为 0,N 表示 训 练 数 据 集 中 的 样 本 数,λ w22/2表示 L2正则化项[22],用于防止过拟合,λ是正则化参数,由 手动设 置,w 是融合 结 构 中 所 有节点之间 边 的 权 重 向 量;参 数 学 习 的 目 标 是 求 解使对数损失函数最小的融合结构参数.论文使用随机梯度下降(Stochastic Gradient Descent,SGD)算法[23-24]来求解式(8)中的融合结构参数θ,包括节点之间边的权重和节点的偏置向量.这里对梯度下降求解的基本过程及涉及的参数进行简要介绍.SGD 是利用了 Taylor展开式的一阶近似推导出来的,将损失函数L(θ)在初值的邻域内展 开,将 导 数 L/θ 记 为 关 于θ 的 梯 度 向 量g(θ),得到如下表达式:L(θ)≈L(θ0)+g(θ0)T(θ-θ0)s.t.L(θ)<L(θ0)g(θ0)T(θ-θ0)<0 (9)为了尽快降低损失函数的值,梯度向量g(θ0)和参数差值向量(θ-θ0)的夹角需要达到180°,即沿负梯度方向下降.由此可以得到参数更新规则:θ-θ0=-ηg(θ0)θ=θ0-ηg(θ0) (10)其中,η是一个比较小的正实数,也称为学习率或步长.根据式(9)、式(10)得到的参数θ 能使得损失函数的值减小,因而更接近最优解.将式(10)的结果记为θ1,按照相同的方式迭代地更新参数,参数最终会达到损失函数的极小值点,因此参数更新规则如式(11)所示,t=0,1,2,…代表迭代轮次.θt+1=θt+Δθt=θt-ηg(θt) (11)本节的最后对融合结构的参数复杂度进行一个简化的理论分析.假设 N 为特征域个数,D 为嵌入向量的维度,所有 DNN 网络都有相同的隐层数 L,且每个隐层的节点数相同,记为 m,则:(1)Deep Network的参数个数为(N×D+N)×m+m+(m2+m)×(L-1).(2)Product Network的参数个数为N×D+N+N×(N-1)( )2×m+m+(m2+m)×(L-1).(3)Stacking Network的参数个数为2×m2+2×m+(m2+m)×(L-1)+1.(4)融合结构的参数复杂度为(3L-1)m2+(3L+1)m+(2D+1.5+0.5 N)Nm+1.因此,在 DPSN 模型中,对模型参数影响 最 大的是每个隐层的神经元节点数,按照 m 的2次方倍增长.此 外,每 个 DNN 的 隐 层 数 也 会 影 响 模 型 参数,而嵌入向量维度和特征域数目通常只会影响从嵌入层到第一个隐层的模型参数.后续实验将会逐一对各个超参数对模型预测性能及参数复杂度的影响进行分析.3.7 模型的收敛性分析如3.6节所述,本文使用对数损失函数来最小化模型误差,因此模型的目标函数如式(8)所示:L(θ)=-1N∑Ni=1(yilogp(xi,θ)+(1-yi)log(1-p(xi,θ)))+λ2w22.目前已有大量的研究[25-26]证明,只要目标函数是凸函数,在数据线性不可分或有正则项时,使用梯度下降法求解模型参数一定能够收敛,即在梯度下降法7期 刘梦娟等:基于融合结构的在线广告点击率预测模型7751该数据集包含45 840 616条真实展示广告的特征值与点击反馈,来自于 Criteo公司连续7天的交易流量.为了减小数据规模及保持正负样本的比例平衡,该数据集已经对样本进行了负采样,使得点击率提升至约25.6%.数据集包含13个数值特征以及26个分类特征,并且为了保护隐私,所有分类特征的值均被 Hash到32位的字符串上,因此这些特征现实含义是无法知晓的,同时有些特征存在缺失值.在本文的实验中,首先对缺失值进行了填补,然后按照5∶1的比例将样本按顺序划分为训练集和测试集.此外,为了降低实验的时间开销与空间开销,在不显著降低模型性能的前提下,本文弃用了5个特征取值过多的分类特征,即只使用了13个数值特征和21个分类特征,并且将数值特征转化为分类特征进行预处理.表3展示了本文实验采用的 Criteo数据集的样本统计情况.目前,iPinYou和 Criteo数据集已逐步成为学术界衡量 CTR 预测模型性能的基准数据集[5,15,17].表 3 Criteo数据集的统计情况样本数 点击数 实际点击率 特征域数 特征数 嵌入层单元数训练集 38202927  9789350  0.25624  34  569354  374测试集 7637689  1956088  0.25611  34  569354  374实验使用 AUC[28]和 LogLoss[29]作为主要的评价指标,其中 AUC是 ROC曲线下的面积,AUC值越大,说明 CTR预测模型的性能越好;LogLoss是交叉熵损失,LogLoss越小,说明预测模型的性能越好.4.2 对比模型为了进行对比,本文选择了7种具有代表性的CTR预测模型,包括 LR[2]、FM[10]、GBDT+LR[11]以及最新的 FNN[5]、PNN[15]、Wide &Deep[16]、DeepFM[17]等深度学习模型.所有对比模型都是基于TensorFlow①实现的,对于包含深度神经网络的方案,为了简化,设置每个隐层节点的激活函数为 ReLU,输出节点的激活函数为 Sigmoid,最优化参数求解均采用随机梯度下降法.此外,论文还对比了一种用投票机制做模型融合的方案,即分别用 FNN 和 PNN 学习模型得到 CTR 预测值,再将两个 CTR 预测值按各自0.5的权重求和作为融合模型的 CTR 预测值,这种融合方案记为 FNN+PNN.4.3 性能评价及分析本节将通过 7 组实 验对 DPSN 模型的性能进行评价,并对实验结果展开讨论.其中第1组实验用于验证 DPSN 模型的收敛性;第2组实验用于说明增加一阶特征权重信息对 FNN 和 PNN 模型预测性能的提升;第3组实验是分析不同的模型超参对DPSN 模型预测性能的影响,包括:隐层数、隐层节点数、激活函数、嵌入向量维度;第4组实验用于评价本文提出的新的嵌入层结构对 DPSN 模型预测性能的影响;第5组实验是对比单一结构和融合结构对模型预测性能的影响;第6组实验用于分析负采样对预测性能的影响;第7组实验是将 DPSN 模型与其它典型 CTR 预测模型的 性能进 行 对比.论文在 GitHub上分享了本文的所有实验代码和实验结果②.4.3.1 DPSN 模型的收敛性验证本节将通过实验验 证 DPSN 融合模型 的收敛性.图8展示了 DPSN 融合结构在iPinYou的1458、3386训练集上 LogLoss随着训练轮次逐渐降低直至收敛 的 过 程,学 习 率 均 设 为 0.008.观 察 发 现,1458在232轮次收敛,3386在175轮次收敛,3386的收敛速度快于1458.由此可证明 DPSN 融合结构由于采用了交叉熵损失作为损失函数,因此能够保证模型的收敛性.为了获得更快的收敛速度,在后续实验中将学习率设置为0.1.图 8 DPSN 在iPinYou 1458和3386上的训练过程4.3.2 一阶特征权重节点对预测性能的影响DPSN 的一个重要改进是将FM 预训练的一阶特征的权重作为特征的信息加入到嵌入层,实验 27期 刘梦娟等:基于融合结构的在线广告点击率预测模型9751①②TensorFlow.https://www.tensorflow.org/本文实验代码和实验结果.https://github.com/mjliu-adver-tising都是沿着梯度下降的方向更新参数,逐步逼近目标函数的极小值.因此,只需证明式(8)是一个凸函数,即可证明模型收敛.在证明之前首先介绍两个定理.定理1. 凸函数的复合还是凸函数.定理2. 凸函数的正线性组合还是凸函数.证明.首先对于式(8)中的 L2正则项w22=∑ni=1w2i,显然,该项是处处可微分的凸函数,其中 w 是模型的权重向量.因此只需证明式(8)中的对数损失函数是凸函数,记为J(θ)=-1N∑Ni=1(yilogp(xi,θ)+ (1-yi)log(1-p(xi,θ))) (12)由于 DPSN 模 型 使 用 Sigmoid 函 数 作 为 最 终 输 出单元的激活函数,因此式(12)中样本i的输出预测值为p(xi,θ)=11+e-vi(13)其中vi是样本i 最终输出节点的值.根据定理1与定理2,证明J(θ)是凸函数,只需证明式(14)是凸函数,F(v)=-log11+e-( )v=log(1+e-v) (14)对式(14)求二阶导数,得:F′(v)=-e-v1+e-v,F″(v)=ev(1+ev)20.由于二阶导数非负,F(v)是关于v 的凸函数,从而证明式(12)为凸函数.因此得证式(8)为凸函数.4 实验及性能评价为了对提 出的 DPSN 模型的 预测性能进 行 评价,本文基于iPinYou① 和 Criteo② 两个公开数据集完成了大量的实验.本节首先对数据集及评价指标进行介绍,然后描述了8种作为对比的典型 CTR 预测模型,最后通过7组实验展示 DPSN 模型的预测性能,并对实验结果展开讨论.4.1 iPinYou和 Criteo数据集及评价指标本文实验采用的iPinYou数据集是iPinYou公司在2013年发布的一个真实广告投放的数据集,包括曝光机会、竞价、点击、转化四类日志,其中曝光机会和点击日志可用于点击率预测.具体来说,在本文实验中,每个样本对应了一次广告曝光,特征信息包括用户的相关信息(例如用户类别标签、使用的浏览器、IP地址、所在区域、城市等)、广告位的相关信息(例如广告位的宽度、高度、可见性、所在网站的域名以及 URL等),投放的广告ID,以及最终的点击情况(用户点击为1,无点击为0).考虑到 CTR 预测模型是针对 每 个 广 告 商 的,因 此 本 论 文 采 用 了 其 中Advertiser ID 分别为 1458、3386、3358、3427的四个广告商的投放和点击日志分别建立 了四个数 据集.所有实验均采用前7天的样本作为训练集,采用后3天的样本作为测试集,表2展示了四个数据集中样本的统计情况.表 2 iPinYou四个数据集的统计情况样本数 点击数 实际点击率(10-3) 特征域数 特征数 嵌入层单元数Advertiser ID=1458训练集 3083056  2454  0.79596  16  560802  176测试集 614638  515  0.83789  16  560802  176Advertiser ID=3386训练集 2847802  2076  0.72898  16  556884  176测试集 545421  445  0.81588  16  556884  176Advertiser ID=3358训练集 1742104  1358  0.77952  16  491700  176测试集 300928  260  0.86399  16  491700  176Advertiser ID=3427训练集 2593765  1926  0.74255  16  551158  176测试集 536795  366  0.68182  16  551158  176从表2观察发现真实互联网上广告投放的点击率是非常低的,即数据集中正负样本的比例严重不平衡,会使得模型对正样本的学习不充分,从而降低CTR预测模型的精度[27].此外,可以发现独热编码后原始特征的数目是非常巨大的,达到50万量级,将其直接输入 DNN 必然导致巨大的计算开销,经过本文提出的嵌入向量映射后,使输入 DNN 的单元数目大幅下降为176,这里假设每个嵌入向量的维度为 D=10.Criteo数据集是 Criteo公司在2014年 Kaggle平 台上发起的展示广告点击率预测大赛的数据集.8751 计  算  机  学  报 2019年①②iPinYou:http://data.computational-advertising.org/Criteo http://labs.criteo.com/2014/02/download-kaggle-display-advertising-challenge-dataset/

[返回]
上一篇:基于深度学习的开放领域对话系统研究综述
下一篇:基于区块链的分布式K匿名位置隐私保护方案