日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

OCPC 广告算法在凤凰新媒体的实践探索

發(fā)布時(shí)間:2024/1/23 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OCPC 广告算法在凤凰新媒体的实践探索 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本次分享的題目為 OCPC 廣告算法在鳳凰新媒體的實(shí)踐探索,主要內(nèi)容包括:

  • 背景介紹

  • CVR 預(yù)估

  • 二價(jià)機(jī)制和智能出價(jià)

  • OCPC 算法

  • 技術(shù)架構(gòu)

背景介紹

1. 鳳羽簡介

鳳羽是鳳凰衛(wèi)視程序化廣告變現(xiàn)優(yōu)質(zhì)品質(zhì)曝光平臺(tái),匯聚了鳳凰網(wǎng)、手機(jī)鳳凰網(wǎng)、鳳凰新聞客戶端、鳳凰視頻客戶端等多項(xiàng)業(yè)務(wù),每天為鳳凰網(wǎng)提供20億次優(yōu)質(zhì)流量的曝光。

2. 什么是 OCPC

OCPC 是效果廣告最近兩年比較好的業(yè)務(wù)模式,廣告主關(guān)心的還是成本 ROI,同時(shí)能跑量。?

CPC 按點(diǎn)擊付費(fèi),廣告主基本都接受這種付費(fèi)方式。本質(zhì)上,廣告主會(huì)根據(jù)鳳羽的 CPC 消耗,核算他的轉(zhuǎn)化成本。所以廣告主為了優(yōu)化這個(gè)成本,他可能調(diào)低 CPC,但是搶不到量;選擇做人群、時(shí)間定向,基于經(jīng)驗(yàn)論或者數(shù)據(jù)反饋;或者跑人群包等等。

相比傳統(tǒng)的 CPC 業(yè)務(wù)效果廣告,OCPC 本質(zhì)上,是通過算法把優(yōu)化工作替廣告主做了。而且由于有更好的手段,所以效果更好。OCPC 還是按照點(diǎn)擊付費(fèi),但是 OCPC 一般情況下,客戶不再出點(diǎn)擊價(jià),出的是目標(biāo)成本價(jià) CPA。OCPC 一般分第一階段和第二階段。第一階段用于數(shù)據(jù)的冷啟動(dòng),第二階段用于積累數(shù)據(jù)。

3. 定義問題?

CPA 有兩個(gè)目標(biāo):

目標(biāo)1:轉(zhuǎn)化率上升,轉(zhuǎn)化成本下降, ECPM 上升,從而提高客戶轉(zhuǎn)化率。

目標(biāo)2:成本穩(wěn)定,消耗穩(wěn)定,從競價(jià)機(jī)制上提出優(yōu)化點(diǎn)。

相對(duì)應(yīng)的,我們的目標(biāo)是在客戶指定成本的情況下,每天相對(duì)穩(wěn)定的跑量。

我們提出了三種優(yōu)化手段:

  • 二價(jià)機(jī)制,二價(jià)機(jī)制指的是出價(jià)格搶這次的流量,只需支付第二名的價(jià)格。

  • 智能出價(jià),相比二價(jià)機(jī)制的自然分配,智能出價(jià)是一種流量的更積極分配。會(huì)根據(jù)目標(biāo),進(jìn)行智能的出價(jià)操作。

  • CVR ( 轉(zhuǎn)化率 )?預(yù)估,CVR 預(yù)估是整個(gè)階段的基礎(chǔ),問題是 CVR 預(yù)估的樣本非常稀少,需要做到多準(zhǔn)確?

CVR 預(yù)估

由于在數(shù)據(jù)非常稀少的時(shí)候,很難做出準(zhǔn)確和泛化的 CVR 預(yù)估,而 OCPC 可以完成。因?yàn)槲覀冇玫搅硕r(jià)機(jī)制,搶到的流量是第二名的價(jià)格,不過只要 CVR 的偏差可控,比如小于二價(jià)的 Gap,也能獲得不錯(cuò)的成本控制。第二層面是 CVR 預(yù)估雖然有不準(zhǔn)的成分,但我們可以通過智能出價(jià)來做經(jīng)驗(yàn)控制,比如拿轉(zhuǎn)化率高的部分,也可以把成本降下,從這個(gè)角度分析,CVR 預(yù)估不用特別準(zhǔn)確。

