【转载】广告计算——平滑CTR

原文地址:http://m.blog.csdn.net/article/details?id=50492787


一、广告计算的基本概念

1、广告的形式

在互联网发展的过程中,广告成为了互联网企业盈利的一个很重要的部分,根据不同的广告形式,互联网广告可以分为:

  • 展示广告(display ads)
  • 赞助商搜索广告(sponsored search)
  • 上下文广告(contextual advertising)

2、竞价模型

对于在线广告,主要有如下的几种竞价模型:

  • 按展示付费(pay-per-impression):直观来讲,按展示付费是指广告商按照广告被展示的次数付费,这是一种最普遍的竞价模型;
  • 按行为付费(pay-per-action):按行为付费是指只有在广告产生了销售或者类似的一些转化时,广告商才付费;

当然,对于以上的两种竞价模型各有其局限性:在按展示付费模型中,压根没有考虑到广告的效果,只是按照广告流量进行售卖的模式;对于按行为付费模型,虽然其考虑到了广告效果,但其的条件是产生了某种转化,这种转化有时很难追踪和记录。此时,为了解决这两种模型的局限性,通常可以按照一个用户是否会点击广告作为最终的度量标准,即按点击付费模型(pay-per-click)。

  • 按点击付费(pay-per-click):根据用户是否会点击广告来付费。

这里便出现了一个重要的概念,便是广告点击率(the click-through rate, CTR)。

3、广告点击率(CTR)

广告点击率CTR是度量一个用户对于一个广告的行为的最好的度量方法,广告点击率可以定义为:对于一个广告的被点击(click)的次数于被展示(impression)的次数的比值。

CTR=#click#impression

广告点击率对于在线广告有着重要的作用,在网络中,对于有限的流量,通常要选择出最优质的广告进行投放,此时,CTR可以作为选择广告和确定广告顺序的一个重要的标准。

但是在计算CTR时,由于数据的稀疏性,利用上述的计算方法得到的CTR通常具有较大的偏差,这样的偏差主要表现在如下的两种情况:

  • 1、例如展示impression的次数很小,如 1 次,其中,点击的次数也很小(这里的很小是指数值很小),如 1 ,按照上述的CTR的计算方法,其CTR为 1 ,此时的点击率就被我们估计高了;
  • 2、例如展示的次数很大,但是点击的次数很小,此时,利用上述的方法求得的CTR就会比实际的CTR要小得多。

出现上述两种现象的主要原因是我们对分子impression和分母click的估计不准确引起的,部分原因可能是曝光不足等等,对于这样的问题,我们可以通过相关的一些广告的展示和点击数据对CTR的公式进行平滑处理。

二、CTR的平滑方法

1、数据的层次结构——贝叶斯平滑

假设有 N 个相同的账号 (a1,a2,,aN) ,对于网页 p ,对于这样的网页和账号组 (p,ai) 。假设 (C1,C2,,CN) 为观测到点击数据, (r1,r2,,rN) 为隐含的CTR的值,为点击率,点击率在此是一个隐含的参数,广告是否被点击满足二项分布,即 Binomial(Ii,ri) ,其中, Ii 表示广告被展示的次数。

贝叶斯思想认为,隐含的参数不是一个具体的值,而是满足某个分布,我们知道贝叶斯参数估计的基本过程为:

先验分布+数据的知识=后验分布

已知二项分布的共轭分布为Beta分布,对此,有以下的两点假设:

  • 1、对于一个广告,其点击 Ci 符合二项分布 Binomial(Ii,ri) ,其中, Ii 表示的是展示的次数, ri 表示的是广告被点击的概率;
  • 2、对于所有的广告,有其自身的CTR,其CTR满足参数是 α β 的贝塔分布 Beta(α,β)

假设有 N 个广告,广告被展示的次数为 (I1,I2,,IN) ,广告被点击的次数为 (C1,C2,,CN) ,上述的两个假设可以表示为如下的形式:

