別裝了,算法知道你值多少錢

2 評論 8858 瀏覽 25 收藏 13 分鐘

好吧,一個標題黨的標題,但是本質(zhì)上也沒有任何夸大,算法的確知道你值多少錢,并決定向你展示什么樣的廣告。

自從Facebook引入oCPM出價以來,國內(nèi)的頭條廣告、微信廣點通、百度信息流都陸續(xù)推出了自己的oCPX出價,oCPX出價已經(jīng)成為主流廣告投放平臺的標配。

簡單而言,oCPX是一種出價機制,允許廣告主按照轉(zhuǎn)化行為成本出價;假設(shè)對于游戲類的廣告主,希望優(yōu)化App的激活,那么廣告主在投放系統(tǒng)中設(shè)置了激活成本之后,算法就會根據(jù)以往轉(zhuǎn)化數(shù)據(jù)和廣告主的出價,自動篩選有價值的人群,針對高激活概率的人提高出價贏得廣告曝光,對低激活概率的人群降低出價減少廣告曝光以減少廣告浪費。

常見的廣告出價方式還有CPM、CPC。

  • CPM:Cost Per Mille,每千次曝光成本,即按照曝光次數(shù)出價,如微信朋友圈視頻形式廣告在上海就按照¥180一千次曝光扣費,不管你是否點擊了廣告。這在短期內(nèi)顯然是最有利于媒體的,因為它不用care本次曝光是否有效;但是為什么說是短期?很簡單,廣告主又不是傻子,若發(fā)現(xiàn)廣告后續(xù)轉(zhuǎn)化一直很差,勢必會減少在該媒體的投放。
  • CPC:Cost Per Click,按照點擊出價,如果廣告只有曝光沒有點擊,就不扣費;看似比較公平,但是廣告主需要大量的測試,才能找到最優(yōu)的投放方法,其實還是有一部分點擊是浪費的,這對于媒體也是損失。

于是oCPX模式就應(yīng)運而生,它能幫助廣告主優(yōu)化更深層次的轉(zhuǎn)化行為,同時提升有效點擊,提高媒體受益。

這段時間在網(wǎng)上找到一篇淘寶的關(guān)于oCPC論文,邏輯很清晰,在這里簡單轉(zhuǎn)述一下。

文章細節(jié)很多,沒興趣看的同學(xué)只要關(guān)注以下幾點:

  1. 本次預(yù)估的點擊率*轉(zhuǎn)化率與歷史平均的點擊率*轉(zhuǎn)化率的比值,決定了系統(tǒng)出價調(diào)整的系數(shù);
  2. 淘寶的論文中,廣告保證eCPM最大和各方利益總和最大。

先定義:

  1. 出價:廣告主原始出價為b0,算法調(diào)整后的出價為b1(也就是我們經(jīng)常說的:“系統(tǒng)會自動調(diào)整出價”);
  2. 預(yù)估轉(zhuǎn)化價值p=pCTR*pCVR*v;v代表平均每次購買帶來的價值,可以假定是常數(shù);pCTR表示預(yù)估的廣告點擊率,pCVR表示預(yù)估的轉(zhuǎn)化率(如轉(zhuǎn)化行為可以定義為“購買”);
  3. 歷史轉(zhuǎn)化價值h=hCTR*hCVR*v;hCTR代表歷史廣告點擊率,hCVR代表歷史點擊后轉(zhuǎn)化率;淘寶實踐中,hCVR是用過去一段時間的競品廣告數(shù)據(jù)(估計是解決冷啟動的問題,如果賬戶已經(jīng)積累了轉(zhuǎn)化數(shù)據(jù),肯定會用廣告主自己的數(shù)據(jù)),利用pCVR預(yù)估模型進行計算,去掉最高&最低10%取均值得到的。

為了簡化說明,做兩個假設(shè):

  1. 假設(shè)廣告主的目標是保證(或者提高)ROI;
  2. 單個點擊ROI = (pCTR * pCVR * v)/ b0;b0是該廣告出價,比如廣告帶來的購買GMV除以該廣告的投放費用,即得到該廣告的ROI(為了簡化計算方式,假定廣告主出價即等于廣告點擊費用,即不考慮廣義次高價的邏輯,廣義次高價GSP機制可以參考此前的的文章)

