推薦系統(tǒng)與深度學(xué)習(xí)(13): [華為 CIKM'21] EDCN:基于信息共享的并行深度CTR模型

以下僅僅為個人對文章的閱讀記錄,如有錯誤,歡迎指正。如需轉(zhuǎn)載注明來源即可~~ (哈哈哈哈哈,點個贊再走)

Chen B, Wang Y, Liu Z, et al. Enhancing Explicit and Implicit Feature Interactions via Information Sharing for Parallel Deep CTR Models[C]//Proceedings of the 30th ACM International Conference on Information & Knowledge Management. 2021: 3757-3766.
原文鏈接:https://dlp-kdd.github.io/assets/pdf/DLP-KDD_2021_paper_12.pdf

一、簡介與主要貢獻

目前大多數(shù)CTR模型都包含Embedding Layer和Feature Interaction Layer。具體還可以分為Stracked Structure:FNN、PNN、FM、AFM、NFM等,和Parallel Structure:DCN、DCN-V2、DeepFM、xDeepFM等。本文主要基于Parallel Structure 的模型進行改進。


CTR模型的兩種主要結(jié)構(gòu)

以DCN為主的并行結(jié)構(gòu)模型存在以下兩個主要問題:

  • Insufficient sharing in hidden layers。DCN使用的Cross Network和Deep Network兩條并行路線之間缺少交互,學(xué)到的重要特征在最后一層才進行交互,作者稱為 late fusion。這種方式導(dǎo)致中間的隱藏層之間缺少信息交互,使得交互信號之間的作用減弱,容易導(dǎo)致反向傳播過程中出現(xiàn)梯度傾斜問題(skewed gradient problem)。
  • Excessive sharing in hidden layers。 DCN使用的Cross Network和Deep Network共同使用了一組Embedding,這就意味著所有的輸入特征不加區(qū)分地輸入到了兩個并行網(wǎng)絡(luò)中。但是在AutoFeature中提到,不同的特征適合與不同的特征交互。

因此本文提出了 Enhanced Deep & Cross Network (EDCN) 來改進DCN模型。其中主要包括兩個結(jié)構(gòu):

  • Bridge module。 主要解決第一個問題,增加并行結(jié)構(gòu)之間的交互。
  • Regulation module。主要解決第二個問題,為不同的并行網(wǎng)絡(luò)生成有區(qū)別的Embedding,而且在每次交互之后再次使用以生成不同的embedding。

二、相關(guān)工作

首先對CTR任務(wù)進行了總結(jié),提出了Stracked Structure和Parallel Structure。并重點關(guān)注后者,給出了三個并行結(jié)構(gòu)的模型圖。


三種深度并行CTR模型的結(jié)構(gòu):DeepFM,DCN,xDeepFM

其次,介紹了 Discriminative Input:即生成不同的Embedding輸入。主要提到了FiBiNET中的SENET使用attention學(xué)習(xí)特征的權(quán)重。GateNet 學(xué)習(xí)bit-wise和vector-wise的特征。MMOE使用mixture-of-expert方法融合不同的信息。最后提到了多任務(wù)學(xué)習(xí)。

三、EDCN結(jié)構(gòu)

3.1 Deep & Cross Network (DCN)

DCN模型結(jié)構(gòu)

計算公式:

可以看到Cross Network(左)和Deep Network (右)之間沒有交互,而且共享一組Embedding。

3.2 EDCN

改進主要在一下兩個模塊:Bridge Module 和 Regulation Module。


EDCN的結(jié)構(gòu)

3.2.1 Bridge Module

大多數(shù)并行模型都是采用了Late fusion的模型,即在組以后一層進行連接,然后輸入DNN 層 (下圖左)。這種方式一方面弱化了顯式(explicit)和隱式(implicit)特征交互之間的交互信號,另一方面導(dǎo)致梯度傾斜問題。因此作者提出了dense fusion 策略,即在每一層都進行信息的融合(下圖右)。通過這種方式捕捉并行網(wǎng)絡(luò)之間layer-wise 的交互信號。而且dense fusion的策略可以分享層與層之間的過渡信息,得益于多層級的交互信號,可以解決梯度問題。

兩種信息混合策略

所以主要的實現(xiàn)方式要通過一個函數(shù)將兩部分信息組合,然后輸出一組新的特征: f_l = f(x_l,h_l), f(·) = \mathbb{R}^u0z1t8os \times \mathbb{R}^u0z1t8os \to \mathbb{R}^u0z1t8os。所以可以采用的方式挺多的。作者提出了四種方式:

  • Pointwise Addition:\mathrm{f}_{l}=\mathrm{x}_{l} \oplus \mathrm{h}_{l}
  • Hadamard Product(Pointwise product):\mathrm{f}_{l}=\mathrm{x}_{l} \otimes \mathrm{h}_{l}
  • Concatenation+FC:\mathrm{f}_{l}=\operatorname{ReLU}\left(\mathrm{w}_{l}^{\mathrm{T}}\left[\mathrm{x}_{l}, \mathrm{~h}_{l}\right]+\mathrm_{l}\right)
  • Attention Pooling:\mathrm{f}_{l}=a_{l}^{x} \mathrm{x}_{l} \oplus a_{l}^{h} \mathrm{~h}_{l},其中 a_{l}^{x} 計算方式如下:\operatorname{Softmax}\left(\mathrm{p}_{l}^{\mathrm{T}} \operatorname{ReLU}\left(\mathrm{w}_{l}^{\mathrm{T}} \mathrm{x}_{l}+\mathrm_{l}\right)\right)。a_{l}^{h}按照同樣的方式計算。
    【以上的具體細(xì)節(jié)看原文】
    Bridge Module 主要構(gòu)建了一座橋梁將兩部分信息聯(lián)系起來。

3.2.2 Regulation Module

Cross Network 和 Deep Network兩部分提取不同的信息,所以他們的Embedding輸入應(yīng)該是不同的,這樣才能更加有效的學(xué)習(xí)。所以作者提出了 soft-select discriminative feature,基于初始的Embedding matrix 學(xué)習(xí)不同的權(quán)重。通過Regulation Module模塊實現(xiàn)。
首先初始化一個門單元(Gate Unit) \mathrm{G}^=\left[\mathrm{g}_{1}^, \mathrm{~g}_{2}^, \cdots, \mathrm{g}_{f}^\right],b \in B (B= {cross, deep} in DCN) 。根據(jù)作者給出的設(shè)置,所有的權(quán)重最開始是1。這些權(quán)重參數(shù)都是可學(xué)習(xí)的參數(shù),通過反向傳播更新。而且更新之后需要通過Softmax函數(shù)獲得最終的重要性\widehat{\mathrm{G}}^=\left[\widehat{\mathrm{g}}_{1}^, \widehat{\mathrm{g}}_{2}^, \cdots, \widehat{\mathrm{g}}_{f}^\right]。
\widehat{\mathrm{g}}_{i}^=\frac{e^{\frac{1}{\tau} \mathrm{g}_{i}^}}{\sum_{j=1}^{f} e^{\frac{1}{\tau} \mathrm{g}_{j}^}} 其中\tau是溫度系數(shù),一個超參數(shù)。 最后的特征:
\mathrm{E}^=\widehat{\mathrm{G}}^ \odot \mathrm{E}=\left[\widehat{\mathrm{g}}_{1}^ \mathbf{e}_{1}, \widehat{\mathrm{g}}_{2}^ \mathbf{e}_{2}, \cdots, \widehat{\mathrm{g}}_{f}^ \mathbf{e}_{f}\right]從EDCN的完整模型圖中可以看到,這個Regulation Module 被多次使用了,最開始Embedding layer之后每個并行路徑中都有一個;然后每次使用了Bridge Module之后都要使用兩個 Regulation Module 。

四、實驗分析

4.1 數(shù)據(jù)集:

  • Auazu(8:1:1)
  • Criteo(1-7天 train,第8天 validataion,第9天 test)
  • Industrial(1-7天 train,第8天 validataion,第9天 test)
數(shù)據(jù)集

4.2 整體表現(xiàn)

整體表現(xiàn)

和其他模型比較,提升比較顯著。
不過作為2021年的文章,一些新的CTR文章沒有拿出來對比,AutoFIS,AutoFeature,TFNet,F(xiàn)GCNN等。作者在相關(guān)工作中也提到了這些工作。而且Avazu數(shù)據(jù)集上Baseline的效果真的不算很好。同樣是8:1:1的情況下,F(xiàn)M都能跑出0.78。其他兩個數(shù)據(jù)集因為數(shù)據(jù)劃分無法和其他論文進行橫向?qū)Ρ取?/p>

