内含源码!「自然语言处理(NLP)」广告点击量率预测
来源:AINLPer微信公众号
编辑: ShuYini
校稿: ShuYini
时间: 2020-2-20
TILE: A Sparse Deep Factorization Machine for Efficient CTR prediction.
Contributor : 美国普渡大学
Paper: https://arxiv.org/pdf/2002.06987v1.pdf
Code: https://github.com/WayneDW/sDeepFwFM
文章摘要
点击率预测是在线展示广告中的一项重要任务,关键是了解重要的特征交互。主流的模型是基于嵌入式的神经网络,它通过合并混合组件来对低阶和高阶特征交互进行建模,从而提供端到端的训练。然而,由于深度神经网络(DNN)的存在,这些模型将预测推理的速度降低了至少数百倍。考虑到嵌入式神经网络在网络广告中应用的挑战,这里首次提出了去除冗余参数的方案,以加快推理速度和减少运行时内存的使用。最值得注意的是,我们可以在不损失预测精度的前提下,将Criteo数据集的推理速度提高46X, Avazu数据集的推理速度提高27X。此外,深度模型加速使得有效的模型集成成为可能,并且具有低延迟和显著的性能收益。
文章背景介绍
点击率预测对在线广告行业至关重要,其主要目标是在正确的时间将正确的广告传递给正确的用户。因此,如何准确、有效地预测点击率已经引起了学术界和工业界的关注。
对于点击率预测的模型其实也有很多,比如说:生成线性模型、Shallow模型、嵌入式神经网络模型等,而本文主要是针对基于嵌入式神经网络的DNN存在的缺点(与浅层模型相比,预测推理速度慢了数百倍,导致实时广告服务系统的延迟不现实),提出了一种新的基于场加权嵌入的神经网络(DeepFwFM),它特别适合于快速准确的推理。该模型本身将一个FwFM组件和一个普通的DNN组件组合成一个统一的模型,有效地学习了低阶和高阶的特征交互。更重要的是,DeepFwFM在结构修剪方面显示出独特的优势,使用这样的组合可以大大减少推断时间,而其它结构在深度模型加速或准确预测方面可能失败。
文章主要内容
本文模型
本文目标是对快速在线广告使用紧凑而有效的结构来有效地对低阶和高阶要素交互进行建模,并尽可能的提供最佳的深度模型加速。 我们提出了一种基于域加权的嵌入神经网络,其中包含混合组件,如下所示: 其中,ϕDeep是通过多层感知器(MLP)对嵌入进行非线性转换以学习高阶特征相互作用的方法,该模型是DeepFM的直接改进,其中DeepFM具有以下公式: 两个模型结构对比图如下所示: 总而言之,该模型既简单又有效,可以学习低阶和高阶特征交互。 该模型的关节结构包含共享的嵌入层,强大的FwFM组件和DNN组件,并在低阶和高阶特征交互之间实现了良好的平衡。 附加域矩阵R通过自适应预处理过程加速了低阶特征相互作用的学习,并显示了进一步优化产生更紧凑结构的潜力。DeepFwFM结构修剪
尽管前面成功地将DNN用于建模高阶交互,但DNN中昂贵的计算给有效的CTR预测带来了更多挑战。 在实际的在线广告投放系统中,每个样本(出价请求)的推断只有十分之几毫秒是可以接受的。 但是,原始DNN组件的延迟时间为毫秒,无法满足在线要求。 因此,需要适当的深度模型加速方法来加快预测速度。深度模型加速包括三种主要方法:网络修剪,低秩逼近和权重量化。其中网络修剪方法因其卓越的性能和兼容性而受到广泛关注。
在这里,本文首次研究了基于嵌入的神经网络(特别是DeepFwFM)的结构修剪。 特别地,我们修剪DNN分量的权重(不包括偏差)以删除神经连接,并修剪字段矩阵R以删除字段相互作用。 另外,我们修剪嵌入向量的参数,导致稀疏嵌入向量。我们遵循标准修剪算法,并在按照下面算法进行。
实验结果
密集模型评估.对密集模型的评估(不进行修剪)显示了过参数化模型可以发挥的最大潜力。 从下表2中可以看出,就AUC而言,LR在Criteo数据集上的表现比其他方法差至少0.7%,在Avazu数据集上的表现差1.7%,这表明功能交互对于改善CTR预测至关重要。 稀疏模型评估。如下表3所示,即使在Criteo数据集上的稀疏率高达95%,具有稀疏DNN分量的DeepFwFM仍然比密集的DeepFwFM表现更好。 在我们将Criteo数据集上的稀疏度提高到99%之前,这种现象一直保持不变。 稀疏模型以90%的稀疏度获得最佳的预测性能,并且只有在稀疏度大于99.5%时才开始表现较差。 关于深度模型加速,我们从图3(a)和图4(a)可以看出,较大的稀疏度总是带来较低的延迟,当稀疏度在Criteo数据集上为98%,在Avazu数据集上为99%时,我们意识到 性能仍然出乎意料地比原始密集网络好,并且我们在两个数据集上均实现了16倍的提速。 看到DNN分量和场矩阵R接受更高的稀疏率以保持相同的预测性能,这激发了对混合分量应用不同的修剪率。 我们将稀疏的DeepFwFM模型表示为sDeepFwFM; 同样,我们有sFwFM,sDeepFM,sNFM和sXDeepFM。 如表5和表6所示, 对于XDeepFM中特定的CIN分量,我们用C-99%表示CIN分量的99%稀缺性。我们在表7中报告了结果,并观察到所有基于嵌入的神经网络都采用高稀疏率来保持性能。 我们评估了基于不同稀疏率集成不同数量测试模型的性能。此外,我们还研究了在0.5ms以内的延迟条件下的预测。从表8中可以看出,几个sDeepFwFMs的模型集成使得Criteo数据集和Avazu数据集的AUC分别提高了0.3%和0.5%。往期回顾
入门基础
「自然语言处理(NLP)」入门系列(一)初识NLP
「自然语言处理(NLP)」入门系列(二)什么才是深度学习?
「自然语言处理(NLP)」入门系列(三)单词表示、损失优化、文本标记化
「自然语言处理(NLP)」入门系列(四)如何训练word2vec !!
论文阅读
「自然语言处理(NLP)」【爱丁堡大学】基于实体模型的数据文本生成!!
「自然语言处理(NLP)」【Borealis AI】跨域文本连贯生成神经网络模型!!
「自然语言处理(NLP)」CTRL:16.3亿个参数的条件转换语言模型
无情!「自然语言处理(NLP)」统一预训练UniLM模型(NLU+NLG)
学术圈
「自然语言处理(NLP)」你必须要知道的八个国际顶级会议!
「重磅!!」深度学习十年技术“进化史”
【圣诞福利】ICLR2020开源代码的paper集合(共计198篇)
收藏!「自然语言处理(NLP)」全球学术界”巨佬“信息大盘点(一)!
Attention
更多自然语言处理相关知识,还请关注AINLPer公众号,极品干货即刻送达。