要維持或者提升ROI,那么只需要保證 b1/b0 ≤ p/h。

b1代表算法優(yōu)化后的出價;舉個例子,假設(shè)本次曝光,預(yù)計能帶來1.5倍的轉(zhuǎn)化價值,那么只要優(yōu)化后的出價/廣告主出價小于等于1.5倍,那么整體的ROI是不會下降的;反之,若預(yù)估轉(zhuǎn)化價值低于歷史均值,那么降低出價;由于b0、p和h都已知,那么只需計算b1,滿足該約束即可。

真實廣告投放環(huán)境中,為了兼顧品牌安全和賬戶穩(wěn)定,將b1/b0的范圍控制在[1-α, 1+α]范圍之內(nèi),淘寶論文中將α值設(shè)置為0.4,即廣告最高出價不會超過廣告主設(shè)定的140%,下限也不會低于廣告主設(shè)定的60%。

  • 若p/h≥1,那么系統(tǒng)優(yōu)化后出價b1的下限l(b)=b0,出價上限u(b)=b0*min(1+α, p/h))(因為有ROI約束在,不能突破p/h的約束);
  • 若p/h<1,那么系統(tǒng)優(yōu)化后出價b1的下限是l(b)=b0*(1-α),上限是u(b)=b0。

通過以上約束,也就能實現(xiàn)我們經(jīng)常說的:對于轉(zhuǎn)化概率高的流量(p/h>1,即本次廣告轉(zhuǎn)化率比歷史平均轉(zhuǎn)化率要高)提高出價,獲得更高展現(xiàn)概率;反之,對于轉(zhuǎn)化概率低的流量(p/h<1)降低出價,減少展現(xiàn)機會。

那么問題來了,若多個廣告競爭,到底誰贏得此次出價?

廣告排序我們都知道采用了eCPM排序,eCPM=b0*pCTR,eCPM高者贏得廣告展現(xiàn)機會。那么在ROI約束下的,eCPM能夠取到的最大值即上限u(eCPM)=pCTR*u(b),eCPM能夠取到的最小值即下限l(eCPM)=pCTR*l(b);

淘寶給定的排序機制是:按照eCPM排序,同時保證各方利益總和最大。

各方利益總和的計算,淘寶給出了兩個公式:

f(1) = pCTR1 * pCVR1*V

f(2) = pCTR2 * pCVR2*V+β*CTR2*b0

f(1)計算的是廣告帶來的所有GMV;f(2)計算的是廣告帶來的GMV和平臺的廣告收益。需要指出的是,f可以擴展,因此可以優(yōu)化任何目標;這里認為f是單調(diào)遞增函數(shù),隨著系統(tǒng)調(diào)整后的出價b1提高,收益也提高。f(1)雖然沒有將b1作為參數(shù),但是假設(shè)b1的增加,能拿到更好的資源位從而帶來更高的CTR、更加優(yōu)質(zhì)的流量。

廣告排序過程如下(稍微有點繁瑣,請記住每個字母代表啥意思):

① 對候選廣告池子A中每一個廣告計算f(u(eCPM)),按倒序排序;即按照最高出價來計算f,由于假設(shè)f是b1的遞增函數(shù),那么按照b1的上限值來計算,理論上是能保證f最大,即保證各方收益總和最大;

② 計算所有備選廣告中,所有eCPM下限的最大值t=l(eCPM);

③ 按順序,找到第一個滿足u(eCPM)≥t的廣告k,k廣告贏得此次競價,并將該廣告移出A池子;即,只要某條廣告最高出價下的eCPM大于其他廣告的最低出價下的eCPM,就能贏得此次廣告曝光。這是為了保證媒體收益,如果只按照f排序而不考慮eCPM,那么可能對于媒體而言是一個虧本的買賣;

④ 比較剩下所有廣告的最大出價下的eCPM即u(eCPM)與上一個贏得廣告k的u(eCPM),取兩者當(dāng)中最小值,這樣就能保證已經(jīng)贏得展現(xiàn)機會的廣告k的eCPM,在所有候選廣告中是最大的;若廣告i的eCPM上限u(eCPM)被調(diào)整,也就意味著廣告i的eCPM上限u(eCPM)大于廣告k的u(eCPM),將其調(diào)整為廣告k的u(eCPM)。

