Categories
程式開發

機器學習在微博 O 系列廣告中的應用


導讀:O 系列廣告是當前信息流廣告的主流投放方式,目標是通過對廣告主 ROI 進行優化,提高平台整體收益。其核心是通過技術手段智能化的解決廣告主對流量的獲取。微博 O 系列廣告的策略模型我們將其分為智能出價,智能定向和 ROI 模型三個主要方向。智能出價利用機器學習算法對流量智能分配和扣費智能調控,從而滿足廣告主和平台的利益均衡;智能定向通過深度學習等技術建立user 和ad 的匹配連接,滿足廣告主對流量的智能獲取; ROI 模型利用機器學習算法對用戶的點擊轉換進行預估( 常見的ctr 和cvr 模型),是智能出價中扣費和排序的基礎。微博業務算法團隊將深度學習技術廣泛應用在微博的 O 系列廣告系統中,大幅度的提升了微博的變現效率。

❶ 廣告博弈

機器學習在微博 O 系列廣告中的應用 1

商業廣告系統包含三方博弈,從參與方角度主要包括:用戶,廣告主,媒體平台。

網民通過媒體平台獲取信息,廣告主通過投放系統進行商品投放,平台根據其興趣意圖給網民推薦相關的商品。平台的目標是整體經濟收益,廣告主的目標是獲得社會效益的最大化。而廣告系統是在維護網民、平台和廣告主三方利益平衡的前提下,最大化平台收益。

❷ 微博廣告產品形態

機器學習在微博 O 系列廣告中的應用 2

微博廣告的產品形態包括:曝光產品開機報頭,信息流產品,視頻故事類產品,正文頁Banner,評論流廣告等。微博廣告業務算法部門負責這些廣告投放效果上的調優和競價策略。

❸ 廣告計費形態

機器學習在微博 O 系列廣告中的應用 3

傳統的計費方式包括:CPT,CPM,CPC,CPA,CPS。

近期業界主流公司主要應用的信息流廣告計費方式是 O 系列廣告計費方式,包括 oCPC,oCPM:

O:代表優化目標

oCPC:優化目標是轉化,但是按照點擊扣費

oCPM:優化目標是轉化,但是按照展現扣費

微博主要是以 CPM 和 oCPM 為主。

❹ 目標拆解:系統分析

機器學習在微博 O 系列廣告中的應用 4

上圖為廣告系統的核心技術棧,它是一個漏斗模型,由定向粗排,精排,機制策略3個部分組成,每一層都有對應的優化目標。

從基礎角度上來說,有三率:

展現率:show 曝光

點擊率:CTR

轉化率:CVR

而 CPA 是廣告主的轉化成本

從技術架構上來說,每個轉化目標能對應到一個層級結構。定向召回對應的優化目標是展現率,在召回已經提升了總體展現之後,為了防止在下游模塊被過濾掉,會跟下游模塊達成目標一致的情況下最大化的優化展現率。在點擊率預估、轉化率預估的條件下準確的評價當次流量的價值,為流量選擇最優的廣告,最大化廣告的轉化。競價機制是廣告最後的出口,負責維護整個平台的生態,包括廣告組間如何進行博弈,平台收入如何最大化,這優化的不是短期的平台收益而是一個從長期的狀態下來看的平台收益。

回歸效果廣告的本質,優化目標是專注於對 show、ctr、cvr、cpa 的優化。

下圖是廣告系統的核心技術棧,下面將從廣告召回,模型預估和競價機制分別介紹下 O 系列廣告的應用。

❺ 核心技術棧

機器學習在微博 O 系列廣告中的應用 5

O 系列廣告的核心技術棧包括:

數據中台:數據作為互聯網最重要的資產,是算法和業務的基石。數據中台統一了微博所有的商業數據,提供了一套穩定、可擴展的讀寫框架。

用戶理解&廣告理解平台:對用戶和廣告的 profile,廣告的內容等通過數據挖掘算法進行特徵分析和概念抽取,並進行標籤化。

