CSCNN:新一代京東電商廣告排序模型
分享嘉賓:劉鵠?京東 算法工程師
編輯整理:李沛欣
出品平臺(tái):DataFunTalk
本次分享主要包括以下內(nèi)容:
-
背景介紹
-
CTR模型的優(yōu)化方向
-
基于視覺(jué)信息的CTR廣告預(yù)測(cè)
-
我們的工作:CSCNN
-
效果展示
京東搜索廣告依托于京東和京準(zhǔn)通的數(shù)字營(yíng)銷(xiāo)平臺(tái)實(shí)現(xiàn)搜索場(chǎng)景下的流量變現(xiàn),每天幫助數(shù)百萬(wàn)的廣告主觸達(dá)數(shù)億的京東用戶。
1.?京東9NAI平臺(tái)
京東廣告算法團(tuán)隊(duì)主要做京東電商平臺(tái)下全場(chǎng)景的廣告流量變現(xiàn),包括的業(yè)務(wù)線包括搜索、推薦、站外、線下、品牌,360營(yíng)銷(xiāo)等等。用到的主要的模型,除了CTR模型,還有CVR、出價(jià)、圖像、創(chuàng)意模型等,這些都依賴于京東自研的9NAI的機(jī)器學(xué)習(xí)平臺(tái)。該平臺(tái)擁有離線訓(xùn)練,離線預(yù)估,線上inference、 模型的發(fā)版等功能。整個(gè)平臺(tái)的內(nèi)核基于TensorFlow框架搭建,并根據(jù)業(yè)務(wù)進(jìn)行了性能優(yōu)化,離線訓(xùn)練的調(diào)度則基于k8s開(kāi)發(fā)。
2. 電商環(huán)境下優(yōu)化ECPM的主要方式
在京東搜索廣告的直觀的展示界面,當(dāng)用戶搜索Query為"連衣裙"時(shí),前序模塊會(huì)召回n個(gè)廣告,都是和連衣裙的Query強(qiáng)相關(guān)、符合Query約束的商品。
ECPM排序的主要工作是n個(gè)廣告內(nèi)部順序的精排。在廣告場(chǎng)景下,排序的指標(biāo)就是平臺(tái)的營(yíng)收。
具體來(lái)看,作為CPC廣告,廣告主為每次點(diǎn)擊支付確定的出價(jià)bid。因此每次展現(xiàn)平臺(tái)所獲得的價(jià)值,就等于用戶點(diǎn)擊廣告的概率再乘以這次點(diǎn)擊的出價(jià),即ECPM ( effective cost per mile,千次展示期望收入 )。但是有時(shí)需要考慮Query下所有展現(xiàn)給用戶的商品對(duì)平臺(tái)帶來(lái)的總價(jià)值,即此時(shí)需要優(yōu)化所有展現(xiàn)給用戶廣告ECPM的和。但由于用戶Query為"連衣裙"時(shí),用戶的下拉深度有限,所以該問(wèn)題是有約束的優(yōu)化:在用戶看到有限深度廣告的前提下,極大化用戶對(duì)平臺(tái)的總營(yíng)收。
如果展現(xiàn)給用戶廣告之間的CTR條件獨(dú)立,可以通過(guò)貪婪方式求解優(yōu)化,即:按ECPM從大到小依次展現(xiàn)給用戶,這樣Query下的整體收入最高。
而ECPM中的第二項(xiàng)bid是由廣告主給出的。假如用ECPM的序作為訓(xùn)練和預(yù)估的指標(biāo)的話,廣告主可能通過(guò)調(diào)bid來(lái)hack模型系統(tǒng)。為避免這種情況,我們一般在離線時(shí)采用AUC作為訓(xùn)練和評(píng)估指標(biāo),通過(guò)訓(xùn)練CTR排序效果更好的模型,來(lái)間接提升線上ECPM排序和線上收入。
CTR ( Click-Through-Rate ) 即在建模展現(xiàn)這條廣告的情況下,用戶點(diǎn)擊的概率。在搜索的場(chǎng)景下,該概率可以描述成依賴于4個(gè)不同類(lèi)型輸入的函數(shù):
-
Query:描述用戶搜索意圖。
-
用戶側(cè)特征:描述用戶的興趣、偏好。
-
商品側(cè)特征:描述這個(gè)商品是否優(yōu)質(zhì)。
-
context特征:描述用戶搜索時(shí)屬于怎樣的場(chǎng)景,是上班的時(shí)候搜的還是周末搜的,此時(shí)是否有活動(dòng)。
1. 特征工程與提取數(shù)據(jù)
特征工程主要包括以下幾點(diǎn):
多模態(tài)信息建模:
-
人工特征:一般在構(gòu)建CTR模型的初期,會(huì)花很多精力做人工特征,比如說(shuō)ID類(lèi)的或者是實(shí)數(shù)的特征。通過(guò)構(gòu)建有區(qū)分性的特征來(lái)優(yōu)化模型的效果。
-
文本特征:描述細(xì)粒度Query中的用戶意圖。
-
用戶側(cè)特征:對(duì)用戶和商品之間關(guān)系的建模。比如說(shuō)對(duì)用戶序列進(jìn)行建模,或者是對(duì)用戶和商品之間的交互關(guān)系做圖表示建模。
-
圖像特征:它和前面的信息源的模態(tài)不同,但在多媒體的場(chǎng)景下,圖像一般是和文字一起構(gòu)建完整的商品信息展現(xiàn)給用戶,所以這部分的建模也很有必要。
特征的交叉:FM 、FFM、DCN等替代繁重手工特征交叉的方法。
解決過(guò)擬合問(wèn)題:解決特征長(zhǎng)尾稀疏時(shí),embedding的過(guò)擬合問(wèn)題。
2. 對(duì)CTR模型做目標(biāo)函數(shù)刻畫(huà)
度量學(xué)習(xí)問(wèn)題:之前給出的搜索場(chǎng)景不是很適合做pointwise的模型,主要的原因在于在搜索的場(chǎng)景下,候選集很有限。比如說(shuō)搜連衣裙的時(shí)候, n個(gè)商品都是連衣裙,并不需要區(qū)分用戶點(diǎn)擊連衣裙商品和鞋子商品的概率的高低,因?yàn)樗鼪](méi)有可比性。所以在搜索場(chǎng)景下,做得更多的是在小候選集下的優(yōu)化過(guò)程,此時(shí)需要做一些Query下的AUC的訓(xùn)練和預(yù)估。
Selection bias 問(wèn)題:主要描述的是在電商場(chǎng)景下會(huì)出現(xiàn)一些訓(xùn)練集和測(cè)試集不一致的情況。測(cè)試集指的就是線上預(yù)估的集合,因?yàn)樵诰€上召回幾百個(gè)商品,要對(duì)這幾百個(gè)商品進(jìn)行排序的情況下,因?yàn)閷?shí)際上一頁(yè)展現(xiàn)的商品有限,可能最終展現(xiàn)給用戶只有頭部的這幾個(gè)有l(wèi)abel的商品。所以在離線評(píng)估的時(shí)候,只能評(píng)估這幾個(gè)商品的使用情況,但是在線上Serving的時(shí)候需要對(duì)整體進(jìn)行排序,就要解決Selection bias的問(wèn)題。
長(zhǎng)期回報(bào)問(wèn)題:在上一頁(yè)P(yáng)PT中給出了一些簡(jiǎn)單的假設(shè),是當(dāng)上下的商品沒(méi)有耦合關(guān)系的情況下,可以做貪婪CTR模型。如果有耦合關(guān)系,可能就要對(duì)搜索詞下的整個(gè)用戶對(duì)電商平臺(tái)產(chǎn)生的回報(bào),即加和的Reward (?長(zhǎng)期回報(bào) ) 建模。
3. 結(jié)合系統(tǒng)架構(gòu)的工作
Online Learning:線上系統(tǒng)中數(shù)據(jù)分布式是時(shí)變的。工程上的傳統(tǒng)方式是做定期重啟的全量訓(xùn)練。但由于數(shù)據(jù)量大,訓(xùn)練很慢,依然會(huì)導(dǎo)致訓(xùn)練和預(yù)估存在時(shí)間/分布的gap。online-learning是一種很有用的方向,通過(guò)流式的數(shù)據(jù)預(yù)處理和訓(xùn)練,使模型緊跟線上分布,解決時(shí)變帶來(lái)的gap。
線上分布式serving:由于單機(jī)內(nèi)存的限制,線上模型的體積會(huì)受到約束。我們通過(guò)分布式和模型并行支持TB型的模型的加載,同時(shí)保證模型各部分參數(shù)版本一致性。放開(kāi)了線上內(nèi)存的限制,增加模型的表達(dá)能力。
線上gpu serving:放開(kāi)線上計(jì)算復(fù)雜度的限制,有助于使用更深的更復(fù)雜的模型結(jié)構(gòu)來(lái)增加模型的表達(dá)能力。
所以說(shuō)從整體上來(lái)看,本研究所探討的使用視覺(jué)信息提升排序模型效果的工作,主要還是集中在第一部分——特征和數(shù)據(jù)建模中多模態(tài)的建模。通過(guò)優(yōu)化這些圖像的特征建模,能夠得到商品側(cè)更好的展現(xiàn)效果,進(jìn)而提升用戶對(duì)于商品的點(diǎn)擊率。
03
基于視覺(jué)信息的CTR廣告預(yù)測(cè)
1. 視覺(jué)信息在商品展現(xiàn)中給人呈現(xiàn)的印象
Intuition:在整個(gè)搜索版面中,每個(gè)商品都是圖文結(jié)合的。商品主圖的版面很大,有很強(qiáng)的視覺(jué)沖擊力,而且主圖中會(huì)包含很多細(xì)節(jié)信息,比如說(shuō)材質(zhì)、紋理、款式等,這些信息是難以通過(guò)title、ID類(lèi)特征或者是一些屬性信息體現(xiàn)出來(lái)的,只能通過(guò)圖像來(lái)提取這些細(xì)節(jié)信息進(jìn)行建模。而且在訓(xùn)練的過(guò)程中,只對(duì)這些ID類(lèi)特征進(jìn)行辨別,可能還會(huì)遇到一些稀疏或者冷啟動(dòng)的問(wèn)題。假如使用CNN來(lái)提取圖像特征的話,更有可能來(lái)避免這些事情來(lái)提升模型的泛化性。
2. 使用圖像建模的瓶頸
工程實(shí)現(xiàn)較為困難:此前用到的一些點(diǎn)擊率預(yù)估模型都是比較簡(jiǎn)單的MLP的模型,他們其實(shí)訓(xùn)練和serving都是非??斓?。但是加上CNN之后,訓(xùn)練會(huì)出現(xiàn)性能瓶頸,導(dǎo)致模型更新周期更長(zhǎng);serving也會(huì)出現(xiàn)非常嚴(yán)重的性能瓶頸,可能會(huì)直接影響線上服務(wù)的時(shí)遲。
建模效果收益有限:
在使用圖像特征之前,我們已經(jīng)提了很多的商品側(cè)的特征,傳統(tǒng)建模方式不能完全保證從圖像中來(lái)獲取到的是增量細(xì)節(jié)信息。假如只提取到一些和已有屬性或者類(lèi)目重復(fù)的信息,那么引入CNN直接建模圖像的意義就很小了。
和傳統(tǒng)圖像的任務(wù)不同,例如檢測(cè)分割或者是分類(lèi)問(wèn)題的監(jiān)督信號(hào)非常強(qiáng),但點(diǎn)擊率預(yù)估是一個(gè)監(jiān)督信號(hào)很弱的場(chǎng)景。用戶點(diǎn)或者沒(méi)點(diǎn)二分類(lèi)場(chǎng)景中,本身就是包含了一定的random noise。在這種監(jiān)督信號(hào)不強(qiáng)、有噪的情況下,訓(xùn)練好CNN是困難的。
3. 問(wèn)題的解決
下面,我們主要針對(duì)這兩點(diǎn)做了一些已有方法的調(diào)研。
-
固定提取embedding圖像:不做二階段的訓(xùn)練,從而規(guī)避前述問(wèn)題。但是固定的CNN提取出來(lái)的特征,無(wú)法保證和已有的屬性、類(lèi)目信息不產(chǎn)生交疊,因此CNN提供的增量信息有限。
-
端到端的CNN和CTR模型聯(lián)合的訓(xùn)練:絕大多數(shù)工作還都是在做離線的評(píng)估,很少有做工業(yè)級(jí)數(shù)據(jù)的線上serving。所有工作都直接將傳統(tǒng)用于圖像分類(lèi)的CNN直接拼入CTR模型中,并沒(méi)有做任何結(jié)構(gòu)的改進(jìn)以適配當(dāng)下問(wèn)題 ( 后續(xù)會(huì)說(shuō)明傳統(tǒng)CNN解決CTR問(wèn)題的不足 )。
-
pre-training:使用圖像分類(lèi)/只基于圖像的CTR問(wèn)題,做pre-training。以期獲得二階段更好的效果。
04
我們的工作:CSCNN
1. 研究的出發(fā)點(diǎn):CTR模型建模本身存在的問(wèn)題
傳統(tǒng)使用CNN引入圖像信息的模式,屬于Late Fusion。這種方法從CNN提取出embedding,再和已有的特征一起參與 CTR的模型建模,本身就存在一些問(wèn)題。
-
信息浪費(fèi):在建模圖像之前,模型通過(guò)類(lèi)目等id類(lèi)特征就已經(jīng)知道這個(gè)商品是連衣裙了。而這些視覺(jué)先驗(yàn)現(xiàn)在還沒(méi)有加到CNN的建模中來(lái),即這部分的信息被浪費(fèi)了。假如知道這些先驗(yàn),CNN的任務(wù)就會(huì)更簡(jiǎn)單些。換句話說(shuō),CNN的任務(wù)應(yīng)該是:在知道該商品為連衣裙類(lèi)目的情況下,提取出連衣裙相關(guān)的特征、捕獲連衣裙的細(xì)節(jié)。假如能把已有的視覺(jué)先驗(yàn)加到CNN的輸入中,CNN的訓(xùn)練和 serving效果都會(huì)更好。
-
包含與類(lèi)目無(wú)關(guān)的信息:如果把這些有視覺(jué)先驗(yàn)的信息提前告訴CNN,它就有可能避免提取到一些與類(lèi)目無(wú)關(guān)的信息。對(duì)于連衣裙圖片,可能背景中有一些和類(lèi)目相關(guān)性不高的物品。我們可以根據(jù)類(lèi)別先驗(yàn),避免將背景噪聲耦合進(jìn)來(lái)。
綜上,我們整體的方向就是通過(guò)已有的圖像之外的視覺(jué)先驗(yàn),幫助CNN的學(xué)習(xí)。
2. SENet作為特征再校準(zhǔn)模塊的作用
前期的調(diào)研中,我們發(fā)現(xiàn)SENET的思想和我們有些類(lèi)似。做圖像的同學(xué)都比較清楚,SENET是被插在每個(gè)卷積操作的Feature map之后,有點(diǎn)類(lèi)似于Self-attention的小模塊。首先把它的空間的尺度給壓掉,得到c維的向量,再做c維向量?jī)?nèi)部的交互,得到c維的 scale乘到c維的feature map上。
舉個(gè)例子,我有c個(gè)Feature map ( 特征圖 ),通過(guò)內(nèi)部的交互來(lái)決定哪個(gè)特征圖應(yīng)該加強(qiáng),哪個(gè)應(yīng)該減弱。這是一種類(lèi)似self-attention ( 自注意力機(jī)制 ) 的 Feature map recalibration ( 特征圖再校準(zhǔn) ) 的問(wèn)題。在點(diǎn)擊率預(yù)估的問(wèn)題中,recalibration就有點(diǎn)像做特征選擇??梢哉J(rèn)為這c個(gè)特征圖是表示圖像不同方面的信息,通過(guò)自注意力機(jī)制的方式去進(jìn)行選擇。但是有沒(méi)有可能把這些類(lèi)目的信息或者是從其他地方得到的視覺(jué)先驗(yàn)加進(jìn)來(lái),做一些基于視覺(jué)先驗(yàn)的特征選擇呢?答案是肯定的。
3. 類(lèi)目特定的卷積神經(jīng)網(wǎng)絡(luò):CSCNN
Category Specific CNN ( 類(lèi)目特定的卷積神經(jīng)網(wǎng)絡(luò) ),具體的操作方式和SENET稍微有點(diǎn)類(lèi)似。
還是以連衣裙特征提取任務(wù)為例,當(dāng)給定類(lèi)目是連衣裙時(shí),可以把連衣裙的embedding加到 channel-wise attention ( 通道域注意力機(jī)制 ),以及 spatial-wise attention ( 空間域注意力機(jī)制 ) 的過(guò)程中。這種方式相當(dāng)于為輸入的feature map提取和 category有關(guān)的channel和spatial ?feature ( 空間特征 )?;蛘哒f(shuō)是在卷積的每一層之后,通過(guò)引入category的信息做category specific的 feature recalibration。進(jìn)而實(shí)現(xiàn)category specific的圖像特征的抽取和圖像特征選擇。
這種逐層引入 category ( 類(lèi)目特征 ) 的視覺(jué)先驗(yàn)到 CNN里面的方法,可以認(rèn)為是在CNN逐層提取越來(lái)越抽象信息的過(guò)程中,不停地加入類(lèi)目相關(guān)的特征選擇。最終CNN提取出來(lái)的視覺(jué)信息就是一種類(lèi)目相關(guān)的信息,或者說(shuō)是把很大的圖像信息抽取問(wèn)題特化成小類(lèi)目下的圖像特征抽取問(wèn)題,進(jìn)而簡(jiǎn)化CNN的學(xué)習(xí)任務(wù)。
具體來(lái)講,上面是具體的channel-wise attention ( 通道域注意力機(jī)制 ) 的實(shí)現(xiàn)方式。和SENET很類(lèi)似的部分是在這里——通過(guò)Feature map來(lái)做一些average pooling ( 平均池化 )?和 max pooling ( 最大池化 ),得到C維的向量。而后又拼上category embedding,從而相當(dāng)于在前半部分得到全局的圖像特征表示。經(jīng)過(guò)全連接,得到類(lèi)目特定的通道域側(cè)的加權(quán)系數(shù)。平均池化和最大池化這兩路加起來(lái),經(jīng)過(guò)sigmoid函數(shù)來(lái)得到通道加權(quán)系數(shù),加權(quán)后得到channel的refined-feature map ( 提純特征圖 )。類(lèi)似地還做了category-specific Spatial Attention module ( 類(lèi)別特定的空間域注意力機(jī)制模型 ),它的方式就是把channel 的這一維average pooling或者max pooling掉,再拼上同樣大小的category embedding,經(jīng)過(guò)卷積的方式,提取到 spatial的加權(quán)系數(shù),最后得到spatial的refined CNN Feature Map。通過(guò)這兩種不同的模塊,我們?cè)诰矸e的過(guò)程中,在每個(gè)feature map后,都做了類(lèi)目先驗(yàn)相關(guān)的特征抽取 ( 特征選擇 ) 以提升CNN的學(xué)習(xí)效果。
3. 用9NAI進(jìn)行的工程實(shí)現(xiàn)
再介紹一下為了解決前面說(shuō)到的一些工程實(shí)現(xiàn)的問(wèn)題,和對(duì)應(yīng)的加速方法。
這張圖是模型系統(tǒng)的簡(jiǎn)化圖。從右下角開(kāi)始看,特征通過(guò)線上feature dump下來(lái)。由于線上預(yù)估時(shí)實(shí)際上沒(méi)有用到圖像,所以這部分特征里也是沒(méi)有圖像的。
經(jīng)過(guò)對(duì)相同商品ID及其圖像特征的離線拼接,特征中就同時(shí)包含了圖像特征、類(lèi)別特征等三部分的特征,融到一起得到了一個(gè)端到端的帶CNN的 CTR 預(yù)估訓(xùn)練模型。
端到端訓(xùn)練之后,會(huì)產(chǎn)生這樣一個(gè)問(wèn)題:CNN部分線上serving緩慢。我們采用了一種空間換時(shí)間的加速方式。具體是我們先對(duì)全站商品的CNN embedding進(jìn)行離線預(yù)估,形成詞表,把這個(gè)詞表和模型的其他部分一起加載到線上的系統(tǒng)中,線上就可以直接通過(guò)商品的ID來(lái)查到商品的embedding。
之所以這樣做,是因?yàn)榻y(tǒng)計(jì)發(fā)現(xiàn)廣告主更換商品主圖的頻次很低。每天更新模型,每天使用最新的 CNN產(chǎn)出線上用的Lookup Table ( 查找表 ),對(duì)這種低頻變化的主圖是穩(wěn)定可靠的。在線上通過(guò)20G的查找表,我們?cè)贑PU的機(jī)器上實(shí)現(xiàn)了20毫秒以內(nèi)的tp99 ( 99%以內(nèi)網(wǎng)絡(luò)需求的最低延時(shí) )。
4. 離線訓(xùn)練加速
加入CNN之后,原來(lái)可能一天能訓(xùn)練好的模型需要數(shù)天時(shí)間才能訓(xùn)練好,CNN在這部分的離線計(jì)算瓶頸比較大。
具體進(jìn)行離線加速的方式包括兩部分:
-
按照商品的主圖進(jìn)行聚合。我們將至多25個(gè)對(duì)應(yīng)同商品的不同的請(qǐng)求聚合 ( 他們可能是來(lái)自不同用戶的,但是他們看到或者點(diǎn)擊了相同的商品 )。這批聚合了的請(qǐng)求在訓(xùn)練的過(guò)程中由于圖像是相同的,所以CNN這部分只用forward和backward一次。這種方式在不影響離線訓(xùn)練效果的情況下,能極大提升離線訓(xùn)練效率。
-
單機(jī)4卡的同步更新。做這件事情的主要意義是可以節(jié)省CNN梯度回傳的次數(shù),4GPU只回傳一次梯度,節(jié)省了 PS框架下server傳輸成本,進(jìn)而提升離線訓(xùn)練速度。最終在百億規(guī)模的訓(xùn)練集上我們可以在24小時(shí)內(nèi)完成離線訓(xùn)練。
05
接下來(lái)介紹整個(gè)算法以及工程架構(gòu)在線上和公開(kāi)數(shù)據(jù)集上的實(shí)際效果。
1. 算法模型在公共數(shù)據(jù)集中的效果
在公開(kāi)數(shù)據(jù)集的實(shí)驗(yàn)用了比較簡(jiǎn)單的CTR模型,來(lái)檢驗(yàn)圖像特征提取的這部分究竟起到多大的作用。這里沒(méi)有看它和CTR模型的耦合,基本只關(guān)注圖像。以亞馬遜的數(shù)據(jù)集為訓(xùn)練集,每個(gè)子類(lèi)里邊都有幾十類(lèi)的商品,采用AUC評(píng)估指標(biāo),主要的對(duì)比方法分成以下幾種:
-
不依賴于圖像的方法;
-
依賴圖像的方法;
-
在圖像之外加入類(lèi)別信息的視覺(jué)先驗(yàn)的方法。
和我們最接近的方法是SCA,它是在image caption ( 圖像描述 ) 方向的工作,在卷積的后幾層加入空間域和通道域的注意力機(jī)制。
對(duì)比之后發(fā)現(xiàn),加入圖像信息相比不加圖像有非常大的AUC提升。通過(guò)Fintune ( 遷移學(xué)習(xí) ) 的方法也比非Fintune的方法好,主要的考慮是來(lái)自于非遷移學(xué)習(xí)的方法可能提取出來(lái)的特征可能和已有的特征是有關(guān)系的,所以做遷移學(xué)習(xí)效果更好一些。
這三種方法就是加入類(lèi)別信息的方法。雖然已有工作也加入了類(lèi)別、視覺(jué)先驗(yàn),但是他們都采用了late fusion的方式:CNN并不知道這些類(lèi)別的先驗(yàn),CNN提取了特征之后,再和這些類(lèi)別、視覺(jué)先驗(yàn)進(jìn)行耦合建模。
后兩種方法都將類(lèi)別先驗(yàn)加到了CNN里。SCA雖然是在圖像描述中取得很好的效果,但是由于它無(wú)法很好地加到每一層的卷積后,對(duì)于簡(jiǎn)化CNN學(xué)習(xí)效果并沒(méi)有我們好。我們?cè)谒械闹笜?biāo)上都大幅領(lǐng)先了state-of-the-art。
我們進(jìn)一步回答了category specific模塊對(duì)所有的CNN架構(gòu)、注意力機(jī)制的普適性。無(wú)論是CNN-F還是inception,SE還是一些spatial attention的模塊,加入了我們的category specific機(jī)制都可以得到一致的效果提升。
2. 算法模型在工業(yè)數(shù)據(jù)集中的效果
工業(yè)數(shù)據(jù)相比于公開(kāi)數(shù)據(jù)有很大的不同,主要有兩大特點(diǎn):
-
數(shù)據(jù)量非常大:150億的數(shù)據(jù),3000多類(lèi)別數(shù),還包含各種各樣已有的人工提取的特征。
-
工業(yè)數(shù)據(jù)的特點(diǎn):長(zhǎng)尾、稀疏。
這里我畫(huà)了幾個(gè)特征的例子。比如Query這個(gè)特征,有90%的Query出現(xiàn)的次數(shù)不足10次。在這種非常稀疏的場(chǎng)景下,特征泛化性差,過(guò)擬合和冷啟問(wèn)題嚴(yán)重。
我們的建模基礎(chǔ)——CTR model是三層的DCN的模型,提取圖像信息的網(wǎng)絡(luò)采用了Res18的網(wǎng)絡(luò)。我們?cè)谒幕A(chǔ)上進(jìn)一步增加了category specific 模塊。
研究發(fā)現(xiàn),在基礎(chǔ)的模型下,加入這種固定的CNN embedding已經(jīng)有了一些提升效果,但并不是很大。在加入了Fintune遷移學(xué)習(xí)之后,得到了進(jìn)一步的提升。再加入CBAM的模塊,以類(lèi)似self-attention的方式來(lái)決定哪些特征應(yīng)該加強(qiáng)或者減弱,整個(gè)模型效果又得到一點(diǎn)點(diǎn)提升。但主要的提升還是來(lái)自于最后的CSCNN,通過(guò)加入類(lèi)目特定的視覺(jué)先驗(yàn)來(lái)幫助CNN的學(xué)習(xí)。目前CSCNN已經(jīng)在京東搜索廣告上全量,每天服務(wù)數(shù)億用戶和數(shù)百萬(wàn)廣告主。
嘉賓介紹:
劉鵠
京東 |?算法工程師
劉鵠,清華大學(xué)自動(dòng)化系碩士。目前就職于京東,搜索廣告排序模型方向負(fù)責(zé)人。工作曾在CVPR,NIPS,KDD等頂級(jí)會(huì)議發(fā)表。
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!