此時,那么廣告i的出價同樣需要被調(diào)整,看淘寶的代碼更直觀一點:

  • 第一步:u(i-eCPM)=min(u(i-eCPM),u(k-eCPM));
  • 第二步:u(b)=min(u(b),u(i-eCPM)/pCTR);

第一步首先比較廣告i的上限eCPM與已經(jīng)贏得展現(xiàn)機會的廣告K的上限eCPM,取兩者 當(dāng)中最小值,這就能保證已經(jīng)贏得曝光的廣告k的eCPM是最大的。

第二步,更新廣告i的出價上限;如果u(i-eCPM)在第一步被更新了,那么廣告i的出價 在第二步也會被更新;需要注意的是,由于出價上限改變了,那么廣告i的f(u(eCPM)) 同樣會被更新(由于f()是一個單調(diào)遞增函數(shù),f()會減?。?;

至于這里為什么要調(diào)整剩余候選廣告上限eCPM,使其不高于勝選廣告的上限?我的理解是(不一定準確):首先是兼容eCPM排序機制,也就是保證了媒體收益最大化;其次,兼顧f(u())排序是為了保證平臺、廣告主和消費者的利益。

重復(fù)以上4個步驟,直至廣告數(shù)量填充滿所有廣告位,或者所有沒有廣告贏得該次展現(xiàn),此時結(jié)束循環(huán),并將所有廣告出價b1設(shè)置為u(eCPM)/pCTR,也就是所有廣告按照上限出價。

投放啟示:

① 單純從邏輯上看,真實出價是對廣告主最優(yōu)的策略。若廣告主最初出價b0小于其真實成本,那么拿不到預(yù)期的流量,這對廣告主不利;若最初出價b0高于其真實成本,這對拿量有好處,但是會導(dǎo)致模型會不斷往該出價水平去靠近(p(c|u,a)/h(c|u,a)不斷趨近于1),后期要控成本時勢必需要重新積累數(shù)據(jù)重新學(xué)習(xí);

② 開啟oCPC之前,需要穩(wěn)定的投放。換句話說,用戶轉(zhuǎn)化路徑是走得通且成本達到預(yù)期的。比如目前雖然激活成本達標,但是后續(xù)的轉(zhuǎn)化(注冊、購買、申請貸款等等)都還不達標,即使開啟oCPC去優(yōu)化激活意義也不大,因為這樣帶來的激活用戶后續(xù)轉(zhuǎn)化率也不會存在很大變化。

這是淘寶oCPC的思路細節(jié),我們跳出這些細節(jié),看看一條廣告從請求到展現(xiàn)涉及到的全過程:

oCPC到底是如何運轉(zhuǎn)的?

為了保證不丟失細節(jié),我直接把論文描述貼過來:Front Server接收到頁面曝光請求之后,將該用戶信息傳給Merger Server,Matching Server分析得到該用戶的特征(一連串的標簽),這些標簽被傳入Search Node Server檢索符合條件的候選廣告,此時候選廣告數(shù)量降低為400條左右。

Real-time Prediction Server預(yù)估得出pCTR和pCVR。Stragedy Layer包含oCPC的邏輯和GSP機制。經(jīng)過該邏輯層,贏得展現(xiàn)的廣告被Data Node Server和Smart Creative Service優(yōu)化,最后Front Server返回廣告元素并展現(xiàn)。

論文原文鏈接點此直達。

 

本文由 @余子申 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載

題圖來自Unsplash,基于CC0協(xié)議

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 有個疑問:預(yù)估單個點擊ROI = (pCTR * pCVR * v)/ b0 應(yīng)該是除以b1才對吧?

    來自廣東 回復(fù)
  2. 理論很充足的互聯(lián)網(wǎng)廣告講解,學(xué)習(xí)了。這是我的帖子:我精煉的Facebook廣告投放競價策略:單月投放1.1萬美金,獲客成本不到0.18美金 | 人人都是產(chǎn)品經(jīng)理
    http://m.22none.com/marketing/1494618.html

    來自上海 回復(fù)