《A Survey of Graph Neural Networks for Recommender Systems Challenges, Methods, and Directions》翻译

发布于 2024-01-19  180 次阅读


摘要

推荐系统是当今互联网上最重要的信息服务之一。最近,图神经网络已经成为推荐系统的新的最先进方法。在这份调查中,我们对基于图神经网络的推荐系统的文献进行了全面的审查。我们首先介绍了推荐系统和图神经网络发展的背景和历史。对于推荐系统,一般来说,现有的作品可以从阶段、场景、目标和应用四个方面进行分类。对于图神经网络,现有的方法主要分为两类:谱模型和空间模型。然后,我们讨论了将图神经网络应用于推荐系统的动机,主要包括高阶连接性、数据的结构特性和增强的监督信号。接下来,我们系统地分析了图构建、嵌入传播/聚合、模型优化和计算效率方面的挑战。然后,我们主要提供了基于图神经网络的推荐系统的现有作品的全面概述,按照上述分类法。最后,我们对这一领域的未解问题和有前途的未来方向进行了讨论。我们总结了代表性论文以及它们在 https://github.com/tsinghua-fib-lab/GNN-Recommender-Systems 中的代码仓库。

前言

推荐系统是一种过滤系统,其目标是向用户呈现个性化信息,以改善用户体验并促进业务利润。作为实际驱动的机器学习的典型应用之一,它如今在工业界和学术界都是一个极其热门的话题。

回顾推荐系统的历史,它通常可以分为三个阶段,即浅层模型 [85, 148, 149]、神经模型 [28, 57, 66] 和基于图神经网络的模型 [65, 181, 222]。最早的推荐模型通过直接计算交互的相似性来捕捉协同过滤(CF)效应。然后,提出了基于模型的CF方法,如矩阵分解(MF)[85]或分解机[148],将推荐视为表示学习问题。然而,这些方法面临着诸如复杂用户行为或数据输入等关键挑战。为了解决这个问题,提出了基于神经网络的模型 [28, 57, 66]。例如,神经协同过滤(NCF)通过在MF的内积中引入多层感知机(MLP)来扩展其容量。类似地,深度分解机(DeepFM)[57]将浅层模型分解机(FM)[148]与MLP结合起来。然而,这些方法仍然受到很大限制,因为它们在预测和训练的范式中忽略了观察数据中的高阶结构信息。例如,NCF的优化目标是预测用户-物品的互动,训练样本包括观察到的正面用户-物品互动和未观察到的负面用户-物品互动。这意味着在为特定用户更新参数时,只有他/她与之互动的项目被考虑。

最近,图神经网络的进展为解决推荐系统中的上述问题提供了强大且基础的机会。具体而言,图神经网络采用嵌入传播来迭代地聚合邻域嵌入。通过堆叠传播层,每个节点可以访问高阶邻居的信息,而不仅仅是传统方法中的一阶邻居。凭借其在处理结构化数据和探索结构信息方面的优势,基于图神经网络的方法已成为推荐系统中的新颖方法。

为了将图神经网络成功应用于推荐系统,需要解决一些关键挑战。首先,推荐系统的数据输入应该被仔细和正确地构建成图,其中节点表示元素,边表示关系。其次,针对具体任务,图神经网络中的组件应该被灵活设计,包括如何传播和聚合,在这方面已有许多现有工作探索了不同的选择,各有优劣。第三,基于图神经网络的模型的优化,包括优化目标、损失函数、数据采样等 [218],应该与任务要求保持一致。最后,由于推荐系统对计算成本有严格的限制,并且由于GNN的嵌入传播操作引入了大量计算,有效部署图神经网络在推荐系统中是另一个关键挑战。

在本文中,我们旨在对研究努力进行系统和全面的回顾,特别是它们如何利用图神经网络改进推荐并解决相应挑战。为了清晰理解,我们从四个角度对推荐系统的研究进行分类,即阶段、场景、目标和应用,如图1所示。我们总结了代表性的论文以及它们在 https://github.com/tsinghua-fib-lab/GNN-Recommender-Systems 中的代码仓库。

值得一提的是,已经存在一份关于基于图神经网络的推荐系统的调查 [202],与之相比,我们的差异如下:首先,它主要考虑协同过滤、顺序推荐、社交推荐和基于知识的推荐,这些属于基于分类法的不同方面,因此无法并列列出。例如,顺序推荐只是具有特殊输入和输出设置的特定推荐场景,正如此调查所指出的。其次,重要的推荐阶段(如排名)、推荐场景(如跨领域推荐)和超出准确性的推荐目标被忽略。特别是,超出准确性的推荐系统现在是学术界和工业界都非常重要的话题。最后,由于这个领域发展迅速,有很多最近在顶级期刊上发表的论文未被参考文献 [202] 所覆盖。值得一提的是,最近出版了一篇书章 [32],介绍了GNN的基本概念和现代推荐系统中几个代表性应用。

此外,除了参考文献 [202],还有一些与本调查密切相关的其他调查,如下所示:

  • 参考文献 [108] 是一个关于基于异构信息网络(HIN)的推荐系统的最新调查,将文献分为三类:相似性测量、矩阵分解和图表示学习。关于图表示学习的类别,作者进一步将其分为两个子类:两阶段训练方法和端到端训练方法(包括基于关系和基于元路径的方法)。关于端到端方法,该调查简要介绍了一些基于图神经网络的方法。也就是说,参考文献 [108] 只涵盖了基于GNN的推荐系统的一小部分。
  • 参考文献 [176] 是一份关于基于图的推荐系统的调查。它非常简短(九页),仅用一页简要介绍了极少数基于GNN的推荐系统的典型作品。参考文献 [39] 是一份基于图嵌入技术的推荐系统调查。它主要讨论传统的图嵌入方法,并仅讨论了少数基于GNN的方法。
  • 参考文献 [196] 是一份关于基于深度学习的推荐系统的最新调查。它主要讨论两部分的作品:基于深度学习的协同过滤和用于推荐的基于深度学习的特征学习。在第一部分中,作者介绍了一些代表性的基于GNN的协同过滤方法;在第二部分中,作者介绍了一些使用GNN提取视觉特征的作品。
  • 还有一些关于推荐的特定主题的调查,比如参考文献 [175] 关于基于会话的推荐,参考文献 [30, 59] 关于基于知识图的推荐,参考文献 [26] 关于可解释的推荐,参考文献 [191] 关于新闻推荐。还有一些关注推荐技术特定技术的调查,比如自动机器学习 [241] 和自监督学习 [241]。

总的来说,与这些调查相比,我们的调查有很大的不同,因为我们的调查提供了关于基于GNN的推荐系统的广泛且最新的介绍和讨论。

本调查的结构组织如下:我们首先从四个角度介绍推荐系统的背景(阶段、场景、目标、应用)和图神经网络的背景,见第2节。然后,我们从四个方面讨论将图神经网络应用于推荐系统的挑战,见第3节。接着,我们根据前述部分的分类法,在第4节详细阐述了基于图神经网络的推荐的代表性方法。在第5节,我们讨论了这一领域最关键的未解问题,并提供了未来方向的思路。最后,在第6节总结本调查。

背景

推荐系统

概览。在本节中,我们从四个角度介绍推荐系统的背景:阶段、场景、目标和应用。具体而言,在工业应用中,由于系统工程的实际需求,推荐系统通常分为三个阶段:匹配、排名和重新排名,形成一个标准的流水线。每个阶段在数据输入、输出、模型设计等方面具有不同的特点。除了标准阶段,还有许多具有特殊定义的特定推荐场景。例如,在过去的20年里,社交推荐一直备受关注,被定义为基于社交关系改进推荐系统。最后,不同的推荐系统有不同的目标,其中准确性始终是最重要的,因为它直接决定了系统的实用性。最近,推荐系统还被赋予其他要求,如推荐多样化的项目以避免用户体验单调,确保系统公平对待所有用户,保护用户免受攻击对隐私的侵犯等。至于应用方面,GNN模型可以广泛应用于电子商务推荐、兴趣点推荐、新闻推荐、电影推荐、音乐推荐等领域。

阶段

物品池,即推荐系统可用的所有物品,通常很大,可以包含数百万个物品。因此,常见的推荐系统采用多阶段架构,逐步从大规模物品池中过滤物品,最终呈现给用户数十个物品的推荐 [34, 190]。一般来说,现代推荐系统包括以下三个阶段:

  • 匹配。这个第一阶段从极大的物品池(百万级甚至十亿级)中生成数百个候选物品,显著减小了规模。考虑到这个阶段的大规模数据输入,以及在线服务的严格延迟限制,不能采用复杂的算法,比如非常深的神经网络 [34, 81]。换句话说,在这个阶段的模型通常是简洁的。这个阶段的核心任务是高效地检索潜在相关的物品,并对用户兴趣进行粗粒度建模。值得注意的是,现实中的推荐系统通常包含多个匹配通道和多个模型,如嵌入匹配、地理匹配、流行度匹配、社交匹配等。
  • 排名。在匹配阶段之后,来自不同通道的多源候选物品被合并成一个列表,然后由单一的排名模型进行评分。具体而言,排名模型根据得分对这些物品进行排名,然后选择前几十个物品。由于这个阶段输入物品的数量相对较小,系统可以采用更复杂的算法来实现更高的推荐准确性 [80, 101, 156]。例如,可以考虑使用包括用户档案和物品属性在内的丰富特征,并利用自注意力等先进技术 [80]。由于涉及许多特征,这个阶段的关键挑战是设计适当的模型来捕捉复杂的特征交互。
  • 重新排名。尽管在排名阶段得到的物品列表在相关性方面经过优化,但可能不符合其他重要要求,如新鲜度、多样性、公平性等 [143]。因此,需要进行重新排名阶段,通常会删除某些物品或更改列表的顺序,以满足附加标准并满足业务需求。这个阶段的主要关注点是考虑顶部得分物品之间的多种关系 [5, 255]。例如,相似或可替代的物品在推荐中显示得太近可能导致信息冗余。

