查看原文
其他

一文速览跨域推荐系统中的图神经网络

张高玮 RUC AI Box 2022-12-14

© 作者|张高玮

机构|中国人民大学

研究方向|推荐系统


    本文搜集了最近几年发表在各类会议的跨域推荐相关论文,聚焦于其中的图神经网络模型,梳理其背后的技术脉络,旨在帮助推荐系统相关研究人员快速熟悉和掌握基于图神经网络的跨域推荐系统的最新研究进展,如有遗漏或错误,欢迎大家指正。文章也同步发布在AI Box知乎专栏(知乎搜索 AI Box专栏),欢迎大家在知乎专栏的文章下方评论留言,交流探讨!


引言:为了解决单领域数据稀疏问题,跨域推荐近年来获得了很多关注,其通过引入源领域的信息来进行辅助,旨在学习更全面、通用的用户和项目的嵌入表示,从而在目标领域甚至多个领域上都能进行更好的推荐。而凭借着在捕获高阶结构关系方面的优越性,基于图神经网络的模型已经在跨域推荐系统中发挥着十分重要的作用。笔者整理了近几年的基于图神经网络的跨域推荐系统的进展。欢迎大家批评指正,相互交流。


论文列表

1. Item Silk Road: Recommending Items from Information Domains to Social Users(SIGIR 2017)

该模型应用单域推荐方法对源域的用户-项目评分交互进行建模,将学习得到的用户嵌入作为辅助信息对目标域的图神经网络学习过程添加约束条件,使得目标域学习得到的表示更加全面、通用。

具体来说,该模型旨在向社交领域中的用户推荐信息领域中的项目,其中社交领域强调用户-用户联系,信息领域强调用户-项目交互。其首先利用属性感知的深度协同过滤模型来学习信息领域中的用户-项目交互:

如上图所示,对于每个用户/项目来说,根据其id和属性节点进行one-hot编码以及embedding,得到一组嵌入向量。针对这一组向量进行池化作为该用户/项目的最终表示,输入到一个全连接层+线性预测层进行建模。

然后将重叠用户的嵌入表示直接迁移到社交领域中。跨领域知识由多层图卷积网络传输,将重叠用户的表示传播到非重叠用户。最后,将非重叠用户在社交领域中的嵌入和项目在信息领域中的嵌入输入到信息领域的全连接层+预测层用于推荐。

2. A Graphical and Attentional Framework for Dual-Target Cross-Domain Recommendation(IJCAI2020)

以用户重叠情况为例,模型结构分为五层,如下图所示:

该模型首先通过预处理获得每个领域的评分信息以及文本内容信息。

然后在每个领域根据评分交互独立地构建一个二分图,其中边的权重是正则化后的评分,同时也利用Doc2vec方法对评论、标签等文本内容信息进行建模,得到用户的文本表示向量UC和项目的文本表示向量VC。通过文本表示向量计算用户-用户相似性以及项目-项目相似性,每一对相似的用户/项目以α的概率进行采样,采样得到的用户对以及项目对在图中进行连接,边的权值为:

如此一来在每个领域分别创建了一个异质图,每个图中包含了用户-项目间的评分交互关系,用户-用户间的相似关系以及项目-项目间的相似关系。

接下来模型在每个领域的图上应用Node2vec模型来获得每个用户以及项目的嵌入表示向量。对于重叠用户来说,其在源域和目标域分别拥有嵌入表示,为了充分利用其它领域的信息,模型对应用element-wise attention,计算后得到优化嵌入表示

之后将每个领域的用户以及项目的嵌入表示输入到独立的MLP层中进行建模,最后将用户MLP层的输出结果和项目MLP层的输出结果计算余弦相似度作为预测评分:

3.Dual Autoencoder Network with Swap Reconstruction for Cold-Start Recommendation(CIKM2020)

该篇论文提出了一种端到端的双自动编码器网络(DAN),使用一对编码器-解码器网络进行用户冷启动推荐。下图概述了其解决方案:

该篇论文针对每个领域的用户-项目独立地使用编码器进行编码,其中编码器采用图神经网络,通过多跳传播将用户和项目之间的高阶协作信息嵌入交互图中,以实现有效的用户偏好学习。在第层的嵌入表示矩阵形式为:

通过BPR损失函数对每个领域的交互进行优化。

