首页 > 文章中心 > 正文

深度学习的搜索广告排序应用

深度学习的搜索广告排序应用

摘要:本文在研究卷积(ConvolutionalNeuralNetworks)与LSTM(LongShortTermMemory)的基础上,结合两者优势,提出了一种混合模型。首先用卷积神经网络提取关键特征,然后依据LSTM神经网络时序特点进行预测和分类。结果表明:对比浅层或单层网络,本文提出的组合模型较好地提高了点击率预估准确度,从而增强了搜索广告排序应用效果。

关键词:广告排序;点击率预测;深度学习;卷积神经网络;LSTM

众所周知,广告预期收益很大程度上取决于搜索广告排序准则,具体地讲,表现在广告质量度和广告竞价上。业界量化广告质量度最常用的办法是通过广告点击率。点击率(CTR,ClickThroughRate)代表着人们点击广告的概率,CTR预估是按照已有的广告信息以及对应的上下文来预估人们浏览该广告的可能性。因此,广告排序最主要的工序是预估点击率,因为它关系着搜索引擎业务收入以及是否可以给出更符合用户心理的信息,更进一步讲,CTR还能够作为广告进一步投放的参考标准,总之广告投放效果很大程度上取决于CTR,是实时竞价算法(RealTimeBidding,RTB)的重要因素之一。广告点击率预测模型经历了传统的机器学习模型与深度学习模型的演变。传统的机器学习方法主要分为单一模型预测与模型组合预测两部分。在单一模型中,逻辑回归、决策树等是较为常见的单一模型。相关文献使用广告特征、关键字与用户特征,并结合逻辑回归模型来预测广告点击率,并研究了不同关键字对广告点击状况的影响。有关文献基于充分的历史广告点击数据使用决策树等模型实现广告点击率预测。另外,还有其它一些机器学习模型比如:支持向量机模型等运用于广告点击率预测,而且效果较好。然而这些传统的机器学习模型更依赖人工对特征的处理,在模型使用前期需要大量的人工特征工程。近期,伴随深度学习的热潮,越来越多的人们将深度学习应用于广告点击率预测中。百度公司研究人员将因子分解机与深度神经网络相结合用于预估广告点击率的FNN模型。谷歌公司研究人员推出Wide&Deep模型以处理点击率预估问题,在Wide&Deep的Embedding层后加入特征交叉功能形成的PNN网络效果不错。本文使用卷积神经网络提取广告数据中高影响力的特征,长短期记忆(LSTM,LongShortTermMemory)模型则用于分类,基于此提出了一种基于卷积-LSTM结合的广告点击率预测模型与算法。

1相关工作介绍

1.1广告点击率预测流程

(1)第一步:特征提取,运用特征处理手段从原始数据中获取影响力高的特征,并划分为训练数据与测试数据两大部分。(2)第二步:创建模型并输入训练集,使用优化方法训练模型。(3)第三步:将测试数据输入训练完成的模型进行预测,平台按照预测得到的点击率来排序,从而得出广告展示区域。广告点击率预测流程如图1所示。

1.2逻辑回归

逻辑回归作为一种典型的分类模型,非常适合处理分类问题,比如二分类甚至多分类,内部可能带有线性或非线性决策函数。

1.3卷积神经网络

卷积神经网络(CNN,ConvolutionalNeuralNetworks)被认为是一个经典的前馈神经网络。除了输入层、输出层之间,大部分情况下卷积层可能作为它的隐藏层,甚至包括池化层与全连接层。一般情况下,会有多个卷积层和池化层,并且交替存在。在卷积神经网络中,特征图(featuremap)由多个神经元构成,卷积核连接上一层神经元的输出,从而衍生下一个神经元。卷积核是一个由使用者自由定义大小的权重矩阵,通常作用于同一个图像差异区域的小范围感知域上,提取出每个小区域感知域的特征,以此构造出下一层神经元的输入。卷积层将输入特征进行卷积。池化层按照指定的池化规则对输入特征进行再次提取。

1.4长短期记忆神经网络

长短期记忆网络作为一个时间递归神经网络。输入门、输出门和自由状态等构成了LSTM神经元,如图2所示。

2卷积-LSTM混合神经网络模型

2.1设计思想

卷积-LSTM混合神经网络一共有三层。输入层:将原始特征排重、数据清理后开始独立向量编码(One-HotEncoder),让其映射到t维空间中,t表示编码后的向量维度,然后获取索引值生成新的特征。输出层的作用是将卷积网络的结果输入给LSTM,从而可以进行分类和得到预测值,如图3所示。

2.2算法描述

本文提出了一种模型训练算法,如表1所示。

3实验结果分析

3.1数据预处理

