一种基于卷积神经网络的点击通过率预估方法

文档序号:10512981阅读:966来源:国知局
一种基于卷积神经网络的点击通过率预估方法
【专利摘要】本发明公开一种基于卷积神经网络的点击通过率预估方法,通过对于点击实例中所有元素,建立哈希表,与潜在语义向量对应;对于一具体点击实例,在哈希表中索引出对应的潜在语义向量,得到点击实例矩阵,作为卷积神经网络输入矩阵;经卷积神经网络的卷积操作和池化操作得到多层卷积神经网络;最后一池化层与全连接矩阵乘积运算,通过柔性最大传递函数计算得到输出层得到输出层;优化模型参数与输入,采用逻辑斯特损失函数来度量模型的性能,最后输出点击实例被分到每一类的预估概率。本发明可挖掘单一广告中重要的全局语义交互信息和序列广告中局部全局的动态特征,解决了当前模型只能提取局部或静态特征的问题。
【专利说明】
一种基于卷积神经网络的点击通过率预估方法
技术领域
[0001] 本发明涉及互联网广告点击和商品交互技术领域,尤其是一种基于卷积神经网络 的点击通过率预估方法。
【背景技术】
[0002] 随着互联网广告也和电商业井喷式增长,广告和电商平台每天都记录下海量的用 户点击数据。对于单个点击行为,往往存在着许多上下文背景信息,如用户信息,设备信息, 网站信息,内容信息等等,这些上下文信息的复杂交互作用往往会对用户的点击行为产生 巨大的影响。
[0003] 另一方面,对于序列点击行为,即在某一预定的时间段内按照时间先后顺序排列 的用户点击行为的集合,包含着丰富的序列信息,如用户之前的一次点击行为导致了当前 的点击行为,这一序列的点击行为的相互影响和相互作用会对用户未来的点击行为的预估 有很大的帮助。
[0004] 当前较流行的点击通过率预估模型是用逻辑斯特回归算法,或者因子分解机算法 来提取单个点击实例上下文背景信息中的交互语义特征,用周期神经网络来提取序列点击 实例中的序列特征。但是矩阵分解算法或者因子分解机算法都只能提取两种上下文背景信 息的交互语义特征。另一方面,周期神经网络中周期信号传递矩阵总是保持不变,这种周期 特征以恒定不变的方式改变的假设限制了现实复杂场景中真实序列特征的提取。因此,需 要挖掘出单个点击行为中上下文背景信息的全局交互语义特征以及序列点击行为中的动 态序列特征,然而现有点击通过率(Click through rate,CTR)预估模型不能有效地提取这 些特征。

【发明内容】

