Neighbor Interaction Aware Graph Convolution Networks for Recommendation - sigir20
文章目录
Motivation
传统推荐系统的研究致力于学习用户和物品的embedding,然后基于表示的相似性去预测用户对物品的偏好,其中有许多的关系信息,如用户-物品交互历史、用户-用户和物品-物品相似性,研究者们又尝试应用GCN的强大学习表示能力去利用这些关系更好的学习embeddings。但GCNs没有考虑用户节点和物品节点之间的内在差异(节点的异质性),现有的大规模图神经网络使用诸如sum/mean/max pooling操作的聚合函数来生成考虑节点邻域(即图中的相邻节点)的节点嵌入,并且这些简单的聚合策略没有考虑到邻居之间的关系,所以提出新的框架NIA-GCN来解决上述问题,NIA-GCN可以明确地建模相邻节点之间的关系信息,并利用用户-物品二分图的异构性。
Innovations
- 对于没有考虑到节点邻居之间的关系,在NIA-GCN,提出了一个逐层邻居聚合(PNA)层来捕获每个GCN层的邻居对之间的关系,PNA在每两个邻居嵌入之间应用element-wise来学习用户之间和物品之间的关系,去显示地建模邻居间的交互。
- 对于用户和物品节点的异质性,利用用户-物品二分图的异构特性,模型中引入了并行图卷积网络(Parallel-GCNs),用来独立地聚合来自相对于中心节点的不同深度的节点实体的信息,而不是递归地更新邻域嵌入,这种方法更好地匹配了用户项目二分图的异构特性,分别独立聚合不同深度的邻居信息。
- 对于不同深度邻居的embeddings是来自不同的实体。=提出了一个新的跨深度集成(CDE)层来捕捉用户-用户,物品-物品和用户-物品在图中的邻域关系。这一层允许预测考虑图表中不同深度之间更复杂的关系。
Model
PNA Aggregator
单数层是物品领域的聚合,双数层是用户领域的聚合
嵌入矩阵不同行做点积来捕获邻居之间的信息
h P N A k = 1 N k ∑ i = 1 N k ∑ j = i + 1 N k q i k ⊙ q j k = 1 2 N k ( ∑ i = 1 N k ∑ j = 1 N k q i k ⊙ q j k − ∑ i = 1 N k q i k ⊙ q i k ) = 1 2 N k ( ∑ i = 1 N k q i k ∑ j = 1 N k q j k − ∑ i = 1 N k q i k ) = 1 2 N k ( ( ∑ i = 1 N k q i k ) 2 − ∑ i = 1 N k ( q i k ) 2 ) N k : 深 度 为 k 时 邻 居 节 点 数 目 q i : 第 k 层 邻 居 嵌 入 矩 阵 Q k ∈ R N k ∗ d 的 第 i 行 q j : 第 k 层 邻 居 嵌 入 矩 阵 Q k ∈ R N k ∗ d 的 第 j 行 h P N A k : 仅 包 含 邻 域 的 成 对 关 系 信 息 \begin{aligned} \mathbf{h}_{\mathrm{PNA}}^{k} &=\frac{1}{N_{k}} \sum_{i=1}^{N_{k}} \sum_{j=i+1}^{N_{k}} \mathrm{q}_{i}^{k} \odot \mathbf{q}_{j}^{k}=\frac{1}{2 N_{k}}\left(\sum_{i=1}^{N_{k}} \sum_{j=1}^{N_{k}} \mathrm{q}_{i}^{k} \odot \mathbf{q}_{j}^{k}-\sum_{i=1}^{N_{k}} \mathbf{q}_{i}^{k} \odot \mathbf{q}_{i}^{k}\right) \\ &=\frac{1}{2 N_{k}}\left(\sum_{i=1}^{N_{k}} \mathrm{q}_{i}^{k} \sum_{j=1}^{N_{k}} \mathrm{q}_{j}^{k}-\sum_{i=1}^{N_{k}} \mathrm{q}_{i}^{k}\right)=\frac{1}{2 N_{k}}\left(\left(\sum_{i=1}^{N_{k}} \mathrm{q}_{i}^{k}\right)^{2}-\sum_{i=1}^{N_{k}}\left(\mathrm{q}_{i}^{k}\right)^{2}\right) \end{aligned} \\ N_{k} : 深度为k时邻居节点数目 \\ q_{ i }:第k层邻居嵌入矩阵 {Q}^{k} \in {R}^{N_{k} * d}的第 i 行 \\ q_{ j }:第k层邻居嵌入矩阵 {Q}^{k} \in {R}^{N_{k} * d}的第 j 行 \\ {h}_{ {PNA}}^{k}:仅包含邻域的成对关系信息 hPNAk=Nk1i=1∑Nkj=i+1∑Nkqik⊙qjk=2Nk1(i=1