作者 | 鄭奕嘉
1. 背景
什么是素材優(yōu)選?
近年來,基于 feed 流推薦的短視頻業(yè)務(wù)帶來了巨大的廣告商業(yè)價(jià)值,例如,抖音推出的「游戲發(fā)行人計(jì)劃」就是一個(gè)鼓勵(lì)達(dá)人發(fā)布游戲相關(guān)短視頻,從而為游戲推廣帶量并實(shí)現(xiàn)流量變現(xiàn)的有效工具。相比于專業(yè)的廣告素材(PGC),這些由達(dá)人自主創(chuàng)作的原生廣告素材(UGC)往往具有顯著的成本優(yōu)勢(shì),而且風(fēng)格多樣、素材量大。但是,在發(fā)行人計(jì)劃產(chǎn)生的大量 UGC 短視頻中,有許多優(yōu)質(zhì)素材由于作者熱度等原因無法得到足夠的曝光,導(dǎo)致這些素材的價(jià)值無法得到充分利用。因此,我們通過挑選「游戲發(fā)行人計(jì)劃」中有廣告價(jià)值的素材進(jìn)行素材加熱(dou+投放),并借助智能投放、人群定向等其他技術(shù),更精準(zhǔn)有效地為游戲獲量,最大限度挖掘游戲達(dá)人素材的潛在價(jià)值,更好地實(shí)現(xiàn)內(nèi)容營銷。所謂素材優(yōu)選,即是從海量的短視頻素材中,尋找出廣告投放效果最好的素材。
為什么需要素材優(yōu)選?
傳統(tǒng)的素材篩選,往往依賴于運(yùn)營同學(xué)依據(jù)人工經(jīng)驗(yàn)進(jìn)行篩選,一般會(huì)基于簡(jiǎn)單規(guī)則過濾(如按視頻 vv 數(shù)過濾等),再人工從中挑選。這種人工的方式面臨著許多困難:
- 過濾規(guī)則依賴人工經(jīng)驗(yàn),往往比較簡(jiǎn)單效果不好,容易導(dǎo)致大量?jī)?yōu)質(zhì)素材的遺漏;
- 篩選素材的人力成本高,往往需要人工觀看大量視頻才能篩出少部分優(yōu)質(zhì)素材;
- 缺乏客觀的篩選依據(jù),容易受主觀因素影響,而且無法定量評(píng)估素材可能帶來的轉(zhuǎn)化效果。
所以,如何利用算法來進(jìn)行自動(dòng)化的素材優(yōu)選,是一個(gè)非常具有應(yīng)用價(jià)值的研究方向。
2. 業(yè)務(wù)場(chǎng)景
在正式介紹建模方法之前,有必要先對(duì)背后的業(yè)務(wù)場(chǎng)景進(jìn)行說明,一方面是對(duì)齊一些相關(guān)術(shù)語,另一方面也使讀者對(duì)這些方法實(shí)際要解決的問題有一個(gè)更清楚的認(rèn)識(shí)。在其他業(yè)務(wù)場(chǎng)景下,讀者需要靈活結(jié)合自身業(yè)務(wù)的特點(diǎn),對(duì)這些方法加以改進(jìn)。
- 業(yè)務(wù)場(chǎng)景 一句話概括
我們的業(yè)務(wù)場(chǎng)景:篩選出抖音「游戲發(fā)行人計(jì)劃」下的優(yōu)質(zhì)游戲素材,用于 dou+素材加熱,從而更好地為游戲帶量。
「游戲發(fā)行人計(jì)劃」是一個(gè)連接了游戲廣告主和抖音視頻達(dá)人的平臺(tái),廣告主會(huì)在該平臺(tái)發(fā)布任務(wù),達(dá)人接任務(wù)并投稿對(duì)應(yīng)游戲相關(guān)視頻素材,從而根據(jù)素材帶量效果獲得一定的現(xiàn)金收益,而廣告主也完成了游戲獲量的目標(biāo)。這些通過發(fā)行人計(jì)劃投放的素材,會(huì)被帶上錨點(diǎn)鏈接(如圖 1 所示),能夠鏈接到對(duì)應(yīng)的游戲推廣落地頁,從而為游戲帶來預(yù)約、轉(zhuǎn)化。由于素材在自然流量下受到作者熱度等因素影響,可能導(dǎo)致一些好素材難以起量,所以我們會(huì)在發(fā)行人計(jì)劃基礎(chǔ)之上,挑選具有帶量潛力的原生素材進(jìn)行 dou+加熱,從而為游戲獲量。
圖 1 發(fā)行人素材及錨點(diǎn)鏈接展示示例
在這篇文章中,我們定義的優(yōu)質(zhì)素材為:相同消耗規(guī)模下,為該游戲帶量效果好的素材(其他目標(biāo)如付費(fèi)等在本文中暫不討論)。那么什么叫帶量效果好呢?在我們的業(yè)務(wù)場(chǎng)景中,主要考慮兩個(gè)指標(biāo)CTR(點(diǎn)擊率)和CVR(轉(zhuǎn)化率)。CTR是指視頻所帶錨點(diǎn)展示后,用戶點(diǎn)擊該錨點(diǎn)進(jìn)入落地頁的概率,該指標(biāo)可以近似衡量視頻的吸引程度。CVR是指用戶進(jìn)入落地頁后,下載安裝并激活該游戲的概率,該指標(biāo)可以近似衡量該視頻帶來的用戶質(zhì)量(是否對(duì)該游戲感興趣)。我們定義的激活效果好,即是廣告投放后的CTR*CVR要高。(在素材篩選準(zhǔn)則中,這兩個(gè)指標(biāo)需要同時(shí)考慮,缺少其中一個(gè)都可能導(dǎo)致最終效果不好。比如只考慮CTR很可能會(huì)找到一些能夠吸引用戶,但是跟該游戲相關(guān)性不大的素材,如一些影視劇片段等,這類素材點(diǎn)擊率高,但往往轉(zhuǎn)化效果很差。)
圖 2 簡(jiǎn)化的發(fā)行人素材廣告轉(zhuǎn)化鏈路示意圖 (真實(shí)場(chǎng)景更復(fù)雜一些,但不影響我們這里的技術(shù)方案討論)
CTR、CVR 的具體計(jì)算方式如下:
其中,anchor_vv 即視頻錨點(diǎn) vv,anchor_click_vv 即錨點(diǎn)點(diǎn)擊 vv,active_cnt 即激活數(shù)。
素材優(yōu)選與常見的個(gè)性化廣告業(yè)務(wù)有什么區(qū)別?
另外,雖然我們的任務(wù)是為了建模點(diǎn)擊率和轉(zhuǎn)化率,這聽起來似乎與典型的個(gè)性化廣告/推薦業(yè)務(wù)比較類似,但還是有必要強(qiáng)調(diào)一下兩者的區(qū)別。個(gè)性化廣告目的是建模用戶在某個(gè)時(shí)間(上下文)下點(diǎn)擊廣告素材的概率,是一種實(shí)時(shí)的個(gè)性化建模方式,可以獲取到用戶信息和上下文信息,其建模目標(biāo)往往是單次曝光的點(diǎn)擊率(訓(xùn)練時(shí)樣本標(biāo)簽被點(diǎn)擊的為 1,未被點(diǎn)擊的為 0,是二分類目標(biāo));而素材優(yōu)選目的是在海量視頻中挑出適合廣告投放的素材,是一種前置的篩選過程,無法決定某個(gè)素材在具體投放過程中會(huì)展示給哪些用戶,也無法做實(shí)時(shí)的干預(yù),所以一般建模目標(biāo)也是預(yù)估素材的整體效果,比如在某次投放過程中總體的點(diǎn)擊率(點(diǎn)擊次數(shù)/展示次數(shù),是連續(xù)的數(shù)值型目標(biāo))。
3. 建模方法
3.1 整體建模方案
本文的建模方案,主要站在業(yè)務(wù)的角度,關(guān)注樣本、特征及 Label 的構(gòu)建,模型結(jié)構(gòu)可以嘗試使用傳統(tǒng)的機(jī)器學(xué)習(xí)或者深度學(xué)習(xí)進(jìn)行建模,我們?cè)谇捌趪L試過程中主要利用 boost 系列模型進(jìn)行實(shí)驗(yàn),沒有進(jìn)行過多模型結(jié)構(gòu)上的探索(當(dāng)然模型結(jié)構(gòu)設(shè)計(jì)也很重要,后期會(huì)嘗試更多結(jié)構(gòu)上的改進(jìn))。
如圖 3 所示,整體的建模思路是輸入素材相關(guān)特征(見 3.2 小節(jié)),建立機(jī)器學(xué)習(xí)/深度學(xué)習(xí)模型回歸素材投放的表現(xiàn)效果即 CTR 和 CVR(見 3.3 小節(jié))。
圖 3 建模架構(gòu)示意圖
根據(jù)預(yù)測(cè)的 CTR、CVR 計(jì)算綜合打分值 score:
最終利用打分值對(duì)素材進(jìn)行排序從而得到頭部的優(yōu)質(zhì)素材。
3.2 特征抽取
如第 2 小節(jié)所述,素材優(yōu)選是一種前置的篩選過程,無法決定素材會(huì)展示給哪些用戶,也無法做實(shí)時(shí)干預(yù),所以無法使用實(shí)時(shí)的上下文特征和用戶特征。因此,我們只能盡可能挖掘出對(duì)投放效果可能有較大影響的素材相關(guān)特征。另外,相比個(gè)性化廣告,素材優(yōu)選的建模數(shù)據(jù)量比較少,個(gè)性化廣告的數(shù)據(jù)量大概是 N_I×N_U(素材數(shù) × 用戶數(shù)),而素材優(yōu)選只能使用素材側(cè)的聚合信息,數(shù)據(jù)量級(jí)大概為 N_I(素材數(shù)),這導(dǎo)致可供訓(xùn)練的樣本量比較少,所以在進(jìn)行特征構(gòu)建時(shí)要考慮特征維度避免過擬合。
我們最終抽取的特征可以劃分為 4 大類:素材側(cè)特征、作者側(cè)特征、游戲側(cè)特征、素材的歷史表現(xiàn)效果。
- 素材側(cè)特征:為了避免過擬合,我們沒有直接使用視頻的畫面等高維信息作為輸入,而是基于內(nèi)容理解識(shí)別、預(yù)訓(xùn)練等方式提取到更高階的特征。最終使用的特征包括:視頻類型(類別、畫風(fēng)等)、視頻 embedding(如推薦模型產(chǎn)生的 embedding 等)、視頻基礎(chǔ)信息(時(shí)長(zhǎng)、地理信息等)。
- 作者側(cè)特征:作者的熱度和活躍度信息(投稿量、粉絲數(shù)等)、作者個(gè)人屬性(地域、教育水平等)、作者風(fēng)格(如萬粉標(biāo)簽)等。
- 游戲側(cè)特征:因?yàn)橥斗诺饶繕?biāo)是為游戲帶量,不同游戲的用戶群體不一樣,導(dǎo)致不同游戲用戶可能喜歡的素材也不一樣,所以我們引入了游戲相關(guān)特征,包括游戲的品類、題材、玩法等。
- 素材的歷史表現(xiàn)效果:包括抖音自然推薦流量下的表現(xiàn)、歷史用于廣告投放的表現(xiàn)(僅限于投放過的素材)。這類特征對(duì)模型效果幫助非常大,不過在構(gòu)建過程要特別小心避免出現(xiàn)特征穿越的問題。
3.3 樣本構(gòu)建
3.3.1 樣本構(gòu)建存在的難點(diǎn)
既然預(yù)測(cè)目標(biāo)是素材投放的表現(xiàn),那么一種簡(jiǎn)單的思路就是建模每個(gè)素材的歷史整體投放表現(xiàn),即歷史投放過程中的總體 CTR 和 CVR,以此作為回歸模型的預(yù)測(cè)目標(biāo)構(gòu)建樣本。但在實(shí)踐的過程中,我們發(fā)現(xiàn)這種方式存在一些問題:
- 時(shí)間因素的干擾:同一款手游在不同階段投放效果差異巨大:比如在 OB 初期投放的素材,往往投放量大,轉(zhuǎn)化效果也比較好;而在 OB 末期由于大量用戶已經(jīng)轉(zhuǎn)化,游戲的素材投放金額會(huì)大幅減少,而且轉(zhuǎn)化效果也會(huì)大打折扣,表現(xiàn)為 CTR、CVR 都會(huì)降低。但這不代表 OB 末期投放的素材就會(huì)比較差,而是受到不同投放周期的影響。類似的時(shí)間干擾因素還體現(xiàn)在節(jié)假日、活動(dòng)節(jié)點(diǎn)等特殊時(shí)間。
- CTR/CVR 波動(dòng)大:由于不同素材投放過程展示的用戶存在隨機(jī)性,比如有的素材正好展示給了對(duì)該游戲感興趣的用戶,就會(huì)導(dǎo)致該素材表現(xiàn)較好,從而導(dǎo)致統(tǒng)計(jì)的 CTR、CVR 存在波動(dòng)。舉個(gè)極端的例子,某個(gè)素材只展示了 10 次,但正好有 1 個(gè)用戶點(diǎn)擊了,就會(huì)導(dǎo)致這個(gè)素材的點(diǎn)擊率很高(10%),但這是隨機(jī)性引起的波動(dòng),不代表這個(gè)素材在跑量規(guī)模上去后依然能保持這么高的點(diǎn)擊率。這種現(xiàn)象在素材展示量少時(shí)尤其明顯,隨著展示量增加可以減少這種隨機(jī)波動(dòng),但不能完全消除。
3.3.2 小節(jié)會(huì)介紹針對(duì)時(shí)間干擾因素的改進(jìn)建模方式,3.3.3 小節(jié)會(huì)介紹針對(duì) CTR/CVR 波動(dòng)大大改進(jìn)方式。
3.3.2 引入時(shí)間因素進(jìn)行建模
我們一開始考慮建模素材整個(gè)投放周期下的 CTR/CVR,相當(dāng)于對(duì)不同投放時(shí)間的表現(xiàn)做了聚合,這種方式能夠得到比較穩(wěn)定的 CTR/CVR 統(tǒng)計(jì),但是會(huì)抹去時(shí)間信息。而在素材優(yōu)選的業(yè)務(wù)場(chǎng)景下,時(shí)間因素的影響是非常大的。為了解決這個(gè)問題,我們引入了時(shí)間因素進(jìn)行建模,主要包括兩個(gè)改進(jìn):
- 基于天級(jí)別預(yù)測(cè)每個(gè)素材每天的投放效果,而不是整個(gè)投放周期的投放效果;
- 建模過程加入投放時(shí)間作為特征。
具體而言,我們以天級(jí)別抽取每天投放的素材表現(xiàn)效果作為訓(xùn)練目標(biāo),比如一個(gè)素材投放過 n 天,則在我們的訓(xùn)練樣本中對(duì)應(yīng) n 條樣本,每一條樣本的 label(即 CTR/CVR)為當(dāng)天的表現(xiàn),這樣就能將不同日期下的表現(xiàn)區(qū)分開來。同時(shí),為了讓模型能夠區(qū)分不同投放日期對(duì)表現(xiàn)的影響,我們還需要在建模特征中引入時(shí)間信息??紤]到時(shí)間不是孤立的類別變量,相近的時(shí)間往往對(duì)投放表現(xiàn)的影響會(huì)更接近。所以我們實(shí)際輸入的是投放日期與某個(gè)固定時(shí)間的差值,從而能夠?qū)r(shí)間類別變量轉(zhuǎn)化成具有連續(xù)意義的整數(shù)變量。調(diào)整后的建模架構(gòu)如圖 4 所示。
圖 4 引入時(shí)間因素的建模方式示意圖
另外,由于素材在一天內(nèi)的投放量較少,使用天級(jí)別的 CTR/CVR 統(tǒng)計(jì),可能導(dǎo)致統(tǒng)計(jì)的 CTR/CVR 波動(dòng)較大,不過相比之下樣本量變多了,模型抗噪聲的能力也更強(qiáng),從實(shí)踐來看影響不大。另外,3.3.3 小節(jié)也會(huì)介紹應(yīng)對(duì) CTR/CVR 波動(dòng)大的改進(jìn)方案。
3.3.3 樣本損失加權(quán)策略
我們的建模方案是回歸素材的投放表現(xiàn)效果比如 CTR 等,但在實(shí)踐過程中我們發(fā)現(xiàn)統(tǒng)計(jì)的CTR 之類的比率信息存在波動(dòng),而且這種波動(dòng)在視頻展示量較少時(shí)表現(xiàn)會(huì)更明顯(因?yàn)?CTR=點(diǎn)擊數(shù)/展示數(shù),當(dāng)展示數(shù)比較小時(shí)少量的點(diǎn)擊數(shù)變化也能引起較大的數(shù)值波動(dòng),CVR 同理)。
我們一開始的解決方案是卡視頻(錨點(diǎn))vv 閾值,比如只利用 vv>5000 的視頻做訓(xùn)練,這樣訓(xùn)練樣本的 CTR 值相對(duì)穩(wěn)定。但這種方式并不能解決問題:
- 在 vv>5000 的視頻中,雖然統(tǒng)計(jì)的 CTR 相對(duì)穩(wěn)定,但仍然存在 vv 偏小的視頻 CTR 波動(dòng)偏大的現(xiàn)象(表現(xiàn)為 CTR 頭部的視頻基本都是 vv 數(shù)偏小的);
- 這種方式造成訓(xùn)練樣本有偏,因?yàn)橛?xùn)練樣本中的視頻都是 vv 數(shù)偏高的,模型在訓(xùn)練過程沒有見過 vv 數(shù)較低的樣本(這部分視頻一般來說相對(duì)會(huì)比較差,與高 vv 視頻存在比較大分布差異),導(dǎo)致模型無法很好預(yù)測(cè)這些低 vv 視頻的表現(xiàn),而且這部分視頻雖然投放量少但視頻數(shù)量會(huì)多很多(存在長(zhǎng)尾效應(yīng))。
我們最終使用了一個(gè)簡(jiǎn)單但有效的解決方案:在訓(xùn)練時(shí)對(duì)樣本損失進(jìn)行加權(quán)。對(duì)于 CTR 預(yù)估,我們假設(shè)視頻每一次曝光是否點(diǎn)擊,都是一次獨(dú)立的隨機(jī)事件(暫不考慮曝光數(shù)對(duì)素材表現(xiàn)的影響,比如素材曝光量太多帶來點(diǎn)擊率衰減等情況),只要曝光數(shù)無限多的情況下,大數(shù)定律能夠保證最終的點(diǎn)擊率能夠收斂到一個(gè)穩(wěn)定值,所以視頻(錨點(diǎn))vv 本質(zhì)上可以衡量統(tǒng)計(jì)得到的 CTR 的置信程度。于是,我們?cè)谟?xùn)練過程中根據(jù) vv 數(shù)對(duì)樣本的損失進(jìn)行加權(quán):視頻 vv 越大,統(tǒng)計(jì)的 CTR 越置信,對(duì)應(yīng)的樣本權(quán)重越高;視頻 vv 越小,統(tǒng)計(jì)的 CTR 越不置信,對(duì)應(yīng)的樣本權(quán)重越低。通過引入樣本權(quán)重,模型能夠更加關(guān)注視頻 vv 數(shù)較大的樣本,同時(shí)避免了構(gòu)造數(shù)據(jù)集時(shí)人工卡 vv 閾值帶來的樣本偏差問題。
具體地,我們對(duì)原始 RMSE 目標(biāo)進(jìn)行改進(jìn),增加 vv 數(shù)的加權(quán)項(xiàng)。針對(duì) CTR 預(yù)測(cè)和 CVR 預(yù)測(cè)的損失函數(shù)分別計(jì)算方式如下:
(1)采用加權(quán)策略的 CTR 預(yù)測(cè)損失函數(shù)
其中各符號(hào)的含義如下:
(2)采用加權(quán)策略的 CVR 預(yù)測(cè)損失函數(shù)
其中各符號(hào)的含義如下:
4. 效果評(píng)估
4.1 離線評(píng)估
一般對(duì)于回歸模型,可以使用 RMSE 或者相關(guān)性度量等方式進(jìn)行評(píng)估,這些評(píng)估指標(biāo)的假設(shè)是,所有樣本標(biāo)簽的置信度是一致的。但是,在我們的應(yīng)用場(chǎng)景中,預(yù)測(cè)目標(biāo)值(CTR)存在不同的置信度,比如視頻錨點(diǎn) vv 數(shù)高的視頻,統(tǒng)計(jì)得到的 CTR 越接近真實(shí)值;而視頻錨點(diǎn) vv 數(shù)低的視頻,比如只展示了 1 次,那得到的 CTR 值波動(dòng)非常大,很不置信。
基于這種考慮,類似于 3.3.3 節(jié)的方案,我們?cè)O(shè)計(jì)了加權(quán)的 RMSE 作為評(píng)估指標(biāo),這種指標(biāo)相對(duì)普通的 RMSE 更符合實(shí)際業(yè)務(wù)場(chǎng)景,可以用來離線對(duì)比不同模型的精度。具體計(jì)算公式與 3.3.3 節(jié)的損失函數(shù)相同,除了數(shù)據(jù)集換成測(cè)試集。
實(shí)驗(yàn)數(shù)據(jù)集
我們利用「游戲發(fā)行人計(jì)劃」視頻在 dou+上的投放數(shù)據(jù)進(jìn)行離線實(shí)驗(yàn)。采用 Replay 的方式進(jìn)行實(shí)驗(yàn),分別預(yù)測(cè) 20220128~20220216(共 20 天)期間每天的素材投放表現(xiàn),即用 20220128 之前的數(shù)據(jù)訓(xùn)練然后預(yù)測(cè) 20220128 的效果,再用 20220129 之前的數(shù)據(jù)訓(xùn)練預(yù)測(cè) 20220129 的投放效果,以此類推(關(guān)于 Replay 評(píng)估方式可以參考王喆老師編著的《深度學(xué)習(xí)推薦系統(tǒng)》第 7 章)。我們的建模目標(biāo)分別為預(yù)測(cè)每天的 CTR 和 CVR,目前的方案將 CTR 和 CVR 分開建模,后續(xù)會(huì)考慮引入多任務(wù)學(xué)習(xí)架構(gòu)進(jìn)行建模。
樣本量
由于我們使用 Replay 方式測(cè)試 20 天的表現(xiàn)(相對(duì)于有 20 輪訓(xùn)練預(yù)測(cè)),預(yù)測(cè)不同日期時(shí)使用的訓(xùn)練樣本和測(cè)試樣本均會(huì)發(fā)生變化(只使用預(yù)測(cè)日期之前 90 天的數(shù)據(jù)用于訓(xùn)練驗(yàn)證)。
總體上:
CTR 預(yù)測(cè)只采樣有 dou+錨點(diǎn)展示數(shù)據(jù)(即 anchor vv>0)的樣本進(jìn)行訓(xùn)練(否則得不到 CTR),每輪預(yù)測(cè)的訓(xùn)練樣本量約為 200000 條,驗(yàn)證集約為 50000 條,測(cè)試集約為 2000 條。
最終總的測(cè)試樣本量為 39411 條(共 20 天)。
CVR 預(yù)測(cè)只采樣有 dou+錨點(diǎn)點(diǎn)擊數(shù)據(jù)(即 anchor click vv>0)的樣本進(jìn)行訓(xùn)練(否則得不到 CVR),每輪預(yù)測(cè)的訓(xùn)練樣本量約為 40000 條,驗(yàn)證集約為 10000 條,測(cè)試集約為 500 條。
最終總的測(cè)試樣本量為 9882 條(共 20 天)。
實(shí)驗(yàn)結(jié)果
我們?cè)跍y(cè)試過程中,針對(duì)兩個(gè)主要的改進(jìn) trick:時(shí)間因素建模、樣本損失加權(quán),分別進(jìn)行了消融實(shí)驗(yàn),從而驗(yàn)證這兩個(gè)改進(jìn)能夠有效改善模型預(yù)測(cè)效果。最終的 CTR 預(yù)測(cè)和 CVR 預(yù)測(cè)的實(shí)驗(yàn)結(jié)果如下:
從實(shí)驗(yàn)結(jié)果可以看到,在 CTR 預(yù)測(cè)和 CVR 預(yù)測(cè)的實(shí)驗(yàn)中,在同時(shí)使用兩個(gè)改進(jìn) trick的情況下,加權(quán) RMSE 有比較明顯的下降。同時(shí),也發(fā)現(xiàn)在單獨(dú)只使用其中一個(gè) trick 時(shí)加權(quán) RMSE 值反而會(huì)上升,說明兩個(gè) trick 需要同時(shí)使用。只加入時(shí)間因素建模、不使用樣本損失加權(quán)的情況最差(加權(quán) RMSE 最高),在這種情況下,由于模型預(yù)測(cè)目標(biāo)為天級(jí)目標(biāo),投放量較少導(dǎo)致樣本 CTR、CVR 波動(dòng)很大,此時(shí)如果不加入樣本損失權(quán)重的話,效果會(huì)變得非常差,效果不如去除時(shí)間因素的方式(直接預(yù)測(cè)整體效果,相對(duì)更穩(wěn)定)。
另外,以上離線評(píng)估都是基于加權(quán) RMSE 指標(biāo)給出的結(jié)果,不代表在真實(shí)情況下我們的加權(quán)方案一定是最優(yōu)的。由于我們的訓(xùn)練方式是加權(quán)的,所以在加權(quán) RMSE 指標(biāo)上的表現(xiàn)更好是符合預(yù)期的,這里我們只給出結(jié)果。關(guān)于加權(quán) RMSE 指標(biāo)是否更加 match 線上的表現(xiàn),是否有其他更合理的離線評(píng)估指標(biāo),值得進(jìn)一步考慮和驗(yàn)證。為了比較不同建模方式的效果,進(jìn)行線上的實(shí)驗(yàn)驗(yàn)證才是最直接有效的方式,不過考慮到實(shí)驗(yàn)的時(shí)間金錢代價(jià),目前我們尚未進(jìn)行這方面的實(shí)驗(yàn),后期有機(jī)會(huì)可以做進(jìn)一步驗(yàn)證。
4.2 線上評(píng)估
線上評(píng)估相比離線評(píng)估的優(yōu)勢(shì)在于:
- 可以對(duì)許多干擾因素進(jìn)行控制,如投放設(shè)置、時(shí)間等
- 可以打平不同素材的消耗,從而用統(tǒng)一的指標(biāo)如 CPA(成本)來評(píng)估素材的優(yōu)劣
- 能得到模型打分頭部素材的表現(xiàn)效果
- 相比于模型的整體排序效果,我們往往更關(guān)注打分頭部素材的表現(xiàn)(能否找到優(yōu)質(zhì)素材)
- 但打分頭部的素材可能之前沒有投放過,這時(shí)線上實(shí)驗(yàn)就能驗(yàn)證頭部素材的效果
當(dāng)然,線上評(píng)估也存在一些劣勢(shì):
- 耗費(fèi)時(shí)間、金錢
- 導(dǎo)致無法快速、頻繁驗(yàn)證模型效果
- 線上 AB 實(shí)驗(yàn)相比離線數(shù)據(jù),一般測(cè)試量會(huì)比較少,導(dǎo)致結(jié)果可能存在較大波動(dòng)
為了驗(yàn)證模型相比現(xiàn)有運(yùn)營同學(xué)的篩選方式的優(yōu)劣,我們?cè)趦?nèi)部一款游戲上進(jìn)行了 AB 實(shí)驗(yàn)。我們每期實(shí)驗(yàn)分別從模型打分素材與人工挑選素材中選擇相同數(shù)量的素材用于投放,控制預(yù)算、時(shí)間等變量相同,比較兩組素材的表現(xiàn)效果。由于素材優(yōu)選的目的在于發(fā)現(xiàn)效果好的新素材,而投放過的素材效果已經(jīng)得到驗(yàn)證了,所以我們只使用未在 dou+投放過的素材進(jìn)行實(shí)驗(yàn)。
我們的建模方案在最近幾次的 AB 實(shí)驗(yàn)中,模型打分素材在 CPA、優(yōu)質(zhì)素材占比等方面表現(xiàn)都比較好。最近一次兩組素材的表現(xiàn)對(duì)比如下(實(shí)驗(yàn)組為模型挑選素材,對(duì)照組為運(yùn)營同學(xué)人工挑選素材):
按預(yù)測(cè) CTR 排序下的真實(shí) CTR 表現(xiàn)折線圖
按預(yù)測(cè) CVR 排序下的真實(shí) CVR 表現(xiàn)折線圖
按預(yù)測(cè) CTCVR 排序下的真實(shí) CTCVR 表現(xiàn)折線圖(CTCVR=CTR*CVR)
*圖中對(duì)模型素材和人工挑選素材分別用不同顏色表示,并標(biāo)注了重合素材(模型挑選素材與人工挑選素材重合的部分),以及漏召素材(人工挑選素材中表現(xiàn)較好,但沒有被模型挑出來的素材)。
從圖中可以看出盡管存在波動(dòng),但整體真實(shí)表現(xiàn)依然隨預(yù)測(cè)值降低呈現(xiàn)下降的趨勢(shì),說明預(yù)測(cè)值與真實(shí)表現(xiàn)的相關(guān)性。另外,可以看出,CTR 模型的相關(guān)性較強(qiáng),而 CVR 預(yù)測(cè)值排序下的真實(shí)表現(xiàn)波動(dòng)大,說明 CTR 預(yù)測(cè)效果較好,CVR 預(yù)測(cè)效果可能較差。
針對(duì) CVR 表現(xiàn)較差的情況,我們查看了這些 CVR 表現(xiàn)差異較大的素材,發(fā)現(xiàn)存在一些歷史自然流量 CVR 較低、但實(shí)驗(yàn) CVR 較高的素材,即出現(xiàn)歷史表現(xiàn)與實(shí)驗(yàn)表現(xiàn)差異較大的情況。我們認(rèn)為這與素材的激活量少有關(guān)(大部分的激活數(shù)是個(gè)位數(shù)),可能微小的變化(如多一兩個(gè)激活)也會(huì)導(dǎo)致 CVR 發(fā)生很大的變化,即 CVR 波動(dòng)可能較大。而模型以這些波動(dòng)大的歷史 CVR 作為重要特征,容易受到不置信的歷史 CVR 的影響,導(dǎo)致模型預(yù)測(cè)值有偏差。后續(xù)可能需要針對(duì)這些歷史 CVR 特征不置信的情況,考慮如何提升模型的魯棒性(比如在訓(xùn)練樣本中對(duì)特征做隨機(jī)擾動(dòng)?)。
5. 總結(jié)與未來方向
本文主要介紹了我們?cè)谒夭膬?yōu)選方向的一些思考及實(shí)踐經(jīng)驗(yàn),包括整體的建模方案及特征抽取、樣本構(gòu)建過程,同時(shí)針對(duì)樣本存在的兩個(gè)問題詳細(xì)介紹了我們的解決方式,并給出了模型效果評(píng)估,說明了目前方案的有效性。雖然我們的方案主要適用于抖音「游戲發(fā)行人計(jì)劃」下原生游戲廣告素材的智能篩選,但讀者可以在其基礎(chǔ)上進(jìn)行改進(jìn),設(shè)計(jì)出更適合自己業(yè)務(wù)業(yè)務(wù)領(lǐng)域下的素材篩選方案,希望本文的內(nèi)容能夠帶給讀者一定的啟發(fā)。
另外,除了本文提出的技術(shù)方案外,還有一些可能的改進(jìn)思路,可以在未來做進(jìn)一步的探索:
1.建模目標(biāo): 我們的方案是使用回歸模型預(yù)測(cè)單個(gè)投放指標(biāo)。但是回歸模型在樣本量少時(shí)學(xué)習(xí)難度大,MSE 容易受到噪聲點(diǎn)影響,而且不利于在建模時(shí)對(duì)多個(gè)指標(biāo)進(jìn)行權(quán)衡。所以這里提出另外兩種構(gòu)造建模目標(biāo)的想法:1)建立素材分類目標(biāo),比如根據(jù)業(yè)務(wù)經(jīng)驗(yàn)對(duì)素材劃分為優(yōu)質(zhì)/低質(zhì)素材,得到二分類目標(biāo);2)建立 pairwise 的預(yù)測(cè)目標(biāo),即預(yù)測(cè)兩個(gè)素材中哪個(gè)素材更優(yōu)。
2.模型結(jié)構(gòu): 本文更側(cè)重業(yè)務(wù)上的特征、樣本構(gòu)建過程,沒有對(duì)模型結(jié)構(gòu)做太多討論。但在確定了特征樣本之后,嘗試更多不同的模型結(jié)構(gòu)是有必要的。比如,可以嘗試使用基于 FM 思想的深度推薦模型架構(gòu)如 DIFM、DeepFEFM 等對(duì)特征交叉進(jìn)行探索,或者在素材、作者、用戶、游戲構(gòu)成的異質(zhì)圖結(jié)構(gòu)上利用GTN、LightGCN等圖網(wǎng)絡(luò)模型更好地利用高階鄰居結(jié)構(gòu)抽取特征。同時(shí),訓(xùn)練好的深度模型可以在 base 模型基礎(chǔ)上針對(duì)不同游戲或者品類進(jìn)行finetune,可能可以達(dá)到更好的效果。另外,我們?cè)趯?shí)踐中發(fā)現(xiàn)靠后端的指標(biāo)如 CVR 等預(yù)測(cè)會(huì)比較差,這可能與數(shù)據(jù)較稀疏有關(guān),可以嘗試引入像PLE之類的多任務(wù)學(xué)習(xí)架構(gòu)進(jìn)行改進(jìn)。
3.特征: 我們的方案中使用的特征比較多,而素材優(yōu)選業(yè)務(wù)本身樣本量相對(duì)較少,高維的特征容易導(dǎo)致模型的過擬合(特別是后期引入復(fù)雜模型后),有些特征可能幫助不大,可以通過模型得到的特征重要性以及消融實(shí)驗(yàn)確定各部分特征的重要程度,去除無效的特征。
4.業(yè)務(wù)角度: 目前的素材優(yōu)選目標(biāo)是找到投放效果較好的素材。但可能存在一些素材本身具有抖音自然推薦帶來的流量,即使不用 dou+加熱,也能產(chǎn)生很好的帶量效果,即投放對(duì)這些素材的效果增益可能并不大,所以可以嘗試因果建模的方式,預(yù)測(cè)投放對(duì)素材帶量效果的 uplift 值,從而找到最能帶來增益的素材。