[0005] 鉴于此,本发明提出了一种基于卷积神经网络的点击通过率预估方法。该方法基 于卷积神经网络的能够提取点击实例中多个上下文条件之间的复杂语义交互信息以及时 序点击行为中的序列信息,能够很好地应用于互联网广告推送以及各类推荐系统的场景。
[0006] 本发明是这样实现的,一种基于卷积神经网络的点击通过率预估方法,包括步骤:
[0007] 步骤S1,对点击实例中所有元素,建立哈希表,使所有元素与潜在语义向量一一对 应;
[0008] 步骤S2,对某一具体点击实例,在哈希表中索引出对应的潜在语义向量,由该点击 实例中所有元素对应的潜在语义向量组成点击实例矩阵,作为卷积神经网络的输入矩阵;
[0009] 步骤S3,将卷积神经网络的卷积操作应用于点击实例矩阵中的不同元素的同一维 度上,得到第一个卷积层,即局部邻域的信息的特征;
[0010] 步骤S4,将卷积神经网络的池化操作应用于前一个卷积层,提取所需特征,得到第 一个池化层;
[0011] 步骤S5,重复步骤S3-S4卷积操作和池化操作得到多层卷积神经网络;
[0012] 步骤S6,使多层卷积神经网络的最后一个池化层与全连接矩阵进行乘积运算,再 通过柔性最大传递函数计算得到输出层,即输入的点击实例被分到每一类的预估概率;
[0013] 步骤S7,给模型赋予初始化的输入和参数,在数据集上优化模型参数和输出,采用 逻辑斯特损失函数度量模型性能,最终得到输入的点击实例被分到每一类的预估概率。
[0014] 本发明通过为点击实例中每一个待交互的元素学习一个潜在语义向量表达,通过 卷积神经网络中的卷积操作和池化操作能够同时提取单次点击实例中的上下文背景信息 间全局的复杂交互以及序列点击实例中重要的局部或者全局的动态序列特征,从而能够同 时提取单次点击实例中的上下文背景信息间全局的复杂交互以及序列点击实例中重要的 局部或者全局的动态序列特征,为准确输出预估概率奠定了基础,且模型点击预估的性能 可通过逻辑斯特损失函数度量,使得预估概率更为精确。
【附图说明】
[0015] 图1本发明的流程图;
[0016] 图2是在Y00CH00SE数据集上不同模型之间点击通过率预估性能的横向比较示意 图。
【具体实施方式】
[0017] 为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照 附图,对本发明进一步详细说明。
[0018] 步骤S1,对于点击实例中出现的所有待交互的信息元素,建立哈希表,使所有信息 元素与潜在语义向量--对应;
[0019] 本发明中,所述点击实例既可以是单次点击行为包含的时间、网站种类、设备种类 等上下文语义信息,也可以是一个用户在某一时间段内的所有点击行为组成的点击序列信 息。
[0020] 所述待交互的信息元素包括单次点击实例中的上下文背景信息以及序列点击实 例中的一次点击实例。
[0021] 步骤S2,对于某一具体的点击实例,在哈希表中索引出对应的潜在语义向量,得到 点击实例矩阵,作为卷积神经网络的输入矩阵;
[0022] 需要说明的是,本发明中,所述点击实例中的信息元素的个数不是固定的,输入长 度灵活可变,这样就可适用于实际的点击应用场景,这样可以使得模型的应用范围大大增 加。
[0023] 步骤S3,将卷积神经网络的卷积操作应用于点击实例矩阵中的不同信息元素的同 一维度上,得到第一个卷积层,即局部邻域的信息的特征;
[0024] 其中,用误差反向传导算法学习包含卷积核、元素表达向量、全连接矩阵的模型参 数;
[0025]步骤S4,将卷积神经网络的池化操作应用于前一个卷积层,池化提取所需要的特 征,得到第一个池化层;
[0026]具体的,实现上,所述池化操作可以为最大池化或平均池化等,池化参数是前一卷 积层的长度的函数,所述池化参数采用分段幂指函数;采用了分段幂指函数作为池化参数 选择的依据,使模型能够处理动态长度的输入,增大了模型的应用范围。
[0027] 步骤S5,重复前面卷积操作和池化操作得到多层卷积神经网络;
[0028] 本发明中,步骤S5得到的多层卷积神经网络的层数、每一层特征图的数目、卷积核 大小都是超参数;
[0029] 超参数决定模型的规模和参数的数量,需要根据输入数据的具体大小和种类进行 调节,实验中可以通过在一个预先设定的参数区间多次试验对比得到。
[0030] 步骤S6,将最后一个池化层与全连接矩阵进行乘积运算,再通过柔性最大传递函 数计算得到输出层,即输入的点击实例被分到每一类的预估概率p m;
[0031] 其中,最后一个池化层的池化参数是固定的,与输出的类别数保持一致。
[0032]步骤S7,数据集分训练集、验证集、测试集;在训练集上用误差反向传导算法调节 模型卷积核、元素表达向量、全连接矩阵等模型参数;验证集上通过参数区间内多次试验对 比调节卷积网络层数、卷积核大小、特征图数目等超参数;测试集上计算模型的逻辑斯特损 失来度量点击预估模型的性能,采用逻辑斯特损失函数度量点击预估模型的性能;
[0033]逻辑斯特损失函数表示为:
[0035]其中,logloss表示逻辑斯特损失,ntest为测试集上所有样本的数目,U表示测试集 上点击实例的目标值,即实际上被预估的点击行为是否发生,取值为〇或1,〇表示没有点击, 1表示点击,pm表示估计值,即模型计算得到的点击行为会发生的概率,取值为闭区间[0,1] 上的实值。
[0036]对于点击模型,逻辑斯特损失函数比一般的准确率等度量函数更合适,即使在测 试集正负样本严重不平衡的情形下比例也能够很好地度量模型点击预估的性能。
[0037] 实施例
[0038]为了验证本发明的实施效果,下面以Y00CH00SE数据集为例进行说明。该 Y00CH00SE数据集包含了一个电商平台上用户的点击记录和购买记录,这些记录通过预先 设定的时间段分隔开。同时,对原数据集进行了适当预处理操作,某一时间段的所有可能的 点击序列,若最后一个点击实例对应购买行为,则其标签为1,否则其标签为〇。在该数据集 上可以进行点击通过率预估的任务。具体步骤如下:
[0039]步骤S1,将Y00CH00SE数据集中所有被点击的商品提取出来,建立一个哈希表,使 每个商品与一个潜在语义向量一一对应。
[0040] 步骤S2,通过预处理操作,将Y00CH00SE数据集转化为所有可能的点击序列,并根 据购买记录给每一个点击序列一个对应的标签,对于某一个具体的点击实例,在哈希表中 索引出对应的潜在语义向量,得到点击实例矩阵,作为卷积神经网络的输入矩阵。
[0041] 步骤S3,将卷积神经网络中的卷积操作应用于点击实例矩阵中的不同元素的同一 维度上,得到第一个卷积层,即局部邻域的信息的特征,用误差反向传导算法学习模型的参 数,调节包括卷积核,元素表达向量,全连接矩阵的模型参数。
[0042]步骤S4,将卷积神经网络中的池化操作应用于前一个卷积层,池化操作为最大池 化,池化参数是前一卷积层的长度的函数,选择为分段幂指函数,池化操作可有效地提取所 需要的特征,得到第一个池化层。
[0043] 步骤S5,重复前面的卷积操作和池化操作得到多层卷积神经网络,网络的层数,每 一层特征图的数目,卷积核大小都是是超参数,根据具体的输入数据的大小和种类进行调 节,可以通过在一个预先设定的参数区间多次试验对比得到。
[0044] 步骤S6,最后一个池化层与全连接矩阵进行乘积运算,再通过柔性最大传递函数 计算得到输出层,即输入的点击实例被分到每一类的预估概率,最后一个池化层的池化参 数是固定值2,与输出的类别数保持一致。
[0045] 步骤S7,数据集分训练集,验证集,测试集;在训练集上,用误差反向传导算法调节 模型卷积核、元素表达向量、全连接矩阵等模型参数;在验证集上,通过参数区间内多次试 验对比调节卷积网络层数、卷积核大小、特征图数目等超参数;在测试集上计算模型的逻辑 斯特损失来度量点击预估模型的性能。
[0046]图1是在Y00CH00SE数据集上,不同模型之间点击通过率预估性能的横向比较示意 图,CCPM为本发明基于卷积神经网络的点击通过率预估模型,RNN为周期神经网络模型,FM 为分解机模型,LR为逻辑斯特回归模型。
[0047] 表1是本发明各层卷积神经网络中的特征图数目(fl,f2,f3)和卷积核大小(kl, k2,k3)等模型超参数在设定的参数区间[2,9]发生变化时,模型点击通过率预估性能的纵 向比较。
[0048]
[0049] 表 1
[0050]以上所述的具体实施例,对本发明的目的、技术方案和效果进行了进一步详细说 明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本 发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范 围之内。
【主权项】
1. 一种基于卷积神经网络的点击通过率预估方法,其特征在于,包括步骤: 步骤S1,对点击实例中所有元素,建立哈希表,使所有元素与潜在语义向量一一对应; 步骤S2,对某一具体点击实例,在哈希表中索引出对应的潜在语义向量,由该点击实例 中所有元素对应的潜在语义向量组成点击实例矩阵,作为卷积神经网络的输入矩阵; 步骤S3,将卷积神经网络的卷积操作应用于点击实例矩阵中的不同元素的同一维度 上,得到第一个卷积层,即局部邻域的信息的特征; 步骤S4,将卷积神经网络的池化操作应用于前一个卷积层,提取所需特征,得到第一个 池化层; 步骤S5,重复步骤S3-S4卷积操作和池化操作得到多层卷积神经网络; 步骤S6,使多层卷积神经网络的最后一个池化层与全连接矩阵进行乘积运算,再通过 柔性最大传递函数计算得到输出层,即输入的点击实例被分到每一类的预估概率; 步骤S7,给模型赋予初始化的输入和参数,在数据集上优化模型参数和输出,采用逻辑 斯特损失函数度量模型性能,最终得到输入的点击实例被分到每一类的预估概率。2. 根据权利要求1所述的方法,其特征在于,所述点击实例既可以是单次点击中的上下 文语义信息,也可以是一个用户在某一时间段内的所有点击行为组成的点击序列信息。3. 根据权利要求1所述的方法,其特征在于,所述点击实例中的元素的个数是变化的。4. 根据权利要求1所述的方法,其特征在于,所述点击实例中的元素表达向量、卷积操 作中卷积核、全连接矩阵模型参数通过误差反向传导算法进行学习。5. 根据权利要求1所述的方法,其特征在于,所述卷积神经网络中的池化操作为最大池 化或平均池化,池化参数是前一卷积层的长度的函数;池化参数的函数采用分段幂指函数。6. 根据权利要求1所述的方法,其特征在于,所述多层卷积神经网络的网络层数、每一 层特征图的数目、卷积核大小是超参数,根据输入数据的大小和种类调节,可通过在一个预 先设定的参数区间进行多次试验对比模型性能得到。7. 根据权利要求1所述的方法,其特征在于,最后一个池化层的池化参数是固定的,且 与输出的类别数保持一致。8. 根据权利要求1所述的方法,其特征在于,所述逻辑斯特损失函数表示为:其中,log loss表示逻辑斯特损失,ntest为测试集上所有样本数目,^表示测试集上点 击实例目标值,取值为〇或1,〇表示没有点击,1表示点击;?^表示计算得到的点击行为发生 的概率,取值为闭区间[0,1 ]上实值。
【文档编号】G06N3/02GK105869016SQ201610186350
【公开日】2016年8月17日
【申请日】2016年3月28日
【发明人】王亮, 谭铁牛, 吴书, 郭韦昱, 余峰, 刘强
【申请人】天津中科智能识别产业技术研究院有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1