Deep & Cross Network for Ad Click Predictions/zh
| Research Paper | |
|---|---|
| Authors | Ruoxi Wang; Bin Fu; Gang Fu; Mingliang Wang |
| Year | 2017 |
| Topic area | Machine Learning |
| Difficulty | Research |
| arXiv | 1708.05123 |
| Download PDF | |
Deep & Cross Network for Ad Click Predictions (DCN) 是 2017 年由谷歌與斯坦福的 Ruoxi Wang、Bin Fu、Gang Fu 和 Mingliang Wang 提出的一種用於點擊率(CTR)預測的神經網絡架構。它在標準深度神經網絡之上並聯一個 cross network,在每一層顯式地構造有界階數的特徵交互,能夠學習達到用戶指定階數的所有多項式交叉項,而參數量僅隨輸入維度線性增長。
概述
CTR 預測支撐著在線廣告每年數十億美元的收入,但其特徵空間龐大、稀疏,且以類別型特徵為主。線性模型易於擴展且可解釋,卻無法捕捉驅動精度的特徵交叉信號;純粹的深度神經網絡(DNN)原則上可以學習任意函數,但只能通過堆疊的非線性隱式地表示特徵交叉,往往效率不高。
DCN 介於這兩種範式之間。模型先將稀疏的類別型輸入嵌入到低維稠密向量中,並與歸一化的連續特徵拼接,然後分成兩條並行分支:一條 cross network,在每一層應用顯式的、帶殘差連接式的特徵交叉操作;另一條是由全連接 ReLU 層構成的標準 deep network。兩者的輸出拼接後送入用 log loss 訓練的 logistic 頭。cross network 只在 DNN 之上增加 $ O(d \cdot L_c) $ 個參數,其中 $ d $ 為嵌入後的輸入維度,$ L_c $ 為 cross layer 的數量,卻能捕捉到所有不超過 $ L_c + 1 $ 階的交叉項。
主要貢獻
- 一種新穎的 cross network,在每一層顯式地進行特徵交叉,所表示交互的最高多項式階數可被證明等於層深加一。
- 一種 聯合架構,將 cross network 與 DNN 並行訓練,在同一個 log loss 目標下融合有界階數的顯式交叉與深層隱式非線性。
- 一項 理論分析,證明 cross network 能夠復現所有有界階數的多項式交叉項,將 factorization machines(FMs)從單一的淺層交互推廣到多層的高階交互堆疊,並以線性的時間和內存將隱含的 $ d^2 $ 個成對交互投影回維度 $ d $。
- 在 Criteo Display Ads 上的實證收益——這是標準的公開 CTR 基準——以及在 UCI forest covertype 與 Higgs 數據集上的良好結果,表明 DCN 在顯著節省內存的同時能夠追平甚至超過深度基線。
方法
DCN 模型由四個階段組成:嵌入與堆疊層、cross network、deep network,以及一個組合層。
嵌入與堆疊。每個稀疏的類別型輸入 $ \mathbf{x}_i $ 通過一個可學習矩陣 $ W_{\text{embed},i} \in \mathbb{R}^{n_e \times n_v} $ 映射為稠密向量。嵌入後的類別特徵再與歸一化的稠密特徵 $ \mathbf{x}_{\text{dense}} $ 拼接成單個向量 $ \mathbf{x}_0 $,同時輸入兩條分支。
Cross network。設 $ \mathbf{x}_l \in \mathbb{R}^d $ 為第 $ l $ 個 cross layer 的輸出。每一層應用
- $ \mathbf{x}_{l+1} = \mathbf{x}_0 \mathbf{x}_l^{T} \mathbf{w}_l + \mathbf{b}_l + \mathbf{x}_l, $
其中 $ \mathbf{w}_l, \mathbf{b}_l \in \mathbb{R}^d $。外積項 $ \mathbf{x}_0 \mathbf{x}_l^{T} $ 在原始輸入與當前狀態之間構造成對交互;殘差連接則保留低階信號。論文中的一條定理指出,一個 $ l $ 層的 cross network 包含所有度數滿足 $ 1 \le |\boldsymbol{\alpha}| \le l + 1 $ 的交叉項 $ x_1^{\alpha_1} x_2^{\alpha_2} \cdots x_d^{\alpha_d} $,且每一項都有由權重 $ \{\mathbf{w}_k\} $ 決定的不同係數。
Deep network。採用 ReLU 激活的標準全連接前饋網絡堆疊:
- $ \mathbf{h}_{l+1} = f(W_l \mathbf{h}_l + \mathbf{b}_l). $
組合層。cross network 的最終輸出 $ \mathbf{x}_{L_1} $ 與 deep network 的輸出 $ \mathbf{h}_{L_2} $ 拼接後送入 logistic 頭:
- $ p = \sigma\!\left(\mathbf{w}_{\text{logits}}^{T} [\mathbf{x}_{L_1};\, \mathbf{h}_{L_2}]\right),\qquad \sigma(x) = \frac{1}{1 + e^{-x}}. $
訓練損失為帶正則化的 log loss
- $ \mathcal{L} = -\frac{1}{N}\sum_{i=1}^{N} \big[ y_i \log p_i + (1 - y_i) \log(1 - p_i) \big] + \lambda \|\mathbf{w}\|^2. $
高效投影。直接構造所有 $ d^2 $ 個成對交互在 $ d $ 上是立方複雜度的;cross layer 的公式將每層的工作量與參數量降至 $ O(d) $,因為 $ \mathbf{x}_0 \mathbf{x}_l^{T} \mathbf{w}_l $ 可被計算為 $ \mathbf{x}_0 (\mathbf{x}_l^{T} \mathbf{w}_l) $——即一次向量與標量的乘積。
與 FM 的聯繫。在 FM 中,每個特徵 $ x_i $ 關聯一個向量 $ \mathbf{v}_i $,$ x_i x_j $ 的權重由 $ \langle \mathbf{v}_i, \mathbf{v}_j \rangle $ 給出。在 DCN 中,對應的參數是標量 $ \{w_k^{(i)}\}_{k=1}^{l} $,$ x_i x_j $ 的權重則是跨多個 cross layer 的參數乘積。因此,DCN 將 FM 的參數共享思想從單一的二階交互推廣到跨多層的任意階交互。
結果
Criteo Display Ads。在公開的 Criteo CTR 挑戰賽上(約 4100 萬條記錄、13 個整型特徵與 26 個類別型特徵),DCN 取得了 0.4422 ± 9 × 10⁻⁵ 的測試 log loss,相比之下,調優後的 DNN 為 0.4430 ± 3.7 × 10⁻⁴,Deep Crossing(DC)為 0.4430 ± 4.3 × 10⁻⁴,邏輯回歸、FMs 與 Wide & Deep 的結果則更差。最優 DCN 配置為 6 個 cross layer 和 2 個大小為 1024 的 deep layer;最深的 cross 配置取勝,支持了高階顯式交互具有價值這一論斷。在圍繞內存預算和損失容差的後續掃掠實驗中,DCN 在比 DNN 少約 40% 參數的情況下達到了相同精度,並以約小一個數量級的深度堆疊匹敵了 DNN 的最佳 log loss。
非 CTR 數據集。在 UCI forest covertype(58.1 萬樣本、54 個特徵)上,DCN 達到 0.9740 的測試準確率,而 DNN 與 DC 為 0.9737,且內存占用最小。在 Higgs(1100 萬樣本、28 個特徵)上,DCN 取得 0.4494 的 log loss,而 DNN 為 0.4506,參數量約為 DNN 的一半。
影響
DCN 與 Wide & Deep、DeepFM 一道成為了深度 CTR 與推薦模型的經典基線之一。其核心思想——在 DNN 旁並聯一個參數高效、顯式高階特徵交叉的模塊——被工業界廣泛應用於特徵交互建模,原始 cross layer 公式在 DCN-V2(Wang 等,2021)中被進一步完善:每個 cross layer 改用完整的權重矩陣,以在谷歌的生產規模下獲得更強的表達力。除了廣告之外,該架構在稠密分類任務上的優異表現也推動了表格深度學習中並行的「顯式 + 隱式」特徵互動設計的普及。
參見
- Wide & Deep Learning for Recommender Systems
- Factorization Machines
- Deep Crossing
- Batch Normalization: Accelerating Deep Network Training
- Adam: A Method for Stochastic Optimization
- Click-through rate
參考文獻
- Wang, R., Fu, B., Fu, G., 與 Wang, M.(2017)。Deep & Cross Network for Ad Click Predictions。Proceedings of the ADKDD'17。arXiv:1708.05123。
- Cheng, H.-T. et al.(2016)。Wide & Deep Learning for Recommender Systems。DLRS。
- Rendle, S.(2010)。Factorization Machines。ICDM。
- Shan, Y. et al.(2016)。Deep Crossing: Web-Scale Modeling without Manually Crafted Combinatorial Features。KDD。
- Ioffe, S., 與 Szegedy, C.(2015)。Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift。ICML。
- Kingma, D. P., 與 Ba, J.(2014)。Adam: A Method for Stochastic Optimization。ICLR。
- Wang, R. et al.(2021)。DCN V2: Improved Deep & Cross Network and Practical Lessons for Web-scale Learning to Rank Systems。WWW。