廣告召回:通過召回技術完成用戶和廣告的匹配。召回技術在微博平台包括 CF,語義理解,人群聚類,時序,知識圖譜等。

ROI 模型優化:通過對流量上的廣告效果預估,衡量出流量對該廣告的價值。 ROI 模型是一個價值預估模型。在微博平台包括加粉,點擊,轉化等多個目標。

機制策略:控制廣告系統的競​​價策略,扣費策略等。通過機制策略的調優,輔助廣告主,用戶和媒體平台三方的博弈。

兩翼:廣告業務和策略都需要依賴強大的工程能力,而廣告引擎框架和機器學習平台能夠為技術迭代插上翅膀,支撐著算法的不斷迭代,驅動業務發展。

❻ 機制策略:智能出價

機器學習在微博 O 系列廣告中的應用 6

首先在機制策略方面介紹智能出價:

微博主要為兩種模型:CPM 和 oCPX 模型。

CPM 模型是比較傳統的模型,其面臨的問題是平台不了解客戶真實目標和轉化成本,導致無法有針對性的進行優化,此時 ctr 優化只能起到輔助作用。廣告主需要一直盯著投放的效果,不斷調價,緊盯成本,關鍵點是平台並沒有保證廣告主 ROI。

oCPX 模型,X 的意思是既可以是C 也可以是M 或者是A,廣告主給出期望的轉化成本,平台通過系統的優化保障轉化成本,廣告主此時關注的是在保證轉化成本的同時跑量速度如何,帶來多少轉化,廣告主無需頻繁的去調價,平台可以保證廣告主ROI。

可以看出 oCPX 比傳統的 CPM、CPC 等模型增加了更多模型智能化的解決方案,所以有句話講:CPM 靠運營和銷售,oCPX 靠算法人力。

接下來介紹一下 oCPX 中重要的策略,智能出價:

機器學習在微博 O 系列廣告中的應用 7

每個流量上進行智能出價時,系統會根據轉換率計算當前流量下的廣告出價,比如 CPC 會計算點擊的成本,​​CPM 會計算這次展現的成本,oCPM 會計算這次轉化的成本。但是大多數廣告主關注的不是一次的pv 而是全局的總投放pv 或者當天的pv,所以對它們的控制模式分為兩種:第一種是實時控制,按照當前轉化做扣費;第二種是全局成本控制,按照當天的成本扣費(平台默認廣告主關注的是當天的成本),比如說一次轉化會很高,出價也會相應的很高,但是由於給廣告主歷史的投放是已經超出廣告主成本那麼需要在扣費進行打折。

智能出價核心技術點:根據廣告主的投放的成本和這次轉化的效果智能計算出價,是一個兼顧全局的+局部的調節,局部算法使用貪心算法,沒有考慮到全局的優化,根據廣告主今天的轉化和歷史轉化以及消耗情況控制每次的扣費成本,目標是提高廣告主的ROI,同時在保證廣告主ROI 的情況下,讓平台整體的收益最大化。

全局算法使用控制系統理論 PID 算法:

智能出價面臨的問題是:對於APP 安裝,數據存在較長的延時反饋,比如說用戶看到廣告和用戶安裝APP 可能會間隔1天2天甚至7天,如果在這一次計算他的轉化率的時候,沒有考慮到部分未來數據的延遲問題,面臨的問題是轉化率偏低,這一次就扣少了,所以我們會有個歸因的推理算法,利用推理模型來預測這個用戶有可能轉化的成本。

以上介紹的是一個扣費的公式,接下來介紹全局控制算法:

機器學習在微博 O 系列廣告中的應用 8

ecpm=廣告主的出價*pctr*pcvr*調價因子

Pid 算法:

舉例說明:例如追車問題,中間距離較遠,距離較遠需要調高速度,比如速度從100調整到120,追一段時間後馬上要超過了,這時候我們就要控制下來,需要對加速度進行調節。