本文采用了Kaggle比赛中Avazu公司在2014年公开的开源数据集。从中选出了1百万条数据作为训练集。每条数据都有20个维度,包含10个连续性特征,其中有9个是已经脱敏处理的)和9个类别特征。样本标签的离散值是0或1,分别代表负向样本与正向样本。原始训练数据中,正样本比例与抽取数据中正样本比例较为接近,这样做的目的是不影响实验结果。

3.2算法指标

本文采用了两种算法指标来检验分析模型。(1)AUC(AreaUnderCurve)。AUC的大小与ROC(ReceiverOperatingCharacteristics)曲线下的覆盖面大小有关,ROC曲线的横轴表示假正率(FalsePositiveRate),纵轴表示真正率(TruePositiveRate),按阈值的取值差异可得到不同的ROC曲线。AUC的取值在0到1之间,AUC的值越大,分类效果越佳。(2)对数损失(LogarithmicLoss)。对数损失的值与分类器效果成反比,对数损失值越小,分类器效果越好。

3.3算法初始参数

通常来说,特征空间的大小取决于神经网络的层数和计算图中神经元的多少,越多的层和越多的神经元,能够表达的特征空间也就越大,学习过程也就越复杂,但运行时间和内存消耗也会越大,而且有可能会出现过拟合的问题,因此最优结果很大程度上取决于参数选择是否合理。为了最优化模型结果,本文做了相当多的参数调节。结果发现,CNN输出向量的维度大小、LSTM层数、模型学习率的设置、选取的优化方法是否合适等是主要影响因素。输入不同的参数,反复迭代优化,最终计算得出最优的AUC值,如图4所示。通过上述实验比对,卷积-LSTM组合神经网络模型的核心参数如表2所示。表3展示了单一结构的CNN模型与LSTM模型的参数配置。

3.4结果比较与分析

本文的机器配置如表4所示。在相同的特征处理环境下,将训练集和测试集按8:1的比例切割,模型每从训练集中学习完一次,便将测试集输入做预测和分类,反复迭代30次后取最优AUC值和logloss值,并统计迭代过程使用的总时间。本文一共使用了6种模型进行点击率预测,分别有深层和浅层模型。运行结果如表5所示。其中逻辑回归模型用LR表示;FM模型是以矩阵分解为核心的机器学习算法,它的特点是能够高效地学习特征之间的联系,擅长分析高维度稀疏数据;NN是一种常规的神经网络模型;CNN代表一种卷积神经网络;CNN+LSTM代表本文提出的卷积-LSTM组合的深度学习网络模型。本文从几个方面分析了上述实验结果,分别如下:(1)从模型层数来看,深层模型在预测方面的效果高于以往的浅层模型。浅层模型在第9次迭代之后,AUC值和logloss值趋于收敛,FM模型的预测准确度高于LR模型;与普通NN模型相比,CNN与LSTM的预测效果显然更好。(2)比较AUC值与logloss值,卷积-LSTM组合神经网络模型在这两方面的指标表现都比单一结构的CNN模型与LSTM模型要好。与CNN模型对比,其AUC值提高了1.38%,logloss值降低了0.29%;与LSTM模型对比,其AUC值提高了2.61%,logloss值降低了1.38%。(3)从时间上看,由于卷积-LSTM组合神经网络模型的层数相对多一点,复杂度比较高,其训练总共的时长相比单一层次结构的神经网络模型,会更多一些。

4结束语

本文通过充分研究和比较现有的线上搜索广告集合,分析得出了互异特征之间相关性强,人工提取特征费时费力等不足,最后分析了若干种浅层预测模型与深层预测模型的优缺点,研究出了一种新的深度学习模型卷积-LSTM混合神经网络模型。实验表明:与传统的广告点击率预测模型相比,卷积-LSTM组合神经网络模型效果更明显。通过卷积核移动提取关键性特征,降低了人力开销,又较好地提升了模型效率;使用LSTM神经网络预测广告点击率,提升了分类精度。接下来,本文将继续围绕特征、模型,从工程化方向做迭代,以期达到更好的提升。

参考文献

[1]李思琴.基于深度学习的搜索广告点击率预测方法研究[D].哈尔滨工业大学,2015.

[2]张志浩.基于深度学习的在线广告点击率预估系统的设计与实现[D].南京大学,2015.

[3]刘旭.基于深度学习的互联网广告点击率预估方法研究[D].西安理工大学,2018.

[4]刘梦娟,曾贵川,岳威.面向展示广告的点击率预测模型综述[J].计算机科学,2019(7).

[5]黄立威,江碧涛,吕守业,刘艳博,李德毅.基于深度学习的推荐系统研究综述[J].计算机学报,2018,41(07):1619-1647.

作者:钟小勇 单位:携程计算机技术(上海)有限公司