image-20240119104446972

图2说明了推荐系统的典型流水线,以及上述三个阶段的比较。

场景

接下来,我们将详细介绍推荐系统的不同场景,包括社交推荐、顺序推荐、会话推荐、捆绑推荐、跨领域推荐和多行为推荐。

image-20240119104935851

  • 社交推荐。在过去的几年里,社交平台已经极大地改变了用户的日常生活。通过与其他用户互动的能力,个体行为受到个人和社交因素的驱动。具体而言,用户的行为可能会受到他们的朋友可能做或想的影响,这被称为社交影响 [33]。例如,微信视频平台的用户可能只是因为他们的微信朋友喜欢某些视频而点赞。与此同时,社交同质性是许多社交平台上的另一种普遍现象,即人们倾向于与具有相似偏好的其他人建立社交关系 [127]。以社交电商为例,同一个家庭的用户可能分享类似的产品偏好,比如食品、服装、日用品等。因此,社交关系经常被整合到推荐系统中以提高最终性能,这被称为社交推荐。图3说明了社交推荐的数据输入,其中用户的互动受到偏好和社交因素(社交影响和社交同质性)的影响。
  • 顺序推荐。在推荐系统中,用户会随着时间的推移产生大量的互动行为。顺序推荐方法从这些行为序列中提取信息,预测用户的下一个互动项目,如图4所示。为了表示这个问题,对于用户按顺序与之互动的项目序列 {x1, x2, . . . , xn },系统的目标是预测用户将与之互动的下一个项目 xn+1。在推荐系统中,用户的历史行为在建模用户兴趣方面起着重要作用。许多常用的推荐方法,如协同过滤 [66],通过将每个用户行为视为一个样本来训练模型。它们直接对单个项目上的用户偏好建模,但顺序推荐使用用户的历史行为序列学习了带有时间戳的顺序模式,以推荐用户可能感兴趣的下一个项目。在顺序推荐中,有两个主要挑战。首先,对于每个样本,即每个序列,需要从序列中提取用户的兴趣以预测下一个项目。特别是当序列长度增加时,同时建模用户的短期、长期和动态兴趣非常具有挑战性。其次,在建模序列内部的同时,由于物品可能出现在多个序列中或用户有多个序列,需要捕捉不同序列之间的协同信号以更好地进行表示学习。

image-20240119104950690

  • 会话推荐。在许多现实场景中,比如一些小型零售商和移动流媒体(例如YouTube和TikTok),由于存储资源有限,跟踪用户ID的长时间行为是不可能或不必要的。换句话说,用户档案和长期历史互动是不可用的,只提供来自匿名用户的短会话数据。因此,传统的推荐方法(例如协同过滤)在这种情况下可能表现不佳。这引发了会话推荐(SBR) [31] 的问题,其目标是根据给定的匿名行为会话数据预测下一个项目,如图5所示。与顺序推荐不同,在SBR中,同一用户的后续会话是独立处理的,因为每个会话中用户的行为只显示出基于会话的特征 [67]。
  • 捆绑推荐。现有的推荐系统主要侧重于向用户推荐独立的项目。捆绑是一组物品,是产品促销的重要营销策略。捆绑推荐旨在向

用户推荐一组物品进行消费 [12, 23, 114, 141],如图6所示。捆绑推荐在在线平台上现在非常常见,例如Spotify上的音乐播放列表,Pinterest上的图钉板,Amazon上的计算机套装以及IKEA上的家具套装。值得一提的是,捆绑推荐还用于解决一些有趣且有意义的问题,如时尚搭配 [95] 和药品包装 [246]。

  • 跨领域推荐。随着越来越多的用户在多个领域跨多模态信息进行交互,跨领域推荐(CDR)已被证明是缓解冷启动和数据稀疏问题的一种有前途的方法 [50, 52, 70, 79, 124, 132, 238],如图7所示。CDR方法可以大致分为两类,单目标CDR(STCDR)和双目标CDR(DTCDR)[35]。CDR方法将信息从源领域传输到目标领域; DTCDR强调了来自源领域和目标领域的信息的相互利用,这可以扩展到多目标CDR(MTCDR)。由于利用多个领域的信息可以提高性能,跨领域推荐已经成为推荐系统中的一个重要场景。

image-20240119105006323

  • 多行为推荐。用户与推荐系统进行多种类型的行为交互,而不仅仅是一种类型的行为。例如,当用户点击视频时,他/她可能还会执行收藏或评论等行为。在电子商务网站上,在购买产品之前,用户通常会点击、加入购物车、分享或收藏产品,如图8所示。尽管推荐系统的最终目标是推荐用户将购买的产品,但与用户的点击、分享和其他行为相比,购买行为非常稀疏。为了表示这个问题,对于每个用户u和物品v,假设有K种不同类型的行为{y1, y2, . . . , yK}。对于第i种行为,如果用户观察到了该行为,则yi=1,否则yi=0。推荐系统的目标是提高对某种类型目标行为yt的预测准确性。
    对于多行为推荐,一般来说,有两个主要挑战。首先,不同行为对目标行为的影响不同。有些行为可能是强信号,而有些可能是弱信号 [207, 208]。同时,这种影响对于每个用户都是不同的。准确地建模这些不同行为对目标行为的影响是一项具有挑战性的任务。其次,从不同类型的行为中学习到物品的综合表示是具有挑战性的。不同的行为反映了用户对物品的不同偏好; 换句话说,不同行为有不同的含义。为了获得更好的表示,不同行为的含义需要整合到表示学习中。

目标

推荐系统最重要的目标当然是准确性。接下来,我们详细说明另外三个重要的超越准确性的目标,包括多样性、可解释性和公平性。

  • 多样性。在推荐系统中通常考虑两种类型的多样性,即个体级多样性和系统级多样性。具体而言,个体级多样性是一个重要目标,衡量为每个用户推荐的项目的不相似程度,因为重复的相似项目会让用户不愿意探索系统。换句话说,个体级多样性反映了推荐列表涵盖的主题数量以及推荐项目在不同主题上的分布平衡程度。这里,主题取决于推荐任务,例如,对于电子商务推荐可以是不同的产品类别,对于音乐推荐可以是不同的音乐流派[242]。至于系统级多样性,它比较不同用户的推荐结果,并期望它们彼此不相似。换句话说,低系统级多样性意味着始终向所有用户推荐热门项目,而忽略长尾项目。因此,系统级多样性有时被称为长尾推荐。图9简要说明了两种多样性及其差异。对于个体级和系统级多样性,存在两个主要挑战。首先,不同项目的信号强度差异很大。对于每个用户,存在主导主题和劣势主题,例如,用户与电子产品的互动记录可能比与服装的互动记录频繁得多。同样,长尾项目的信号强度也远远弱于热门项目。因此,在个体级和系统级多样性方面,通过劣势主题或长尾项目获得如此弱的监督,推荐相关内容是具有挑战性的。其次,多样性有时可能与推荐准确性相矛盾,导致准确性-多样性困境;因此,在两个方面保持平衡是具有挑战性的。
  • 可解释性。由于当前推荐系统主要采用深度学习范 paradigm,因此它们对推荐的可解释性提出了迫切需求[236]。可解释推荐系统的焦点不仅是生成准确的推荐结果,还要为特定用户生成有说服力的关于为什么以及为何向其推荐该项目的解释[118, 184, 236]。提高推荐系统的可解释性可以增强用户对透明度[154]、说服力[166]和可信度[86]的感知,并有助于从业者调试和优化系统[236]。本调查主要侧重于使用机器学习技术提高可解释性。具体而言,过去的研究采用了两种不同的方法[236]:一种是努力设计内在可解释的模型,通过设计具有透明逻辑的模型来确保推荐结果的可解释性(而不仅仅是“黑匣子”),例如显式因子模型[237]、隐藏因子和主题模型[126]以及TriRank[64]。另一种是稍作妥协:他们设计事后单独的模型来解释“黑匣子”推荐系统生成的结果,例如解释挖掘[142]。目前存在两个挑战。首先,表示可解释信息需要具有图结构的项目属性,如果没有GNN的能力很难建模。其次,推理推荐依赖于知识图中的外部知识,这也对任务提出了挑战。
  • 公平性。作为典型的数据驱动系统,推荐系统可能会受到数据和算法的偏见的影响,引起了对公平性越来越多的关注[4, 41, 98, 128]。具体而言,根据涉及的利益相关者,推荐系统中的公平性可以分为两类[4, 98, 128]:用户公平性,旨在确保特定用户或人口群体之间没有算法偏见[9, 90, 96];项目公平性,指的是不同项目的公平曝光,或不同项目之间没有流行度偏见[2, 3, 98, 128]。在这里,我们关注用户公平性,将项目公平性留在多样性部分,因为它们在解释和解决方案方面有密切联系[2, 125]。具体而言,研究人员采用两种方法来增强公平性:一种是在培训过程中直接去偏推荐结果[9, 254],而另一种则努力在后处理方法中排名项目以缓解不公平性[55, 153]。事实上,越来越多的证据表明,利用图数据,例如用户-用户,可能加剧对公平性的担忧[36, 147, 195]。因此,在丰富的图数据背景下,去偏推荐仍然是具有挑战性的。此外,从图的角度来看,从用户的角度提高推荐的公平性更加困难。

