面试关于CTR预测

来源:互联网 发布:单片机的引脚功能 编辑:程序博客网 时间:2024/04/29 21:12

原文网址:
https://zhuanlan.zhihu.com/p/21479297

短时间内预测CTR?

如何在短时间内给新广告做一个靠谱的CTR预估?能不能直接用短时间内的点击数据除以曝光数据得到CTR的预估呢?答案是不行。通常根据广告和媒体的不同,点击率CTR一般在0.1%到1%之间浮动,那么假如一个广告在1000次曝光中产生了3次点击,估计它的点击率是0.3%显然是有很大犯错的可能性,就好比抛硬币,为了使得实验预测的正面可能性尽可能接近真实,需要重复大量的试验,比如:10000次,才能保证足够的精确度。广告和抛硬币最大的不同在于,广告的曝光是需要成本的,不可能投入过多的曝光来做CTR预估,否则浪费大量的曝光资源。

CTR预测误差的影响

在曝光数很少的情况下,如何尽可能降低CTR预测不准带来的负面影响。那我们就分析一下把CTR估计高和估计低分别有哪些负面影响。如果把CTR估计的过高,那么ECPM也会被计算的偏高,所以这个广告就会出现在它原本无法占有的很好的广告位上,造成曝光数的浪费。但这种情况并不会持续很久,因为处于较好的广告位会让该广告短时间内积累更多的曝光,随着曝光数的增加对该广告的CTR估计会越来越准,直到之前预估的较高的CTR被慢慢修正趋近于其真实CTR。那么,如果把CTR估计的过低会有什么负面影响呢?很容易推断该广告的ECPM会偏低,它会被放在更差的位置上,导致起积累曝光数据的速度变慢,甚至无法出现在任何广告位上。因为广告是具有时效性的,在起步阶段对CTR较低的预估很可能会导致该条广告永久的沉溺,无法创造任何价值。综上所述,结论一目了然,在CTR无法准确预估的情况下,把CTR估计高的负面影响远小于把CTR估计低产生的负面影响。

解决方案

问题的分析先告一段落,我们来讨论下如何解决这些问题。接着刚才的问题,既然把CTR估计的高一些负面影响更小,那么我们就需要在训练初期给预估的CTR做一定的加成,以降低把CTR预估偏低的可能性。简单的加一个因子或者乘以一个放大因子不合理的地方在于对所有广告的CTR预估都一视同仁,但是每个广告获得的曝光都不同,其真实CTR也不同,用一个通用的放大方法一定不是最优解。让我们换一个角度,把广告在某一次曝光中是否被点击看作一个伯努利实验,我们重复进行很多次这样的试验可以得到一个对CTR的估计,同样的我们也可以得到它在某一个置信水平上的置信区间,如果我们希望把CTR估计的尽量大一些,我们为什么不能用它的置信区间上界作为它的估计值呢?

为什么LR可以用来做CTR预估?

把被点击的样本当成正例,把未点击的样本当成负例,那么样本的ctr实际上就是样本为正例的概率,LR可以输出样本为正例的概率,所以可以用来解决这类问题,另外LR相比于其他模型有求解简单、可解释强的优点,这也是工业界所看重的。(思考未点击的样本一定是负样本吗?是否可以用PU learning求解。PU 学习,是一种半监督的二元分类模型,通过标注过的正样本和大量未标注的样本训练出一个二元分类器。)
0 0
原创粉丝点击