關(guān)于 CVR 數(shù)據(jù)稀疏的問題。新的客戶在冷啟動(dòng)階段的轉(zhuǎn)化不到100個(gè),使用不到100個(gè)的轉(zhuǎn)化建立用戶的轉(zhuǎn)化率的預(yù)估,這個(gè)問題是比較困難的。其次,點(diǎn)擊轉(zhuǎn)化率與曝光轉(zhuǎn)化率其實(shí)不一致,這是一個(gè)漏斗序列,先曝光再點(diǎn)擊再轉(zhuǎn)化。

如果用點(diǎn)擊行為樣本訓(xùn)練模型行預(yù)估點(diǎn)擊轉(zhuǎn)化率,在線上會(huì)出現(xiàn)數(shù)據(jù)不一致的情況,在數(shù)據(jù)樣本比較小的時(shí)候,會(huì)有很大偏差。曝光轉(zhuǎn)化率解決了樣本不一致的問題,但是考慮到數(shù)據(jù)稀疏,建模后偏差過大,這種方法被棄用。

做過數(shù)據(jù)分析,發(fā)現(xiàn)點(diǎn)擊率與轉(zhuǎn)化率存在相關(guān)性,可以考慮將 CTR 與 CVR 一起聯(lián)合訓(xùn)練聯(lián)合建模,它們肯定有很多特征信息可以共用的。比如通過 weightedLR 做 loss 改造,在推薦等其它項(xiàng)目中有過不錯(cuò)的效果,后續(xù)可以一試。

最后,是構(gòu)建一個(gè)模型還是多個(gè)模型?是分一個(gè)客戶建模還是考慮同行業(yè)同目標(biāo)一起建模?關(guān)鍵還是在于業(yè)務(wù)目標(biāo)和數(shù)據(jù)情況:

OCPC 追求單個(gè)客戶的完成率,要為單個(gè)客戶做 ROI 達(dá)成和算法歸因,同時(shí)各個(gè)客戶之間的差異很大,這和全局最優(yōu)化不一樣。從這個(gè)角度出發(fā),在考慮很多方法之后,決定為每個(gè)客戶單獨(dú)建模。所以會(huì)有很多模型,有很多工程上的版本控制,會(huì)考慮泛化與工程準(zhǔn)確度的需求,我們會(huì)為相似的用戶做一些先驗(yàn)的平滑,來提升準(zhǔn)確度。后續(xù) OCPC 的客戶非常多的時(shí)候,可以考慮同一個(gè)行業(yè),同一轉(zhuǎn)化目標(biāo)的類型一起建模,數(shù)據(jù)的稀少情況也能得到一定緩解。

我們目前的 CVR 預(yù)估的方法,借鑒 yahoo 的論文,采用一種在線學(xué)習(xí)的基于特征子空間的 bayes 平滑算法,并融合試探、分裂策略。步驟分為以下五步:

① GBDT 訓(xùn)練得到若干顆樹,形成多種特征子空間 ( tree );

② 不同廣告采用自己樣本驅(qū)動(dòng)每個(gè)子空間 ( tree ),計(jì)算 CVR ( beta 分布 ),判斷置信度;

③ 在線學(xué)習(xí):進(jìn)行 CPC 模式的退化;

④ 在線學(xué)習(xí):分裂子空間和試探子空間;

⑤ 相似廣告會(huì)做貝葉斯平滑,提升準(zhǔn)確度提升泛化性能。

下面是關(guān)于算法的一些細(xì)節(jié),簡單的說用 GDBT 對(duì)樣本和特征做隨機(jī)采樣,然后用隨機(jī)采樣出來的多對(duì)異構(gòu)的多棵樹,從里面提煉出各個(gè)特征子空間,然后對(duì)這些特征子空間,每一個(gè)廣告、每一個(gè)客戶,我會(huì)單獨(dú)用自己樣本探索這些特征子空間,在里面做置信度判斷、CVR 預(yù)估、試探、分裂策略,來保證 CVR 的準(zhǔn)確性和泛化性能。整個(gè)算法在實(shí)現(xiàn)的過程中還是存在一些問題的,大概列出了以下幾個(gè)問題:

① 為什么不采用 GBDT 的預(yù)估?

希望通過在線學(xué)習(xí)和置信度控制,來得到一個(gè)可以業(yè)務(wù)進(jìn)化的有效模型和策略;但是,GBDT 仍然是一個(gè)有效的預(yù)估,可以考慮結(jié)合;