应用。推荐系统广泛存在于今天的信息服务中,有各种各样的应用,其中代表性的应用有:

  • 产品推荐,也称为电子商务推荐,是推荐系统最著名的应用之一。在电子商务场景中,推荐模型的业务价值受到高度关注。因此,关键是处理与平台利润密切相关的多种类型的行为,包括添加到购物车或购买。一些作品[122]提出同时优化点击率和转化率。此外,在电子商务平台上,产品可能具有丰富的属性,例如价格[244]、类别[248]等,可以基于这些属性构建异构图[117]。产品推荐的代表性基准数据集包括Amazon、Tmall等。
  • POI(兴趣点)推荐也是一种流行的应用,旨在为用户的下一次访问推荐新的位置/兴趣点。在兴趣点推荐中,有两个重要因素:空间因素和时间因素。空间因素是指POIs的自然存在的地理属性,即地理位置。此外,用户的访问受限于他们的地理活动区域,因为用户不能像在电子商务网站上浏览/购买产品那样轻松访问POIs。此外,时间因素也非常重要,因为用户的访问/签到行为总是形成一个序列。这激发了下一个POI或连续POI推荐的问题[46, 102, 189, 213]。兴趣点推荐的代表性基准数据集包括Yelp、Gowalla等。
  • 新闻推荐帮助用户找到喜欢的新闻,这也是另一种典型的应用。与其他推荐应用不同,新闻推荐需要适当地对新闻的文本进行建模。因此,自然语言处理的方法可以与推荐模型结合,更好地提取新闻特征[134]。此外,用户始终对最新的新闻感兴趣,可能会拒绝过时的新闻。因此,需要从快速变化的候选池中准确过滤新闻,这是非常具有挑战性的。至于新闻推荐,MIND数据集[192]是最近发布的代表性基准数据集。
  • 电影推荐是最早的推荐系统之一。例如,Netflix的电影推荐竞赛[7]激发了许多先驱性的推荐研究[7, 84]。早期的电影推荐设定是估计用户对电影的评分,范围从一到五,这被称为显式反馈。最近,二进制的隐式反馈已经变得更受欢迎[66, 149]。

还有其他类型的推荐应用,如视频推荐[11, 37, 110],音乐推荐[87, 167, 186],工作推荐[139],食物推荐[131]等。

图神经网络

随着大量图数据的迅速涌现,如社交网络、分子结构和知识图谱等,近年来涌现了一波图神经网络(GNN)研究[8, 47, 49, 83, 168, 229]。GNN的崛起主要源于卷积神经网络(CNN)和图表示学习(GRL)的进步[205, 250]。当应用于常规的欧几里得数据,如图像或文本时,CNN在提取局部特征方面非常有效。然而,对于非欧几里得数据,如图形,CNN需要推广以处理操作对象(例如图像中的像素或图中的节点)大小不固定的情况。在图表示学习方面,它旨在为图的节点、边缘或子图生成低维向量,这些向量表示图的复杂连接结构。例如,一项开创性的工作,DeepWalk [144],通过在图上进行随机游走生成的路径上使用SkipGram [130] 来学习节点表示。通过结合CNN和GRL,开发了各种GNN来提取结构信息并学习高级表示。在后面的部分,我们将介绍设计GNN模型以在图上执行任务的几个一般和基本阶段,如图10所示。具体而言,第2.2.1、2.2.2和2.2.3节详细介绍了如何构建图形,设计专业且有效的图神经网络以及优化模型。

图构造

我们首先利用统一的公式定义图,即 ,其中 分别表示图的节点和边的集合, 中的每条边连接 中的任意数量的节点。近年来,基于GNN的模型专注于为以下三类图设计专业网络:

• 同质图,每条边仅连接两个节点,并且只有一种节点和一种边的类型。
• 异质图,每条边仅连接两个节点,并且存在多种节点或边的类型。
• 超图,每条边连接两个以上的节点。

在当今许多信息服务中,关系型数据通常以图的形式自然表示。例如,隐含的社交媒体关系可以被视为一个统一的图,其中节点表示个体,边连接那些互相关注的人。然而,由于非结构化数据如图像和文本并不明确包含图形,因此需要手动定义节点和边来构建图形。以自然语言处理(NLP)中使用的文本数据为例,单词/文档被描述为节点,它们之间的边根据词频-逆文档频率(TF-IDF)[220]构建。在图表示学习中,一个新兴的研究方向是知识图谱(KG),它是异质图的代表实例。知识图谱集成了多个数据属性和关系,其中节点和边被重新定义为实体和关系。具体而言,知识图谱中的实体可以涵盖各种元素,包括人物、电影、书籍等。关系用于描述实体之间的关联。例如,电影可以与人物(例如演员或导演)、国家、语言等有关。除了常规图形外,最近还研究了超图,以灵活处理更复杂的数据(例如超越成对关系和多模态数据)[47],其中每条边可以连接两个以上的节点。
总的来说,构建图形要么需要预先存在的图形数据,要么需要从非结构化数据中抽象出图节点和边的概念。

网络设计

一般而言,GNN模型可以分为谱模型和空间模型两类。谱模型将图视为信号,并在谱域中使用图卷积对其进行处理。具体而言,图信号首先通过定义在图上的傅里叶变换转换为谱域,然后应用滤波器,最后将处理后的信号转换回空间域[152]。使用滤波器 处理图信号 的表达式为

其中 表示图傅里叶变换。

相比之下,空间模型直接在图结构上进行卷积,通过类似CNN的加权聚合来提取局部特征。尽管这两种类型的模型起点不同,但它们都遵循通过迭代收集邻域信息来捕捉图节点和边之间高阶关联的相同原则。在这里,“信息”被表示为嵌入,即低维向量。为此,GNN的主要和关键操作是按照结构连接在图上传播嵌入,包括聚合邻域嵌入并将其与目标(节点或边)嵌入融合以逐层更新图嵌入。

接下来,我们将介绍一些开创性的GNN模型,以详细说明神经网络在图上是如何实现的。常用的符号说明见表1。

image-20240119111116672

  • GCN [83]。这是一个典型的谱模型,它结合了图卷积和神经网络,以实现半监督分类的图任务。具体而言,GCN通过参考文献[63]中的一阶近似卷积中的滤波器。然后,节点嵌入被更新如下:

其中的推导可以参考参考文献[205]。 是卷积的第层中的图节点的嵌入矩阵,其中是嵌入的维度。此外, 是带自环的图的邻接矩阵,其中每个条目 ,如果节点 连接到 ;否则 ,且

  • GraphSAGE [62]。这是一种开创性的空间GNN模型,它对目标节点的邻居进行采样,聚合它们的嵌入,并与目标嵌入合并以进行更新。

其中 表示目标节点 的采样邻居。AGGREGATE 函数有各种选项,如 MEAN、LSTM [68] 等。

  • GAT [168]。这是一种空间GNN模型,解决了谱模型的一些关键挑战,例如从特定图结构到另一个复杂计算的泛化能力差和矩阵求逆的问题。GAT利用注意机制通过为不同节点指定不同的权重来聚合邻域特征(嵌入)。具体而言,传播被制定为:

其中 是从节点 到节点 的传播权重, 是节点 的邻域集合,包括 本身。如第二个方程所示,注意机制通过一个由可学习向量 参数化的全连接层实现,然后是 softmax 函数。

  • HetGNN [229]。这是一种专为异质图设计的空间GNN。考虑到异质图包含多种类型的节点和边,HetGNN首先根据它们的类型将邻居划分为子集。此后,对每种类型的邻居进行聚合函数以收集局部信息,结合了LSTM和MEAN操作。此外,基于注意机制对不同类型的邻域信息进行了聚合。由于实现遵循上述工作,详细的公式被省略。
  • HGNN [47]。这是在超图上实现GNN的谱模型。卷积定义如下:

其中 的每个条目 表示超边 是否包含节点 的每个对角条目表示节点包含在多少个超边中, 的每个对角条目表示超边包含多少个节点。一般来说,这个卷积操作可以看作是两个阶段的邻域嵌入传播:(1) 从节点传播到连接它们的超边,(2) 从超边传播到它们相遇的节点。

上述典型GNN模型的共同点和区别如图11所示。

image-20240119120154808

为了进一步捕捉图上的高阶结构信息,上述卷积或嵌入传播将进行次。在大多数情况下,由于过度平滑问题,。具体而言,当传播层数过大时,传播的嵌入将过于相似,失去了区分能力。关于开发深层次和有效的GNN模型的相关研究将在第5.1.1节中介绍。

模型优化

