CN108520442A - 一种基于融合结构的展示广告点击率预测方法 - Google Patents
一种基于融合结构的展示广告点击率预测方法 Download PDFInfo
- Publication number
- CN108520442A CN108520442A CN201810315249.XA CN201810315249A CN108520442A CN 108520442 A CN108520442 A CN 108520442A CN 201810315249 A CN201810315249 A CN 201810315249A CN 108520442 A CN108520442 A CN 108520442A
- Authority
- CN
- China
- Prior art keywords
- node
- layer
- hidden
- product
- minor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0242—Determining effectiveness of advertisements
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Marketing (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开一种基于融合结构的展示广告点击率预测方法,目的是使得展示广告的智能投放系统能够将广告投放到预测用户点击率高的展示机会上。首先,基于已有的广告投放记录建立样本并对特征进行预处理,从而得到训练数据集;其次,利用训练数据集,基于因子分解机预测模型训练得到每个特征对应的嵌入向量和一阶特征的权重;第三,建立融合结构,包括嵌入层、Deep子结构、Product子结构和堆叠子结构;第四,利用训练数据集对融合结构的参数进行训练,得到最终的预测模型的参数;最后,对于一个新的广告展示机会,基于训练好的点击率预测模型计算预测点击率。
Description
技术领域
本发明属于互联网应用技术领域,特别涉及一种面向展示广告智能投放的点击率预测方法。
背景技术
随着互联网的广泛普及以及大数据技术的快速发展,使得广告商利用互联网平台进行广告精准营销成为可能。与传统广告相比,在线广告在覆盖范围、灵活性、针对性、成本和效果评估等方面拥有得天独厚的优势,已经发展成为具有数十亿美元的产业。展示广告属于在线广告的一种投放形式,指的是当一个用户浏览网页时,网站通过在网页上嵌入的广告位,向用户展示广告,如附图1所示。展示广告的智能投放,指的是网站可以根据不同的场景动态投放广告,例如根据用户的属性投放广告,或者根据用户浏览网页的类型投放广告等。在展示广告智能投放中,每当一个用户请求嵌入了广告位的网页时,广告位的脚本代码就会向网站的广告投放系统发起一次广告展示的请求,通常称为一次“广告展示机会”;广告投放系统会根据广告展示机会的属性筛选出一组符合投放规则的广告,然后预测出每个广告投放到这次广告展示机会的用户点击概率,将预测点击率最高的广告投放给这次广告展示机会。这里广告展示机会的属性,通常包括用户属性和上下文场景属性,其中用户属性可以是用户的性别、年龄、使用的浏览器类型、所在的城市等,上下文场景属性可以是打开网页的类型、网站的类型等。投放规则通常是由广告商规定的广告投放要求,例如只将广告投放给所在城市为成都的女性用户的广告展示机会,或者只投放给浏览网页为体育类的广告展示机会。
目前常用的点击率(Click-Through Rate,CTR)预测方法包括基于逻辑回归模型的预测方法、基于因子分解机模型(Factorization Machine,FM)的预测方法、基于梯度提升决策树和逻辑回归的预测方法等,这些方法基本都是基于浅层的机器学习模型。近年来随着深度学习在计算机视觉、语音识别、自然语言处理等领域取得巨大成功,其在探索属性间高阶隐含信息的能力也被应用到了展示广告的点击率预测中。目前已有的基于深度学习模型的点击率预测方法通常是基于单个深度神经网络模型,例如基于因子分解机的神经网络模型。本发明设计了一个新的融合结构,利用新的融合结构来完成点击率预测模型的训练。本发明提出的点击率预测方法与其它已有的方法相比,能够利用更丰富的属性之间的高阶隐含信息,通过大量基于真实场景数据的实验表明,本发明提出的基于融合结构的展示广告点击率预测方法能够比传统的点击率预测方法以及最新的基于深度学习的预测方法获得更好的预测性能。
发明内容
本发明的目的是提供一种面向展示广告智能投放的点击率预测方法,该方法能够灵活融合不同结构的深度神经网络来分别学习广告展示机会原始特征的高阶表示,从而实现更为准确的点击率预测。为实现上述发明目的,本发明提供的基于融合结构的展示广告点击率预测方法,其特征在于,包括以下步骤:
步骤1:基于真实广告的投放和点击记录建立样本,对每次广告展示机会和广告本身的属性进行预处理,建立训练数据集,具体如下:
步骤1.1:广告投放系统会对已经发生的广告投放和点击行为进行记录,每条记录包括:广告展示机会的属性、投放的广告的属性、是否发生点击行为;这里广告展示机会的属性又进一步分为用户属性和上下文场景属性,用户属性可以是用户的年龄、性别、所在城市、浏览器类型等,上下文场景属性可以是浏览网页的类型、广告位的大小、广告位的可见度等;投放广告的属性可以是广告创意的类型、广告商等;当广告投放到广告展示机会后用户发生点击行为,则点击记录为1,否则记录为0;在本发明中将每条广告投放记录作为一个数据样本;
步骤1.2:对每个样本的属性进行预处理,首先对于分类属性,将其进行独热(one-hot)编码,分类属性c在整个记录中有M种取值可能,则独热编码后的表示如公式(1)所示,属性c编码为一个由二值元素组成的向量,每个元素bi∈{0,1},即整个向量中只有取值的元素值为1,其余元素值为0;对于数值属性,首先利用分箱技术将其转化为分类属性后,再按照分类属性的预处理方法完成独热编码;在本发明中将独热编码后的每个元素bi称为一个特征,将属性c=(b1,b2,...,bM)称为一个特征域;
步骤1.3:将所有样本按照发生的时间顺序排列,建立训练数据集;
步骤2:利用训练数据集,基于因子分解机预测模型预先计算每个特征对应的嵌入向量和一阶特征的权重,方法如下:基于步骤1.3的训练数据集,训练基于因子分解机的点击率预测模型的参数w和v,得到预测模型如公式(2)所示,这里f(w,v,xi)表示基于样本i的点击率预测值,xi表示样本i特征向量,n表示特征数,和分别表示样本i的第k个特征的值和第l个特征的值,w表示每个一阶特征的权重向量,w=(w1,w2,…wn),v表示每个特征的嵌入向量,假设每个嵌入向量的维度为D,则v可以写为一个矩阵,如公式(3)所示;
步骤3:构建融合结构,如附图2所示,具体如下:
步骤3.1:基于每个训练样本原始特征的one-hot编码,将其映射为嵌入层的节点,嵌入层的节点包括两类:一类是一阶特征对应的权重节点,由于每个特征域中只有1个特征的值为1,其余特征的值为0,因此对于一个样本,1个特征域只对应1个权重节点,权重节点的值是取值为1的一阶特征对应的权重;一类是每个取值为1的特征对应的嵌入向量节点,嵌入向量中节点的个数由嵌入向量的维度决定;
步骤3.2:建立Deep子结构,学习特征的高阶表示,如附图2所示,在Deep子结构中,嵌入层的每个节点与Deep子结构中第1个隐层的每个节点全连接,第1个隐层中每个节点的输出值采用公式(4)计算,其中是第1个隐层节点的输出向量,n1是第1个隐层的节点数,W0表示嵌入层节点到第1个隐层节点的连接权重,n0是嵌入层的节点数,是嵌入层的输出向量,b0表示第1个隐层的偏置向量,隐层节点的激活函数f(·)采用ReLU;Deep子结构是一个前馈深度神经网络,每个隐层的节点数和隐层的层数由系统设置,隐层之间每个节点均采用全连接,第l+1个隐层的节点的输出值计算如公式(5)所示,Wl表示第l个隐层节点到第l+1个隐层节点的连接权重,nl和nl+1分别是第l个隐层和第l+1个隐层的节点数,是第l个隐层节点的输出值,bl表示第l+1个隐层的偏置向量,隐层中所有节点的激活函数f(·)都采用ReLU;最后1个隐层节点的输出值将直接作为输入传输到堆叠子结构输入层的部分节点;
h1=f(W0x0+b0) (4)
hl+1=f(Wlhl+bl) (5)
步骤3.3:建立Product子结构,学习特征的高阶表示,如图2所示,具体方法如下:在Product子结构中,在嵌入层和第1个隐层之间增加了一个Product层,Product层的节点包括三类:一类是从嵌入层直接输入的一阶特征权重节点,一类是从嵌入层直接输入的特征的嵌入向量节点,一类是Product节点,每个Product节点的值是嵌入层的嵌入向量两两进行内积(Inner Product)后的值,计算如公式(6)所示,这里pi,j表示嵌入向量vi和vj的内积,因此在Product层有m×(m-1)/2个Product节点,这里m表示嵌入层嵌入向量的个数;Product层的节点与第1个隐层的节点全连接,隐层中每个节点的激活函数f(·)都采用ReLU,因此每个节点输出值的计算公式都采用公式(5);Product子结构中最后1个隐层节点的输出值将直接作为输入传输到堆叠子结构输入层的部分节点;
步骤3.4:建立堆叠子结构,用于将Deep子结构和Product子结构输出的特征高阶表示拼接起来作为一个深度神经网络的输入,如图2所示,对点击率进行预测,具体方法如下:输入层的节点是由Deep子结构的输出和Product子结构的输出拼接起来的,堆叠子结构的输入层有(nD+nP)个节点,这里nD表示Deep子结构的最后1个隐层的节点数,nP表示Product子结构的最后1个隐层的节点数,输入层的节点与第1个隐层的节点全连接,隐层之间的节点都采用全连接,隐层中每个节点的激活函数f(·)都采用ReLU,因此隐层中每个节点的输出值都采用公式(5)计算,最后输出节点用于计算预测点击率,输出节点的激活函数采用sigmoid函数,预测点击率p的计算公式如(7)所示,这里表示最后1个隐层到输出节点的权重向量,表示最后1个隐层的输出向量,表示输出节点的偏置;
步骤4:利用训练数据集,对融合结构中各子结构的参数进行学习,得到点击率预测模型,方法如下:
步骤4.1:随机初始化融合结构中的参数,包括节点之间边的权重,以及所有的偏置向量,初始化值满足[0,1)之间的均匀分布;
步骤4.2:针对训练数据集中的每个样本,首先利用步骤3.1计算嵌入层每个节点的值,再将嵌入层的节点分别作为Deep子结构和Product子结构的输入,通过在各自子结构中的计算,分别将Deep子结构和Product子结构中最后1个隐层节点的输出作为堆叠子结构的输入,最后将堆叠子结构最后1个隐层的输出加权求和后,通过sigmoid激活函数得到最终的点击率预测值p(xi,θ);
步骤4.3:为了对融合结构中的参数进行学习,使用对数损失函数作为目标函数,如公式(8)所示,这里L(θ)是对数损失函数,θ表示融合结构的参数,p(xi,θ)表示根据样本i的特征向量xi基于融合结构当前参数θ计算得到的预测点击率,yi表示样本i中关于点击行为的真实标记,有点击行为为1,无点击行为为0,N表示训练数据集中的样本数,表示L2正则化项,用于防止过拟合,λ是正则化参数,由系统设置,w是融合结构中所有节点之间边的权重向量;参数学习的目标是求解使对数损失函数最小的融合结构参数;
步骤4.4:使用随机梯度下降算法可求得公式(8)中的融合结构参数θ,包括节点之间边的权重和节点的偏置向量;
步骤5:对于一个新到来的广告展示机会和需要计算预测点击率的广告,首先按照步骤1所述的方法进行属性预处理,得到独热编码后的原始特征向量;然后按照步骤3所述的方法,将原始特征向量映射为融合结构中嵌入层的节点值;接着将嵌入层的节点输出值分别作为Deep子结构和Product子结构的输入,通过在两个子结构中的计算,分别将Deep子结构和Product子结构中最后1个隐层节点的输出值作为堆叠子结构的输入;最后堆叠子结构的输出节点输出的值是预测点击率。
附图说明
图1是本发明背景技术提供的展示广告智能投放示意图
图2是本发明的发明内容提供的一种用于点击率预测的融合结构图
图3是本发明的具体实施方式提供的基于融合结构的展示广告点击率预测方法流程图
图4是本发明的实施例采用的融合结构示意图
具体实施方式
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
图3是本发明提供的一种基于融合结构的展示广告点击率预测方法流程图,步骤包括:
步骤1:基于真实广告的投放和点击记录建立样本,对每次广告展示机会和广告本身的属性进行预处理,建立训练数据集,具体如下:
步骤1.1:广告投放系统会对已经发生的广告投放和点击行为进行记录,每条记录包括:广告展示机会的属性、投放的广告的属性、是否发生点击行为;这里广告展示机会的属性又进一步分为用户属性和上下文场景属性,用户属性可以是用户的年龄、性别、所在城市、浏览器类型等,上下文场景属性可以是浏览网页的类型、广告位的大小、广告位的可见度等;投放广告的属性可以是广告创意的类型、广告商等;当广告投放到广告展示机会后用户发生点击行为,则点击记录为1,否则记录为0;在本发明中将每条广告投放记录作为一个数据样本;
步骤1.2:对每个样本的属性进行预处理,首先对于分类属性,将其进行独热(one-hot)编码,分类属性c在整个记录中有M种取值可能,则独热编码后的表示如公式(1)所示,属性c编码为一个由二值元素组成的向量,每个元素bi∈{0,1},即整个向量中只有取值的元素值为1,其余元素值为0;对于数值属性,首先利用分箱技术将其转化为分类属性后,再按照分类属性的预处理方法完成独热编码;在本发明中将独热编码后的每个元素bi称为一个特征,将属性c=(b1,b2,...,bM)称为一个特征域;
步骤1.3:将所有样本按照发生的时间顺序排列,建立训练数据集;
步骤2:利用训练数据集,基于因子分解机预测模型预先计算每个特征对应的嵌入向量和一阶特征的权重,方法如下:基于步骤1.3的训练数据集,训练基于因子分解机的点击率预测模型的参数w和v,得到预测模型如公式(2)所示,这里f(w,v,xi)表示基于样本i的点击率预测值,xi表示样本i特征向量,n表示特征数,和分别表示样本i的第k个特征的值和第l个特征的值,w表示每个一阶特征的权重向量,w=(w1,w2,…wn),v表示每个特征的嵌入向量,假设每个嵌入向量的维度为D,则v可以写为一个矩阵,如公式(3)所示;
步骤3:构建融合结构,具体步骤如下:
步骤3.1:基于每个训练样本原始特征的one-hot编码,将其映射为嵌入层的节点,嵌入层的节点包括两类:一类是一阶特征对应的权重节点,由于每个特征域中只有1个特征的值为1,其余特征的值为0,因此对于一个样本,1个特征域只对应1个权重节点,权重节点的值是取值为1的一阶特征对应的权重;一类是每个取值为1的特征对应的嵌入向量节点,嵌入向量中节点的个数由嵌入向量的维度决定;具体映射方法依赖于步骤2中预训练得到的每个一阶特征的权重和每个特征的嵌入向量,映射方法如下:假设在样本i中,特征域的个数为m,在特征域j中第s个特征的值为1,其余为0,则在嵌入层中有m个一阶特征权重节点,有m×D个嵌入向量节点,这里D表示每个嵌入向量的维度,其中特征域j对应的一阶特征权重节点的值为步骤2得到的w中,第s个特征的一阶权重值,特征域j对应的嵌入向量的D个节点的值为步骤2得到的v中第s个特征的嵌入向量的值;
步骤3.2:建立Deep子结构,学习特征的高阶表示,在Deep子结构中,嵌入层的每个节点与Deep子结构中第1个隐层的每个节点全连接,第1个隐层中每个节点的输出值采用公式(4)计算,其中是第1个隐层节点的输出向量,n1是第1个隐层的节点数,W0表示嵌入层节点到第1个隐层节点的连接权重,n0是嵌入层的节点数,是嵌入层的输出向量,b0表示第1个隐层的偏置向量,隐层节点的激活函数f(·)采用ReLU;Deep子结构是一个前馈深度神经网络,每个隐层的节点数和隐层的层数由系统设置,隐层之间每个节点均采用全连接,第l+1个隐层的节点的输出值计算如公式(5)所示,Wl表示第l个隐层节点到第l+1个隐层节点的连接权重,nl和nl+1分别是第l个隐层和第l+1个隐层的节点数,是第l个隐层节点的输出值,bl表示第l+1个隐层的偏置向量,隐层中所有节点的激活函数f(·)都采用ReLU;最后1个隐层节点的输出值将直接作为输入传输到堆叠子结构输入层的部分节点;
步骤3.3:建立Product子结构,学习特征的高阶表示,具体方法如下:在Product子结构中,在嵌入层和第1个隐层之间增加了一个Product层,Product层的节点包括三类:一类是从嵌入层直接输入的一阶特征权重节点,一类是从嵌入层直接输入的特征的嵌入向量节点,一类是Product节点,每个Product节点的值是嵌入层的嵌入向量两两进行内积(Inner Product)后的值,计算如公式(6)所示,这里pi,j表示嵌入向量vi和vj的内积,因此在Product层有m×(m-1)/2个Product节点,这里m表示嵌入层嵌入向量的个数;Product层的节点与第1个隐层的节点全连接,隐层中每个节点的激活函数f(·)都采用ReLU,因此每个节点输出值的计算公式都采用公式(5);Product子结构中最后1个隐层节点的输出值将直接作为输入传输到堆叠子结构输入层的部分节点;
步骤3.4:建立堆叠子结构,用于将Deep子结构和Product子结构输出的特征高阶表示拼接起来作为一个深度神经网络的输入,对点击率进行预测,具体方法如下:输入层的节点是由Deep子结构的输出和Product子结构的输出拼接起来的,堆叠子结构的输入层有(nD+nP)个节点,这里nD表示Deep子结构的最后1个隐层的节点数,nP表示Product子结构的最后1个隐层的节点数,输入层的节点与第1个隐层的节点全连接,隐层之间的节点都采用全连接,隐层中每个节点的激活函数f(·)都采用ReLU,因此隐层中每个节点的输出值都采用公式(5)计算,最后输出节点用于计算预测点击率,输出节点的激活函数采用sigmoid函数,预测点击率p的计算公式如(7)所示,这里表示最后1个隐层到输出节点的权重向量,表示最后1个隐层的输出向量,表示输出节点的偏置;
步骤4:利用训练数据集,对融合结构中各子结构的参数进行学习,得到点击率预测模型,方法如下:
步骤4.1:随机初始化融合结构中的参数,包括节点之间边的权重,以及所有的偏置向量,初始化值满足[0,1)之间的均匀分布;
步骤4.2:针对训练数据集中的每个样本,首先利用步骤3.1计算嵌入层每个节点的值,再将嵌入层的节点分别作为Deep子结构和Product子结构的输入,通过在各自子结构中的计算,分别将Deep子结构和Product子结构中最后1个隐层节点的输出作为堆叠子结构的输入,最后将堆叠子结构最后1个隐层的输出加权求和后,通过sigmoid激活函数得到最终的点击率预测值p(xi,θ);
步骤4.3:为了对融合结构中的参数进行学习,使用对数损失函数作为目标函数,如公式(8)所示,这里L(θ)是对数损失函数,θ表示融合结构的参数,p(xi,θ)表示根据样本i的特征向量xi基于融合结构当前参数θ计算得到的预测点击率,yi表示样本i中关于点击行为的真实标记,有点击行为为1,无点击行为为0,N表示训练数据集中的样本数,表示L2正则化项,用于防止过拟合,λ是正则化参数,由系统设置,w是融合结构中所有节点之间边的权重向量;参数学习的目标是求解使对数损失函数最小的融合结构参数;
步骤4.4:使用随机梯度下降算法可求得公式(8)中的融合结构参数θ,包括节点之间边的权重和节点的偏置向量;
步骤5:对于一个新到来的广告展示机会和需要计算预测点击率的广告,首先按照步骤1所述的方法进行属性预处理,得到独热编码后的原始特征向量;然后按照步骤3所述的方法,将原始特征向量映射为融合结构中嵌入层的节点值;接着将嵌入层的节点输出值分别作为Deep子结构和Product子结构的输入,通过在两个子结构中的计算,分别将Deep子结构和Product子结构中最后1个隐层节点的输出值作为堆叠子结构的输入;最后堆叠子结构的输出节点输出的值是预测点击率。
实施例
为使本发明的目的、技术方案和优点更加清楚,下面将结合实施例对其中的技术方案进行清楚、完整地描述。
在本实施例中,假设一款奶粉广告在某网站的投放记录如表1所示,每条展示记录包括3个属性,分别是用户性别、用户年龄、所在城市,以及是否产生广告点击行为(1代表被点击,0代表未被点击)。
在步骤1中,首先根据广告展示记录建立样本,因此可根据表1建立15个样本;然后将每个样本的属性进行预处理,这里“用户性别”和“所在城市”是分类属性,“用户年龄”是数值属性,根据步骤1.2所述,对于数值属性,首先利用分箱技术将其转化为分类属性后,再按照分类属性的预处理方法完成独热编码,因此在实施例中将“用户年龄”进行分箱操作,按照年龄范围[0,20),[20,40),[40,60),[60,100]将“用户年龄”分别划入到“青少年”,“壮年”,“中年”和“老年”四个类别中,转换为分类属性;
表1某奶粉广告在某网站上投放的点击记录
表2特征及其对应取值的独热编码表
表3独热编码后的数据集
记录编号 | 是否被点击 | 独热编码后的样本特征向量 |
1 | 0 | 1001001000 |
2 | 0 | 1010000100 |
3 | 0 | 1000100010 |
4 | 1 | 0101001000 |
5 | 0 | 0101000001 |
6 | 0 | 1000101000 |
7 | 0 | 1001000100 |
8 | 1 | 0101000010 |
9 | 0 | 0100010001 |
10 | 1 | 1001000100 |
11 | 0 | 1001000010 |
12 | 0 | 1000011000 |
13 | 0 | 0110000001 |
14 | 1 | 0101000001 |
15 | 0 | 0100100100 |
对于所有分类属性,按照步骤1.2所述的独热编码(one-hot)方法进行编码,例如,对于“用户特征”,在整个数据集中只有2种取值,则“用户特征”可用2比特来表示,“10”表示男,“01”表示女,表2表示了编码与特征取值的对应关系,表3是15个样本独热编码后的原始特征向量;在本发明中,将“男、女、青少年、壮年、中年、老年、成都、重庆、北京、上海”均称为特征,因此在本实施例的原始特征中有10个特征,3个特征域,分别是“用户性别”、“用户年龄”、“所在城市”;最后建立训练数据集,在本实施例中假设所有记录均是按照投放的时间先后顺序排列,因此将前14个样本作为训练数据集,用于建立点击率预测模型,第15个样本作为新到来的广告展示机会,展示如何基于已经建立的预测模型进行点击率预测;
在步骤2中,利用训练数据集,基于因子分解机预测模型预先计算每个特征对应的嵌入向量和一阶特征的权重,在本实施例中参考了LibFM工具(http://www.libfm.org/)的方法来完成一阶特征权重和每个特征对应的嵌入向量的训练,每个嵌入向量的维度为2,结果如下:
特征“男”:特征权重为7.12416×10-5,嵌入向量为(0.00113,0.00062);
特征“女”:特征权重为3.41179×10-4,嵌入向量为(0.00369,-0.01253);
特征“青少年”:特征权重为7.95016×10-4,嵌入向量为(-0.00603,-0.01832);
特征“壮年”:特征权重为-1.79597×10-4,嵌入向量为(-0.00495,0.02496);
特征“中年”:特征权重为-6.65677×10-4,嵌入向量为(0.00186,0.00671);
特征“老年”:特征权重为-4.13521×10-4,嵌入向量为(-0.00352,-0.00814);
特征“北京”:特征权重为9.91794×10-4,嵌入向量为(0.00360,-0.01742);
特征“上海”:特征权重为1.13558×10-3,嵌入向量为(0.00822,-0.00502);
特征“成都”:特征权重为4.00840×10-4,嵌入向量为(-0.01170,-0.00070);
特征“重庆”:特征权重为1.79863×10-4,嵌入向量为(-0.00234,0.01209);
在步骤3中,本实施例构建了一个简单的融合结构作为示例,如图4所示;
首先在步骤3.1中,根据每个样本独热编码后的原始特征向量,映射嵌入层节点的值,在本实施例中,由于有3个特征域,因此嵌入层包括3个特征域对应的一阶权重节点,6个嵌入向量节点(3个嵌入向量,每个嵌入向量包括2个节点);例如第1个样本的原始特征向量对应的嵌入层的9个节点的值分别是(7.12416×10-5,-1.79597×10-4,9.91794×10-4,0.00113,0.00062,-0.00495,0.02496,0.00360,-0.01742);
在步骤3.2中,建立的Deep子结构,如图4所示,包括2个隐层,每个隐层节点的数目分别为3和2,即嵌入层有9个输入节点,最后1个隐层有2个节点;嵌入层与第1个隐层的节点,以及第1个隐层与第2个隐层的节点均采用全连接,所有隐层节点的激活函数均采用ReLU函数,所有连接边的权重和节点偏置均采用[0,1)之间均匀分布的随机值进行初始化;
在步骤3.3中,建立的Product子结构,如图4所示,在嵌入层与第1个隐层之间引入Product层作为输入层,该层除了直接映射的3个一阶特征权重节点、6个嵌入向量节点,还包括3个嵌入向量进行两两内积的Product节点,Product节点的值采用公式(6)进行计算,例如对于第1个样本,计算3个Product节点值的方法如下:
第1个Product节点的值:
第2个Product节点的值:
p1,3=(0.00113,0.00062)×(0.00360,-0.01742)T=-6.7324×10-6
第3个Product节点的值:
p2,3=(-0.00495,0.02496)×(0.00360,-0.01742)T=-4.5262×10-4
对于第1个样本,最终Product层的12个节点的值分别为:(7.12416×10-5,-1.79597×10-4,9.91794×10-4,0.00113,0.00062,-0.00495,0.02496,0.00360,-0.01742,9.8817×10-6,-6.7324×10-6,-4.52623×10-4);
Product层的节点与第1个隐层的节点全连接,在本实施例中,有2个隐层,第1个隐层的节点数为3,第2个隐层的节点数为2,嵌入层与第1个隐层的节点以及所有隐层之间的节点均采用全连接,所有隐层节点均使用ReLU函数作为激活函数;所有连接边的权重和节点偏置均采用[0,1)之间均匀分布的随机值进行初始化;
在步骤3.4中,构建堆叠子结构,如图4所示,在本实施例中堆叠子结构的输入层有4个节点,2个节点是Deep子结构最后1个隐层输出的特征高阶表示,2个节点是Product子结构最后1个隐层输出的特征高阶表示;输入层的4个节点与第1个隐层的2个节点全连接;这2个隐层的节点和最后的输出节点连接,所有隐层节点使用ReLU函数作为激活函数,最后的输出节点使用Sigmoid函数作为激活函数,所有连接边的权重和节点偏置均采用[0,1)之间均匀分布的随机值进行初始化;
在步骤4的训练过程中,使用对数损失函数作为目标函数,使用L2正则化技术防止过拟合,正则化参数λ为0.0001,使用梯度下降法作为求解算法,学习率设置为0.0001,每轮迭代时使用训练集中的14条样本进行训练,对Deep子结构、Product子结构、堆叠子结构的参数同时进行优化,在经过50轮迭代后误差收敛,得到最终训练好的点击率预测模型,模型各部分的参数如下:
●Deep子结构的参数
嵌入层到第1个隐层的连接权重:
第1个隐层节点的偏置:
第1个隐层到第2个隐层的连接权重:
第2个隐层节点的偏置:
●Product子结构的参数:
Product层到第1个隐层节点的连接权重:
第1个隐层节点的偏置:
第1个隐层到第2个隐层节点的连接权重:
第2个隐层节点的偏置:
●堆叠子结构的参数:
输入层到第1个隐层的连接权重:
第1个隐层节点的偏置:
第1个隐层到输出节点的连接权重:
输出节点的偏置:
在步骤5中,利用第15个样本作为一个新到来的广告展示机会,计算预测点击率,方法如下:首先独热编码后的原始特征向量为(0100100100);其次计算嵌入层每个节点的值(3.41179×10-4,-6.65677×10-4,1.13558×10-3,0.00369,-0.01253,0.00186,0.00671,0.00822,-0.00502);然后分别输入到Deep子结构和Product子结构,其中Product层的节点值为(3.41179×10-4,-6.65677×10-4,1.13558×10-3,0.00369,-0.01253,0.00186,0.00671,0.00822,-0.00502,-7.72129×10-5,9.32324×10-5,-1.8395×10-5),得到最终的预测点击率为0.34380925。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
Claims (2)
1.一种基于融合结构的展示广告点击率预测方法,其特征在于,包括以下步骤:
步骤1:基于真实广告的投放和点击记录建立样本,对每次广告展示机会和广告本身的属性进行预处理,建立训练数据集;
步骤2:利用训练数据集,基于因子分解机预测模型预先计算每个特征对应的嵌入向量v和每个一阶特征的权重w;
步骤3:构建一个包含嵌入层、Deep子结构、Product子结构、堆叠子结构的融合结构,其中Deep子结构、Product子结构、堆叠子结构均是前馈深度神经网络;
步骤4:利用训练数据集,对融合结构中各子结构的参数进行学习,得到点击率预测模型;
步骤5:对于一个新到来的广告展示机会和需要计算预测点击率的广告,首先按照步骤1所述的方法进行属性预处理,得到独热编码后的原始特征向量;然后按照步骤3所述的方法,将原始特征向量映射为融合结构中嵌入层的节点值;接着将嵌入层的节点输出值分别作为Deep子结构和Product子结构的输入,通过在两个子结构中的计算,分别将Deep子结构和Product子结构中最后1个隐层节点的输出值作为堆叠子结构的输入;最后堆叠子结构的输出节点输出的值是预测点击率。
2.如权利要求1所述的方法,其特征在于,所述步骤3构建一个包含嵌入层、Deep子结构、Product子结构、堆叠子结构的融合结构的方法,包括:
步骤3.1:建立嵌入层,将样本独热编码后的原始特征映射为嵌入层的节点值,嵌入层的节点包括两类:一类是一阶特征对应的权重节点,一类是原始特征中取值为1的特征对应的嵌入向量节点;其中一阶特征权重节点和嵌入向量的个数均为样本原始特征中特征域的个数,嵌入向量中节点的个数由嵌入向量的维度决定,这里特征域是指属于同一个分类属性的若干特征的集合,特征域中的特征具有互斥性,即只有一个特征取值为1,其余特征取值为0;
步骤3.2:建立Deep子结构,学习特征的高阶表示,嵌入层的每个节点与Deep子结构中第1个隐层的每个节点全连接,第1个隐层中每个节点的输出值采用公式(1)计算,其中是第1个隐层的输出,n1是第1个隐层的节点数,W0表示嵌入层节点到第1个隐层节点的连接权重,n0是嵌入层的节点数,是嵌入层的输出值,b0表示第1个隐层的偏置向量,隐层节点的激活函数f(·)采用ReLU;在Deep子结构中,每个隐层的节点数和隐层的层数由系统设置,隐层之间每个节点均采用全连接,第l+1个隐层的节点的输出值计算如公式(2)所示,Wl表示第l个隐层节点到第l+1个隐层节点的连接权重,nl和nl+1分别是第l个隐层和第l+1个隐层的节点数,是第l个隐层节点的输出值,bl表示第l+1个隐层的偏置向量,隐层中所有节点的激活函数f(·)都采用ReLU;最后1个隐层节点的输出值将直接作为输入传输到堆叠子结构输入层的部分节点;
h1=f(W0x0+b0) (1)
hl+1=f(Wlhl+bl) (2)
步骤3.3:建立Product子结构,学习特征的高阶表示,在Product子结构中,在嵌入层和第1个隐层之间增加了一个Product层,Product层的节点包括三类:一类是从嵌入层直接输入的一阶特征权重节点,一类是从嵌入层直接输入的特征的嵌入向量节点,一类是Product节点,每个Product节点的值是嵌入层的嵌入向量两两进行内积后的值,内积的计算如公式(3)所示,这里pi,j表示嵌入向量vi和vj的内积,因此在Product层有m×(m-1)/2个Product节点,这里m表示嵌入层嵌入向量的个数;Product层的节点与第1个隐层的节点全连接,隐层中每个节点的激活函数f(·)都采用ReLU,因此每个节点输出值的计算公式都采用公式(2);Product子结构中最后1个隐层节点的输出值将直接作为输入传输到堆叠子结构输入层的部分节点;
步骤3.4:建立堆叠子结构,用于将Deep子结构和Product子结构输出的特征高阶表示拼接起来作为一个深度神经网络的输入,从而对点击率进行预测,输入层的节点是由Deep子结构的输出和Product子结构的输出拼接起来的,堆叠子结构的输入层有(nD+nP)个节点,这里nD表示Deep子结构的最后1个隐层的节点数,nP表示Product子结构的最后1个隐层的节点数,输入层的节点与第1个隐层的节点全连接,隐层之间的节点都采用全连接,隐层中每个节点的激活函数f(·)都采用ReLU,因此隐层中每个节点的输出值都采用公式(2)计算,最后输出节点用于计算预测点击率,输出节点的激活函数采用sigmoid函数,预测点击率p的计算公式如(4)所示,这里表示最后1个隐层到输出节点的权重向量, 表示最后1个隐层的输出向量, 表示输出节点的偏置。
。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810315249.XA CN108520442A (zh) | 2018-04-10 | 2018-04-10 | 一种基于融合结构的展示广告点击率预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810315249.XA CN108520442A (zh) | 2018-04-10 | 2018-04-10 | 一种基于融合结构的展示广告点击率预测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108520442A true CN108520442A (zh) | 2018-09-11 |
Family
ID=63431899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810315249.XA Pending CN108520442A (zh) | 2018-04-10 | 2018-04-10 | 一种基于融合结构的展示广告点击率预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108520442A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109615060A (zh) * | 2018-11-27 | 2019-04-12 | 深圳前海微众银行股份有限公司 | Ctr预估方法、装置及计算机可读存储介质 |
CN109635952A (zh) * | 2018-10-31 | 2019-04-16 | 北京奇虎科技有限公司 | 一种正则化的预测方法、装置、电子设备及介质 |
CN109784494A (zh) * | 2018-11-28 | 2019-05-21 | 同盾控股有限公司 | 一种基于pyspark的机器学习方法和装置 |
CN109858942A (zh) * | 2018-11-06 | 2019-06-07 | 北京奇虎科技有限公司 | 推广信息展示方法、装置、电子设备及可读存储介质 |
CN110490389A (zh) * | 2019-08-27 | 2019-11-22 | 腾讯科技(深圳)有限公司 | 点击率预测方法、装置、设备及介质 |
CN110516162A (zh) * | 2019-09-02 | 2019-11-29 | 上海喜马拉雅科技有限公司 | 一种信息推荐方法、装置、设备及存储介质 |
CN110688553A (zh) * | 2019-08-13 | 2020-01-14 | 平安科技(深圳)有限公司 | 基于数据分析的信息推送方法、装置、计算机设备及存储介质 |
CN111325579A (zh) * | 2020-02-25 | 2020-06-23 | 华南师范大学 | 一种广告点击率预测方法 |
CN111950806A (zh) * | 2020-08-26 | 2020-11-17 | 上海数鸣人工智能科技有限公司 | 一种基于因子分解机的营销活动预测模型结构和预测方法 |
WO2020252634A1 (zh) * | 2019-06-17 | 2020-12-24 | 深圳大学 | 一种基于现场可编程门阵列的点击率预估的系统及方法 |
CN112256918A (zh) * | 2020-11-17 | 2021-01-22 | 中国计量大学 | 一种基于多模态动态路由的短视频点击率预测方法 |
CN112395504A (zh) * | 2020-12-01 | 2021-02-23 | 中国计量大学 | 一种基于序列胶囊网络的短视频点击率预测方法 |
CN112541130A (zh) * | 2020-12-07 | 2021-03-23 | 东北大学 | 一种基于深度交叉特征融合的推荐方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104536983A (zh) * | 2014-12-08 | 2015-04-22 | 北京掌阔技术有限公司 | 一种预测广告点击率的方法和装置 |
CN105654200A (zh) * | 2015-12-30 | 2016-06-08 | 上海珍岛信息技术有限公司 | 一种基于深度学习的广告点击率预测方法及装置 |
CN107767174A (zh) * | 2017-10-19 | 2018-03-06 | 厦门美柚信息科技有限公司 | 一种广告点击率的预测方法及装置 |
-
2018
- 2018-04-10 CN CN201810315249.XA patent/CN108520442A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104536983A (zh) * | 2014-12-08 | 2015-04-22 | 北京掌阔技术有限公司 | 一种预测广告点击率的方法和装置 |
CN105654200A (zh) * | 2015-12-30 | 2016-06-08 | 上海珍岛信息技术有限公司 | 一种基于深度学习的广告点击率预测方法及装置 |
CN107767174A (zh) * | 2017-10-19 | 2018-03-06 | 厦门美柚信息科技有限公司 | 一种广告点击率的预测方法及装置 |
Non-Patent Citations (4)
Title |
---|
HENG-TZE CHENG等: "Wide & Deep Learning for Recommender Systems", 《ARXIV:1606.07792V1》 * |
RUOXI WANG等: "Deep & Cross Network for Ad Click Predictions", 《ARXIV:1708.05123V1》 * |
WEINAN ZHANG等: "Deep Learning over Multi-field Categorical Data – A Case Study on User Response Prediction", 《ARXIV:1601.02376V1》 * |
YANRU QU等: "Product-based Neural Networks for User Response Prediction", 《ARXIV:1611.00144V1》 * |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109635952A (zh) * | 2018-10-31 | 2019-04-16 | 北京奇虎科技有限公司 | 一种正则化的预测方法、装置、电子设备及介质 |
CN109858942A (zh) * | 2018-11-06 | 2019-06-07 | 北京奇虎科技有限公司 | 推广信息展示方法、装置、电子设备及可读存储介质 |
CN109858942B (zh) * | 2018-11-06 | 2023-12-15 | 三六零科技集团有限公司 | 推广信息展示方法、装置、电子设备及可读存储介质 |
CN109615060A (zh) * | 2018-11-27 | 2019-04-12 | 深圳前海微众银行股份有限公司 | Ctr预估方法、装置及计算机可读存储介质 |
WO2020107762A1 (zh) * | 2018-11-27 | 2020-06-04 | 深圳前海微众银行股份有限公司 | Ctr预估方法、装置及计算机可读存储介质 |
CN109784494A (zh) * | 2018-11-28 | 2019-05-21 | 同盾控股有限公司 | 一种基于pyspark的机器学习方法和装置 |
WO2020252634A1 (zh) * | 2019-06-17 | 2020-12-24 | 深圳大学 | 一种基于现场可编程门阵列的点击率预估的系统及方法 |
WO2021027362A1 (zh) * | 2019-08-13 | 2021-02-18 | 平安科技(深圳)有限公司 | 基于数据分析的信息推送方法、装置、计算机设备及存储介质 |
CN110688553A (zh) * | 2019-08-13 | 2020-01-14 | 平安科技(深圳)有限公司 | 基于数据分析的信息推送方法、装置、计算机设备及存储介质 |
CN110490389A (zh) * | 2019-08-27 | 2019-11-22 | 腾讯科技(深圳)有限公司 | 点击率预测方法、装置、设备及介质 |
CN110490389B (zh) * | 2019-08-27 | 2023-07-21 | 腾讯科技(深圳)有限公司 | 点击率预测方法、装置、设备及介质 |
CN110516162A (zh) * | 2019-09-02 | 2019-11-29 | 上海喜马拉雅科技有限公司 | 一种信息推荐方法、装置、设备及存储介质 |
CN110516162B (zh) * | 2019-09-02 | 2023-03-28 | 上海喜马拉雅科技有限公司 | 一种信息推荐方法、装置、设备及存储介质 |
CN111325579A (zh) * | 2020-02-25 | 2020-06-23 | 华南师范大学 | 一种广告点击率预测方法 |
CN111950806B (zh) * | 2020-08-26 | 2021-06-15 | 上海数鸣人工智能科技有限公司 | 一种基于因子分解机的营销活动预测模型结构和预测方法 |
CN111950806A (zh) * | 2020-08-26 | 2020-11-17 | 上海数鸣人工智能科技有限公司 | 一种基于因子分解机的营销活动预测模型结构和预测方法 |
CN112256918A (zh) * | 2020-11-17 | 2021-01-22 | 中国计量大学 | 一种基于多模态动态路由的短视频点击率预测方法 |
CN112256918B (zh) * | 2020-11-17 | 2021-07-06 | 中国计量大学 | 一种基于多模态动态路由的短视频点击率预测方法 |
CN112395504A (zh) * | 2020-12-01 | 2021-02-23 | 中国计量大学 | 一种基于序列胶囊网络的短视频点击率预测方法 |
CN112395504B (zh) * | 2020-12-01 | 2021-11-23 | 中国计量大学 | 一种基于序列胶囊网络的短视频点击率预测方法 |
CN112541130A (zh) * | 2020-12-07 | 2021-03-23 | 东北大学 | 一种基于深度交叉特征融合的推荐方法及装置 |
CN112541130B (zh) * | 2020-12-07 | 2021-10-29 | 东北大学 | 一种基于深度交叉特征融合的推荐方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108520442A (zh) | 一种基于融合结构的展示广告点击率预测方法 | |
CN111222332B (zh) | 一种结合注意力网络和用户情感的商品推荐方法 | |
CN111325579A (zh) | 一种广告点击率预测方法 | |
CN108664632A (zh) | 一种基于卷积神经网络和注意力机制的文本情感分类算法 | |
CN109711883A (zh) | 基于U-Net网络的互联网广告点击率预估方法 | |
US11640634B2 (en) | Deep learning based visual compatibility prediction for bundle recommendations | |
CN108427708A (zh) | 数据处理方法、装置、存储介质和电子装置 | |
CN104933428B (zh) | 一种基于张量描述的人脸识别方法及装置 | |
CN105787490A (zh) | 基于深度学习的商品潮流识别方法及装置 | |
CN110837602A (zh) | 基于表示学习和多模态卷积神经网络的用户推荐方法 | |
CN111931505A (zh) | 一种基于子图嵌入的跨语言实体对齐方法 | |
CN110795571A (zh) | 基于深度学习和知识图谱的文化旅游资源推荐方法 | |
CN109101629A (zh) | 一种基于深度网络结构和节点属性的网络表示方法 | |
CN112288471A (zh) | 一种基于用户历史行为序列的广告点击率预测方法 | |
CN109858972B (zh) | 广告点击率的预测方法和装置 | |
CN108182597A (zh) | 一种基于决策树和逻辑回归的点击率预估方法 | |
CN113505307B (zh) | 一种基于弱监督增强的社交网络用户地域识别方法 | |
CN112131261A (zh) | 基于社区网络的社区查询方法、装置和计算机设备 | |
CN115311478A (zh) | 一种基于图深度聚类的联邦影像分类方法、存储介质 | |
CN115631008A (zh) | 商品推荐方法、装置、设备及介质 | |
CN110502701B (zh) | 引入注意力机制的好友推荐方法、系统和存储介质 | |
CN116228368A (zh) | 一种基于深度多行为网络的广告点击率预测方法 | |
CN117011714A (zh) | 基于伪标签辅助的高光谱图像分类方法 | |
CN107424016A (zh) | 一种在线招聘广告推荐的实时竞价方法及其系统 | |
CN111159242A (zh) | 一种基于边缘计算的客户端重排序方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180911 |
|
WD01 | Invention patent application deemed withdrawn after publication |