一种基于深度学习的平台相关的广告点击率预测方法

文档序号:27550004发布日期:2021-11-24 22:13阅读:141来源:国知局
一种基于深度学习的平台相关的广告点击率预测方法

1.本发明涉及计算机技术领域,涉及深度学习、元学习、与广告点击率预测有关的研究和分析,具体涉及基于深度学习的平台相关的点击率预测方法。


背景技术:

2.点击率预测的研究一直受到学者们的追捧。从早期以协同过滤和基于内容为代表的方式,到引入各类深度学习模块,例如多层感知机、卷积神经网络、注意力机制、图神经网络等等。将强化学习、知识图谱、迁移学习等方法与之结合,也是当前研究的热门方向。模型的可解释性、对用户的肖像建模,也是拓展出的研究领域。广告点击率预测任务流行的模型包括:wide&deep是一种既考虑记忆又考虑泛化的ctr预测模型。它包括两部分:广度部分用于记忆和深度部分用于概括。dcn连接dnn模型和交叉网络,有效地捕捉隐式和显式高阶特征交互。deepfm结合了因子分解机和深度神经网络的功能,在网络结构中进行特征学习。
3.元学习的核心思想最早提出于1998年,随着深度学习的蓬勃发展,元学习被赋予全新的意义,也有了更多用武之地。元学习适用于众多研究场景,同时也经常与小样本学习、强化学习、多任务学习结合研究。机器学习是手动特征选择,深度学习是联合特征和模型学习,而元学习可以看作是集成特征、模型和算法学习。元学习主要关注任务本身和任务发生的位置(内层和外层)。内层是指对于一个任务快速训练学习,外层则是对这些任务进行积累。
4.元学习的普遍分类方式是基于度量的方法、基于模型的方法和基于优化的方法。基于度量的元学习方法是学习特征空间,通过相似度来计算类别预测。新任务的信息不会被网络学习,只在已有的特征空间上进行输入比较。面对新任务的时候,模型不会有任何改变。这类方法主要分为两步,一步是特征提取,通常是卷积神经网络,一步是相似度量。代表网络有孪生网络、匹配网络、原型网络、关系网络等等。基于模型的元学习方法是将任务融入模型当中,获得状态来做预测,例如在循环网络中嵌入任务的训练数据后,为测试样例做预测。这类方法依赖于自适应的内部状态,顺序接受数据集,每一个输入改变状态来捕捉任务特性,然后对新的输入进行预测。代表网络有记忆增强网络、snail、条件神经过程等等。基于优化的元学习方法是通过少步骤的优化来提升原知识的学习性能。主要是双层优化,内部和外部。内部是对特定的任务学习采用优化策略,外部是优化跨任务的学习能力。以maml为代表作的一系列模型,可以轻松集成主流网络模型,还有leo、llama等模型。
5.然而当前技术基本都是对所有平台的广告数据集看作一个整体,统一输入模型研究。但平台间有相似性和独特性,平台间数据量往往也差异较大。这样的研究模式确实会在所有平台上皆有较好效果,但在不同平台上同一模型会有优劣之分。我们可以假设一个场景能更好理解,用户每天会浏览众多领域所在的在线平台,但是对于美食类广告他可能倾向于在与食物相关的领域去进行浏览,而不是与衣服相关的领域。如果模型因此而判断该用户并不喜好衣服信息广告,则是一种错误的解读。


技术实现要素:

6.为解决现有技术中存在的上述问题,本发明提供了一种基于深度学习的平台相关的点击率预测方法。借助元学习,将平台看作子任务,通过学习以达到平台间高速适配。为更好捕捉平台特征,重新构造数据集结构,使每个平台的数据分布相似,降低平台对模型的影响力偏移问题。配合元学习训练模式,利用支撑集和查询集的拆分方式,使模型参数更好地适配所有平台和开拓新平台。面对新的平台,也能通过学会已有的平台来类比,从而快速解决。
7.实现本发明目的具体技术方案是:
8.本发明提供的基于深度学习的平台相关的点击率预测方法,包含如下步骤:
9.步骤一:获取多个平台的广告特征数据和用户行为数据,包括广告产品、广告商、广告类型等广告特征,时间戳、设备号等环境特征,用户点击与否情况,形成初步的数据集u。数据集u已做脱敏处理,实现敏感隐私数据的可靠保护。步骤二:通过筛选和拆分数据集u的所有特征,删去数据收集缺损一半以上的特征,拆分按照能表达含义的最细拆分方式,并对获得以下特征:广告编号、用户编号、时间戳、设备号、小时、星期、广告商、广告名、广告大类、广告小类、广告细支、用户点击与否。对特征数据进行清洗,包括删除其中离群值的噪声数据,采用平均值填充法补全空值数据。对数据进行标准化,将连续特征值标准化为0至1范围内的值,将离散特征值进行独热编码。
10.令表示d维的样本空间,y={0,1}表示标签空间。新的数据集u由x和y结对组成,即(x,y)。y=0,即(x,0)表示用户对该广告没有点击,反之,当y=1,即(x,1)表示用户点击了。
11.步骤三:为每个平台构建点击率预测模型,具体是按平台划分数据集,将每一个子数据集输入神经网络中,学习速率为0.0001,损失代价函数值小于设定阈值时,停止训练模型。根据每个平台的模型对该平台数据进行验证,按结果准确率从高到低排序,将平台分为两类,训练平台集和测试平台集,平台数各自比例为2∶1。
12.为保证分类公平,采用deepfm模型对所有平台分别进行训练。deepfm是双网络组合结构,deep模块和fm模块有着相同的输入向量和嵌入向量,fm模块得到使用低阶特征组合的点击率预测结果输出,deep模块得到使用高阶特征组合的点击率预测结果输出,将两个模块的输出结果传入到sigmoid函数,得到最终的点击率预测结果:
13.评估指标采用auc,即roc曲线下方的面积大小,可以用来评估点击率模型的优劣。roc曲线中,横轴为假正例率,纵轴为真正例率。假正例率为真实标签为负的样本中,预测为正的样本比例;真正例率就是召回率。如果auc=1,说明模型完全将所有正例排在反例前面。auc值越高,模型预测的排序质量越佳。
14.步骤四:通过深度学习模型和元学习模型结合的方式训练训练平台集数据模型,验证测试平台集数据。具体是将每一个训练平台视作一个子任务,每次训练对任务集进行随机抽取,对抽取的子任务集的数据在进行随机选择,通过元学习的方式来训练深度学习模型,最终对测试平台集数据进行验证。深度学习模型采用五种主流点击率预测模型,分别是wide&deep、deepfm、dcn、autoint和fibinet。
15.wide&deep是一种既考虑记忆又考虑泛化的ctr预测模型。它包括两部分:广度部
分用于记忆和深度部分用于概括。dcn连接dnn模型和交叉网络,有效地捕捉隐式和显式高阶特征交互。deepfm结合了因子分解机和深度神经网络的功能,在网络结构中进行特征学习。autoint自动学习输入特征的高阶特征交互作用,它可以应用于数字和分类输入特征。fibinet通过挤压激励网络机制动态学习特征的重要性,通过双线性函数有效地学习特征间的交互作用。
16.采用元学习中的maml方法,直接优化学习器的初始化参数,使得学习器在面对新任务时,仅使用少量数据计算的一步或多步梯度下降步骤更新参数后,就可以在新任务上达到最大泛化性能,也就是拥有了学会学习的能力。在每一个任务的支撑集上经过一次梯度下降得到当前任务近一步适应的参数θ;
17.然后在任务的查询集上进行测试,从而得到当前任务的损失在所有任务相应损失获取后,取这些任务的损失总和:其中f(θ)为损失函数。
18.最后使用不同任务上获得的测试误差之和作为元学习器的优化对象,通过梯度下降的方式更新参数,最终获得一组初始化参数。
19.评价指标除了步骤三中的auc,另外还采取了对数损失函数logloss。它将点击率预测问题视作二分类问题,定义如下:
[0020][0021]
其中,x
i
为输入特征,y
i
为对应的真实分类,p
i
为预测对应广告点击取值为1的概率,n为样本总量。
[0022]
步骤五:持续收集更多平台数据,进行同步骤二一致的筛选特征和清理及标准化后,利用步骤四中的的初始化参数,运用到fine