在第2.2.2节中设计的网络处理后,产生了编码特征语义和图结构的节点或边的总体嵌入。为了执行下游图学习任务,这些嵌入将通过通用神经网络(例如MLP)进一步转化为目标(例如节点属于某个类的概率)。

图上主要有分类、预测和回归等任务,包括三个级别:节点、边和子图。尽管各种任务存在差异,但模型优化有一个标准的过程。具体而言,相关嵌入将与标签映射以构建损失函数,然后利用现有的优化器进行模型学习。在这个过程中,有几种类型的映射函数(例如MLP、内积)和损失函数(例如成对损失、点损失)可供选择以适用于特定任务。对于成对损失函数,鼓励区分正样本和负样本,一个典型的公式是BPR [149],如下所示:

其中 是 sigmoid 函数。 分别表示正样本和负样本, 用于测量样本。对于点损失函数,包括均方误差(MSE)损失、交叉熵损失等。

为了更好地理解,我们以链接预测和节点分类任务为例,详细说明了GNN模型的优化过程。对于链接预测,需要定义两个节点 之间是否存在边的可能性。从技术上讲,通常根据在每个传播层中与节点嵌入的相似性计算:

其中 表示映射函数。此外,我们可以构建训练数据为 ,包括观察到的正样本和随机选择的负样本,分别为 。具体而言,节点 在图上连接到 ,但不连接到 。在推荐系统中,样本将指示用户 与物品 有互动,但与物品 没有互动,其中 是从用户 以前未互动的所有其他物品中进行抽样的。此后,如果选择成对损失 BPR,优化目标将是

对于节点分类,节点嵌入将转化为代表其属于哪个类的概率分布,如下所示:

其中 是分布, 是类的数量。类似地,训练数据将是 ,其中 ,并且 属于类 表示 ;否则,。一般来说,通常为分类任务选择点损失函数,如交叉熵损失,其公式为

简而言之,基于GNN的模型中的优化将GNN生成的表示视为输入,将图结构(例如边、节点类别)视为标签,并为训练定义损失函数。

为什么推荐系统需要GNNs

在过去的十年里,推荐系统从传统的分解方法迅速发展到基于先进深度神经网络的模型。特别是,基于GNN的推荐系统在许多方面取得了最先进的成果,包括不同的推荐阶段、场景、目标和应用。基于GNN的推荐系统的成功可以从以下三个角度解释:(1) 结构化数据;(2) 高阶连接性;(3) 监督信号。

结构化数据。来自在线平台的数据有多种形式,包括用户-物品交互(评分、点击、购买等)、用户资料(性别、年龄、收入等)、物品属性(品牌、类别、价格等)等。传统的推荐系统不能利用这些多种形式的数据,它们通常只关注一个或几个特定的数据源,导致性能不佳,因为很多信息被忽略了。通过将所有数据表示为图上的节点和边,GNN提供了一种统一的利用可用数据的方式。同时,GNN在学习表示方面表现出强大的能力,因此可以获得用户、物品和其他特征的高质量嵌入,这对于推荐性能至关重要。

高阶连接性。推荐准确性依赖于捕捉用户和物品之间的相似性,而这种相似性应该体现在学到的嵌入空间中。具体来说,用户的学到的嵌入应该类似于用户互动的物品的嵌入。此外,与其他具有相似偏好的用户互动的那些物品也与用户相关,这被称为协同过滤效应,对于推荐准确性非常重要。在传统方法中,协同过滤效应只是隐式地被捕捉到,因为训练数据主要是只包含直接连接的物品的交互记录。换句话说,只考虑了一阶连接性。缺乏高阶连接性会大大损害推荐性能。相比之下,基于GNN的模型可以有效捕捉高阶连接性。具体而言,协同过滤效应可以自然地表示为图上的多跳邻居,并通过嵌入传播和聚合纳入到学到的表示中。

监督信号。在收集到的数据中,监督信号通常是稀疏的,而基于GNN的模型可以在表示学习过程中利用半监督信号来缓解这个问题。以电子商务平台为例:目标行为购买相比其他行为非常稀疏。因此,仅使用目标行为的推荐系统可能性能较差。基于GNN的模型可以通过在图上编码半监督信号,有效地整合多种非目标行为,例如搜索和加入购物车,这可以显著提高推荐性能[78]。同时,还可以通过在图上设计辅助任务利用自监督信号,进一步提高推荐性能。

GNNs应用到推荐系统的挑战

尽管在推荐系统中应用图神经网络是很有动机的,但仍然存在四个关键挑战。

  • 如何为特定任务构建适当的图?
  • 如何设计信息传播和聚合的机制?
  • 如何优化模型?
  • 如何确保模型训练和推断的效率?

接下来,我们将逐一详细说明这四个挑战。

图构建

显然,应用图神经网络的第一步是构建图。这有两个方面:将数据输入构建为图结构化数据;将推荐目标重新组织为图上的任务。以标准协同过滤为例,数据输入是观察到的用户-物品交互数据,输出是缺失的用户-物品交互的预测。因此,可以构建一个具有用户/物品节点和交互边的二部图。此外,CF任务转变为图上的用户-物品链接预测。

然而,构建能够正确处理任务的图形是具有挑战性的。它应该在考虑以下方面时进行仔细实施:

  • 节点。使用图神经网络学习的主要目标之一是为节点分配表示。这导致节点的定义在很大程度上决定了GNN模型的规模,其中大多数参数被第0层节点嵌入占据。请注意,通常不考虑边嵌入,或者基于节点嵌入计算边嵌入。然而,确定是否区分不同类型的节点也是一个具有挑战性的问题。例如,在协同过滤任务中,用户节点和物品节点可以被建模为不同的节点类型或者考虑为相同类型的节点。另一个具有挑战性的点是处理诸如物品价格之类的数值特征这样的具体输入,这些特征通常是连续数值。为了在图中表示这些特征,一种可能的解决方案是将其离散化为分类变量,然后可以表示为节点[244]。
  • 边。边的定义在进一步传播和聚合以及模型优化方面极大地影响图的质量。在一些简单的任务中,推荐系统的数据输入可以被视为一种关系数据,例如用户-物品交互或用户-用户社交关系。在一些复杂的任务中,其他关系也可以表示为边。例如,在捆绑推荐中,一个捆绑包含多个物品。然后,连接捆绑和物品的边可以反映从属关系。在构建图时,边的良好设计应充分考虑图的密度。过于密集的图意味着存在度极高的节点。这将导致由大量邻居进行的嵌入传播。这将进一步使传播的嵌入变得不明显且无用。处理过于密集的边的解决方案包括在图上进行采样、过滤或修剪。过于稀疏的图也将导致嵌入传播的效用较差,因为传播将仅在极小部分的节点上进行。

网络设计

传播层使得GNN与传统的图学习方法有所不同。对于传播而言,如何选择路径对于建模推荐系统中的高阶相似性至关重要。此外,传播还可以是参数化的,它为不同的节点分配不同的权重。例如,在用户-物品交互图中将物品嵌入传播到用户节点可以捕捉基于物品的协同过滤效应。这里权重指的是历史交互物品的不同重要性。
在传播中,还有各种各样的聚合函数可供选择,包括均值池化、LSTM、最大值、最小值等。由于没有一种单一选择可以在所有推荐任务或不同数据集中表现最佳,因此设计一种特定且合适的选择至关重要。此外,不同的传播/聚合选择极大地影响计算效率。例如,均值池化广泛用于基于GNN的推荐模型,因为它可以高效计算,特别是对于包含高度节点的图,比如非常受欢迎的物品(可以连接许多用户)。此外,传播/聚合层可以堆叠以帮助节点访问更高阶的邻居。太浅的层不能很好地建模高阶图结构,而太深的层会使节点嵌入过于平滑。这两种情况中的任何一种都会导致推荐性能较差。

模型优化

为了优化基于图神经网络的推荐模型,推荐系统中传统的损失函数通常会转向图学习损失。例如,优化中的对数损失可以被视为点对点链接预测损失。类似地,BPR损失[149]通常用于图上的链接预测任务。另一个方面是数据采样。在基于GNN的推荐中,为了对正负项目进行采样,采样方式可以高度依赖于图的结构。例如,在社交推荐中,在图上执行随机游走可以生成弱正项目(例如朋友交互的项目)。
此外,有时基于GNN的推荐可能涉及多个任务,例如在不同类型的边上进行链接预测任务。在这种情况下,如何平衡每个任务并使它们相互增强是一个具有挑战性的问题。

计算效率

在现实世界中,推荐系统应该能够高效地进行训练/推断。因此,为了确保基于GNN的推荐模型的应用价值,应该认真考虑它们的计算效率。与传统的非GNN推荐方法(如NCF或FM)相比,GNN模型的计算成本要高得多。每个GCN层都涉及复杂的矩阵操作,尤其是对于像GCN这样的谱GNN模型。随着GCN层的多层堆叠,计算成本进一步增加。因此,PinSage等空间GNN模型在大规模工业应用中更容易实现。通过在邻居之间进行采样或修剪图结构,只要我们能够忍受推荐性能下降,效率就总是可以保持的。

现有方法

分类准则

