實作 wide & deep 從訓練到推薦排序

Memorization & Generalization

在推薦系統中,如果要選第一個深度排序模型從傳統機器學習接軌到 DNN,那首推 google 在 2016 年提出的 Wide & Deep ,Wide & Deep 名稱來自其由一個 shallow 的 model 與一個 deep 的 network 組合而成。

在進入到 DNN 前,我們手上肯定有個正在線上運行的傳統排序模型 ex: FM, GBDT …,還有積累了很久的有效特徵組合,如果直接進入 DNN,這些經驗和積累打水漂不說,還得花很長的時間 tune 模型。

有了 Wide & Deep,我們只需將正在 serving 的那個排序模型的特徵放在 wide side 使用; 另外在建一個 deep side 的深度模型,兩個模型 joint training 即可無縫接軌到 DNN。

那 wide 跟 deep network 分別代表什麼呢 ?

Google 在 2016 的論文中總結出:Wide 負責 memorization , Deep 負責 Generalization , Wide & Deep 是 Memorization & Generalization 的體現,實際上也是推薦領域中經典的 Exploitation & Exploration 問題。