模型 | 基本原理 | 具體細節 | 優缺點 |
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 直接到邏輯回歸層。簡單模型善于記憶使用者行為特征中的資訊。并根據此類資訊直接影響推薦結果 | | 優點: 缺點: |
Deep&Cross | 用Cross網絡替代Wide&Deep模型中的Wide部分 | 優點: 缺點: |
FNN | 利用FM的參數來初始化深度神經網絡的Embedding層參數 | 優點: 缺點: |
DeepFM | 在Wide&Deep模型的基礎上,用FM替代原來的xian | 優點: 缺點: |
DIN | 在傳統深度學習推薦模型的基礎上引入注意力機制,并利用使用者行為曆史物品和目标廣告物品的相關性計算注意力得分 | 優點: 缺點: |
DIEN | 優點: 缺點: |