在近年来,GNN已被应用于广泛的推荐任务。在这里,我们根据推荐阶段、场景、目标和应用领域分别定义了分类法。具体而言,推荐阶段表示在现实世界平台上实施推荐系统的整体过程。该过程包括用于项目候选选择的匹配、用于捕捉用户偏好的排名,以及用于其他准则的重新排名,超出准确性之外。推荐场景包括社交推荐、顺序推荐、跨领域推荐等。推荐目标包括准确性、多样性、可解释性、公平性等,其中准确性是最关注的。推荐应用是指特定的工业应用。表2、表3和表4分别展示了在不同的推荐阶段、推荐场景和推荐目标下,基于GNN的推荐的代表性研究,这些研究发表在顶级期刊或会议上。

推荐系统不同节点段的GNNs

召回阶段

image-20240119140240087

在匹配阶段,效率是一个关键问题,因为候选选择的计算复杂性很高。具体而言,在接下来的排名阶段,基于粗粒度用户偏好,将仅从数量级为百万的项目池中选择数百个项目。因此,在这个阶段提出的模型几乎没有利用用户-项目交互作为建模用户偏好的数据输入,而是引入了附加特征,如用户年龄、项目价格、在应用程序上的浏览时间等。对于匹配,除了图构建和网络设计的基本挑战之外,还存在协同过滤信号提取的挑战,如表5所示。

匹配阶段中的基于GNN的模型可以视为嵌入匹配,通常在用户-项目二分图上设计专门的GNN架构[8, 160, 181, 183, 194]。Berg等人[8]提出通过求和邻域消息,并为不同的关系边(即用户-项目评分)分配权重共享的变换通道来传递消息。Wang等人[181]在推荐中提出了一种空间GNN,并在性能上优于传统的CF方法,如MF [85]或NCF [66]。Sun等人[160]认为简单的聚合机制,如求和、平均或最大值,不能模拟邻域之间的关系信息,并提出了一种邻域交互感知卷积来解决这个问题。Wang等人[183]开发了解耦的GNN来捕捉独立的用户意图,在匹配中扩展了候选项集,并同时保证了准确性。吴等人[194]利用图结构的稳定性,将对比学习框架结合到表示学习中。这些基于GNN的模型可以捕捉用户和项目之间的高阶相似性以及结构连通性。通过多次信息传播,扩展了具有相似交互的用户将具有相似偏好的语义。然而,基于GNN的模型的训练复杂性[181, 183]被证明是可以接受的,并且与非图模型相当,特别是在删除变换矩阵的情况下[65]。此外,参考[222]表明,在现实世界平台上,基于GNN的模型可以在大规模推荐系统中高效而有效地应用,结合随机游走和GraphSAGE [62]进行大规模项目-项目图上的嵌入学习。表5显示了匹配中GNN模型之间的共性和差异[104]首次提出了首先过滤有希望的邻居,然后采用嵌入传播。

我们想简要讨论不同基于GNN的匹配方法的优缺点。这些方法通过采样技术,如参考[222],可用于大型图,更适用于较密的边,如项目-项目关系。最近的进展[65]去除了非线性操作,以进一步提高性能,但在某些数据集上,具有非线性操作的方法的性能仍然可以相提并论[181]。简而言之,GNN可以有效地应用于推荐任务,平衡了从项目池生成候选项的准确性和效率。

排序阶段

在排名阶段,由于候选项目的数量较少,可以使用更精确的模型,并且可以包含更多特征。现有的排名模型通常首先将稀疏特征转换为独热编码,然后将其转换为密集嵌入向量。这些特征嵌入直接串联并以非结构化的方式馈送到DNN [28, 57]或专门设计的模型 [66, 148, 156] 中,以估计排名分数。利用GNN进行排名的主要挑战是设计适当的结构来捕捉特征交互,如表6所示。具体而言,基于GNN的排名模型通常由两个组件组成,编码器和预测器,它们从不同方向解决特征交互的问题。一方面,可以设计特殊的图结构来在编码器中捕捉所需的特征交互。另一方面,可以在预测器中考虑特征交互,在这里通过集成来自GNN编码器的不同特征嵌入来估计排名分数。
Li等人[99]提出了特征交互图神经网络(Fi-GNN),它构建了所有输入特征的加权全连接图。Fi-GNN中的编码器由GAT和GRU组成,预测器通过注意网络实现。郑等人[243, 244]研究了价格特征在排名中的影响,并提出了一种称为价格感知用户偏好建模(PUP)的模型。他们设计了一个GCN编码器,用于在预定义的异构图上捕捉价格感知,利用两分支因子分解机作为预测器。刘[105]也在一些项目属性可用时接近推荐问题,并类似地构建项目-属性边。然后,项目嵌入可以反映用户行为和属性信息。由于并非所有特征交互都有用,L0-SIGN [158]自动检测有益的特征交互,并仅保留这些边,从而形成一个学到的图,进一步馈送到图分类模型以估计排名分数。此外,Guo等人[60]提出了DG-ENN,使用属性图和协作图的双图,将不同领域的信息整合到用于排名的嵌入中。此外,SHCF [91]和GCM [193]利用额外的节点和边属性分别表示项目属性和上下文信息。采用了传统的交互预测器,如内积和FM。表6说明了上述基于GNN的排名模型在编码器和预测器设计方面的差异。总体而言,这些基于GNN的排名方法可以视为传统特征交互方法和基于GNN的表示学习的结合体。因此,性能仍受特征交互组件的限制。需要一种能够将图结构(如高阶路径)有效融入高阶特征提取的模型。

重排阶段

在获取推荐项目的分数之后,使用预定义的规则或函数对顶部项目进行进一步的重新排序,以提高推荐质量。具体而言,在重新排序时需要考虑两个关键因素。首先,不同项目可以通过某些关系(如替代性和互补性)相互影响。其次,不同用户往往具有不同的偏好,因此重新排序也可以是个性化的。GNN提供了一种统一的方式来编码项目关系和用户偏好,因此主要的挑战是如何融合多个重新排序目标。Liu等人[111]提出了一个名为IRGPR的模型,利用GNN完成个性化的重新排序。他们提出了一个异构图来融合两个信息源,一个项目关系图用于捕捉多个项目关系,一个用户-项目评分图用于包含初始排名分数。在经过多个消息传播层(包括全局项目关系传播和个性化意图传播)之后,获取用户和项目嵌入。最终重新排序的项目顺序是通过前馈网络生成的。简而言之,基于GNN的重新排序中的当前工作只考虑了一些重新排序目标,其他目标仍然较少探讨。

不同推荐场景中的GNNs

社交推荐

image-20240119140712295

在社交推荐中,我们有包含每个用户社交关系的社交网络,目标是利用社交网络中每个用户的本地邻居的偏好,以增强用户建模[18, 161, 199, 200]。从使用GNN进行表示学习的角度来看,社交推荐中有两个关键考虑因素:(1) 如何捕捉社交因素;(2) 如何结合来自朋友的社交因素和来自用户互动行为的用户偏好。在这里,我们首先总结现有研究是如何从图构建和信息传播两个角度捕捉社交因素的。

• 图构建。在社交感知的推荐系统中,用户的最终行为由朋友的社交影响和他/她的偏好共同决定。社交推荐中的一个主要挑战是构建社交图,以捕捉朋友的社交影响。一般来说,在社交网络中,某个用户不仅受到他/她的朋友(一阶邻居)的影响,还受到朋友的朋友(高阶邻居)的影响。鉴于普通图只能建模成对关系,普通图基于的方法[43, 61, 82, 116, 133, 155, 197, 198, 201, 217, 225, 226]堆叠了多个GNN层以捕捉多跳高阶社交关系。然而,堆叠的GNN层可能会遇到过度平滑[19]问题,可能导致性能显著下降。基于超图的方法,如MHCN [227],提出使用超边[47]来建模高阶社交关系,超边可以连接两个以上的节点,并以自然的方式建模高阶关系。HOSR [113]在社交网络上递归传播嵌入,以反映用户表示中高阶邻居的影响。为了进一步提高推荐性能,一些工作[6, 73, 157, 216, 230]在构建图时引入了辅助信息。RecoGCN [216]将用户、物品和销售代理统一到异构图中,以捕捉社交电子商务中的复杂关系。GBGCN [230]在团购推荐中构建一个图,其中发起者视图包含那些发起者-物品交互,参与者视图包含那些参与者-物品交互。DGRec [157]和TGRec [6]将用户行为的时间信息引入社交推荐中。KCGN [73]提出使用开发的知识感知耦合图捕捉用户-用户和物品-物品关系。

• 信息传播。至于在构建的社交推荐图上的传播,主要有两种传播机制,即GCN和GAT。一些方法[6, 61, 73, 82, 155, 198, 217, 225, 227, 230]在社交图上进行GCN,平等地对待朋友的社交影响。RecoGCN [216]在构建的图上进行基于元路径的GCN传播,以捕捉社交影响和用户偏好。HOSR [113]使用GCN从邻居那里聚合信息,捕捉社交图中的高阶关系。MHCN [227]使用GCN在构建的超图上进行传播,以获得高阶社交关系。一些采用GAT机制的方法[43, 116, 133, 157, 197, 201, 226],如GraphRec [43]和DiffNet++ [197],假设社交图上来自不同邻居的社交影响不同,并为不同朋友的社交影响分配不同权重。

