论文笔记(Social Attentional Memory Network:Modeling Aspect- and Friend-level Differences in Recom-)
社交注意記憶網絡:模擬面級別和朋友級別的區別
原文鏈接:Social Attentional Memory Network: Modeling Aspect- and Friend-Level Differences in Recommendation, WSDM’19
1. 摘要
社會中的連接有助于提升推薦系統的性能,但是,現有的模型中沒有能夠很好地研究推斷用戶偏好的兩個問題:第一,用戶的偏好可能只是在某方面和他朋友的偏好部分匹配,尤其是當考慮到一個用戶有不同的興趣時。第二,對于一個個體來說,他朋友對他的影響程度可能是不同的,在模擬他的偏好時,并不是所有的朋友都有同等的幫助。
為了解決上述問題,我們提出了新型的社交注意記憶網絡(SAMN),特別地,設計了一個基于注意力的記憶模塊去學習 user-friend 向量,可以捕獲用戶和他朋友共享的不同方面的注意力。設計了一個朋友級別的注意力組件,自適應地選擇信息豐富的朋友進行用戶建模。這兩個組件被融合在一起,互相增強,從而得到一個更好的擴展模型。
舉例:
userA 和 userB 的信任關系建立在 movie 上,userA 和 userC 的信任關系建立在 basketball 上。
2. 模型架構
目標:基于隱式反饋和社交網絡進行推薦。
考慮了 aspect-level 和 friend-level 兩種情況,來提高模型的表現性能和泛化能力。
aspect-level differences)造成的問題,朋友向量 f(i,l) 在一個增強的記憶矩陣 M 上使用神經注意力機制生成,依賴于用戶和朋友,并學習表示用戶和朋友之間的偏好關系。
2.1 Attention-based Memory Module
用戶和朋友可能只在某個方面由相同的偏好,尤其是考慮到用戶有不同興趣的時候。然而用戶-朋友對的顯示關系在隱式數據中是不可用的(我們不知道他們分享的興趣是什么方面的)。受到近來記憶網絡和注意力機制發展的啟發,我們設計了基于注意力的記憶模塊來學習用戶和朋友之間的關系向量。
2.1.1 Joint Embedding
給定 user-friend 對 ( ui , u(i,l) ),模型先用下面的操作去學習用戶和他朋友的聯合嵌入向量 s ∈ Rd,其中分母用來標準化并且使得產生的向量具有相同的規模。這個操作也可以換成別的,比如 MLP 或者 element-wise product without normalization。
2.1.2 Key Addressing
注意向量 α ∈ RN 的每個元素 αj (表示用戶朋友對用戶在第 j 方面的影響程度)通過下面的方式計算,其中 Ki ∈ Rd 從 key matrix K ∈ RN×d 得到。
2.1.3 Generating Friend Vector
朋友向量 u(i,l) 先通過記憶矩陣(memory matrix)M ∈ RN×d 擴展一個矩陣 F ∈ RN×d,F 可以理解為用戶在不同潛在面(latent aspect)的偏好,N 可以看作是潛在面的數量。
最后,為了生成朋友向量,使用注意分數來計算 F 的加權表示。輸出的特定關系向量 f(i,l) 可以看作用戶的第 l 個朋友對用戶 i 偏好的影響向量。
2.2 Friend-level Attention
朋友級注意的目標是給用戶的朋友分配非均勻的權重,當用戶與不同的項目交互時,權重會發生變化。
我們使用兩層網絡計算用戶 ui ,當前項 vj 和朋友 f(i,l) 的注意力分數 β(i,l):
其中,Si 表示用戶 i 在社交網絡中的所有朋友,W1 ∈ Rd×k , W2 ∈ Rd×k , W3 ∈ Rd×k,b ∈ Rk , h ∈ Rk 是模型參數。
最后通過求和便可以得到用戶 i 的表示:
3. 模型學習
3.1 Prediction
采用了經典的矩陣分解(MF)方法來預測用戶 I 對 項 j 的評分:
根據預測評分對 items 進行排名,取 Top-K 進行推薦。
3.2 Optimization
The pairwise ranking loss:
總結
以上是生活随笔為你收集整理的论文笔记(Social Attentional Memory Network:Modeling Aspect- and Friend-level Differences in Recom-)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CCKS2018参会总结项目
- 下一篇: 2020年跨行业跨领域工业互联网平台