Graph Neural Networks for social Recommendation基於圖神經網絡的社交推薦系統 by JD.com WWW會議

Graph Neural Networks for social Recommendation

Abstract

傳統社交推薦系統中的數據可以表示爲用戶-用戶社交圖(user-user social graph)和用戶-項目圖(user-item graph),本文針對此提出應用GNN提高推薦的效果並解決了如下挑戰:1、用戶-項目圖對交互及用戶意見的編碼;2、社會關係異質性的表示;3、兩種圖形的綜合考慮。
在本文中,提出了一個新穎的社交推薦圖神經網絡框架(GraphRec)。另外,作者提供了一種建模方法來聯合捕獲用戶-項目圖中的交互和意見,對兩種圖和異構強度進行了連貫的建模。在兩個真實數據集上的大量實驗證明了GraphRec的有效性。

Introduction

針對圖數據的神經網絡興起::
Deep neural network techniques for graph data:

  1. Thomas N. Kipf and Max Welling. 2017. Semi-Supervised Classification with Graph Convolutional Networks. In International Conference on Learning Representations (ICLR).

Graph Neural Networks (GNNs):

  1. Defferrard, Bresson, and Vandergheynst. 2016. Convolutional neural networks on graphs with fast localized spectral filtering. In Advances in Neural Information Processing Systems.
  2. Hamilton, Ying, and Leskovec. 2017. Inductive representation learning on large graphs. In Advances in Neural Information Processing Systems.
  3. Ma, Wang, C. Aggarwal, Yin, and Tang. 2019. Multi-dimensional Graph Convolutional Networks. In Proceedings of the 2019 SIAM International Conference on Data Mining(SDM).

On the other hand, data in social recommendation can be represented as graph data with two graphs.
在這裏插入圖片描述

The natural way of social recommendation is to incorporate the social network information into user and item latent factors learning

Challenges:

  1. How to inherently combine these two graphs and aggregate information from both graphs to learn better user representations.
  2. How to capture interactions and opinions between users and items jointly.
  3. How to distinguish social relations with heterogeneous strengths.

Contributions:

  • 提出了在社交推薦系統中建模圖數據的圖神經網絡GraphRec
  • 提出了原則性方法,可同時捕獲user-item圖的交互和用戶opinion
  • 提出了考慮數學層面的異構社會關係的方法
  • 實驗證明效果

THE PROPOSED FRAMEWORK

Definitions and Notations

U = { u 1 , u 2 , . . . , u n } U=\{u_1, u_2,..., u_n\} U={u1,u2,...,un} 爲用戶集 V = { v 1 , v 2 , . . . , v m } V=\{v_1, v_2,...,v_m\} V={v1,v2,...,vm}爲物品集。
R = R n × m R=\mathbb{R}^{n \times m} R=Rn×m表示user-item評分矩陣,也即user-item graph
O = { < u i , v j > ∣ r i j ≠ 0 } O=\{<u_i, v_j>|r_{ij}≠0\} O={<ui,vj>rij=0} 爲已知用戶評分集 τ = { < u i , v j > ∣ r i j = 0 } \tau=\{<u_i, v_j>|r_{ij}=0\} τ={<ui,vj>rij=0}爲未知用戶評分集
N ( i ) N(i) N(i)爲用戶i的好友用戶集
C ( i ) C(i) C(i)爲用戶i的接觸item集
B ( i ) B(i) B(i)爲接觸過物品j的用戶集
T ∈ R n × n T\in R^{n\times n} TRn×n表示user-user socail graph

Problem:

Given the user-item graph R and social graph T, we aim to predict the missing rating value in R.

Framework

在這裏插入圖片描述

User Modeling
任務:內在地結合user-item和user-social圖。學習用戶潛在因素: h i ∈ R d h_i\in\mathbb{R}^d hiRd
方法:two types of aggregation to learn factors from two graphs

  • first aggregation: item aggregation
    learn item-space user latent factor h i I ∈ R d h_i^I\in\mathbb{R}^d hiIRd from the user-item graph

  • second aggregation: social aggregation
    learn social-space user latent factor h i S ∈ R d h_i^S\in\mathbb{R}^d hiSRd

Item Aggregation
Principled approach for Item Aggregation: jointly capture interactions and opinions in the user-item graph
(同時考慮用戶-物品圖的交互與意見)
在這裏插入圖片描述
C ( i ) C(i) C(i)表示用戶 u i u_i ui的交互物品集或好友用戶, x i a x_{ia} xia表示用戶i與物品a的交互表示向量(representation vector), A g g r e i t e m s Aggre_{items} Aggreitems表示物品聚合函數。
W , b W,b W,b爲神經網絡的權重和偏置項參數。

其中:
x i a = g v ( [ q a ⊕ e r ] ) x_{ia}=g_v([q_a\oplus e_r]) xia=gv([qaer])

q a q_a qa表示物品a的嵌入向量, e r e_r er表示用戶意見評分機制r的嵌入向量
For example, in a 5-star rating system, for each r r ∈ { 1 , 2 , 3 , 4 , 5 } r\in \{1, 2, 3, 4, 5\} r{1,2,3,4,5}, we introduce an embedding vector e r e_r er

通過多層感知機MLP融合 q a q_a qa e r e_r er g v g_v gv表示MLP的參數, ⊕ \oplus 表示兩個嵌入向量的連接

