Graph Neural Networks for Recommender Systems | Chen Gao

本文最后更新于:9 个月前

代表性论文及其代码库

从四个角度对推荐系统的研究进行了分类:阶段、场景、目标和应用

BG

1. 推荐系统

现代推荐系统三个阶段stage

  • 匹配:核心任务是高效检索潜在相关项目,并实现用户兴趣的粗粒度建模
  • 排序:在匹配阶段之后,来自不同渠道的多个候选项目来源被合并到一个列表中,然后通过单个排名模型进行评分。
  • 再排序:去除某些项目或更改列表的顺序,以满足其他标准并满足业务需求

不同场景scenario:社交推荐、顺序推荐、会话推荐、捆绑推荐、跨域推荐和多行为推荐

  • 社交推荐:用户交互由自己的偏好和社会因素(社会影响力和社会同质性)共同决定。

  • 序列推荐:从这些行为序列中提取信息并预测用户的下一个交互项,

  • 基于会话的推荐SBR:用户档案和长期历史交互是不可用的,只提供来自匿名用户的短会话数据。SBR旨在使用给定的匿名行为会话数据预测下一个项目

  • 捆绑推荐:推荐项目组合供用户消费

  • 跨域推荐CDR:缓解冷启动和数据稀疏问题的一种很有前途的方法,分为两类,单目标(STCDR)和双目标(DTCDR)

  • 多行为推荐:用户在多种行为而不是仅一种行为下与推荐系统交互。对于每个用户𝑢和项目𝑣,假设有𝐾不同类型的行为{𝑦1,𝑦2,...,𝑦𝐾}。 对于第 𝑖 行为,如果用户有观察到的行为,则 𝑦𝑖 = 1,否则 𝑦𝑖 = 0。目标是提高对某类目标行为的预测准确率 𝑦𝑡。

目标objective:准确性

  • 多样性 individual-level diversity & system-level diversity.
  • 解释能力 generate per-suasive explanations for how and why the item is recommended to a specific user
  • 公平性 user fairness & item fairness

应用application

2. 图神经网络

The rise of GNN mainly originates from the advancement of convolutional neural network (CNN) and graph representation learning (GRL)

  • 图构建:预先存在的图数据或从非结构化数据中抽象出图节点和边的概念

  • 网络设计: GNN 模型可以分为光谱模型和空间模型. (how?图傅里叶变换) 通过迭代收集邻域信息来捕获图节点和边之间的高阶相关性.这里“信息”表示为嵌入,即低维向量。

    • GCN \[ H^{l+1}=\delta(\hat{D}^{-\frac{1}{2}}\hat{A}\hat{D}^{-\frac{1}{2}}H^lW^l) \]

    • GraphSAGE

    • GAT

      自动学习节点互相的影响度

      通过注意力机制,对给定信息进行权重分配,权重高意味着要进行重点加工。为不同的节点指定不同的权重来聚合邻域特征(嵌入)

    • HetGNN

    • HGNN

  • 模型优化:基于 GNN 的模型中的优化将 GNN 泛化的表示视为输入,将图结构(例如边、节点类)视为标签,并为训练定义损失函数

3. Why are GNNs required for recommender systems

  • 结构数据: 将所有数据表示为图上的节点和边;可以获得用户、项目和其他特征的高质量嵌入

  • 高阶连通性:协同过滤效果可以自然地表示为图上的多跳邻居,并通过嵌入传播和聚合将其合并到学习的表示中。

  • 监督信号:监督信号在收集的数据中通常是稀疏的,而基于 GNN 的模型可以在表示学习过程中利用半监督信号来缓解这个问题。

CHALLENGES

1. 图构建

两个任务:将数据输入构建为图形结构数据; 将推荐目标重新组织为图上的任务。

//TODO 表示学习,节点嵌入

  • 节点

2. 网络设计

传播层,如何选择路径,聚合函数也有多种选择

3. 模型优化

BPR loss, 即让正样本和负样本的得分之差尽可能达到最大

数据采样。 在基于 GNN 的推荐中,要对正项或负项进行采样,采样方式高度依赖于图结构

4. 计算效率

EXISTING METHODS

GNN in Session-based Recommendation

  1. two challenges:

    • how to model the item transition pattern in session data -->item transitions

    • how to activate user’s core interests from noisy data -->the information propagation on the graph

GNN in Multi-behavior Recommendation

  • 如何对多个行为与目标行为之间的关系进行建模,
  • 如何通过行为对项目的语义进行建模,