成本控制算法在廣告系統應用也是類似。比如說廣告主的成本是50,扣費的時候有可能扣低了到40,也有可能扣高了到60,那麼必須要全天維持在接近50,需要這種控制算法不斷的去調每次pv 的出價,讓廣告主的成本保持穩定。

❼ 定向召回:智能定向

機器學習在微博 O 系列廣告中的應用 9

智能定向主要是解決廣告主給定創意,不需要選擇複雜的定向,系統自動尋找感興趣的人群,就可以獲得好的轉化效果。智能定向會對廣告主有自己的數據包/已選定向,根據後驗的回傳數據,智能為當前數據包/定向進行探索和擴展,盡量保持在投計劃持續效果不降低。

比如說廣告主在信息流產品中選擇定向,但是這個定向在充分消耗之後就沒有多少轉化了,原因是篩選的數據包的可轉化用戶已經完成了轉化,剩下的不感興趣的也很難再有轉化了。廣告主通常的投放策略是先把定向選擇的很窄,讓整體轉化率很高,所以整個流量分配很大的問題就是拿不到量,那麼平台需要在投放的前期3~4天做定向篩選,在達到一定的pv 級別,模型穩定,效果置信,可以放開定向,這樣很多廣告系統在放開後會比原定向增加兩三倍的pv 量,同時效果保持穩定,那麼廣告主的ROI 在達到要求的條件下能夠獲取更多轉化,對系統的整個流量的利用率提高了很多。

智能定向通過廣告投放累計數據,並提取數據中的規律建立模型,系統進行智能決策。通過模型優化的方式智能決策,實現用戶的匹配和廣告之間的智能匹配,提高整體的匹配效率;通過快速實時的轉換數據反饋,提高整體的模型轉化效果。

機器學習在微博 O 系列廣告中的應用 10

智能定向的架構如上圖所示,通過訓練平台,智能定向系統,模型生成到生成匹配結果,到後端的日誌反饋。有以下幾個維度:對數據過濾,比如分行業的過濾,有些數據比較稀疏,在智能定向還沒有引進,後邊會加入;第二是通過模型算法,目前用的佔比最大的是雙塔模型。

機器學習在微博 O 系列廣告中的應用 11

雙塔模型目標是解決性能的問題,用戶側和廣告側的分離訓練,當然帶來的問題是用戶和廣告之間特徵交叉的信息是學不到的,這樣看可能會覺得影響整體的 auc。但是最終發現效果不錯,同時訓練速度很快,我們在雙塔模型中引用的特徵包括 id 類特徵、文本特徵、連續值等基礎類的特徵。

機器學習在微博 O 系列廣告中的應用 12

另外還有集中模型在使用,推薦系統最常見的是 cf 模型。上圖左邊是目前微博的 DeepCF 網絡結構,用的 pointwise 的方式訓練的 deepcf 模型。右邊是人群定向的方式,部分應用場景,比如有些遊戲的客戶會選擇指定遊戲人群,我們就以人群聚類的方式,以轉化作為目標label,通過這種方式篩選出一批對遊戲感興趣的用戶,讓廣告主能夠精確定向到目標人群,平台提升整體的流量利用率,從而達到智能擴展的目標。

❽ 模型預估

機器學習在微博 O 系列廣告中的應用 13

微博的業務場景是比較複雜的,包括點評贊轉發等互動的行為,還包括推廣目標,例如表單提交,應用下載,點擊等。複雜的場景帶來複雜的優化策略。線上共有十幾個模型進行優化。那麼接下來會重點介紹 cvr 模型:

CVR 模型預估

機器學習在微博 O 系列廣告中的應用 14