4.3 兼容性分析

Bridge Module的兼容性


這里主要選擇了三個基礎(chǔ)模型DCN、DCN-V2、xDeepFM,在使用了Bridge Module 之后效果都得到了提升。而且文中還提到在訓(xùn)練過程中梯度的更新更加均衡,主要得益于反向傳播過程中多路徑的梯度信息傳遞,可以緩解梯度偏斜問題。
Bridge Module因為要選擇并行的模型,而且需要兩個路徑中都是向量,所以可選擇的比較少。DeepFM、WDL等都不行。

Regulation Module的兼容性


這里選擇了六個基礎(chǔ)模型:DeepFM、xDeepFM、AutoInt、DCN、DCN-V2、DCN_{bridge}。得益于Regulation module的特性,可以應(yīng)用于更多的模型之中。效果看圖吧。

Regulation Module 分析

4.4 消融分析

Bridge Module 消融分析


分析不同的連接方式。Hadamard product 確實效果很好。

Regulation Module 消融分析


和其他幾個不同的特征生成的方式對比:

  • FC: 常用的全連接層。
  • SE: Squeeze-and-Excitation Network (SENET),用于圖像處理中,被FiBiNET和FAT-DeepFFM用于CTR中,學(xué)習(xí)特征的權(quán)重。
  • GN: 用于GateNet中學(xué)習(xí) Embedding的重要性。
    本文提出的Regulation module取得了最好的效果。

4.5 復(fù)雜度分析

由于數(shù)據(jù)稀疏,特征比較多,CTR模型的參數(shù)主要來源于 Embedding Layer。

4.6 在線 A/B測試

系統(tǒng)結(jié)構(gòu)

在線上部署中,和基礎(chǔ)方法比,獲得了5%的提升

五、個人小結(jié)

首先梯度傾斜問題在DCN、DeepFM等問題中有沒有。簡單從整體表現(xiàn)的表格中可以看到,非并行模型的結(jié)果和并行結(jié)構(gòu)的結(jié)果差距不大,而且在訓(xùn)練過程中,訓(xùn)練速度也差不多。
其次Bridge Module使用時會不會反而影響兩部分分別完成自己的任務(wù)。一般我們覺得并行的結(jié)構(gòu)都各自完成各自的任務(wù)例如:generalization和 memorization 能力, 捕捉explicit 和 implicit 的特征交互等等。雖然完整的EDCN在同時使用Bridge和Regulation Modue后實現(xiàn)了最好的效果,然后上面提到的問題也需要進行思考。
Regulation Module在當(dāng)前的設(shè)計下進行了多次使用,例如模型都三層的情況下,需要使用6個Regulation Module 結(jié)構(gòu)。是否有必要? 當(dāng)然從設(shè)計方面來說是有比較的。有沒有什么更好的解決方法。

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

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

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