deep&cross network

論文《Deep & Cross Network for Ad Click Predictions》

這篇文章的思想很簡單。
wide&deep網(wǎng)絡是在dnn旁加了一個需要特征工程的wide部分,
deep&cross則是在dnn旁加了一個cross network。


deep&cross network結(jié)構(gòu)

如上圖所示,網(wǎng)絡前面是常見的embedding層和連續(xù)feature拼接之后,送進deep&cross network。deep&cross network左邊的部分就是整個結(jié)構(gòu)的核心cross network。

cross network定義

cross network層與層之間的算子:
x_{l+1} = x_0x_l^Tw_l + b_l + x_l = f ( x_l , w _l , b_ l ) + x_l
可見cross network顯式地進行了特征之間的交叉組合,每一層在上一層的基礎(chǔ)上進行矩陣乘法,很容易就獲得高于二階的特征組合。相比fm,可以獲得更高階的特征。相比wide&deep,不需要專門特征工程來獲得高階的交叉特征。

復雜度

另一方面,cross network所需要的參數(shù)只有上式w,b對應的dL2個參數(shù)(d是輸入特征維度,L是cross network層數(shù))。因此cross network相比dnn在計算復雜度上大大減少。這也是論文宣稱的優(yōu)點之一。

在代碼實現(xiàn)上,embedding后size較大時, x_0x_l^T顯然會占用不少資源,得到的矩陣在和后面的w相乘,也是非常消耗計算資源的。由于矩陣滿足交換率,可以先計算后面的 x_l^Tw_l, 得到一個標量,標量再和 x_0相乘,大大節(jié)省了計算復雜度。這也算deep&cross network在實現(xiàn)上的一個trick。

update:

實際應用了下cross network,在embedding層后面接了一層cross network。線上效果并不是很好。整體au基本持平,上漲千分之二。acp漲,ctr降??赡苁墙恿艘粚觕ross network的緣故?需要更多層cross network才能發(fā)揮其優(yōu)勢。有待驗證。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容