Cvr 模型直接影響著廣告主的競價能力和扣費金額,如 ecpm 計算公式所示。上圖cvr 為什麼和ctr 做乘積,原因首先是因為從展現到轉化是非常稀疏的,在萬分之幾的概率,而且樣本數據非常少,從條件概率角度上來講,P(轉化|曝光)=P (點擊|曝光)*P(轉化|點擊),分解點擊率和轉化率,總體降低了稀疏性,更利於模型估計。點擊率同業界的點擊率的計算方式,而轉化率是多種的,比如下載付費、表單填寫等,不同的垂直領域,轉化率差距非常大。有的是萬分之一,有的是萬分之二,有的是千分之一等,值域相差近10倍。第二個原因是轉化數據回流的時間,有的是分鐘級到天級的、有的是半個月級的,部分 label 的置信性有限。第三個原因是轉化數據總量很少,比如說整個全網數據量也有限,從展現到轉化一天的數據量級很小。第四個原因是,有些數據的回傳是靠第三方監控的,有的是靠廣告主的回傳的,這些數據的可靠性是有質疑的,如何保證這部分數據的質量這也是很重要的一個環節。

機器學習在微博 O 系列廣告中的應用 15

面對以上挑戰,首先在數據處理上做了一些工作。

模型在數據處理時根據不同的轉化目標回傳情況進行週期性過濾,比如app 推廣類轉化數據延遲較高,會根據廣告主粒度進行回傳數據的置信度判斷,如果樣本置信度高則保留,如果樣本置信度低則捨棄。另一個問題,轉化的延遲,比如說預測的轉化是萬分之一,很難預估的非常準確,因此需要對模型預估的轉化率進行實時校準,整體流程如下圖所示。

機器學習在微博 O 系列廣告中的應用 16

模型算法採用的是 DeepFm 模型,利用 FM 解決二階特徵交叉,利用 deep 模型解決高階特徵抽象和交叉。

當 cvr 模型不穩定時,會導致大量的扣費異常,因此需要通過模型校準的方式修正預估的 ctr 和 cvr。模型校準就是通過後驗的方式,通過模型預估值與真實投放結果的比較,看gap 是多少,同時通過分桶的方式細化校準模型,這樣能很快降低與轉化率之間的gap,從而使扣費維持在廣告主可接受的ROI 範圍內。

特徵工程

下圖是線上 ctr cvr 模型預估的框架:包括離線模型訓練和在線模型預估兩個方面。

機器學習在微博 O 系列廣告中的應用 17

整體框架主要包含:日誌處理,特徵分析流程。如上圖所示,這一套方案也是業界比較常用的,包括在線預估的訓練模型樣本的數據流。合適的模型+大量的數據特徵挖掘會使 cvr 模型跟業界的差距不會很大,所以我們在人力有限的情況下,在 deepfm 模型的特徵方面做瞭如下工作:

① 包括用戶歷史用戶行為的特徵,比如我們用3天的數據進行建模,最近點擊了哪些廣告,用於把握用戶近期的廣告側興趣。

② 用戶關鍵詞,近期搜索詞和點擊行為對應的關鍵詞,用戶標籤,用於從文本分析角度把握用戶近期興趣圖譜。

③ 實時 session 特徵,Bias 特徵,統計類特徵等,統計類的特徵在國外是用的比較多的,包括用戶歷史的 pvn轉化等等。目前大概是兩億左右的數據。

❾ 統一模型離線架構

機器學習在微博 O 系列廣告中的應用 18

最後,介紹下統一的離線模型框架。由於維護的模型較多,因此我們需要統一的一套模型框架來管理離線模型訓練和評估。上圖對模型框架進行抽象,實現了統一的特徵體系,通用的訓練框架,可定制模型算子,託管了微博商業端所有的模型算法。

作者介紹

張克豐

新浪微博 | 資深算法專家

本文來自 DataFunTalk

原文鏈接

https://mp.weixin.qq.com/s?__biz=MzU1NTMyOTI4Mw==&mid=2247496432&idx=1&sn=209510d8695aed74c65b2693d300e97b&chksm=fbd7409ccca0c98af6db5aaf452dd81b070f440326bdda5e505069608ddc3b448560c045a2f3&scene=27#wechat_redirect