【轉載】廣告計算——平滑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的值,我們需要對分別對IC進行平滑,得到平滑後的ΠĈ 。其計算方法如下:

{Ĉ 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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章