A g g r e i t e m s Aggre_{items} Aggreitems的制定
傳統方法:均值操作
在這裏插入圖片描述
當爲均值處理時, α i \alpha_i αi被固定爲 1 / ∣ C ( i ) ∣ 1/|C(i)| 1/C(i),爲了優化,需要改進 α i \alpha_i αi的設定:
attention mechanisms
在這裏插入圖片描述
通過兩層神經網絡(注意力網絡)結合 x i a x_{ia} xia和用戶嵌入向量 p i p_i pi得到注意力得分:
在這裏插入圖片描述
通過Softmax標準化:
在這裏插入圖片描述

Social Aggregation
考慮好友關係的異質性(交互強度),爲此,引入了一種注意機制,通過選擇具有代表性的社交朋友來描述用戶的社交信息,然後對用戶的社交信息進行聚合。
在這裏插入圖片描述
類似Item Aggregration的注意力機制,考慮用戶間不同的交互強度。
在這裏插入圖片描述

Learning User Latent Factor
爲了更好地瞭解用戶潛在因素,需要將item-space的用戶潛在因素和social-space的用戶潛在因素結合起來考慮,因爲social圖和user-item圖提供了不同角度的用戶信息。
在這裏插入圖片描述

Item Modeling

User Aggregation
方法類似Item Aggregation for learning user latent factor
首先通過類似Item的方式得到對物品j的意見交互形式的向量表示
在這裏插入圖片描述
之後同樣通過多注意力機制得到:
在這裏插入圖片描述
z j z_j zj即爲通過用戶聚合得到的物品建模。

綜上,共有三種嵌入向量表示:

  1. item embedding: q a q_a qa
  2. opinion embedding: e r e_r er
  3. basic user embedding: p t p_t pt

Rating Prediction
在得到用戶與物品的潛在表示後,本文致力於解決得分預測問題,即預測 r i j r_{ij} rij:用戶 u i u_i ui對物品 v j v_j vj的評分。
在這裏插入圖片描述

EXPERIMENT

數據集
popular social networking websites:
Ciao Epinions

Evaluation Metrics
MAE和RMSE

Baselines

  • PMF:概率矩陣因式分解僅利用用戶項目評價矩陣,利用高斯分佈對用戶和項目的潛在因素進行建模
  • SoRec:社會推薦對用戶-物品評價矩陣和用戶-用戶社會關係矩陣進行協因數分解(co-factorization)。
  • SoReg:社會正則化算法將社會網絡信息作爲正則化項來約束矩陣分解框架。
  • SocialMF:考慮了信任信息和信任信息在推薦系統矩陣分解模型中的傳播。
  • TrustMF:該方法採用矩陣分解技術,根據信任的方向性對信任網絡進行分解,將用戶映射到兩個低維空間:信任者空間和信任空間。
  • NeuMF:This method is a state-of-the-art matrix factorization model with neural network architecture. The original implementation is for recommendation ranking task and we adjust its loss to the squared loss for rating prediction.
  • DeepSoR
  • GCNMC+SN

模型訓練結果:
在這裏插入圖片描述

Finding:

  • SoRec, SoReg, SocialMF, and TrustMF 表現均好於PMF 這支持了社交網絡信息對推薦系統的重要性。
  • DeepSoR和GCNMC+SN的方法好於其他結合評分與社交網絡的矩陣分解模型,這證明了神經網絡算法的優勢
  • 在基線中,GCMC+SN表現出較強的性能。這表明,由於gnn自然地集成了節點信息和拓撲結構,因此它在圖形數據表示學習方面具有強大的功能。
  • 所提出的的GraphRec方法始終優於所有的基線方法。與DeepSoR和GCMC+SN相比,GraphRec提供了先進的模型組件來整合評分和社交網絡信息。此外,GraphRec提供了一種方法來考慮用戶-項目圖中的交互和意見。

變體模型(特徵信息):
在這裏插入圖片描述
GraphRec-SN:刪除社交信息的GraphRec
GraphRec-Opinion:刪除Opinion embedding的模型。

結果:
在這裏插入圖片描述
結論:證明了社交信息與用戶對物品意見對推薦系統的重要性。

變體模型(注意力機制):
GraphRec共有3種注意力機制:item attention α, social attention β, and user attention μ.
分別移除item attention、 social attention、 item & social attention、user attention得到四種不同模型。

結果:
在這裏插入圖片描述
結論:

  • 並不是每個用戶交互過的物品(購買歷史)對物品空間的用戶潛在因素的貢獻都是一樣的,也不是所有交互過的用戶(購買者)對學習物品潛在因素的重要性都是一樣的。
  • 與弱關聯相比,強關聯用戶更有可能分享相似的口味。社會聚合的注意機制考慮社會關係的異質力量。當注意力機制β移除,GraphRec -β的性能顯著下降。它證明我們的假設,在社會聚合,不同的社會朋友應該有不同的影響學習的社會空間用戶潛在的因素。區分具有異質力量的社會關係是重要的。

嵌入層(特徵信息):
通過改變以下潛入層的size
user embedding p , item embedding q, and opinion embedding e,
從8-256
在這裏插入圖片描述

結論:一般來說,隨着嵌入尺寸的增大,性能先增大後減小。當增加嵌入大小從8到64年可以顯著地提高性能。但是,當嵌入大小爲256,GraphRec會降低性能。結果表明,使用較大的嵌入尺寸具有強大的表示性。然而,如果嵌入的長度太大,模型的複雜性將顯著增加。因此,需要找到一個合適的嵌入長度爲了平衡性能和複雜性之間的權衡。