tune上,弥补了数据的不足,将每个新平台数据输入现有神经网络中训练,得到各自的模型并进行预测。
[0023]
本发明的有益效果在于:
[0024]
与传统的广告点击率预测方法相比,本发明考虑了平台这一重要因素。从平台视角看待深度学习模型,利用元学习与之结合的方式,摒弃所有平台混合一起处理的暴力模式,提出平台相关的广告点击率预测方法。尤其对于数据量少且模型效果较差的平台,该方法真正解决了难处,有了显著效果提升。同时,与单一神经网络模型相比,本发明提出的方法不拘于某一模型,任何深度学习模型皆可适用。这一处理模式可以高效适配不同数据集,选择最有益的模型来成功预测。
附图说明
[0025]
图1为本发明的流程图。
[0026]
图2为本发明各平台点击率预测结果差异图。
[0027]
图3为本发明实验效果对比图。
具体实施方式
[0028]
结合以下具体实施例和附图,对本发明作进一步的详细说明。实施本发明的过程、条件、实验方法等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本发
明没有特别限制内容。
[0029]
本发明公开了一种基于深度学习的平台相关的广告点击率预测方法。首先,获取多个平台的广告特征数据和用户行为数据,形成初步的数据集;其次筛选特征并对特征数据进行清理及标准化;再为每个平台构建点击率预测模型,根据准确率将平台分为训练集和测试集;然后通过多种深度学习模型和元学习模型结合的方式,得到模型参数;最后持续收集更多平台数据,进行清理及标准化后,输入现有模型进行训练预测。本发明的创新点是将平台因素引入到点击率预测模型中,对于新平台或数据量少平台的数据,比其他现有方法更加准确。
[0030]
具体地,本发明包括如下步骤:
[0031]
步骤一:获取多个平台的广告特征数据和用户行为数据,包括广告产品、广告商、广告类型等广告特征,时间戳、设备号等环境特征,用户点击与否情况,形成初步的数据集u。数据集u已做脱敏处理,实现敏感隐私数据的可靠保护。
[0032]
步骤二:对数据集u的所有特征进行筛选和拆分特征,删去数据收集缺损一半以上的特征,拆分按照能表达含义的最细拆分方式,获得以下特征:广告编号、用户编号、时间戳、设备号、小时、星期、广告商、广告名、广告大类、广告小类、广告细支、用户点击与否。
[0033]
对特征数据进行清洗,包括删除其中离群值的噪声数据,采用平均值填充法补全空值数据。对数据进行标准化,将连续特征值标准化为0至1范围内的值,将离散特征值进行独热编码。
[0034]
令表示d维的样本空间,y={0,1}表示标签空间。新的数据集u由x和y结对组成,即(x,y)。y=0,即(x,0)表示用户对该广告没有点击,反之,当y=1,即(x,1)表示用户点击了。
[0035]
步骤三:为每个平台构建点击率预测模型,具体是按平台划分数据集,将每一个子数据集输入神经网络中,学习速率为0.0001,损失代价函数值小于设定阈值时,停止训练模型。根据每个平台的模型对该平台数据进行验证,按结果准确率从高到低排序,将平台分为两类,训练平台集和测试平台集,平台数各自比例为2∶1。
[0036]
为保证分类公平,采用deepfm模型对所有平台分别进行训练。deepfm是双网络组合结构,deep模块和fm模块有着相同的输入向量和嵌入向量,fm模块得到使用低阶特征组合的点击率预测结果输出,deep模块得到使用高阶特征组合的点击率预测结果输出,将两个模块的输出结果传入到sigmoid函数,得到最终的点击率预测结果:
[0037]
评估指标采用auc,即roc曲线下方的面积大小,可以用来评估点击率模型的优劣。rog曲线中,横轴为假正例率,纵轴为真正例率。假正例率为真实标签为负的样本中,预测为正的样本比例;真正例率就是召回率。如果auc=1,说明模型完全将所有正例排在反例前面。auc值越高,模型预测的排序质量越佳。
[0038]
步骤四:通过深度学习模型和元学习模型结合的方式训练训练平台集数据模型,验证测试平台集数据。具体是将每一个训练平台视作一个子任务,每次训练对任务集进行随机抽取,对抽取的子任务集的数据在进行随机选择,通过元学习的方式来训练深度学习模型,最终对测试平台集数据进行验证。深度学习模型采用五种主流点击率预测模型,分别是wide&deep、deepfm、dcn、autoint和fibinet。
[0039]
wide&deep是一种既考虑记忆又考虑泛化的ctr预测模型。它包括两部分:广度部分用于记忆和深度部分用于概括。dcn连接dnn模型和交叉网络,有效地捕捉隐式和显式高阶特征交互。deepfm结合了因子分解机和深度神经网络的功能,在网络结构中进行特征学习。autoint自动学习输入特征的高阶特征交互作用,它可以应用于数字和分类输入特征。fibinet通过挤压激励网络机制动态学习特征的重要性,通过双线性函数有效地学习特征间的交互作用。
[0040]
采用元学习中的maml方法,直接优化学习器的初始化参数,使得学习器在面对新任务时,仅使用少量数据计算的一步或多步梯度下降步骤更新参数后,就可以在新任务上达到最大泛化性能,也就是拥有了学会学习的能力。在每一个任务的支撑集上经过一次梯度下降得到当前任务最适应任务的参数θ,然后在任务的查询集上进行测试,从而得到当前任务的损失在所有任务相应损失获取后,取这些任务的损失总和:其中f(θ)为损失函数。最后使用不同任务上获得的测试误差之和作为元学习器的优化对象,通过梯度下降的方式更新参数,最终获得一组初始化参数。
[0041]
评价指标除了步骤三中的auc,另外还采取了对数损失函数logloss。它将点击率预测问题视作二分类问题,定义如下:
[0042][0043]
其中,x
i
为输入特征,y
i
为对应的真实分类,p
i
为预测对应广告点击取值为1的概率,n为样本总量。
[0044]
步骤五:持续收集更多平台数据,进行同步骤二一致的筛选特征和清理及标准化后,利用第四步的初始化参数,运用到fine