在社交推荐中,用户的表示是从两个不同的角度学到的,即社交影响和用户互动。为了结合上述两个方面的用户表示,有两种策略:(1)分别从社交图和用户-物品二分图中学到用户表示,(2)从包括社交图和用户-物品二分图的统一图中联合学到用户表示。采用第一种策略的方法,如DiffNet [198]、GraphRec [43]和MHCN [227],首先分别从社交图和用户-物品图中学到用户表示,然后通过求和池化[198, 227]、拼接[43]、MLP [133]或注意机制[6, 82, 113]将这些表示组合起来。采用第二种策略的典型方法DiffNet++ [197]首先使用GAT机制聚合用户-物品子图和社交子图中的信息,然后通过每一层设计的多级注意网络组合这些表示。表7显示了社交推荐中上述方法的差异。

总之,社交推荐与GNN的发展可以总结如图12所示。社交推荐的早期工作只是使用GNN建模社交网络,如DiffNet [198]。然后,采用GNN同时建模社交网络和用户互动的方法[43, 61, 82, 116, 133, 155, 197, 198, 201, 217, 225, 226]成为基于GNN的社交推荐的主流。此外,一些研究,如MHCN [227]和HOSR [113],尝试通过更充分地建模社交网络中的高阶关系来增强推荐效果。此外,还有一些工作[6, 73, 157, 216, 230]引入额外信息以进一步增强社交推荐。简而言之,最近的进展表明,能够区分不同强度的社交关系的方法通常比早期粗略地将所有社交关系视为相同的方法表现更好。

序列推荐

image-20240119140841319

在序列推荐中,为了提高推荐性能,有必要从序列中提取尽可能多的有效信息,并学习用户在序列中的兴趣,包括短期兴趣、长期兴趣、动态兴趣等,以准确预测用户可能感兴趣的下一个项目。一些用于序列建模的工具已经被使用,如马尔可夫链[27]或循环神经网络[80]。通过将数据转换成图,图神经网络可以很好地用于短期、动态兴趣建模或表示学习。序列建模的一般模式如图13所示。

SURGE [15]将每个用户的序列转换成一个项目-项目图,并通过度量学习自适应地学习边的权重,通过动态图池化仅保留更强的边。保留的图通过位置展平被转换为一个序列,最终用于预测下一个项目。马等人 [119]考虑了序列中的短期兴趣建模,构建了一个项目-项目图。对于每个项目,该方法只与序列中接近它的其他项目建立边。这使得它能够学习序列中的短期用户兴趣,同时通过其他网络学习长期用户兴趣。学到的多个表示被融合在一起,用于最终的推荐。

除了图的构建和网络设计的挑战之外,基于图神经网络的序列推荐方法还应仔细设计如何提取用户行为序列中的序列模式,如表8所示。由于图神经网络具有通过聚合邻居节点的信息进行高阶关系建模的能力,因此在将多个序列融合成一个图后,它可以学习不同序列中的用户和项目的表示,这是马尔可夫模型或循环神经网络无法完成的。王等人 [169]提出了一种直接将序列信息转换为图上的有向边的简单方法,然后使用图神经网络学习表示。刘等人 [106]同时构建用户-项目二分图和项目-项目图,其中项目-项目图的边表示在序列中的共现,边权重根据出现次数分配。通过循环神经网络将GNN学到的表示用于最终的推荐。与直接将时间序列转换为图中的有向边不同,
DGSR [234]和TGSRec [44]在图的构建过程中考虑了序列中的时间戳。在图中,每条边表示用户和项目之间的交互,同时包含相应的时间属性。然后,在时空图上执行卷积操作以学习用户和项目的表示。GES-SASRec [253]和SGRec [97]专注于学习项目表示。对于序列中的项目,GES-SASRec [253]考虑该项目在其他序列中的下一个项目,SGRec [97]不仅考虑下一个项目,还考虑前一个项目。通过聚合不同序列中目标项目之前和之后的项目,增强了项目的表示。GPR [13]和GME [213]通过考虑连续发生的频率或在同一序列中的发生次数来构建项目之间的边以增强表示。有些工作更为复杂。例如,RetaGNN [69]在构建图时考虑了项目的属性,而STP-UDGAT [102]考虑了POI推荐中的地理位置、时间戳和频率。表8总结了上述工作。目前,基于图神经网络的推荐

网络仍然高度依赖于额外的序列模型,如RNN、Transformer等,用于序列建模。图在序列建模中的能力,如有向边、动态节点,需要更多的研究工作。

会话推荐

image-20240119141007157

image-20240119141016659

在基于会话的推荐中,会话数据可能同时包含用户兴趣和噪音信号。假设某用户的一个会话是 iPhone → iPad → 牛奶 → AirPods。显然,牛奶可能是误点击,然后成为噪音,因为该会话反映了用户对电子产品的偏好。因此,基于会话的推荐中的两个主要考虑因素是:(1)如何建模会话数据中的项目转换模式;(2)如何从嘈杂的数据中激活用户的核心兴趣。从图学习的角度来看,项目转换可以被建模为图,图上的信息传播可以激活用户的实际兴趣。

  • 图的构建:在基于会话的推荐中,大多数现有的工作 [145, 187, 203, 215, 224] 使用有向图模型来捕捉项目转换模式。与顺序推荐不同,基于会话的推荐中的会话序列很短,用户行为有限,即 Tmall∥ 中序列的平均长度仅为6.69 [187, 210]。因此,从单个会话构建的会话图可能只包含有限的节点和边。为了应对上述挑战并充分捕捉项目之间的可能关系,有两种策略:(1)直接从其他会话捕捉关系;(2)为会话图添加额外的边。对于第一种策略,A-PGNN [233]、DGTN [245] 和 GAG [146] 提出通过相关会话增强当前会话图的关系,GCE-GNN [187] 利用构建另一个全局图来辅助当前会话中的转换模式。DHCN [210] 将每个会话视为一个超边,并在超图中表示所有会话以建模高阶项目关系。SERec [25] 使用知识图为每个会话增强全局信息。CAGE [151] 通过利用开放知识图来学习语义级实体的表示,以提高基于会话的新闻推荐。MKM-SR [129] 通过整合用户微行为和项目知识图来增强给定会话中的信息。COTREC [209] 将所有会话统一成全局项目图,并通过会话视图的线图来捕捉会话之间的关系。DAT-MID [16] 遵循 GCE-GNN [187] 构建会话图和全局图,然后从不同领域学习项目嵌入。TASRec [249] 为每一天构建一个图以建模项目之间的关系,并增强每个会话中的信息。至于第二种策略,SGNN-HN [137] 构建了一个包含“星形”节点的星形图,以获取会话数据中的额外知识。SHARE [173] 通过在会话序列上滑动上下文窗口来扩展超边连接。LESSR [24] 首先构建保持边次序的多图,然后为每个会话构建快捷图以丰富边连接。A3SR [40] 提出构建一个全局图来代表所有会话,并根据后续嵌入传播来区分会话级预测信号。HG-GNN [138] 提出构建异构图,在该图中通过两种类型的项目-项目边来捕捉项目转换:内部类型和外部类型。CGL [136] 还提出构建全局级图和会话级图,但它将在两个图上的学习视为两个任务,采用了多任务学习。
  • 信息传播:对于构建的图上的信息传播,基于会话的推荐中使用了四种传播机制,例如门控图神经网络、图卷积网络、图注意力网络和图采样。SR-GNN [203] 及其相关工作 [25, 129, 137, 215, 224, 233] 在会话图上使用门控循环单元进行传播(门控图神经网络)。GAG [146]、DCTN [245] 在构建的有向图上进行图卷积。DHCN [210] 提出在超图和线图上执行图卷积,以从两个不同的角度获得会话表示。与 DHCN [210] 相似,COTREC [209] 在项目图和线图上执行图卷积,以分别从项目和会话视图获取信息。CAGE [151] 在文章级图上执行图卷积,而 TASRec [249] 在动态图上执行图卷积以捕捉项目关系。FGNN [145] 在有向会话图上执行图注意力以为不同项目分配不同权重。SHARE [173] 在会话超图上执行图注意力,以捕捉项目之间的高阶上下文关系。GCE-GNN [187] 和 DAT-MID [16] 在会话图和全局图上执行图注意力,以分别捕捉局部和全局信息。MGNN-SPred [177] 在多关系项目图上采用了 GraphSAGE。在这些图神经网络方法中,通过构建合适的图结构和设计有效的信息传播机制,基于会话的推荐模型能够更好地理解会话数据中的项目转换模式并激活用户的实际兴趣。

表9显示了上述基于会话的推荐方法之间的差异。总的来说,基于图神经网络的基于会话的推荐(SBR)的发展可以在图14中总结。早期的SBR工作只是使用有向图模型对每个会话序列进行建模,例如 SR-GNN [203]、GC-SAN [215]、TA-GNN [224] 和 FGNN [145]。然后,一些方法尝试通过其他会话或附加链接丰富会话图中的关系和信息。参考文献 [16, 25, 129, 146, 151, 177, 187, 209, 210, 233, 245, 249] 中的方法结合了来自其他会话的信息,以捕捉来自相似会话或所有会话的更多信息。此外,具有附加链接的方法,如 SGNN-HN [137]、SHARE [173] 和 LESSR [24],尝试引入额外的边到给定的会话中,以捕捉会话数据中的复杂关系和信息。此外,一些研究,如 DHCN [210] 和 SHARE [173],尝试通过更充分地建模会话数据中的高阶关系来增强推荐效果。正如我们所看到的,基于图神经网络的基于会话的推荐模型的当前工作已经从简单的图发展到复杂的图,甚至包括超边。与顺序推荐不同,基于会话的推荐中用户与特定项目有重复交互,更适合于基于图神经网络的模型。因此,现有的基于会话的推荐工作可以构建更强大和复杂的图结构。这个领域的一个可能的改进是探索更大规模的数据集,并进一步评估图神经网络在这些数据集中的能力。

