天天看點

深度學習在推薦系統中的應用

模型 基本原理 具體細節 優缺點

AutoRec

單隐層神經網絡

将協同過濾中的共線矩陣的每一列(商品的初始向量),通過單隐層神經網絡,完成商品向量的自編碼,即商品向量的embedding (但是并沒有實作降次元)

再利用自編碼的結果得到使用者對于物品的預估評分,進而進行推薦排序

AutoRec

模型結構

輸入 共線矩陣中的商品向量(列)
深度學習在推薦系統中的應用
輸出 商品的自編碼(可以認為是泛化後的商品embedding)
模型 三層神經網絡(輸入層-單隐層-輸出層)
深度學習在推薦系統中的應用
深度學習在推薦系統中的應用
損失函數 自編碼向量和原始輸入向量的平方殘差
深度學習在推薦系統中的應用
基于自編嗎進行推薦
深度學習在推薦系統中的應用
優點:
  • 單隐層網絡(一共三層網絡)結構簡單,使得模型有一定的泛化能力。可實作快速訓練和部署
缺點:
  • 表達能力差
Deep Crosssing

利用“Embedding 層 + 多FC層 + 輸出層” 的經典深度學習架構,

預完成特征的自動深度交叉

應用場景

搜尋廣告推薦場景。使用者在搜尋引擎中輸入搜尋詞後,引擎除了傳回相關結果,

還會傳回和搜尋詞相關的廣告。deep crossing 目标是增加使用者對搜尋廣告的點選率

預測目标 使用者是否會點選搜尋廣告
特征

類别型特征 (用embedding層來實作稀疏特征稠密化)

數值型特征

需要進一步處理的特征(廣告計劃,點選樣例等)

模型結構
深度學習在推薦系統中的應用

Embedding 層:使得稀疏的類别型特征稠密化 (數值型特征不需要經過Embedding層)

Stacking 層:把不同的Embedding特征和數值型特征拼接在一起,形成新的包含全部特征的特征向量

Multiple Residual Units 層(多層殘差網絡):實作特征自動交叉組合,multiple residual units 有幾層,就能實作幾階特征的交叉

Scoring 層:輸出層,為了拟合優化目标 (sigmoid)

優點:
  • 經典的深度學習推薦模型架構
缺點:
  • 利用全連接配接隐層進行特征交叉,針對性不強
NeuralCF 将傳統的矩陣分解中使用者向量和物體向量的點積操作,換成由神經網絡代替的互操作

step 1

求解使用者embedding和商品embedding

分解共現矩陣,得到使用者Embedding和物品Embedding
深度學習在推薦系統中的應用

step 2

預測使用者u對商品i的評分

(求解使用者u和商品i的相似度)

矩陣分解 将使用者u的embedding和物品i的embedding進行内積,得到相似度,即使用者u對物品i的評分
深度學習在推薦系統中的應用
NeuralCF 用多層神經網絡+輸出層,得到使用者u和商品i的相似度
深度學習在推薦系統中的應用
優點:
  • 表達能力加強版的矩陣分解模型,讓使用者向量和物品向量有更充分的交叉,且引入更多非線性特征
缺點:
  • 隻使用了使用者和物品的id特征,沒有引入使用者和商品的互動特征。特征次元不夠豐富
Wide&Deep 利用Wide部分加強模型的“記憶能力”,利用Deep部分加強模型的“泛化能力”
wide(記憶能力)

規則推薦,用規則類資訊直接影響推薦結果 , 如果點選過A,就推薦B

ex: 學習并利用曆史資料中feature的共現頻率

比如label是:是否安裝pandora

資料分析發現:feature1取值:已安裝netflix, feture2取值:對pandora印象深刻, 和label 取值 已經安裝pandora的共現頻率很高

結論: 隻要發現使用者安裝netflix且對pandora有好感,那麼使用者最終安裝pandora的機率很大,可以直接将使用者的label定為:安裝pandora。feature1和feature2的權重很大。實作類對這組合特征的直接記憶

這列組合特征就不需要進入神經網絡,被多層處理,不斷和其他特征交叉

deep(泛化能力)

泛化能力:深度發掘資料的潛在模式,發掘稀疏甚至從未出現過的稀有特征和最終label的相關性

目的:使得特征次元特别稀疏的使用者,也能得到較穩定平滑的推薦機率

模型
深度學習在推薦系統中的應用

Deep: 輸入的是全量特征,特征經過層層FC

Wide:已安裝應用和曝光應用兩類特征,通過交叉積變換完成特征組合。再将組合特征和Deep部分的輸出一同參與最後的目标拟合。完成和deep 部分的融合。

Ps: 隻有user_installed_app = netflix and impression_app = pandora, 其交叉積才會是1,否則為0

直接到邏輯回歸層。簡單模型善于記憶使用者行為特征中的資訊。并根據此類資訊直接影響推薦結果

優點:
  • 開創了組合模型的構造方法
缺點:
  • Wide部分需要人工進行特征組合的篩選
Deep&Cross 用Cross網絡替代Wide&Deep模型中的Wide部分 優點:
  • 解決了Wide&Deep模型人工組合特征的問題
缺點:
  • Cross網絡的複雜度較高
FNN 利用FM的參數來初始化深度神經網絡的Embedding層參數 優點:
  • 利用FM初始化參數,加快整個網絡的收斂速度
缺點:
  • 模型結構簡單。沒有針對性的特征交叉層
DeepFM 在Wide&Deep模型的基礎上,用FM替代原來的xian 優點:
  • 解決了Wide&Deep模型人工組合特征的問題
缺點:
  • Cross網絡的複雜度較高
DIN 在傳統深度學習推薦模型的基礎上引入注意力機制,并利用使用者行為曆史物品和目标廣告物品的相關性計算注意力得分 優點:
  • 解決了Wide&Deep模型人工組合特征的問題
缺點:
  • Cross網絡的複雜度較高
DIEN 優點:
  • 解決了Wide&Deep模型人工組合特征的問題
缺點:
  • Cross網絡的複雜度較高

繼續閱讀