周菲
摘要:針對(duì)現(xiàn)有的點(diǎn)擊率預(yù)估模型忽略了不同特征的重要程度的問(wèn)題,提出了一種基于特征重要度的廣告點(diǎn)擊率預(yù)估模型,首先模型在DeepFM模型的基礎(chǔ)上使用Squeeze-and-Excitation網(wǎng)絡(luò)動(dòng)態(tài)學(xué)習(xí)特征的重要性,其次將FM和DNN輸出結(jié)果進(jìn)行拼接,通過(guò)后續(xù)的多層感知機(jī)層進(jìn)一步學(xué)習(xí)特征的高階特征交互信息。通過(guò)對(duì)比了兩個(gè)公開(kāi)數(shù)據(jù)集,實(shí)驗(yàn)結(jié)果顯示,基于特征重要度的廣告點(diǎn)擊率預(yù)估模型相比其他模型得到更好的表現(xiàn)。
關(guān)鍵詞:廣告點(diǎn)擊率;特征重要度;DeepFM;多層感知機(jī);特征交互
中圖分類號(hào):TP-18? ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2020)36-0012-03
Abstract: As one of the core tasks of recommendation systems and online advertising, advertisement click-through rate prediction is an essential topic in academia and industry. Aiming at the problem that the existing click-through rate prediction models care less about the importance of features, this paper proposed a new model. On the one hand, the new model learned the importance of features via the Squeeze-and-Excitation network on the basis of the DeepFM. On the other hand, the model proposed to further concatenate the outputs of FM and DNN ,it is able to effectively learn the high order feature interactions via multi-layer-perception. By comparing two public data sets, the experimental results show that the new model shows better performance than other models.
Key words: click-through rate; importance of features; DeepFM; multi-layer-perception; feature interactions
1 引言
廣告點(diǎn)擊率(Click-Through Rate,CTR)指的是給定用戶和網(wǎng)頁(yè)內(nèi)容,廣告被點(diǎn)擊的次數(shù)占總展示次數(shù)的比例[1]。當(dāng)前的大數(shù)據(jù)場(chǎng)景下,廣告由過(guò)去的“粗放式”投放正在向“精準(zhǔn)化”投放轉(zhuǎn)變,以數(shù)據(jù)驅(qū)動(dòng)的廣告精準(zhǔn)投放已經(jīng)成為當(dāng)前廣告投放的主流方式,在廣告需求方的程序化購(gòu)買和在線投放過(guò)程中,需要預(yù)先評(píng)估用戶對(duì)廣告的偏好程度,而衡量這一重要指標(biāo)的過(guò)程就是CTR預(yù)估,CTR的準(zhǔn)確度不僅影響廣告產(chǎn)品的收益,同時(shí)也影響用戶的體驗(yàn)度和滿意度。
傳統(tǒng)的CTR預(yù)估主要采用邏輯回歸(Logistic Rehression,LR)[2],POLY2模型[3],因子分解機(jī)模型(Factorization Machine,F(xiàn)M)[4]等。隨著深度學(xué)習(xí)的興起,基于深度學(xué)習(xí)的CTR預(yù)估模型在探索特征之間的高階組合方面取得了大幅進(jìn)展,其中,代表性的CTR預(yù)估模型:如微軟的DeepCrossing[5]、谷歌的Wide&Deep[6]、華為的DeepFM[7]等,DeepFM由FM和DNN兩個(gè)組件構(gòu)成,它們共享相同的輸入,從而可以同時(shí)從原始特征中學(xué)習(xí)出低階和高階特征交互信息。然而這些模型忽略了建模不同特征的重要程度,對(duì)于不同的預(yù)測(cè)目標(biāo)來(lái)說(shuō),不同特征的重要程度是不同的。舉例來(lái)說(shuō):目標(biāo)任務(wù)為預(yù)測(cè)用戶是否會(huì)買《機(jī)器學(xué)習(xí)》這本書(shū),那么該用戶的職業(yè)這個(gè)特征就比用戶的其他特征如:性別、收入等重要得多。
文獻(xiàn)[8]提出了Squeeze-and-Excitation(SENET)網(wǎng)絡(luò),該網(wǎng)絡(luò)旨在顯式地建模特征通道之間的相互依賴關(guān)系,使得模型自動(dòng)學(xué)習(xí)圖像不同通道的特征的重要程度,該網(wǎng)絡(luò)贏得了ImageNet 2017分類任務(wù)競(jìng)賽的冠軍。除了圖像分類任務(wù),SENET網(wǎng)絡(luò)也被用于其他的領(lǐng)域,文獻(xiàn)[9]將SENET模塊用于語(yǔ)義分割任務(wù)。文獻(xiàn)[10]將SENET模塊擴(kuò)展為一種綜合全局和局部的注意力(global and local attention,GALA)。
綜上,在DeepFM的基礎(chǔ)上,本文提出一種SeDeepFM模型, SeDeepFM結(jié)構(gòu)采用Squeeze-and-Excitation網(wǎng)絡(luò)動(dòng)態(tài)學(xué)習(xí)特征的重要程度,同時(shí)為了充分對(duì)特征進(jìn)行交叉,本文將FM的輸出和DNN的輸出進(jìn)行拼接并輸送給后續(xù)的多層感知機(jī),實(shí)驗(yàn)證明該模型有效提升了CTR預(yù)估的準(zhǔn)確率。
2 基于特征重要度的廣告點(diǎn)擊率預(yù)估模型
本節(jié)將詳細(xì)介紹論文提出的SeDeepFM模型,如圖1所示。首先介紹特征的表征,然后自底向上地逐一介紹模型的各個(gè)組件,包括:1)嵌入層,用于將從原始特征轉(zhuǎn)化為對(duì)應(yīng)的嵌入向量;2)SENET層,用于動(dòng)態(tài)學(xué)習(xí)特征之間的重要程度;3)DeepFM層,用于學(xué)習(xí)特征之間的低階和高階交叉信息;4)拼接層,將FM模塊的輸出結(jié)果和DNN模塊的輸出結(jié)果進(jìn)行拼接,將拼接的結(jié)果輸送給后續(xù)的多層感知機(jī)層;5)多層感知機(jī)層,通過(guò)多層神經(jīng)網(wǎng)絡(luò)進(jìn)一步學(xué)習(xí)特征的高階交叉信息。
2.1 特征的表征
原始類別型特征,如性別、手機(jī)型號(hào)等,需要經(jīng)過(guò)onehot編碼[11]轉(zhuǎn)化成onehot向量: [x=[x1,x2,...,xf]],[x∈Rd],[d]為onehot向量的維度,[f]為特征域的個(gè)數(shù),數(shù)值型的特征為自身的值,通常onehot向量[x]是一個(gè)超高維且稀疏的向量。
2.2 嵌入層
嵌入層將onehot編碼后的高維稀疏向量轉(zhuǎn)化為低維稠密向量:[E=[e1,e2,...,eM]],[M]為稀疏特征的特征域個(gè)數(shù),[ei]為第[i]個(gè)特征域的Embedding向量,[ei∈Rk],[K]為Embedding向量的維度。為了讓類別型特征和數(shù)組型特征進(jìn)行特征交叉,同樣將數(shù)值型特征轉(zhuǎn)化為一個(gè)[K]維的向量[en],[en∈Rk]。
2.3 SENET層
如圖2所示,SENET模塊主要包含壓縮、激勵(lì)、重標(biāo)定這3個(gè)步驟,下面分別進(jìn)行說(shuō)明。
2.3.1 壓縮Squeeze
該步驟用于特征的壓縮,通過(guò)平均池化將原Embedding向量轉(zhuǎn)化為統(tǒng)計(jì)向量,使得每個(gè)特征域的統(tǒng)計(jì)向量具有“全局信息”,壓縮后的統(tǒng)計(jì)向量[S=[s1,...,si,...,sf]],[si]公式表示如下:
其中[S]為經(jīng)過(guò)特征壓縮后的統(tǒng)計(jì)向量,[K]為Embedding向量的維度,[si]為經(jīng)過(guò)平均池化后的第[i]個(gè)特征域的統(tǒng)計(jì)向量。
2.3.2 激勵(lì)Excitation
該操作主要由兩層全連接層組成,通過(guò)對(duì)統(tǒng)計(jì)向量[S]的每個(gè)特征域生成權(quán)重向量[G],從而顯式建模特征通道間的相關(guān)性,公式表示如下:
2.3.3 重標(biāo)定Re-Weight
該操作用于將學(xué)習(xí)到的特征通道的相關(guān)性[G]按照相應(yīng)的特征域加權(quán)到原Embedding向量上,從而完成對(duì)原Embedding向量的“重標(biāo)定”。公式表示如下:
2.4 DeepFM層
DeepFM由FM和DNN兩個(gè)組件構(gòu)成,下面分別對(duì)FM和DNN進(jìn)行說(shuō)明。
2.4.1 FM
在FM中,通過(guò)對(duì)特征i、特征j的隱向量[Vi]、[Vj]計(jì)算內(nèi)積,從而學(xué)習(xí)二階的特征交叉。公式如下:
2.4.2 DNN
DNN是一個(gè)包含多個(gè)隱層的前向神經(jīng)網(wǎng)絡(luò),用來(lái)學(xué)習(xí)特征之間的高階交互信息。將SENET層的輸出向量[L=[l1,...,li...,lf]]作為DNN的輸入,公式如下:
其中H為前向神經(jīng)網(wǎng)絡(luò)的層數(shù),[LH]分別為第H層的輸出,同時(shí)作為H+1層的輸入,[WH]、[bH]為第H層的權(quán)重和偏置。
2.5 拼接層
拼接層用于拼接FM和DNN的輸出向量,將拼接后的結(jié)果[C]作為后續(xù)網(wǎng)絡(luò)的輸入,公式表示如下:
2.6 多層感知機(jī)層
多層感知機(jī)層是一個(gè)包含多個(gè)隱層的前向神經(jīng)網(wǎng)絡(luò),用于對(duì)FM和DNN拼接后的結(jié)果進(jìn)一步特征交叉,學(xué)習(xí)高階特征的交互信息,公式如下:
其中[Y]為前向神經(jīng)網(wǎng)絡(luò)的層數(shù),[CY]分別為第[Y]層的輸出,同時(shí)作為[Y+1]層的輸入,[WY]、[bY]為第[Y]層的權(quán)重和偏置,[WY∈RnY×nY+1],[nY]為第[Y]層隱節(jié)點(diǎn)個(gè)數(shù),[nY+1]為第[Y+1]層隱節(jié)點(diǎn)個(gè)數(shù)。[σ]為激活函數(shù),隱層節(jié)點(diǎn)的激活函數(shù)為ReLU[12]。前向神經(jīng)網(wǎng)絡(luò)的最后一層連接輸出節(jié)點(diǎn),輸出節(jié)點(diǎn)的激活函數(shù)采用[Sigmoid][13]激活函數(shù),預(yù)測(cè)點(diǎn)擊率公式如下:
[WZ]為最后一個(gè)隱層到輸出節(jié)點(diǎn)的權(quán)重向量,[CZ]為最后一個(gè)隱層的輸出向量,[bZ]為輸出節(jié)點(diǎn)的偏置。
2.7 計(jì)算模型的損失函數(shù)
為了對(duì)模型的權(quán)重和參數(shù)進(jìn)行學(xué)習(xí),論文中將對(duì)數(shù)損失函數(shù)(也稱為logloss[14])作為模型的目標(biāo)函數(shù),公式表示如下:
其中, [L(θ)]為模型的對(duì)數(shù)損失函數(shù), [θ]表示模型的參數(shù),[p(xi,θ)]為樣本[i]的特征向量[xi]基于當(dāng)前模型的參數(shù)[θ]計(jì)算得到的預(yù)測(cè)點(diǎn)擊率,[yi]為樣本[i]的真實(shí)標(biāo)簽,有點(diǎn)擊的為1,無(wú)點(diǎn)擊的為0, [N]為樣本的總數(shù)。
3 實(shí)驗(yàn)部分
為了對(duì)提出的SeDeepFM模型的預(yù)測(cè)結(jié)果進(jìn)行評(píng)價(jià),本文基于Criteo數(shù)據(jù)集和Avazu數(shù)據(jù)集這兩個(gè)公開(kāi)數(shù)據(jù)集完成了一系列實(shí)驗(yàn)。本節(jié)首先對(duì)數(shù)據(jù)集和評(píng)價(jià)指標(biāo)進(jìn)行介紹,其次簡(jiǎn)要介紹數(shù)據(jù)的處理及關(guān)鍵參數(shù)設(shè)置,最后通過(guò)實(shí)驗(yàn)展示SeDeepFM模型的預(yù)測(cè)性能,并對(duì)實(shí)驗(yàn)結(jié)果展開(kāi)討論。
3.1 數(shù)據(jù)集及評(píng)價(jià)指標(biāo)
本文采用的Criteo數(shù)據(jù)集是Criteo公司在2014年 Kaggle平臺(tái)發(fā)起的廣告點(diǎn)擊率預(yù)估的數(shù)據(jù)集,Avazu數(shù)據(jù)集為Avazu公司提供的10天的廣告點(diǎn)擊數(shù)據(jù),采用的評(píng)估指標(biāo)為AUC[15]和logloss[14]。AUC被認(rèn)為是CTR預(yù)估問(wèn)題的一個(gè)重要指標(biāo)。AUC越大,說(shuō)明CTR預(yù)估模型的性能越好,logloss越小說(shuō)明CTR預(yù)估模型的性能越好。
3.2 數(shù)據(jù)的處理及關(guān)鍵參數(shù)設(shè)置
我們隨機(jī)選擇80%的樣本作為訓(xùn)練集, 10%的樣本作為測(cè)試集,剩下10%的樣本作為驗(yàn)證集。Embedding的大小設(shè)置為16,DNN隱節(jié)點(diǎn)個(gè)數(shù)設(shè)置為[32,32],batch的大小為1000,模型的優(yōu)化器為Adam[16],學(xué)習(xí)率設(shè)置為0.001。
3.3 實(shí)驗(yàn)結(jié)果及分析
本次實(shí)驗(yàn)將LR設(shè)置為基線模型,從表1我們可以看出, FM和DNN的AUC相比LR有了大幅提升進(jìn)一步說(shuō)明特征交叉的重要性。SeDeepFM在DeepFM的基礎(chǔ)上通過(guò)SENET模塊動(dòng)態(tài)學(xué)習(xí)特征的重要程度,同時(shí)將FM和DNN的輸出進(jìn)行拼接并通過(guò)多層感知機(jī)層進(jìn)一步學(xué)習(xí)特征的高階組合信息,從而在兩個(gè)公開(kāi)數(shù)據(jù)集上得到最好的表現(xiàn)。
4 結(jié)束語(yǔ)
本文中,我們提出了一個(gè)全新的CTR預(yù)估模型SeDeepFM。該模型提出了將SENET模塊應(yīng)用于CTR預(yù)估任務(wù),本文展示了使用SENET學(xué)習(xí)特征重要度的細(xì)節(jié),同時(shí)在DeepFM的基礎(chǔ)上設(shè)計(jì)了多層感知機(jī)層進(jìn)一步學(xué)習(xí)高階特征交互,通過(guò)實(shí)驗(yàn)證明了SeDeepFM模型的有效性。
參考文獻(xiàn):
[1] 周傲英, 周敏奇, 宮學(xué)慶. 計(jì)算廣告:以數(shù)據(jù)為核心的Web綜合應(yīng)用[J]. 計(jì)算機(jī)學(xué)報(bào), 2011, 34(10): 1805-1819.
[2] Chapelle O, Manavoglu E, Rosales R. Simple and scalable response prediction for display advertising[J]. ACM Transactions on Intelligent Systems and Technology (TIST), 2014, 5(4): 1-34.
[3] Chang Y-W, Hsieh C-J, Chang K-W, et al. Training and testing low-degree polynomial data mappings via linear SVM[J]. Journal of Machine Learning Research, 2010, 11(4).
[4] Rendle S. Factorization machines[C]//Proc of the 2010 IEEE International Conference on Data Mining,IEEE.2010: 995-1000.
[5] Shan Y, Hoens T R, Jiao J, et al. Deep crossing: Web-scale modeling without manually crafted combinatorial features[C]//Proc of the 22nd ACM SIGKDD international conference on knowledge discovery and data mining.2016: 255-262.
[6] Cheng H-T, Koc L, Harmsen J, et al. Wide & deep learning for recommender systems[C]//Proc of the 1st workshop on deep learning for recommender systems.2016: 7-10.
[7] Guo Huifeng, Tang Ruiming, Ye Yunming, et al. DeepFM:A factorization-machine based neural network for ctr prediction[C]//Proc of the International Joint Conference on Artificial ustralia, 2017: 1-7.
[8] Hu J, Shen L, Sun G. Squeeze-and-excitation networks[C]//Proc of the IEEE conference on computer vision and pattern recognition.2018: 7132-7141.
[9] Roy A G , Navab N , Wachinger C . Recalibrating Fully Convolutional Networks with Spatial and Channel 'Squeeze & Excitation' Blocks[J]. IEEE Transactions on Medical Imaging, 2018, 38(2):540-549.
[10] Linsley D , Scheibler D , Eberhardt S , et al. Global-and-local attention networks for visual recognition[J]. 2018.
[11] Weinan Z, Tianming D, Jun W. Deep learning over multi-field categorical data a case study on user response prediction[C]//Proc of the Conference on Information Retrieval.2016: 45-57.
[12] Nair V, Hinton G E. Rectified linear units improve restricted boltzmann machines[C]//Proc of the ICML.2010.
[13] Marreiros A C, Daunizeau J, Kiebel S J, et al. Population dynamics: variance and the sigmoid activation function[J]. Neuroimage, 2008, 42(1): 147-157.
[14] Altun Y, Johnson M, Hofmann T. Investigating loss functions and optimization methods for discriminative learning of label sequences[C]//Proc of the 2003 conference on Empirical methods in natural language processing.2003: 145-152.
[15] Lobo J M, Jimenez-Valverde, Real R. AUC: a misleading measure of the performance of predictive distribution models[J]. Global Eco-logy and Biogeography, 2008, 17(2): 145-151.
[16] Kingma D , Ba J . Adam: A Method for Stochastic Optimization[J]. Computer ence, 2014.
【通聯(lián)編輯:梁書(shū)】