RTB实时竞价算法文档格式.docx
- 文档编号:13292087
- 上传时间:2022-10-09
- 格式:DOCX
- 页数:28
- 大小:153.45KB
RTB实时竞价算法文档格式.docx
《RTB实时竞价算法文档格式.docx》由会员分享,可在线阅读,更多相关《RTB实时竞价算法文档格式.docx(28页珍藏版)》请在冰豆网上搜索。
3.3竞价调整方式1..0.
4.补充问题1..0..
4.1无历史数据阶段1..0..
4.2利用历史数据阶段1..0..
4.3展示的分布控制1..0..
5.参考文献1..1
6.附件1...2
6.1名词1..2..
6.2算法总体流程图1..3..
6.3输入输出表1...3.
6.4数据预处理流程1..5..
6.5计算权重算法流程1..7..
6.6模型检验2...0.
1.算法简介
1.1算法用途
RTB(Real-TimeBidding)实时竞价,是一种利用第三方技术在数以百万计的媒体上针对每一个用户展示行为进行评估以及出价的竞价技术。
与大量购买投放频次不同,实时竞价规避了无效的受众到达,只针对有意义的用户进行购买。
它的核心是DSP平台(需求方平台),在DMP数据的支持下根据媒体,广告特点和人的属性进行定向投放。
RTB对于媒体来说,可以带来更多的广告销量、实现销售过程自动化及减低各项费用的支出。
而对于广告商和代理公司来说,最直接的好处就是提高了效果与投资回报率。
RTB算法有几种常见的策略:
展现优化(针对品牌推广)目标,点击率(CTR)优化目标和ROI(投资回报率)优化目标。
其核心都是要做到合适的广告展现给合适的人。
ROI优化是最直接能体现广告主的投资收益率的指标,但是目前情况下受RTB业界技术限制和公司数据支持情况的限制,点击率优化是现实可行的RTB竞价方法。
虽然该方法不能直接体现在用户的投资收益率指标上,但是优良的点击率很大程度上会带来良好的收益。
目前针对RTB算法中的点击率预测有很多种方法,如:
逻辑回归,决策树,两阶段广义线性模型,非线性规划模型,典型方程等。
选用逻辑回归的主要原因在于该算法成熟,对输入变量要求较低,既可以处理枚举型变量,又可以处理连续型变量。
输出结果较稳定可靠。
本算法主要以点击率(CTR)为优化目标,并选择逻辑回归作为主模型进行设计。
1.2算法概述
首先对RTB的竞价流程总结如下图所示:
广告主
策略
图1RTB竞价流程图从上图中可以看出,实时竞价算法的输入主要包括以下信息:
1)Exchange端提供的广告位信息;
2)用户id,DMP收集的用户属性信息;
3)广告主发布的活动信息及竞价策略;
4)竞价历史(媒体信息,广告位,获胜竞价,用户id等)。
表1:
RTB算法输入之竞价历史
实时竞价算法的输出主要是获胜的(广告活动信息,竞价)组。
实时竞价算法主要由两部分构成,一是广告活动的匹配,二是根据媒体,广告活动及用户属性等进行出价。
图2RTB竞价算法流程
2.算法详细说明
2.1广告活动匹配
广告活动匹配的目的是为了筛选出满足媒体广告位要求,以及符合用户属性特征的广告活动集合。
首先,根据请求中的媒体广告位信息对广告活动进行初步筛选,过滤掉一些无效的广告活动,如:
不满足广告位要求的广告活动等。
然后,利用DMP系统中查找到的用户特征信息,以及广告活动的投放人群属性定向再次筛选广告活动。
广告活动的投放人群属性定向主要包括访客所在地区,年龄,性别,婚姻状况,教育程度,兴趣爱好,购买偏好等。
主要包括以下步骤:
第一步,将请求中的媒体广告位信息与DSP系统中的广告活动信息进行初步匹配,筛选出满足条件的广告活动集合;
如果不存在广告活动,则不参与此次请求的竞价。
第二步,利用DMP系统,根据用户id,获取用户特征信息。
第三步,将筛选出的广告活动集合与用户特征进行匹配,进一步筛选广告活动集合。
图3广告匹配流程
表2广告活动匹配需要考虑的信息
广告位信息
广告活动
用户属性
属性1
广告位宽
投放媒体偏好
性别
属性2
广告位高
访客所在地区
年龄
属性3
不允许的属性id集合
访客年龄
地域
属性4
允许的广告技术类别
访客性别
婚姻
属性5
排除的敏感类别
访客婚姻状况
教育程度
属性6
排除的产品类别
访客教育程度
兴趣
属性7
媒体提供的限制列表
访客兴趣爱好
属性8
访客购买偏好
关于匹配度的计算问题涉及到商业策略及广告本身估值,用户的估值,媒体的估值及DSP端广告集合的分析等情况,在综合分析的情况下,才能给出在特定商业策略上的匹配度,该部分计算放在后续进行。
2.2实时竞价算法
通过广告匹配算法能够筛选出符合媒体信息和用户特征的广告活动,接下来需要对筛选出的广告活动进行竞价,并排序,返回一系类(广告活动,竞价)结果组。
广告活动的投放类型一般有CPC和CPM两种,目前只考虑CPC投放类型,如果是投放类型是CPM,可以将CPM转化为CPC进行竞价,转换原则为:
CPM=CPC*CTR*1000
总体来说,实时竞价算法可以分为以下两个步骤:
1.获得每次广告展示的价值,即在给定的相关展现水平和需求数据的情况下,对该次广告展现预期成本,表示形式如下:
eCPICTR*CPC
其中eCPI表示每次展现的预期成本,即最优竞价估值。
CPC在给定的广告系列中是已设定的常数。
预测CTR是一个关键的步骤:
CTRp(click|impression,campaign,user)
其中条件中的impression包括了与该次展示机会相关的数据,比如用户信息;
campaign包括了广告活动的相关数据。
2.实时竞价的调整根据竞价策略以及历史竞价数据调整实际竞价。
2.2.1广告展示估值
为了准确地评估每次广告展示的价值,需要对该广告的点击率进行预测。
初次使用系统时,由于缺乏获胜的历史竞价信息,可以使用默认的点击率,如:
该品牌往常的点击率或其他平台媒体经验值等。
随着历史数据的增加,需要根据用户和媒体等信息,对每次展示机会预测点击率。
广告
当获得足够多的历史数据时,可以利用媒体特征信息(如:
广告位置等),用户特征(如:
年龄,兴趣等)活动特征(如:
创意,关键字等)构建点击率预测模型。
由于特征属性信息非常多,首先需要进行属性特征提取,获得有价值的属性特征。
然后根据历史数据,构建点击率预测模型。
当获得一个展示机会的时候,针对每个广告活动,根据用户和媒体的属性值进行点击率预测。
图4点击率预测流程
2.2.1.1特征提取
获胜
在一个广告系统中,每一次出价和服务事件,包括广告机会,拍卖的获胜者,以及浏览该广告展现的用户都能够被记录。
每一个广告机会通过其属性进行描述,包括url,出版商,广告位置以及用户统计信息,geo位置信息信息包括获胜的竞价值,实际的花费等。
通常,有很多的目标属性值。
它们中的大多数是复杂的布尔逻辑规则来匹配广告商想作为目标的广告库存,作为竞价需要考虑的因素也不应过多,造成算法的复杂程度过大,难以满足实时竞价的时间要求。
因此,特征选择是系统中至关重要的一个因素。
在选择特征的时候,有两个方面的方法可以选用。
1)经验法。
通过对行业的了解及属性的分析,对属性进行筛选。
2)采用适当的算法对属性对竞价的影响进行分析,计算每个属性对竞价的影响程度。
选择影响因素大的属性作为特征属性。
表3需要考虑的特征属性信息
媒体id
投放类型
广告所属频道
活动创意
广告主id
广告类型
广告位的可视性
活动人群属性
消费水平
地理信息
我们采用基于过滤的Fast-Correlation(FCBF)方法选择特征子集[1],该方法对处理特征数目较大时非常有效。
其基本原理描述如下:
设数据集D有n条记录,且每条记录由m个非目标特征和一个目标特征C来刻画。
如果非目标特征与目标特征之间的相关性过低(给定阈值),则将该特征作为不相关特征去除,如果两个非目标特征之间的相关性过大,超过了这两个特征与目标特征的相关性时,则认为两个特征之间存在冗余,这两种情况均需要进行删除。
FCBF是一个确定性算法来消除与目标值相关度较低的属性或非目标属性过度相关的属性冗余。
它能使我们在很大程度上消减特征搜索时间。
它依据对称不确定性计算特征和目标值的相关性,定义如下:
IG(X|Y)
SU(X,Y)2
H(X)H(Y)
其中IG是信息增益(InformationGain),H是熵(Entropy)。
GIX(Y|)的值是Y给X带来的信息增益,并且IG(X|Y)IG(Y|X)。
SU是IG的一个归一化值。
通过对目标属性与非目标属性及非目标属性之间SU的计算,在给定的阈值基础上,进行属性选择。
2.2.1.2点击率预测
在特征子集选择的基础上,对点击率进行预测。
点击率预测问题可以看成是一个分类问题,把(媒体,广告活动,用户)看成是一个多元组,针对每一个多元组,有一个预测目标,是否点击。
该问题可以看成是一个典型的逻辑回归问题。
假设有n个训练样本集,D{(fj(pj,aj,uj),cj)}nj1,其中fj(pj,aj,uj)d表示由多元组(媒体,广告
活动,用户)属性值构成的一个d维向量,cj{0,1}是相应的分类标签(+1,点击,或者0:
没有点击)。
给定一个媒体p,广告活动a,以及用户u,需要计算点击的概率p(c|p,a,u)。
采用逻辑回归模型,表示形式如下:
p(c|p,a,u)d1
1exp(i1wifi(p,a,u))
其中fi(p,a,u)表示从多元组(p,a,u)获得的第i个属性的值,wiw关于它的权重。
给定训练样本集合,模型通过减少数据中的总损失计算权重向量w,公式如下:
dd
nwifij(pj,aj,uj)wifij(pj,aj,uj)
f(w)L(w)[cjln(1ei1)(cj1)ln(1ei1)]
j1
可以用L-BFGS算法[3]求解这种大规模的凸优化问题。
具体方法如下。
L-BFGS算法步骤如下:
Step1:
选初始点w0,允许误差0,存储最近迭代次数m(一般取6);
Step2:
k0,H0I,rf(w0);
njxjjxj
其中:
令xj=fj(pj,aj,uj),则f(w)[cjxwTxj(cj1)x-wTxj]。
j11+e1+e
Step3:
如果f(wk1),则返回最优解wk1,否则转Step4;
(注:
||x||=(in=1|xi|2)2)
Step4:
计算本次迭代的可行方向:
pkr;
Step5:
计算步长k0,对下面式子进行Backtracking线性搜索:
f(wkkpk)minf(wkpk);
Step6:
更新权重w:
wk1wkkpk;
Step7:
如果
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- RTB 实时 竞价 算法