② GDBT 如何構(gòu)建樹?選多少顆樹?

原生辦法利用 LightGBM 特征的采樣,第二種方法是人工做交叉,去選取特征,在實(shí)踐中應(yīng)該選多少棵樹,也是看具體業(yè)務(wù)情況。我們的經(jīng)驗(yàn)是一般用16顆樹。

③ 如何多顆樹的多個(gè)子空間給出的 CVR,組合出新的 CVR?有以下的幾種做法:

->?取平均值。

->?參考每個(gè)子空間 CVR 的方差,給出加權(quán)平均 ( yahoo )。

->?參考每個(gè)子空間 CVR 的方差,子空間顆粒度做加權(quán)平均,子顆粒太大,方差就大,偏差也會(huì)大。

->?取 CVR 的最大和最小,最大值不推薦,訓(xùn)練模型是右偏的,本來是高估的,用最大值高估現(xiàn)象更嚴(yán)重,會(huì)高估用戶成本,最小值想對(duì)安全,但是最小值可能跑不出量。

在后續(xù)的實(shí)踐中,我們發(fā)現(xiàn)做 LR 集成還是一個(gè)更通用的模式。精度會(huì)高一些,同時(shí)可以將多個(gè)相似客戶一起建模,提升一定的泛化能力,也減少了模型數(shù)量。

④ 多顆樹中,有的子空間置信,有的不置信,如何選擇試探、退化等策略?

->?冷啟動(dòng)階段數(shù)據(jù)太少,要退化到 CPC 模型,平滑了 OCPC 的第一階段和第二階段;

->?相似廣告的子空間數(shù)據(jù)要做貝葉斯平滑,做 MLE 求解;

->?試探策略,計(jì)算置信上界,樂觀估計(jì),促使拿量;用置信上界。系統(tǒng)中有一個(gè)試探系數(shù)來控制。實(shí)踐來看,當(dāng)采用適當(dāng)?shù)脑囂较禂?shù)時(shí)候,客戶的成本和平臺(tái)的 ECPM 能有一個(gè)雙贏。所以這個(gè)試探系數(shù)可以作為一個(gè)策略學(xué)習(xí)部分后續(xù)優(yōu)化。

可以通過在線學(xué)習(xí),進(jìn)行快速試探。在線學(xué)習(xí)的一個(gè)很大的優(yōu)點(diǎn)是可以提升準(zhǔn)確度:

一開始樣本特別稀少,CVR 預(yù)估 bias 很大,需要快速學(xué)習(xí)分裂,找到更置信更細(xì)化的子空間。另外,當(dāng)競價(jià)環(huán)境出現(xiàn)變化的時(shí)候,CVR 預(yù)估的偏差會(huì)大大增加,導(dǎo)致 OCPC 失敗,比如在節(jié)假日。

比如,在正常情況下,可以拿到左邊完整的特征分布的流量。但是當(dāng)競價(jià)變得激烈之后,同樣的模型和策略,我只能拿到轉(zhuǎn)化率很低的那部分流量,實(shí)際 CVR 的偏差就會(huì)很大。這是很失敗的一個(gè)案例,在線學(xué)習(xí)能大大提高 CVR 的準(zhǔn)確度。

試探策略可以加快業(yè)務(wù)進(jìn)化和 CVR 收斂。基于試探策略,將流量分配給不置信的子空間。它有兩點(diǎn)好處,如下:

① 節(jié)省 OCPC 的試探彈藥。將預(yù)算更多投放給可能有高轉(zhuǎn)化率的子空間;能加快 CVR 預(yù)估的收斂速度,業(yè)務(wù)快速進(jìn)化到第二階段;

② 試探有一個(gè)刷新人群的效果;偏向于給新人群。

同時(shí),實(shí)踐中發(fā)現(xiàn),試探能做為一個(gè)有效的策略,來影響最終的多目標(biāo)達(dá)成,所以還是一個(gè)很好的智能調(diào)價(jià) strategy。

試探策略我們采用的是推薦常用的 UCB,為了避免樣本過少,所有做了平滑,取威爾遜的置信上界。這樣如果特征空間不置信,我們傾向于給它足夠多的試探,就可以讓客戶第一階段能更快的收斂。實(shí)際中,如果直接用置信上界去試探,由于太高的 CVR 值,可能出現(xiàn)跑量太快的異常情況。所以 CVR 預(yù)估值也不能太高,需要做一個(gè)上界的約束。

