https://wnzhang.net/share/rtb-papers/delayed-feedback.pdf
1. 背景
- Display Advertising 展示广告
- 广告主在平台提供的网页等界面中发布图片形式的在线广告
- 广告的售卖形式
- DSP (demand-side platforms) 需求方平台:DSP 是一个系统,也是一种在线广告平台。它服务于广告主,是从广告交易平台(AdExchange)来通过实时竞价的方式获得对广告进行曝光的机会,DSP通过广告交易平台对每个曝光单独购买,即采用CPM(Cost Per Impression)的方式获得广告位。
- RTB (Real-time bidding exchanges) 实时竞价:是一种利用第三方技术在数以百万计的网站上针对每一个用户展示行为进行评估以及出价的竞价技术。
- Ad Exchange首先要向DSP发竞价(bidding)请求,告知DSP这次曝光的属性,如物料的尺寸、广告位出现的URL和类别、以及用户的Cookie ID等;DSP接到竞价请求后,也必须在几十毫秒之内决定是否竞价这次曝光, 如果决定竞价,出什么样的价格,然后把竞价的响应发回到Ad Exchange。如果Ad Exchange判定该DSP赢得了该次竞价,要在极短时间内把DSP所代表的广告主的广告迅速送到用户的浏览器上。整个过程如果速度稍慢,Ad Exchange就会认为DSP超时而不接受DSP的竞价响应,广告主的广告投放就无法实现。
- 广告的计费方式
- CPM (Cost per mille) 千次展示成本
- 适用条件为广告主目标为将广告咨询传播给目标观众,所以按曝光计费;曝光
- CPC (Cost per click) 千次点击成本
- 适用条件为广告主不仅需要广告曝光给目标观众,还需要目标观众点击进入他们的网页才会向广告平台付费;曝光⇒点击
- CPA (Cost per action) 每行动成本 = 总成本 / 总转化次数 <= 本文关注的场景
- 适用条件为广告主对进入网页后的观众行为需要满足预期要求(转化conversion)的情况,如目标观众购买了产品、订阅了服务等才会向广告平台付费;曝光⇒点击⇒转化
- eCPM (effective cost per mille): 千次展示广告收入
- 在广告平台展示时,通常会将不同的计费方式(如CPC/CPA等)折算为eCPM来评估是否展示广告与计费额度;主要用于广告平台优化广告投放效果;
- eCPM = 1000次曝光 * 广告曝光点击率ctr * 广告点击后转化率 cvr * 单位转化收入(广告主出价bid)
- 广告收入拆解公式 revenue = PV * 出广告的pv占总pv的比率(pvr) * 单位网页出广告的条数(asn) * eCPM / 1000
- eCPM (CTR & CVR) 预估对于广告平台至关重要
- CTR预估与CVR预估对比
- Label积累窗口期不同
- CTR:点击发生在曝光后的较短的时间窗口内,立即
- CVR:转化发生在曝光后的较长的时间窗口内,如30天
- 难点:CVR预估模型训练集中Label积累窗口期(matching window)的选择问题
2. 相关工作与本文建模思路
- 样本Label设计思路
- 不使用以往CTR类似的正负样本label的方案
- 采用的方案:positive & unlabeled data
- 当已有转化发生时,样本为 正样本
- 当暂无转化发生时,样本为 unlabeled样本 ⇒ 不是负样本
- 与以往采用 positive & unlabeled data 建模的区别
- 以往:假设对于丢失label的正样本,其丢失label的概率是常数
- 本文:假设对于丢失label的正样本,其丢失label的概率与时间相关,当前时间距点击时间越近,丢失label的概率越大;
- ex. 当前时间距离点击时间已经过去一年了还没积累到转化反馈,说明该样本是正样本的概率很低;
- ex. 当前时间距离点击时间刚过去1天暂时还没积累到转化,说明该样本是正样本的可能性还是有一些的(比过去一年都没积累到转化反馈的样本更可能是正样本);
- 与survival data analysis 对比
- survival data analysis
- 研究病人在开始治疗直至死亡的存活时间分布问题
- 这里记录的“存活时间”是存在被截断的(censored)可能的,比如病人中途退出这项研究,或者在研究周期结束后病人仍然活着;
- 病人真实的存活时间 survival time ≥ 有记录的 censored time
- CVR预估
- 相同:记录的延迟转化同样存在被截断的可能:如果一条样本从曝光 到 成为训练样本开始训练前,还没有完成转化;之后有转化的话,那这个后期的转化是没有纳入到此次模型训练中的;
- 不同:
- survival data analysis 中病人终有一天会死亡,即存活时间有上限;
- 在CVR预估中,也许永远都不会有转化发生,即延迟转化的时间可能是无穷大;
- CVR 延迟转化建模设计:两个模型共同作用
- 模型1:预估是否会有转化:cvr预估
- 模型2:如果有转化发生,预估转化发生时间间隔
- CVR 延迟转化的两种情况
- 情况1:已有转化
- 情况2:暂无转化
- 未来可能会有转化:预估延迟转化的时间间隔
- 未来也不会有转化
3. 延迟转化模型
3.1 Label设定
- 当多个click 带来同一个转化cv时,取最后一次点击 last click
- 当一个click 带来多个转化cv时,取最早的一次转化 first conv