这里写图片描述

其对应的概率图模型为:

这里写图片描述

点击率 ri 不仅与 (Ii,Ci) 相关,而且与参数 α 和参数 β 相关,我们可以通过计算得到参数 α 和参数 β 的估计 α̂  β̂  ,一旦 α̂  β̂  被确定后,则 ri 的估计为:

ri=Ci+α̂ Ii+α̂ +β̂ 

所以,现在,我们需要求解参数 α 和参数 β 的估计 α̂  β̂ 

点击 C 的似然函数为: (C1,C2,,CNI1,I2,,IN,α,β) ,由于点击的次数以及展示的次数之间都是相互独立的,因此上式可以表示为:

(C1,C2,,CNI1,I2,,IN,α,β)=i=1N(CiIi,α,β)=i=1Nri(Ci,riIi,α,β)dri=i=1Nri(Ci,ri,Ii)(riα,β)dri

已知

(Ci,ri,Ii)=rCii(1ri)IiCi

(riα,β)=Γ(α+β)Γ(α)Γ(β)rα1i(1ri)β1

则上式可以写成:

=i=1Nri(Ci,ri,Ii)(riα,β)dri=i=1NrirCii(1ri)IiCiΓ(α+β)Γ(α)+Γ(β)rα1i(1ri)β1dri=i=1NriΓ(α+β)Γ(α)Γ(β)rCi+α1i(1ri)IiCI+β1dri=i=1NΓ(α+β)Γ(Ii+α+β)Γ(Ci+α)Γ(α)Γ(IiCi+β)Γ(β)

此时,我们需要求得该似然函数的最大值,首先,我们对上述的似然函数取对数,即为:

log(C1,C2,,CNI1,I2,,IN,α,β)

将上述的log似然函数分别对 α β 求导数,即为:

dlog(C1,C2,,CNI1,I2,,IN,α,β)

dlog(C1,C2,,CNI1,I2,,IN,α,β)

其中, Ψ(x)=ddxlnΓ(x) 。通过the fixed-point iteration方法,可以得到如下的结果:

αnew=αNi=1[Ψ(Ci+α)Ψ(α)]Ni=1[Ψ(Ii+α+β)Ψ(α+β)]

βnew=βNi=1[Ψ(IiCi+β)Ψ(β)]Ni=1[Ψ(Ii+α+β)Ψ(α+β)]

上述的求解过程是一个迭代的过程,一旦求出了参数 α 和参数 β 的估计 α̂  β̂  ,便可以求出点击率的估计:

ri=Ci+α̂ Ii+α̂ +β̂ 

2、数据在时间上的一致性——指数平滑

相比上述的贝叶斯平滑,指数平滑相对要简单点,对于CTR中的点击,这是个与时间相关的量,假设对于一个广告,有 M 天的点击和展示数据 (I1,I2,,IM) (C1,C2,,CM) 。若要估计第 M 天的CTR的值,我们需要对分别对 I C 进行平滑,得到平滑后的 Π Ĉ  。其计算方法如下:

{Ĉ j=CjĈ j=γCj+(1γ)Ĉ j1 if j=1 if j=2,,M

{Πj=IjΠj=γIj+(1γ)Πj1 if j=1 if j=2,,M

其中, γ 称为平滑因子,且 0<γ<1 。对于上述的公式,若要计算第 M 天的平滑点击,可以得到下面的公式:

Ĉ M=γCM+(1γ)Ĉ M1=γCM+(1γ)(γCM1+(1γ)Ĉ M2)=γCM+γ(1γ)CM1++γ(1γ)jCMj++γ(1γ)M1C1

参考文献

  • Click-Through Rate Estimation for Rare Events in Online Advertising.Xuerui Wang, Wei Li, Ying Cui, Ruofei (Bruce) Zhang, Jianchang Mao Yahoo! Labs, Silicon Valley United States

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值