而在解码器部分,与经典的自编码器不同,DAN 模型使用跨两个域的解码器,将源域中的用户解码到目标域以及将目标域中的用户解码到源域来进行推荐。如图 (c) 所示,其解码器设计有两个分支,两个分支的输出属于不同的特征空间。具体来说,分支①旨在将用户嵌入映射到另一个域的特征空间以进行推荐(对应于编码器的输出空间);分支②旨在重建初始特征表示(对应于编码器的输入空间)。以领域X的解码器为例,其结构如下:

其中是解码器的分支①的输出,其将领域X的编码器的输出映射到领域Y的特征空间,从而可以与领域Y中的项目进行交互/推荐。

是解码器的分支②的输出,其对进行进一步解码,实现对用户u的初始特征重建,并且是跨领域的特征重建,即解码器是针对用户u在编码器的输入进行重建,解码器是针对用户u在编码器的输入进行重建。

因此解码器的优化目标也根据两个分支分为两部分:分支①用户的映射结果与领域Y的项目的编码结果通过内积进行评分预测;分支②的重构结果要尽量逼近原始输入通过多个目标函数的联合优化实现端到端训练。

4.Cross Domain Recommendation via Bi-directional Transfer Graph Collaborative Filtering Networks(CIKM2020)

如下图所示,该模型(BiTGCF)主要包括三个模块:(1)一个嵌入层,提供用户嵌入和项目嵌入的初始化; (2) 一个特征传播和传递模块(具有多层),通过域中的特征传播和域间的特征传递来细化用户和项目的初始嵌入; (3) 一个预测层,它连接来自不同层的细化嵌入,并输出给定的用户-项目对是正交互的概率

在特征传播和传递模块中,其针对每个领域的交互数据应用GCN进行建模。受 LightGCN 的启发,其去除了 GCN 模型中的非线性激活函数和变换矩阵进行协同过滤,这大大减少了模型参数的数量,以及模型过拟合的风险。但与LightGCN不同的是,该模型保留了内积运算、自连接运算和层组合方式:

其认为这些操作有利于增加节点之间的特征流,进而可以提高推荐性能。

同时模型在GCN的每个layer中添加了双向特征传递模块。由于重叠用户在两个领域中均存在对应的嵌入表示,论文提出将这些存在于不同领域的表示进行迁移:

正如上面的公式所示,以重叠用户u为例,代表了u在领域A的第kGCN layer中聚合的邻居信息,代表了u在领域B的第kGCN layer中聚合的邻居信息,通过应用特征迁移函数对二者进行结合,结合后的结果输入到领域A的第k+1GCN layer中;相应地,通过应用特征迁移函数也可以对二者进行结合,结合后的结果输入到领域B的第k+1GCN layer中。如此一来实现了两个领域之间的双向知识转移,同时提高两个领域的推荐性能。

5.Cross-Domain Recommendation via Preference Propagation GraphNet(CIKM2019)

针对用户完全重叠的跨领域推荐问题,该研究构建偏好传播图来进行跨域推荐,其捕捉多跳用户偏好传播,显式地建模跨领域交互并保留结构信息。该模型主要包含两个模块:图卷积与传播模块和知识集成和预测模块。模型图如下图所示:

图卷积与传播模块:论文中定义了跨域偏好矩阵(CDPM)作为跨域图的邻接矩阵,其由联合交互图得到,如下图所示:

与普通的CF矩阵不同,CDPM融合了每个域上用户和项目的交互,可以跨不同域直接传播信息:

为了避免训练过程中出现梯度消失或梯度爆炸问题,通过单位矩阵和度矩阵对A进行归一化处理,处理后表示为。将和初始embedding 作为输入信号输入到多个图卷积和传播层,经过次传播,将每层得到的嵌入矩阵进行级联,构建全局嵌入

知识集成和预测模块:得到用户,项目的潜在向量之后,将三元组输入到两个多层前馈网络中,进行两个域上的推荐预测,通过联合训练来提高每个域上的推荐性能。

总体来说,这是一篇比较早的应用跨域图上图神经网络的论文,在此之前的方法都是对每个领域的图结构进行单独建模,没有很好地迁移两个域的图结构信息,而该论文通过构建联合交互图来建模跨领域交互,使得跨域知识可以直接通过图结构进行迁移。

6.HeroGRAPH: A Heterogeneous Graph Framework for Multi-Target Cross-Domain Recommendation(Recsys2020)

该模型首先对于每个域的用户以及物品的域内信息进行embedding,作为域内嵌入表示向量,如域A的同时构建一个融合异质图,包含所有领域的所有用户、项目,以及对应的交互边,如下图所示:

对于融合异质图的表示学习过程,可以采用各种图神经网络,一种基本策略是采用使用max-pooling聚合的GraphSAGE方法,过程如下:

论文中也有提出一种recurrent attention的邻居聚合策略,取得了不错的效果。

以域A为例,通过上面的过程获得了融合域内信息的用户embedding ,融合了域内信息的项目embedding 和异质图顶点表示,之后既可以对其进行拼接/融合进行统一的相似性计算,也可以分别进行相似性计算,再将结果进行结合。总体来说,这篇文章应用融合异质图来获得跨域知识,从而使得用户/项目表示综合了多个域的信息。

7.DA-GCN: A Domain-aware Attentive Graph Convolution Network for Shared-account Cross-domain Sequential Recommendation(IJCAI2021)

该篇论文研究共享帐户跨域顺序推荐(SCSR)问题,SCSR问题是根据记录的用户行为序列推荐下一个项目的任务,其中多个用户共享一个帐户,并且他们的行为在多个域中可用。论文的关键思想是学习一个基于图的推荐框架,该框架可以通过递归聚合来自不同领域的局部图邻居的特征信息来对多个关联和结构感知领域知识进行建模,从而更好地捕捉共享帐户中的不同用户偏好。下图展示了 DA-GCN模型的框架:

具体来说,为了对用户和项目之间的复杂关联进行建模,首先构建了一个跨域序列 (CDS) 图。跨域序列图中设计了四种类型的边: a) 域 A 中的用户-项目交互; b) 域 B 中的用户-项目交互; c) 域 A 中项目之间的交互顺序; d) 域 B 中项目之间的交互顺序。此外,论文中假定每个账户下实际存在H个潜在的用户,这些用户共享着这一账户,即对于账户,存在H个潜在用户,每个用户都对应着一个d维的潜在表示向量。

论文中利用GCN来学习每个潜在用户的节点表示,它从不同域中的连接邻居收集信息。基于问题的定义,由于多个用户使用联合帐户与不同的项目进行交互,因此交互的项目实际上只有账户下的某些特定用户感兴趣,为此进一步提出了一种域感知注意机制来加权来自不同域的传递消息。此后,通过连接和池化操作生成每个域的序列级嵌入,这有助于预测下一个项目。最后,为了相互最大化知识,利用了联合培训范式。

8.Expanding Relationship for Cross Domain Recommendation(CIKM2021)

整个模型可以分为5个部分:图构建层、关系扩展层、嵌入层、特征融合层和排名推荐层,如下图所示:

在图构建层,论文分别为每个领域建立了一个单域异质图,表示为,同时也将两个领域的交互进行融合,构建一个公共的融合图 

在关系扩展层,对图 应用NodeVec方法获得预训练的顶点表示,然后计算顶点间的余弦相似度,对相似度大于预设定阈值的未连接顶点对,将这两个顶点以权值为1的边进行连接,如此一来在图 的基础上进行了扩展。

在嵌入层,针对融合图 ,论文设计了一种基于分层注意机制的异质网络嵌入方法。它将学习选择更具代表性的邻居或特征边并赋予它们更高的权重。第一层将聚合目标节点的邻居节点和边嵌入,第二层将它们聚合在一起;针对两个单域图,采用常规的图神经网络进行顶点表示学习。

在特征融合层,对于每个用户/项目来说,其既在单域图中具有顶点表示,又在融合图中具有顶点表示,可以通过简单的连接操作来输出组合嵌入表示。

在排名推荐层,论文中选择使用用户表示与项目表示的内积进行评分计算。

总体来说,该论文不仅同时应用了单域图的图表示学习和融合图的图表示学习,还进一步扩展了融合图结构来丰富跨域信息,提高推荐性能。

总结

通过对近几年跨域推荐系统中图神经网络相关工作的总结,我们可以发现图神经网络在其中具有多样的应用形式,如对每个领域分别进行图表示学习,对学习结果进行跨域结合;抑或是通过构建融合异质图来进行跨域知识迁移。无论何种应用形式,凭借着在捕获高阶结构关系方面的优越性,基于图神经网络的模型已经在跨域推荐系统中发挥着越来越重要的作用。

更多推荐



KDD 2022 | 通过知识增强的提示学习实现统一的对话式推荐






8个扩展子包!RecBole推出2.0!



有监督预训练!文本生成又一探索!



点击下方“阅读原文”前往知乎专栏
↓↓↓

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存