GNN in Bundle Recommendation

GNN in Cross-domain Recommendation

GNN in Multi-behavior Recommendation.

不同推荐目标中的GNNs

多样性

image-20240119141348291

个性层面的多样性要求推荐系统检索到的物品涵盖更多主题,比如不同类别的产品或音乐的不同流派。因此,利用图神经网络增加多样性需要学到的用户嵌入接近具有各种主题的物品嵌入。然而,由于图神经网络中的嵌入聚合操作使得用户嵌入接近历史记录中与之交互的物品的嵌入,图神经网络可能通过推荐太多属于用户交互历史中占主导地位主题的相似物品来阻碍多样性。例如,对于一个主要与电子产品互动的用户,从图神经网络中学到的嵌入可能与电子物品的嵌入太过接近,导致图神经网络只向该用户推荐电子产品,从而降低多样性。因此,为了克服来自劣势主题的弱信号的第一个挑战,人们通过从原始用户-物品二分图构建多样化的子图来限制主导主题(以上例子中的电子产品)的重要性。具体来说,Sun等人提出了一种名为贝叶斯图协同过滤(BGCF)的模型,该模型通过节点复制[135]从高阶邻居构建扩展图,从而可以直接将与用户节点相似度高的多种主题的物品连接到用户节点。郑等人提出了多样化图卷积网络(DGCN),并进行了平衡邻居抽样,减小了主导主题的权重,增加了那些劣势主题在邻居节点中的重要性。图19说明了多样性图构建上BGCF和DGCN的比较。同时,为了解决平衡准确性和多样性之间的第二个挑战,BGCF根据物品流行度重新排名前物品,而DGCN利用物品嵌入上的对抗学习,鼓励图神经网络捕捉与物品类别基本独立的用户偏好,进一步提高了推荐的多样性。这些比较如图18所示。

至于系统层面的多样性,主要目标是从长尾项目中发现更多相关项目,这些项目的训练样本比那些热门项目要少得多。为了解决长尾项目的弱信号问题,Li等人提出了一种名为V2HT的模型,该模型构建了一个项目图,探索与外部知识相关的项目之间的关系。具体而言,引入了四种类型的边,连接频繁项目和长尾项目。然后堆叠了多个图卷积层,将经过充分训练的频繁项目的嵌入传播到长尾项目的未经训练的嵌入。通过这种方式,由于它们共享了来自频繁项目的信息,得到了更高质量的长尾项目嵌入,从而通过更多地推荐长尾项目来提高系统层面的多样性。

此外,一些研究[76, 214]利用图神经网络同时提高个体层面和系统层面的多样性。具体来说,Xie等人提出了FH-GAT,通过构建异构交互图来表达不同的用户偏好,以解决弱信号的挑战。在异构图上进行了基于邻居相似度的损失,以在准确性和多样性之间取得平衡。Isufi等人提出了两个GCN,分别在最近邻图(NN图)和最远邻图(FN图)上进行,其中NN图保证准确性,FN图增强了多样项目的弱信号。同时,两个GCN通过一个超参数联合优化,以在准确性和多样性之间取得平衡。表13显示了上述方法之间的差异。

可解释性

image-20240119141523714

随着GNN的普及,研究人员也在努力提高推荐系统的解释性,充分发挥GNN对逻辑关系建模的能力,如图20所示。He等人构建了一个异构图,包含三种节点,包括用户、物品和方面(从文本评论中提取的具体物品属性)。因此,他们将推荐任务转化为一个三元关系排名任务,并提出了TriRank,通过显式地建模评论中的方面具有高度的解释性。

受到这项工作的启发,后续研究进一步探索了用户和物品维度的丰富信息,通常以知识图的形式组织,以增强解释性[236]。Ai等人构建了一个包含实体(即用户和物品)和关系(例如,“用户A购买了属于类别C的物品B”)的知识图。此外,他们为推荐嵌入每个实体,并采用用户和物品之间在知识图中的最短关系路径来指示推荐的解释。与Ai等人[5]分别使用基于嵌入和基于路径的方法不同,Wang等人[171]提出了一个端到端框架RippleNet,将两种知识图感知的推荐方法结合在一起。在这里,知识图包含推荐物品的相关知识,比如电影的类型和作者。通过这种方式,可以通过用户历史到得分较高物品之间的路径生成解释。

基于元路径的知识图利用还可有益于其他特定的推荐任务,例如顺序推荐[75, 185]。Huang等人从知识图中提取用户和物品之间的语义元路径,以帮助顺序推荐。此外,他们对元路径进行编码和排序,生成推荐列表,这些元路径也指示了相应的解释。同样,Wang等人[185]还利用知识图提高顺序推荐任务的性能,并使用循环神经网络对用户和物品之间的元路径进行编码。Chen等人[21]通过捕捉历史物品特征和路径定义上下文,进一步对时间元路径进行建模。

然而,这些基于元路径的解决方案在获取这些元路径方面也面临一些挑战[121, 211]。首先,由于预定义的元路径需要广泛的领域知识,Ma等人[121]共同从以物品为中心的知识图中发现归纳规则(元路径),为框架提供解释性和学习规则引导的推荐模型。此外,为了克服枚举所有潜在元路径的计算困难,Xian等人[211]用强化推理方法替代了枚举方法,以识别适当的元路径以实现可伸缩性。

除了基于元路径的解决方案外,Wang等人[180]提出了一种名为知识图注意力网络(KGAT)的新方法,其中注意机制在一定程度上提供了解释性。Yang等人[219]开发了一个分层注意图卷积网络,以建模异构知识图中的高阶关系,解释性也依赖于注意机制。推荐中的解释性包括设计可解释的模型以及为那些没有解释性的模型找到解释(如黑盒模型)。也就是说,可解释的模型可以自然地生成可解释的推荐结果。至于基于GNN的推荐模型的解释性,它们可以利用异构图或知识图上的路径来生成推荐。由于模型体系结构是明确和可解释的,它们被分类为推荐解释性的第一类。我们在表14中比较了技术细节。基于GNN的推荐解释性的现有研究大多提取了属性或行为与推荐结果之间的关系,这忽略了因果关系,这可能导致错误的解释。将适当的因果推理方法设计到基于图神经网络的模型中是重要且有前途的。

公平性

image-20240119141602049

尽管图数据在推荐中具有强大的作用,但它可能继承或甚至放大了推荐中的歧视和社会偏见[36, 147, 195]。过去的研究证明,与仅采用节点属性的模型相比,由于使用了图结构,用户的不公平性得到了放大[36]。

为了解决推荐中的公平性问题,一些研究人员提出了学习公平图嵌入的方法[10, 147, 195]。Rahman等人[147]将著名的图嵌入方法node2vec [56]扩展为更公平的版本Fairwalk,通过基于敏感属性对下一个节点进行采样,可以为社交推荐生成更多样化的网络邻居表示。因此,所有节点的敏感属性都是不可缺少的。Bose等人[10]提出了一个对抗框架,通过强制执行公平性约束的鉴别器来最小化图嵌入中的敏感信息。此外,考虑到公平性的评估可能有所不同,公平性约束根据任务而灵活变化。然而,与Fairwalk [147]类似,所有节点的敏感属性都是必需的。Wu等人[195]从基于图的角度学习用于推荐的公平嵌入。他们提出了FairGo,采用了基于图的对抗学习方法,将任何推荐模型的嵌入映射到一个经过敏感信息过滤的空间,因此消除了原始推荐嵌入和用户中心图结构中潜在的敏感信息泄漏。事实上,除了学习公平嵌入外,Dai等人[36]提出了FairGNN,它在对抗学习范式中学习具有有限已知敏感属性的公平GNN分类器,带有公平性约束。与公平图嵌入不同,公平GNN分类器是为了确保节点分类任务(而不是图嵌入)不依赖于敏感数据。此外,他们开发了基于GNN的敏感数据估计器,以解决现实世界中缺失敏感数据的问题。我们在表15中比较了技术细节。

简而言之,现有的基于GNN的推荐模型在实现公平性方面,如图21所示,通常会在某种程度上导致性能下降,需要解决权衡困境的方案。

具体推荐应用中的GNNs

图神经网络也广泛用于处理推荐系统不同应用中的特定挑战。至于电商/产品推荐,大多数现有的工作已在上述部分介绍。Li等人[100]提出堆叠多个GNN模块,并使用确定性聚类算法来帮助提高GNN在大规模电商应用中的效率。Liu等人[112]提出利用商品关系的拓扑结构来构建电商推荐中的图神经网络。至于兴趣点推荐,GGLR [13]使用用户访问的POI序列构建POI-POI图,其中POI之间的边表示用户连续访问两个POI的频率。Zhang等人[231]建议将社交网络和用户-物品互动结合在一起,对社交连接的用户和访问的POI进行嵌入聚合。至于新闻推荐,胡等人[71]提出将偏好解缠[179]引入用户-新闻嵌入传播中。

