Bootstrap

【论文阅读】图神经网络应用在推荐系统中的挑战、方法、方向

文章信息

文章标题Graph Neural Networks for Recommender Systems: Challenges, Methods, and Directions
发表期刊Transactions on Information Systems (TOIS CCF A )
发表时间2021/09/27
关键词推荐系统,图神经网络,图表示学习,信息检索

推荐系统

工作流程

pipeline

在这里插入图片描述

Matching 召回阶段

从项目池中生成数百个候选项,构造候选集
受网络延迟、数据量大的局限,选用简单的算法
嵌入召回(embedding matching),地理召回( geographical matching),人气召回( popularity matching),社交召回( social matching)。现实中的推荐系统选用多种召回方式

Ranking 排序阶段

把候选集输入进排名模型中进行打分,选择前几十个项。
选用较复杂的算法,综合考虑更多的因素(self-attention 自注意力机制等)

Re-ranking 再排序阶段

上一阶段更注重相关性,重排序阶段综合考虑公平性,新鲜性等等指标。删除一些冗余可替代的项目,更改顺序。

场景

社交推荐

人的行为可能会受到朋友的行为或想法的影响,并且人更倾向于和同一类的人建立社交关系。结合了用户自己的偏好社交因素

序列推荐

提取用户行为序列,按照事件顺序预测用户下一步的偏好

会话推荐

偏向于挖掘用户在短期内的行为序列,适用于抖音这样的流媒体,和小规模的应用场景。比序列推荐要关注的数据更短

捆绑推荐

推荐一系列商品,用于营销方面,比如套装中商品的选择。

跨域推荐

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kuXHJQN7-1650871108043)(:/fbf9e60aa6a4406380aec95a9c2e63d0)]

将迁移学习应用到推荐系统中,从一个领域推荐到另一个领域。

多行为推荐

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-I6vkBXix-1650871108045)(:/a4c5d81683284739bc17b5e86b0084a3)]

用户的最终决策关系到许多行为,可以理解为每个行为都有一定的权重。把不同的行为整合到表征行为中

指标

多样性

个体层次:推荐列表涵盖了多少主题,主题少影响用户继续使用。
系统层次:长尾推荐,注重于分布于尾端的项目,不局限于热门项目。

可解释性

深度学习解释性差,推荐系统的解释性便于用户的使用体验,以及开发者对模型进行完善

公平性

用户公平性:消除算法、数据对某些用户群的偏差。图形数据会加剧不公平性
项目多样性:长尾数据。

应用

产品推荐 (文中给出了基准数据:Amazon、TMall)
POI推荐:根据用户地理位置推荐当地有趣的景点或设施
新闻推荐:可结合NLP提取新闻特征,推送新闻
电影推荐、音乐推荐、视频推荐······

图神经网络GNN

背景

CNN+GRL(图表示学习)促成GNN的诞生。
GRL将图表示为低维向量

光谱模型

把图转化为信号,用傅里叶变换

空间模型

对图结构进行卷积,通过不断的聚合更新来提取局部特征

图形构造

GNN适用推荐系统的原因

结构数据

推荐系统要考虑的属性很多,传统推荐只考虑部分,如果用GNN表示,边信息和节点信息都能够考虑,并且能用统一的结构来表示

高阶连通性

图神经网络可进行不断的聚合更新,得到高阶邻居的信息,考虑进当前节点的向量更新里面

监督信号

传统推荐系统的数据具有稀疏性,因为直接以目标行为为导向
基于GNN的推荐系统,结合非目标行为,相当于给了半监督的数据,辅助预测

GNN用于推荐系统的挑战

构造图

以图的形式构造输入数据/表示预测目标

节点层面

难点在于如何区分、表示一个点;以及连续型数值在图中怎么表示

边层面

图的密度要充分考虑
过高:消耗算力,结果无用
过低:传播层效果不佳(传播只能在小范围传播)

设计网络

传播层的设计至关重要
聚合函数选择:Mean pooling(常用高效) LSTM MAX MIN…
层数设计:过高过度平滑、过低效果不佳

模型优化

修改损失函数,应用于图结构
GNN涉及多个子任务,要平衡任务执行,相互促进

计算效率

基于GNN的推荐系统算力小消耗大
在可接受的性能下降范围内,通过采样、剪枝可以降低算力

现有解决方法

按推荐阶段分类

按推荐阶段分,目前顶会上提出的基于GNN的推荐模型
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iv5RvDoQ-1650871108046)(:/d47f6060919b46c59a4e4e72c34ad4da)]

召回阶段,使用GNN能够平衡从项目池生成候选项的准确性和效率
排序阶段,使用GNN能够包含更多的特征。编码器设计特殊的图形结构来捕获所需的节点间的关系;预测器集成来自编码器的不同特征向量预估排名得分。
重排阶段,GNN提供了一种统一的方式来编码项目关系和用户偏好。

按场景分类

社交推荐

目前主流方法是用GNN通识对用户交互社交网络建模,也有模型引入额外信息,增强高阶邻居对节点的影响
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Bskrzmx0-1650871108048)(:/d3894809d3a7460dab1d79650406d69a)]

序列推荐

GNN可以考虑更久远的数据,例如马尔科夫链是只考虑上一步,所以GNN可以用于序列推荐。GNN协助RNN、其他模型,或者与注意力机制结合使用,或者GNN单独对序列进行建模。

会话推荐SBR

单个会话构造的会话图可能只包含有限的节点和边。GNN可以增加外部数据,添加会话。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0xm9rALS-1650871108048)(:/ef7f4a5883924f4fae6b1532dc41d6ae)]

捆绑推荐

捆绑推荐的输入数据可以很好的表示成图结构
在这里插入图片描述

跨域推荐

利用用户在多领域内的历史交互,缓解冷启动和数据稀疏问题。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ks6z7JWN-1650871108049)(:/7b957d3f0b3b43ffbc40d152676ce2a8)]

多行为推荐

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZpXARnOp-1650871108050)(:/f1c4efc6d4c44a58b1ce534dd0df4b9f)]

未来发展

更深层的GNN
GNN加深可以捕获更高阶的关联信息,但是存在过平滑(向量差别不大)等问题,同时在GNN加深的过程中,也要保证计算量是可以接受的。
动态的GNN推荐
应用场景中很多图是一直在动态变化的,如何使推荐系统自适应时间演化具有很大现实意义。
知识图谱增强的GNN推荐
利用知识图谱引入更多外部知识,提高推荐质量的同时也能考虑多样性,公平性更多指标。效率和可扩展性,大规模工业系统中的效率和大数据量。
自监督GNN
利用自监督缓解数据稀疏问题。
对话推荐
在聊天过程中进行推荐。
自适应GNN推荐
推荐目前有很多场景,如何结合Auto ML等技术,创建通用的GNN推荐系统。

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;