一种广告点击率预估模型的建立方法与流程

文档序号:21275412发布日期:2020-06-26 23:13阅读:860来源:国知局
一种广告点击率预估模型的建立方法与流程
本发明属于计算机
技术领域
,涉及一种广告点击率预估的模型建立方法。
背景技术
:在互联网平台展示广告的过程中,平台需要根据广告的竞价和点击率选择如何将广告呈现给用户,广告收入占据互联网公司收入的很大一部分。特征组合在广告点击率预估技术中占据重要地位,线性模型lr需要大量的特征工程,造成人力和时间的消耗,深宽度模型融合的方式一定程度上解决了高阶特征的组合问题。用户行为序列作为一项重要的信息被越来越多的研究人员重视。如果能在考虑到特征组合的同时兼顾用户的行为序列信息,将会给点击率的预估准确度带来一定的提升。本发明得到国家自然科学基金(no.61370201)的赞助。技术实现要素:针对现有技术存在的问题,本发明提供一种广告点击率模型的建立方法,目的是在考虑特征组合方法的同时,能够将用户的行为序列信息加入到广告点击率预估的任务中,还能考虑到用户的各个历史行为对当前行为影响程度。该方法通过保存训练模型的中间输出(本发明使用deepfm模型的最后一层输出),再根据当前训练数据的用户识别号按照一定的时间间隔检索,得到当前训练数据前的历史数据对应的模型的输出,之后将检索到的历史数据加入一层attention进行训练,将训练的最终结果作为当前训练数据的一部分输入到所使用的模型中进行训练,将训练的结果作为预测的最终结果。与直接使用历史数据dense编码后的特征作为用户行为序列信息作为当前数据输入的方法不同,本发明使用历史数据经过模型训练后的中间结果作为当前数据输入的一部分来学习用户行为序列信息。为了达到上述目的,本发明采用的技术方案为:一种广告点击率预估模型的建立方法,能够兼顾特征组合和用户行为序列在广告点击率预估中的应用,包括数据预处理、中间结果保存、历史数据处理、当前数据训练或测试。首先,将数据处理成按照用户标签分组,时间顺序排列,时间间隔分段的格式。其次,将数据按照时间先后模型依次输入到所用模型中,保存该模型最后一层的输出,并将此输出与对应训练数据的标签拼接得到中间结果。再次,根据当前训练数据的用户标签,向前检索一定时间段的历史训练数据,将历史数据训练过后的中间结果使用attention机制进行处理,得到一个新的向量,若历史数据为空,则将向量初始化为0。最后,将上述得到的向量作为当前时刻数据输入的一部分,输入到模型中,获得最终的训练或预测结果。具体包括以下步骤:步骤一:数据预处理:对全部训练数据按照用户识别号分组并按照用户浏览数据的时间先后顺序排列,得到最终的训练数据,其中训练数据由多个特征组成,其中每个特征具有多个类别。步骤二:中间结果保存:将训练数据按照时间顺序依次输入到训练所使用的广告点击率预估模型中,并保留每条训练数据对应模型最后一层的输出,作为训练数据经过模型训练后的中间结果,如图2所示。步骤三:历史数据处理:根据当前训练数据的用户识别号和时间戳,向前检索一定时间间隔的历史训练数据对应的训练后的中间结果,所述时间间隔由模型参数指定。并将按照时间顺序排列的这些中间结果加入attention机制(注意力机制),对历史数据训练后的中间结果进行加权处理得到新向量,新向量为处理后的历史数据。若根据当前训练数据用户识别号和时间戳向前检索历史数据结果为空,则将的新的向量初始化为0向量,向量的长度与历史结果不为空的情况下向量长度相同。步骤四:当前数据训练或测试:对当前训练数据进行独热编码,对独热编码后的数据进行稠密嵌入处理作为当前训练数据的输入,并将当前训练数据的输入与步骤三处理完成的历史数据进行拼接,再输入到所用广告点击率预估模型中,训练得到最终的预测结果。然后根据一系列的评价指标来评价模型的好坏。进一步,所述步骤一中,数据预处理方法包括python中的pandas库。进一步,所述步骤二中,广告点击率预估模型为deepfm模型,deepfm模型最后一层的输出由宽度模型部分fm的输出与深度模型部分dnn的输出拼接,拼接后得到新向量,新向量长度为dnn部分最后一层神经元个数加上fm部分输出结果之和。进一步,所述步骤三中,所述的attention机制为:加入attention机制的模型能够学习用户历史行为序列中的行为对用户当前行为的影响程度。例如用户在前一时间段内浏览过家具和衣服,现在给用户呈现的桌子广告将受用户之前浏览的家具行为影响较大,受用户浏览的衣服行为影响较小。具体为:由于步骤二中训练数据是按照时间顺序输入到模型中的,所以将所述训练数据中第i时刻的中间结果表示为hi,假设当前时刻为j,则将当前训练数据的输入表示为sj,其中sj为由当前训练数据进行独热编码和稠密嵌入处理后的向量。attention机制计算方法如下:其中,wa为注意力机制的权重计算矩阵,通过模型的训练得到;tx为历史数据的条数;aji为最后的权重;a'ji为hi经过注意力机制处理过后的隐层表示;cj为通过加权平均得到的最终的历史数据,将作为下一步骤模型的输入的一部分。进一步,所述步骤四中采用的评价指标分别为auc、准确率(accuracy)和对数损失函数(logloss)。本发明的有益效果为:与普通的特征组合模型相比,本方法加入了用户行为序列信息的学习,能够显著提高点击率预估的准确度。附图说明图1为本发明的模型建立整体步骤示意图。图2为本发明中间结果表示方式说明图。图3为本发明中步骤三和步骤四的综合说明。具体实施方式本发明提供一种新型的广告点击率预估模型的建立方法,具体步骤如图1所示,包括:步骤一:数据预处理步骤:将实验数据处理为符合模型输入格式的数据,包括:将训练数据先按照用户识别号分组;将训练数据按照时间顺序排序;步骤二:中间结果保存步骤:将数据输入到所述模型中并保留最后一层的输出;所述模型包括deepfm模型。deepfm模型是由华为诺亚方舟实验室提出的一种深宽度预测模型,模型分为两个部分,包括宽度模型部分fm的深度模型dnn,其中fm的全称是factorizationmachines,是一种因子分解机算法,它在传统的lr算法的基础上加入了特征之间的交互信息,公式为:式中,xi为训练数据第i个特征值,w0为偏置项,wi为一次项权重矩阵,vi为特征的隐向量表示,其长度由模型参数指定,n为每条训练数据特征的数量,y为fm的输出。fm模型的输出为长度为数据特征数量加上特征的隐向量长度再加1的和的向量。dnn部分:dnn为一深度神经网络,我们选择网络的深度为两层,每层的神经元个数分别为128和64,在每层全连接层我们选用relu激活函数。dnn的输出向量长度为其最后一层神经元的个数,本发明中为64。本发明将deepfm模型中fm部分的输出最后一层的输出与dnn部分最后一层的输出拼接为一个新的向量。新向量的长度为fm模型的输出向量长度与dnn模型的输出向量长度之和,将上述生成的新向量作为中间结果保存,由图2可知,其中间结果实为deepfm模型的最后一层输出。步骤三:历史数据处理步骤:现根据用户识别号和时间戳检索历史数据,取得其所保存的中间结果,将中间结果使用attention机制进行处理。attention机制可以计算出不同历史数据对当前用户行为的影响程度,得到历史数据对当前时刻数据的输入向量。若对于当前时刻的用户,其之前没有历史数据,则将向量初始化为0,其长度与历史数据不为空时,经过attention机制处理的向量长度一致。所述attention机制具体为:由于步骤二中训练数据是按照时间顺序输入到模型中的,所以将训练数据中第i时刻的中间结果表示为hi,假设当前时刻为j,则将当前训练数据的输入表示为sj,其中sj为由当前训练数据进行独热编码和稠密嵌入处理后的向量,则:式中wa为注意力机制的权重计算矩阵,是通过模型的训练得到的,tx为历史数据的条数,aji为最后的权重,通过加权平均得到的cj为得到的最终的历史数据,将作为下一步骤模型的输入的一部分。步骤四:当前数据训练或测试:当前训练数据由多个特征组成,其中每个特征具有多个类别。对当前训练数据首先进行独热编码,对独热编码后的数据进行稠密嵌入处理作为当前训练数据的输入,再将步骤三处理完成的历史数据与当前训练数据的输入进行拼接,再输入到deepfm模型中去,训练得到最终的预测结果。再根据一系列的评价指标来评价模型的好坏,其中采用的评价指标分别为auc、准确率(accuracy)和对数损失函数(logloss)。与当前流行的几个点击率预估模型进行了比较:所述auc为广告点击率预估模型常用评价指标,其实际为roc曲线下面的面积,roc曲线的横坐标为falsepositiverate(fpr),纵坐标为truepositiverate(tpr);其中fpr的计算方式为:tpr的计算方式为:式中fp代表将正样本判定为负样本的样本数量,tn代表将负样本判定为负样本的样本数量,tp代表将正样本判定为正样本的样本数量。所述accuracy的计算方式为:式中,p为实际正样本总量,n为实际负样本总量。所述logloss的计算方式为:式中,m为训练数据总量,yi代表真实的标签值取值为0和1,pi代表预测值,取值为0到1。最终的结果如表1所示:表1:本发明建立的模型与其他模型实验结果对比表modelaucaccuracyloglossfm0.74290.70140.5698wide&deep0.74360.70110.5681deepfm0.74390.70170.5680本发明0.74440.70190.5677从表1可知:本发明的模型在auc、准确率(accuracy)和对数损失函数(logloss)三个评价指标上的表现均优于其他模型。以上所述实施例仅表达本发明的实施方式,但并不能因此而理解为对本发明专利的范围的限制,应当指出,对于本领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些均属于本发明的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1