还有许多其他针对特定应用的论文,但它们可以很好地分类并被相应的阶段、场景和目标所覆盖,因此我们在这里省略了它们。

开放性问题与未来方向

更复杂的GNNs

更深

由于图神经网络(GNN)中的过度平滑问题,越来越多的研究关注如何增加GNN的层数,以捕获图中更高阶的连接关系,提高模型性能[20, 88, 150, 251]。尽管取得了一些进展,但构建类似卷积神经网络(CNN)那样非常深的GNN并没有通用解决方案,相关工作提出了不同的策略。Lai等人[88]开发了一个元策略,通过强化学习(RL)的训练来自适应地选择每个图节点的传播层数。实验证明,部分节点需要超过三个传播层以提高模型性能。Rong等人[150]通过随机删除图边来缓解过度平滑问题,这充当了消息传递的减速器。Claudio等人[51]将GNN视为动态系统,学到的表示是系统的固定点。在这个假设下,传播中的转换矩阵在稳定条件下首先被固定。此外,在学习过程中只更新嵌入,保持矩阵未经训练。通过这种方式,可以更快地训练和加深GNN。Li等人[92]将CNN中残差/密集连接和扩张卷积的概念转移到GNN中,以帮助构建更深层次的GNN。至于未来的研究,与当前的浅层GNN相比,性能的飞跃应该是发展非常深的GNN的基本问题,就像在CNN领域的一些开创性工作一样[74, 164]。同时,计算和时间复杂度也必须可接受。

动态

现有基于图神经网络(GNN)的推荐模型几乎都是基于静态图的,正如前面所述,在推荐系统中存在大量的动态性。例如,在顺序推荐或基于会话的推荐中,用户的数据是以自然的方式动态收集的。此外,建模动态用户偏好是这些推荐场景中最关键的挑战之一。另外,平台可能动态涉及新用户、新产品、新特性等,这对于静态图神经网络提出了挑战。最近,动态图神经网络[93, 123]引起了关注,它在动态构建的图上部署嵌入传播操作。鉴于推荐系统的时间演变特性,基于动态图神经网络的推荐模型将是一个有广泛应用前景的研究方向。

性能与可扩展性

早期的图神经网络(GNN)工作采用全批量梯度下降算法,其中在每个推断步骤期间,整个邻接矩阵都与节点嵌入相乘。然而,这种方法无法处理现实世界中的推荐系统,因为节点和边的数量可能达到百万级别。最近的一项工作[239]甚至提出了一个基于GNN的解决方案,用于搜索引擎和推荐引擎,这对计算效率提出了更高的要求。Hamilton等人提出了GraphSAGE [62],它执行邻居采样,在每个推断步骤中仅更新相关子图而不是整个图。一些其他工作[22, 29]也采用了采样策略,降低了GNN的计算复杂度,提高了可扩展性。Ying等人[222]成功地将GraphSAGE应用于规模庞大的推荐系统,可以高效地计算数十亿个物品的嵌入。一些其他工作[45]设计了特定的查询-召回加速策略,以实现高效的推荐。此外,一些开源工具已经发布,可以加速基于GNN的推荐的研究和开发,例如PyG [48]、DGL [174]和AliGraph [252]。最近,提出了一种具有效果和可扩展性的图学习系统PlatoGL [103]。它提供了一个实际的解决方案,将大规模GNN与实时推荐相结合,这是当今工业推荐中的一个基本问题。有关计算和加速GNN的详细信息,我们参考另一篇综述[1]。尽管存在这些现有方法,实现大规模的基于GNN的推荐仍然是一项具有挑战性的任务,特别是在涉及数千个特征的排名阶段,导致了一个庞大而复杂的异构图。

高级机器学习技术

自监督

由于与图的规模相比,来自交互数据的直接监督相对较稀疏,因此有必要从图结构本身或推荐任务中引入更多的监督信号。例如,Yu等人[227]和Wu等人[194]尝试通过设计来自图结构的辅助任务进行自我监督,以增强基于GNN的推荐。利用节点丢失等数据增强技术生成对比训练的样本对。我们相信利用额外的自我监督任务来学习基于GNN的推荐系统的有意义且稳健的表示是一个有前途的未来方向。

AutoML

推荐场景多种多样,彼此之间差异巨大;因此,并不存在一个可以在所有场景中推广的百搭GNN模型。最近,提出了AutoML(自动机器学习)[221],它可以自动设计适用于特定任务的模型。对于基于GNN的推荐,搜索空间非常庞大,包括对邻居采样器、聚合器、交互函数等的多个选项。因此,AutoML在很大程度上可以减少人力成本,发现先进的模型结构。已经有一些工作[54, 72]提出了搜索GNN层和聚合邻居的方法。因此,设计AutoML算法来搜索基于GNN的推荐系统[188]是一个有前途的未来方向。

其他

在本调查中,我们提出了一个基于GNN的推荐系统分类法,从四个方面讨论了现有的研究:阶段、场景、目标和应用。在这里,我们将讨论根据提出的分类法的重要未来方向。

• 阶段。传统的推荐将整个推荐过程划分为几个阶段,主要是由于原始候选池的规模太大(百万甚至十亿级)。也就是说,推荐引擎的不同阶段对模型有不同的要求。目前,随着计算能力的快速增长,不同阶段之间的界限变得越来越模糊,这可以从两个方面理解。首先,在排名阶段的模型开始考虑巨大规模的物品池和多个用户行为。其次,在重新排序阶段的多个目标,如多样性,也可以通过召回阶段或排名阶段的模型实现,使重新排序阶段不那么必要。
• 场景。随着在线信息服务的快速发展,推荐场景也在迅速变化。例如,用户可以通过与机器人聊天更积极地与推荐系统互动,这被定义为新的对话推荐场景,我们将在后面详细讨论。最近一些研究 [239] 同时考虑了搜索和推荐,这是信息检索的两个核心概念,试图设计一个统一的图神经网络模型,提供两种服务。
• 目标。基于GNN的推荐模型的现有研究在实现各种目标方面付出了很多努力,包括准确性、多样性、可解释性、公平性等。然而,它们仍然面临权衡困境,即同时只能优化一个目标。最近,一些基于深度学习的推荐工作,如MMOE [120]、PLE [165]等,研究了如何部署多个独立的模型,每个模型都朝着一个目标设计,然后一起优化它们。我们相信在解决GNN-based推荐模型的权衡问题中,多目标学习的这些技术也能够很好地发挥作用。
• 应用。一方面,强大的推荐系统有助于现有的非个性化应用吸引更多用户并促进平台利润。另一方面,依靠其对用户端和平台端都有利的优势,推荐系统可以激发一些新形式的应用,例如 TikTok 中的微视频推荐。在这些内容具有丰富特征的应用中,部署跨模态图神经网络模型既可以进行内容理解,又可以进行用户行为建模,是一个有前途的研究方向。

KG-增强的GNN推荐

最近的研究通过在用户-物品二分图中加入知识,展示了知识图在推荐中的强大作用 [53]。具体而言,知识图与GNN的结合显著解决了推荐系统中的一些实际问题 [53],例如冷启动问题 [42, 232] 和动态性 [163]。此外,知识图还为推荐中的一些场景(例如,顺序推荐 [75, 185])和目标(例如,可解释性 [140, 180, 219])提供了一种新的解决方案。已经有许多研究,包括KGCN [172]、KGAT [180]、KGIN [182]等。目前,大多数研究首先使用GNN来学习知识图的嵌入,然后将这些嵌入合并到推荐模型中,以便训练一个端到端模型 [169]。因此,我们指出,从数据、场景和模型的角度来看,可以进一步增强在GNN中使用KG进行推荐的效果。具体来说,已合并的KG主要记录了丰富的物品-物品关系,例如,电影A属于类别B [53],但是用户-用户知识在形式上和合理定义方面缺乏,因此被大量忽视。未来的工作可以考虑基于社会学中丰富的知识创建以用户为中心的知识图。此外,考虑到在顺序推荐 [75, 185] 等场景中的成功应用,有望通过利用KG从而增强推荐的质量,特别是在需要更多外部知识的方面,如多样性和公平性。此外,现有的在推荐中利用KG的方法不能充分建模用户与特定物品或其属性之间的复杂关系。因此,设计一个更好的框架来刻画这些复杂关系是另一个未来的方向。

与GNN的对话式推荐

在现有的推荐系统中,可能存在信息不对称的问题,即系统只能根据用户历史行为数据来估计其偏好。为了解决这个问题,最近的对话(交互)推荐研究 [89, 115, 162, 204] 提出了一种新的范式,用户通过对话与信息系统进行交互,然后可以动态收集新数据。具体而言,用户可以与系统聊天,明确传达他们的消费需求或对推荐的物品提供正面/负面反馈。至于未来的工作,图神经网络在表示学习方面的进展可以与对话推荐中的偏好学习相结合。

结论

图神经网络模型在推荐系统研究领域迅速发展。本文提供了一份全面的调查,系统地介绍了该领域的挑战、方法和未来方向。不仅涵盖了发展历史,还介绍了最新的进展。我们希望这份调查能够对初学者和经验丰富的研究人员都有所帮助。


面向ACG编程