在線學(xué)習(xí)有一個(gè)很明顯的問題,轉(zhuǎn)化其實(shí)是有很強(qiáng)的樣本的延遲,不同的轉(zhuǎn)化目標(biāo),不同商品,他的轉(zhuǎn)化周期不一樣。比如說 app 的下載轉(zhuǎn)化是很快的,app 的激活可能要延遲好幾天,我們在做在線學(xué)習(xí)的時(shí)候需要快速收斂,我們會(huì)以小時(shí)為單位對(duì)數(shù)據(jù)進(jìn)行校驗(yàn),然后開始做實(shí)時(shí)的返回學(xué)習(xí)。但是我們會(huì)對(duì)歷史數(shù)據(jù)做指數(shù)平滑,同時(shí)我們會(huì)每一天、每兩天、每三天為窗口的這段時(shí)間的數(shù)據(jù)重新,再重新做下全天的求證,樣本延遲帶來的偏差。

同時(shí)可以求解客戶轉(zhuǎn)化的概率的延遲分布,針對(duì)一個(gè)小時(shí)內(nèi)的樣本做權(quán)重上的求證。樣本延遲還會(huì)帶來一個(gè)問題,就是轉(zhuǎn)化歸因的問題,把轉(zhuǎn)化歸因到某一次點(diǎn)擊上。比如三天某一個(gè)用戶點(diǎn)擊了廣告并下載了 app,但是今天才實(shí)行了激活,這樣的激活的轉(zhuǎn)化是應(yīng)該歸因于三天前的點(diǎn)擊,還是現(xiàn)在這一次的點(diǎn)擊,這其實(shí)也需要自己取舍。

▌二價(jià)機(jī)制和智能出價(jià)

二價(jià)機(jī)制:在實(shí)際的過程中,OCPC 客戶成本的波動(dòng)性相當(dāng)大,同時(shí)消耗非常不穩(wěn)定,根本原因是 CVR 預(yù)估做不了太準(zhǔn)確(如果可以做的準(zhǔn)確就有更簡單的解決方案了)。我們會(huì)采用智能出價(jià),在二價(jià)基礎(chǔ)上會(huì)更積極,能幫客戶在高 CVR 上搶量,低 CVR 上丟量。智能出價(jià)帶來了更穩(wěn)定的成本ROI和客戶消耗,并平衡平臺(tái)和廣告主收益。

智能出價(jià):在多個(gè)客戶情況下,智能出價(jià)變成一個(gè)組合優(yōu)化的問題。可以參考阿里論文中貪婪方法求解,其中論文中的時(shí)間復(fù)雜度還可以優(yōu)化,可以使時(shí)間復(fù)雜度降低 log(N) 倍。

智能出價(jià)是一種很有效的一種手段,但是核心還是 CVR 預(yù)估要準(zhǔn)確,并需要找到一個(gè)合理的 CVR 期望。

關(guān)于 E(cvr) 的求解,阿里和新浪據(jù)說會(huì)采取用戶的多個(gè)競品對(duì)應(yīng)極限的轉(zhuǎn)化率。最好有多個(gè)競品,去掉多個(gè)競品中的最大值與最低值,然后取平均比較準(zhǔn)確。但是在實(shí)際業(yè)務(wù)開展的過程中,尤其是 OCPC 沒有足夠競品的時(shí)候,我們采用相對(duì)低效的手段,我們?nèi)】蛻舯旧硪呀?jīng)近似的廣告最近若干次的 CVR 預(yù)估,去除最高值與最低值的10%并取平均,這是一個(gè)低效的策略。

我們還在探索基于強(qiáng)化學(xué)習(xí)的動(dòng)態(tài)調(diào)價(jià)。但是這個(gè)需要有很大的流量來做支撐,所以不太好建模。

OCPC 算法及架構(gòu)

總結(jié)下 OCPC 算法策略的特點(diǎn):

① 業(yè)務(wù)進(jìn)化,包含試探和分裂的策略,我們并沒有明顯的 OCPC 第一階段;

② 在線學(xué)習(xí),可以有一個(gè)在線的校準(zhǔn) ( Calibration ) 效果,可以一定程度上降低偏差;