tune上,弥补了数据的不足,将每个新平台数据输入现有神经网络中训练,得到各自的模型并进行预测。
[0045]
实施例
[0046]
在以下数据集上进行实验,以评估所提出的平台相关的广告点击率预测方法的效果。首先,在数据集上比较了不同平台模型训练的效果,其次用提出的方法对比原有方法,证明了有效性。实验采用logloss和auc对模型效果评价。
[0047]
数据集:本数据集是一个多平台广告数据集,具有点击与否标签。数据集总量100多万条,具有下表所示共14种特征。一些敏感隐私信息如广告商、品牌等,已做脱敏处理。
[0048][0049][0050]
表1
[0051]
在数据集预处理后,根据平台字段拆分数据集。对每个数据集8:2拆分训练集和测试集,使用deepfm进行训练。多次随机拆分数据集,最终结果取平均,以防误差。在测试集上验证点击率预测结果,采用auc评估方式,摘选部分平台结果如图2所示。每个平台的结果高低不一,也验证了本发明提出的初衷,单一模型不一定适用于所有平台。高结果如平台3,auc值为0.7768,低结果的如平台4为0.5009。
[0052]
针对上述结果将所有平台分为训练平台集和测试平台集后,使用本发明提出的方法,针对训练平台集开始模型训练。训练次数根据每次任务覆盖的数据条数决定,确保训练次数与每次训练数据条数的乘积为所有数据条数的两倍,以此最大可能保证数据被采样充足且避免过拟合。图3验证结果为某一模型未见过的新平台,即测试平台集中的一个平台。利用已训练模型,使用其参数作为初始化参数,对新平台进行训练。图中结果可证明,本发明方法优于对应原方法,在平台层面上进行了大幅度效果提升。
[0053]
本发明的保护内容不局限于以上实施例。在不背离发明构思的精神和范围下,本领域技术人员能够想到的变化和优点都被包括在本发明中,并且以所附的权利要求书为保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1