③ 在小樣本的情況下,通過評(píng)估置信度,在準(zhǔn)確和泛化中找到一個(gè)平衡,人工干預(yù)整個(gè)算法的進(jìn)程;

④ 整個(gè)算法有試探、分裂等策略,在實(shí)踐中有一個(gè)很快速、很明顯的優(yōu)化鏈路。

這是我們截取的客戶的案例,經(jīng)過短短的一周,用戶的 CPC 的消耗和成本就能快速穩(wěn)定下來,藍(lán)色是 CPC 跑出來的曲線,黃色是 OCPC 跑出的曲線,可以發(fā)現(xiàn) OCPC 比 CPC 的成本要低30%左右,同時(shí) OCPC 的波動(dòng)性也大大降低了,整個(gè)算法收斂的還是很快的 。

接下來談?wù)?OCPC 其他的細(xì)節(jié),除了對(duì)算法進(jìn)行常規(guī) AUC 評(píng)測、OE 評(píng)測和偏差評(píng)測之外,OCPC 還有很多的策略、方法和參數(shù)。如果都在線上開啟 AB 測試,成本太高;另外,線上測試樣本不足,用戶的轉(zhuǎn)化可能只有10幾個(gè)轉(zhuǎn)化,用10幾個(gè)轉(zhuǎn)化做 AB 測試,在統(tǒng)計(jì)上難以置信。

因此,我們采用虛擬測試的方法進(jìn)行測試。我們會(huì)對(duì)用戶一段時(shí)間內(nèi)歷史的競價(jià)數(shù)據(jù)進(jìn)行隨機(jī)采樣,把數(shù)據(jù)完全復(fù)原。然后,基于虛擬的競價(jià)數(shù)據(jù),針對(duì)我們新的方法和策略進(jìn)行虛擬測試,觀察采用新的算法,成本能否得到優(yōu)化。但是會(huì)有一個(gè)問題,這種方法無法完全對(duì)等。比如客戶的部分流量競價(jià)沒有成功,所以沒有曝光,這部分流量的后續(xù)點(diǎn)擊、轉(zhuǎn)化概率其實(shí)都是未知的。

完成上述所有的手段后, 我們必須承認(rèn)算法的不足,此時(shí)需要加入人工干預(yù)。干預(yù)手段包括:

① 對(duì)于已經(jīng)轉(zhuǎn)化的用戶應(yīng)該去掉,作弊的用戶也去掉;

② 如果客戶效果不好,可以采用刷新,促使用戶流轉(zhuǎn)起來;

③ 適當(dāng)補(bǔ)量,對(duì)有問題的客戶,可以通過人群補(bǔ)包補(bǔ)量,其他APP的流量引入;

④ 運(yùn)營根據(jù)經(jīng)驗(yàn)來做一些臨時(shí)策略。

根據(jù)算法的表現(xiàn),比如結(jié)算的 CPC 變低,可能是 CVR 預(yù)估偏低,這樣的情況下可以做一定的修改。所以我們是用進(jìn)化的算法+人工干預(yù)來保證每個(gè)客戶的 RI。

最后是我們 OCPC 的技術(shù)架構(gòu)落地。整個(gè)過程的關(guān)鍵是在線學(xué)習(xí),融合了試探、分裂、凈化的策略,在線追求好的工作鏈路,需要做些監(jiān)控保證工作正常,可以構(gòu)建虛擬側(cè)環(huán)境,在線上引入 AB 測試,整個(gè)架構(gòu)相對(duì)簡單,預(yù)估部分與 CTR 工程相似,包括特征工程、模型。

未來工作

關(guān)于下一步的改善方案:

① 數(shù)據(jù)稀少,通過落地頁的停留時(shí)長,來改善數(shù)據(jù)的稀疏性,停留時(shí)長與轉(zhuǎn)化率有很重要的關(guān)系;

② 提升現(xiàn)有算法精度和泛化能力。考慮加入 GBDT 的預(yù)估值;采用特征和樣本,提高 tree 的異構(gòu)性;

③ 嘗試采用強(qiáng)化學(xué)習(xí)的算法。對(duì)狀態(tài)、動(dòng)作空間都做一些限制,并引入確定的概率。這樣在流量不大的場景下,是不是也可以求解。

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的OCPC 广告算法在凤凰新媒体的实践探索的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。