知识图谱增强的图神经网络推荐研究进展

2023-02-28 09:19吴国栋王雪妮刘玉良
计算机工程与应用 2023年4期
关键词:图谱注意力实体

吴国栋,王雪妮,刘玉良

安徽农业大学 信息与计算机学院,合肥 230036

随着信息时代的到来,人们从网络上获取信息变得越来越便利。然而信息的爆炸式增长也带来了信息过载[1],用户难以从海量信息中快速找到感兴趣的内容。推荐系统通过从用户的历史行为中挖掘偏好特征,并推荐可能感兴趣的项目,以提升用户消费体验,使信息过载问题得到了有效缓解。传统的推荐算法可分为协同过滤推荐[2]、基于内容的推荐[3]和混合推荐[4]。相较于传统的推荐技术,基于深度学习的推荐方法[5]主要是通过为用户和项目学习其嵌入表示,并基于这种嵌入表示,来预测用户与项目的交互概率。

作为深度学习技术在图领域的扩展,近年来图神经网络(graph neural network,GNN)[6]被运用于推荐系统的研究中。GNN核心思想是通过传播邻居信息来学习目标节点的嵌入表示,对处理图结构数据有着天然优势。然而,单一的用户-项目交互信息已不足以发挥图神经网络的学习能力,很多算法仍然面临交互数据稀疏以及冷启动等问题,这就需要除用户历史行为外的辅助信息,来帮助推荐模型缓解这些问题。

知识图谱(knowledge graph,KG)[7]是一种反映多种关系的有向异质图结构,其中节点对应实体,边对应关系,以一种三元组[8]的形式表示。知识图谱中蕴含了丰富的属性信息,通过不同类型的关系将这些信息与实体相联系,将知识图谱引入图神经网络推荐研究,借助知识图谱中物品间丰富的语义关联,以便更好进行物品的特征表示,在有效提升推荐准确性的同时,还有助于推荐结果的可解释性。

按照是否有用户节点加入,可以将知识图谱分为项目知识图谱和协同知识图谱[9],与已有知识图谱推荐[10]或图神经网络推荐[11]等综述不同,本文以知识图谱的不同类型为视角,探讨知识图谱增强的图神经网络推荐相关研究。其中,基于项目知识图谱增强的模型将用户-项目交互图与项目知识图谱分离开,知识图谱中的实体不直接参与用户嵌入表示的学习;而协同知识图谱则是将两图融合,用户嵌入表示的学习也依赖于知识图谱中的实体。本文是探讨两者融合的推荐模型及其相关研究,既考虑到图神经网络在图结构数据处理上的优势,又丰富了知识图谱的语义表示。这类模型输入上可以利用的信息更丰富,在处理过程中对图结构数据信息的挖掘也更加全面细致,提供更精细的节点特征表示。

1 图神经网络推荐与知识图谱推荐

1.1 图神经网络推荐

图神经网络(GNN)作为一种处理图结构的深度学习模型,在推荐系统研究中有着一定的优势[12]。现有GNN推荐的研究,大多基于图卷积网络(graph convolutional network,GCN)[13]范畴。文献[14]利用图卷积网络作为编码器,并结合双线性解码来构建图自编码器,以进行用户-项目评分矩阵的补全。文献[15]对图卷积网络进行简化,去除了特征变换和非线性变换,构建一种轻量级的图卷积方式来传播用户和项目的嵌入,并堆叠多层图卷积网络以捕获高阶邻居的特征信息。文献[16]提出了一种线性残差网络,在对图卷积网络去除非线性变换后,构建残差网络结构,以解决多层图卷积容易导致的过平滑问题[17]。文献[18]提出了一种考虑高阶特征交互的图卷积网络模型,并将GCN 的排序信息提取为二值化协同过滤,提高了在线推荐效果。文献[19]不但在用户-项目交互图上执行图卷积,还将引入注意力机制的GCN用在用户-用户社交图上,丰富了用户的嵌入表示,从而进行更准确的评分预测。文献[20]着重解决堆叠多层GCN 带来的过平滑问题,通过一个无监督子图生成模块,将兴趣相似的用户及与其交互的项目,构建成子图,并在子图内部执行高阶图卷积,以避免从高阶邻居传播负面信息到节点,缓解过平滑问题。文献[21]也采用了图卷积网络作为编码器,通过重建掩码输入节点,生成新节点的嵌入,以缓解推荐过程中的冷启动问题。

尽管图神经网络对挖掘推荐系统中用户偏好与项目特征具有一定优势,然而单一的用户-项目历史交互信息存在一定的局限性,且交互数据较稀疏时容易导致冷启动等问题。

1.2 知识图谱推荐

传统的推荐方法大多只使用了用户与项目的交互信息,容易面临数据的稀疏性和冷启动等问题。知识图谱的引入可以为推荐系统提供项目间丰富的语义相关性,有助于挖掘它们之间的潜在联系,且不同类型的关系有助于扩展用户兴趣,增加推荐项目的多样性,使用这些信息可以进行更加合理的个性化推荐。知识图谱通常用G={(h,r,t)|h,t∈E,r∈R}的形式表示,其中三元组(h,r,t)表示头实体h与尾实体t由关系r连接,E 和R分别表示实体集合和关系集合,在此之上进行知识图谱表示学习[22]。

已有知识图谱推荐研究,大多是为项目建立知识图谱,如文献[23]提出了一种协同知识库嵌入(collaborative knowledge base embedding,CKE)模型,模型基于正则化的方法,利用嵌入和深度学习技术从项目知识图谱中提取语义表示。文献[24]提出了一种面向知识图谱增强推荐的多任务特征学习方法(multi-task learning for KG enhanced recommendation,MKR),模型将知识图谱嵌入任务和推荐任务通过交叉压缩单元相关联,使得推荐系统中的项目表示与知识图谱中的实体表示可以相互补充。文献[25]提出了一种基于异构网络嵌入的推荐方法(HIN embedding based recommendation,HERec),模型使用基于元路径的随机游走策略,从异质信息网络中采样节点序列,用于网络嵌入表示学习。学习节点嵌入时,首先通过一组融合函数进行转换,然后集成到扩展矩阵分解(matrix factorization,MF)[26]模型中,对扩展矩阵分解模型和融合函数进行联合优化,以完成评分预测任务。文献[27]提出了一个将知识图谱融合到推荐系统中、端到端的框架(RippleNet)。该方法沿着知识图谱中的关系,自动、迭代地扩展用户潜在兴趣,以刺激用户偏好在知识实体集合上的传播。

知识图谱的引入,为推荐模型提供了更多的信息来源,这些信息可以辅助学习用户或项目的特征,以缓解数据稀疏、冷启动等问题。作为一种图结构数据,图神经网络也可学习知识图谱的图嵌入,图神经网络以传播邻居信息来学习节点特征,使得知识图谱的处理不再依赖手工特征工程,同时为挖掘知识图谱的高阶结构信息和语义信息提供一种端到端的训练方式。因此,图神经网络技术与知识图谱相结合,可以有效提升推荐系统的性能。

本文将从基于项目知识图谱增强的图神经网络推荐和基于协同知识图谱增强的图神经网络推荐两个角度,探讨已有知识图谱增强的图神经网络推荐相关研究,如图1所示。

图1 已有知识图谱增强的图神经网络推荐研究Fig.1 Research on recommenders based on graph nerual network enhanced with knowledge graph

2 基于项目知识图谱增强的图神经网络推荐研究

项目知识图谱是指依据项目属性构建的知识图谱,图谱中包含项目实体、关系和属性,不包括用户实体。基于项目知识图谱增强的图神经网络推荐模型将项目知识图谱与用户-项目交互图相分离,且重点研究在其上运用图神经网络传播属性信息,以学习项目的嵌入表示。已有基于项目知识图谱增强的图神经网络推荐研究主要包括引入关系感知的推荐、引入标签优化的推荐、引入知识图谱上下文的推荐等几个方面。

2.1 引入关系感知的推荐

知识图谱通过关系将实体与实体联系起来,不同的关系代表着不同的信息,可通过头实体和关系推导出尾实体。用户喜欢一个项目可能是因为该项目包含了某种重要的关系,所以对项目知识图谱中关系的处理至关重要。文献[28-30]着重关注实体与实体间关系信息的处理,通过充分运用关系信息,来发挥知识图谱在推荐系统中的作用。

为了缓解协同过滤推荐中数据稀疏性和冷启动等问题,利用用户和项目属性构建知识图。根据知识图中连接关系所包含的丰富语义信息,增加推荐多样性和精确度。Wang 等人在文献[28]提出了一种知识图谱卷积网络(knowledge graph convolutional networks,KGCN)以挖掘项目间的关联属性,捕获项目与项目之间的关系,进而得到KG 的高阶结构信息和语义信息。KGCN模型首先为用户、项目和关系初始化嵌入表示,针对目标用户为其历史交互过的项目实体抽取固定大小的邻域,并在其上执行图卷积操作,将邻域实体信息传播到当前实体。传播过程中,邻居实体根据连接关系对目标用户的影响因子进行加权,见式(1):

式中,N(v)表示实体v的邻居实体集合,rv,e表示实体v与e的关系,表示归一化后的关系rv,e对目标用户u的影响因子。计算方式见式(2)、式(3):

之后,得到用户的初始嵌入表示和项目传播更新后的嵌入表示,预测用户u是否对他之前未交互的项目v有潜在的兴趣。模型在MovieLens-20M、Book-Crossing和Last.FM三个包含知识图谱的数据集上,将GNN应用在知识图谱嵌入学习上进行推荐,取得了很好的效果。

KGCN是较早将项目知识图谱与图神经网络结合,并用于推荐任务中的模型。该模型重点在于对知识图谱中实体间关系的编码,考虑关系对用户的影响,在图卷积网络的处理时,细化项目的特征表示,捕获了知识图中的高阶结构和语义信息。KGCN 也从异质知识图谱方面提供了一个新的视角,帮助提升推荐效果。KGCN的提出,对研究关系感知的知识图谱增强图神经网络推荐起着重要推动作用,后续相关研究大多都采用了这种考虑实体间关系的图卷积网络思想。在考虑关系感知的同时,还可以加入其他类型的影响因子,实体表示中根据用户偏好,影响邻居节点聚合的权重,可在聚合时得到更精准的表示,以优化图的表示学习,提高推荐的准确率。

利用知识图谱进行推荐的方法之一是知识图谱嵌入,一些常用的嵌入方法都侧重于对语义关联进行建模。在图嵌入中,当有新节点加入时,需要重新学习整个图的表示,往往缺乏一定的归纳能力。因此,刘欢等人在文献[29]提出了一种基于知识图谱驱动的端到端图神经网络模型(knowledge graph driven learning network,KGLN),其核心思想是通过知识图谱中实体间的邻近关系,来驱动模型进行用户和项目直接的表示学习。当新节点加入时,可以共享参数,直接获得节点的特征表示。相较于KGCN,该模型不仅考虑了关系对于目标用户的影响因子,也考虑了不同实体节点对当前项目的影响因子,来衡量用户对物品的偏好。在模型中找到与实体相关的邻居实体,对实体的邻居节点进行特征聚合,并加入影响因子形成聚合的结果。KGLN引用了评分函数g计算影响因子,计算方式见式(4):

其中,e为当前实体v的邻居节点特征,表示所有邻居实体e对当前实体v的影响程度。得到影响因子后进行归一化处理,再通过均匀随机采样邻居节点,计算出每个节点的影响因子,然后对项目v的邻居节点进行建模,计算方式如式(5):

其中,rv,e表示实体v与e的关系,表示归一化后的关系rv,e对目标用户u的影响因子。之后,聚合来自邻居的信息来更新自身,并通过堆叠多层KGLN 的方式,使项目节点获得来自其多阶邻居实体的信息。最后,结合项目嵌入表示与用户嵌入表示进行用户对项目的偏好预测。模型基于MovieLens-1M(https://grouplens.org/datasets/movielens!)和Book-Crossing(http://www2.informatik.uni-freiburg.de/~cziegler/BX)数据集进行了实验,对比其他基准方法,又考虑到不同聚合器以及不同感受野深度,KGLN模型取得了不错的效果。

KGLN模型通过引入关系感知的同时,还考虑了不同邻居实体对当前项目的影响因子,根据邻居节点特征的权重来聚合,相较于KGCN可以更加细致地学习项目节点特征,提高了推荐结果的精确度。KGLN考虑的知识图谱是静态的,然而用户的个人偏好会随着时间的改变而改变的。

上述知识图谱增强的推荐研究中,大多是构建项目知识图谱,对用户节点嵌入的学习较为简单。丰富用户信息的一个方式就是通过引入用户的社交信息。用户社交好友的偏好,在一定程度上也能反映当前用户的偏好,这对学习用户节点的特征很有帮助,通过社交网络中的联系,还有助于缓解用户冷启动问题。Tien等人在文献[30]提出了一种融入社交关系来学习用户嵌入的模型。模型首先从用户空间和知识图谱空间中学习项目嵌入表示,之后利用一个多层感知机,融合用户空间和知识图谱空间中捕获的信息,并利用一个NeuMF(neural matrix factorization)[31]网络层进行评分预测。模型采用RMSprop优化算法,在Ciao、MovieLens-1M和Last.FM数据集上取得了良好的效果。

2.2 引入标签优化的推荐

在推荐相关的数据集中,往往只有用户交互项目的记录,称之为正样本,而推荐算法的训练还需要负样本的参与。常用解决方法是在用户没有交互过的项目集中进行采样作为负样本数据,然而这种方式过于简单,没有交互过的项目不代表用户不喜欢,因此存在一定的不合理性。如果用户用标签来描述对项目的看法,标签可看作是用户和项目之间联系的纽带,也是反映用户兴趣的重要数据来源。文献[32-34]重点对样本的标签进行优化,采用相关算法预测样本标签来使标签类别达到平衡,以提升推荐效果。

为了提供更好的归纳偏置,Wang 等人在文献[32]提出了KGCN-LS(knowledge-aware graph neural networks with label smoothness regularization)模型。通过应用一个可训练的模型KGCN,来计算针对目标用户的项目嵌入,以识别知识图谱中关系对于给定目标用户的重要性,并将知识图谱转换为针对目标用户的加权图,然后利用图神经网络计算个性化的项目嵌入。除此之外,KGCN-LS重点引入标签平滑性假设,假定知识图谱中的相邻项目可能具有相似的用户相关性标签,通过引入标签平滑来提供边权值的正则化项。KGCN-LS使用标签传播算法,预测项目节点的标签值,并将标签预测损失也作为模型的优化任务。标签预测损失定义见式(6):

其中,J 是交叉熵损失函数,yuv是真实相关标签,是预测标签。之后在反向传播的过程中将该损失也加入优化任务,从而起到正则项的作用。模型基于MovieLens-20M、Book-Crossing、Last.FM(https://grouplens.org/datasets/hetrec-2011/)和Dianping-Food 数据集进行实验,验证了KGCN-LS 引入标签平滑正则项的有效性,以及在召回率指标上的效果提升。此外还通过调整MovieLens-20M 的训练集大小,验证了KGCN-LS 对缓解数据稀疏性和冷启动问题也有一定的效果。

相较于KGCN模型,KGCN-LS将GNN结构扩展到知识图,同时捕获项目之间的语义关系以及个性化的用户偏好和兴趣。此外该模型在KGCN 基础上加入标签平滑度正则项,通过聚合和优化使没有被发现的相关项目具有更多被推荐的概率。

Zhao等人在文献[33]提出了一种改进的、带标签平滑正则化的知识感知图神经网络iKGNN-LS 模型。该模型对KGNN-LS 进行了两个改进:一是引入实体对目标用户的影响因子计算函数,根据用户对关系和实体的个性化偏好共同确定边的权重。二是使用最大池化代替求和池化,来进行邻域的聚合。通过在三个真实数据集上的Top-N推荐实验,证明了这两项改进的有效性。

如果直接将用户未产生交互的项目作为负样本,会存在一定的偏差。因此,Togashi 等人提出了一种通过在知识图谱中使用伪标签的方式,来缓解冷启动问题的KGPL(KG-aware recommender based on GNNs and pseudo-labelling)[34]模型。KGPL 模型通过半监督学习预测未观测到的样本标签,以缓解数据稀疏性问题。该模型中,作者利用广度优先搜索算法,计算与目标用户有交互的项目到与目标用户无交互项目的路径个数。由于冷启动项目相较于流行项目,更容易被采样作为负样本,此时的伪标签采样会影响模型的效果。因此对负样本的采样则是基于项目流行度的采样。此外,该文献中还引入了co-training 方法[35],以提升KGPL 优化过程的健壮性。

KGPL 通过引入伪标签和改进的负采样来解决样本标签不均衡问题,缓解了冷启动和数据稀疏问题。但是,引入标签平滑正则化,为模型带来了额外的计算成本。

2.3 引入知识图谱上下文的推荐

在图结构数据中,节点的邻居有阶数之分,其中一阶邻居最接近当前节点,所包含的信息也最重要,而高阶邻居虽远离当前节点,但包含的信息也不可忽略。图神经网络在捕获高阶信息的过程中,往往只是简单地进行信息聚合,容易导致过平滑问题,而在知识图谱中同样需要考虑这个问题,文献[36-37]通过引入知识图谱上下文的学习模块,来处理高阶邻居信息,在充分利用邻居信息的同时,避免使用图卷积网络带来的过平滑问题。

Yang 等人在文献[36]提出了引入知识图谱上下文(contextualized graph attention network,CGAT)模型。该模型主要包含局部图上下文、非局部图上下文和交互图上下文三个模块。根据用户特定的图注意力机制,获取实体的局部上下文信息,考虑用户对实体的个性化偏好,采用随机游走的方法提取实体的非局部上下文。E为实体集合,R为关系集合,D为实体-关系-实体三元组(h,r,t),h表示三元组的头部实体,r表示关系实体,t表示尾部实体。在学习项目的局部图上下文表示过程中,传递来自于项目实体直接相连的非项目实体信息,并引入注意力机制来区分这些非项目实体的重要性,计算方式见式(7)、式(8)所示:

在非局部图上下文表示的学习过程中,CGAT采用基于门控循环单元(gated recurrent unit,GRU)[38]模块的有偏随机游走方法,用于聚合实体的非局部上下文信息。首先在项目知识图谱上以一定的概率进行随机游走采样,得到高阶邻居节点,再进行Top-K排序获得游走过程中概率最大的几个节点。然后利用一个GRU单元对排序后的邻居序列进行处理,得到非局部图上下文表示,计算方式见式(9)、式(10)所示:

式中,ω是一个可学习参数,σ(*)是sigmoid函数,⊙是点积。在得到项目的知识图谱上下文嵌入表示后,模型通过在交互图传播项目节点信息,来学习用户的嵌入表示,并在该部分中引入特定的图形注意力机制,以区分不同历史交互项目对用户的重要性,捕获用户对实体的个性化偏好。CGAT 通过对知识图谱中的高阶邻居进行随机游走采样,更全面地捕获了知识图谱中所含的信息,一定程度上避免了采用图卷积带来的过平滑问题,取得了较好的推荐效果。

在MovieLens-1M、Book-Crossing、Last.FM 数据集上和其他模型的实验进行了比较,结果表明CGAT在不同数据集上都取得了较好的性能。如在HR@20 方面,CGAT优于CFKG、RippleNet、MKP、KGNN-LS和KGAT,分别为26.07%、21.32%、22.29%、21.92%和9.56%。这也说明CGAT在知识图谱上下文进行推荐的效果显著。

孙伟等人提出一种基于知识图谱上下文矩阵补全的图注意力编码器框架[37]。该框架中,为区分不同邻居的重要性,通过一个图注意力编码器来学习用户和项目的嵌入表示。之后,在项目知识图谱上对知识图谱上下文进行建模(同CGAT),并与项目的嵌入表示相融合,得到项目的最终嵌入表示。最后对用户嵌入表示和项目的最终嵌入表示,利用双线性解码器来预测用户对项目的交互。此模型在三个数据集上与其他基准进行实验,验证了该模型的可行性和优越性。但模型还可以进一步考虑采用不同的聚合方法,聚合用户相关历史项目和目标项目之间不同的偏好,结合上下文信息,并加入注意力机制,以提高推荐的精确度。

在上述对已有项目知识图谱增强的图神经网络推荐研究分析基础上,表1 从主要文献与内容、方法及优点等方面,对基于项目知识图谱增强的图神经网络推荐研究进行了小结。

表1 基于项目知识图谱的推荐研究小结Table 1 Summary of recommendation research based on project knowledge graph

3 基于协同知识图谱增强的图神经网络推荐研究

协同知识图谱(collaborative knowledge graph,CKG)[10]是指将用户-项目交互图与项目知识图谱相融合。在这一类模型中,实体不仅包含项目实体,还包含了用户实体。因此,不仅需要考虑项目嵌入表示的学习,也需要关注对用户嵌入表示的学习。已有基于协同知识图谱增强的图神经网络推荐研究主要包括引入注意力机制的推荐、引入路径信息的推荐以及引入其他方法(如多视图网络、自适应目标-行为关系图网络等)的推荐等几个方面。

3.1 引入注意力机制的推荐

在图结构数据中,不同邻居节点相对于当前节点的相关性是不同的,而在图卷积网络的聚合过程中,简单聚合来自邻居节点的信息并不能对不同邻居节点加以区分。将注意力机制引入到基于协同知识图谱增强的图神经网络推荐中,可以学习不同邻居节点的重要性,从而重点聚合来自相关性更高的邻居节点信息。文献[39-42]使用图注意力网络进行聚合更新,以在协同知识图谱上区分各节点之间的重要程度。

Wang 等人在文献[39]提出了一种知识图谱注意力网络(knowledge graph attention network,KGAT)。该模型以端到端方式建模了知识图谱中的高阶邻居,发掘高阶信息,增强用户与项目的交互来预测用户偏好的问题,递归地从邻居节点更新当前节点的表示,并在信息传播过程中引入注意力机制来区分不同邻居的权重。注意力嵌入传播层由信息传播、知识感知注意力、信息聚合三部分组成。其中,实体邻居et对头实体eh的注意力得分计算见式(12):

其中,α(h,r,t)为注意力得分,再进行归一化处理。对实体eh的高阶邻域信息定义为式(13):

对头实体et进行信息聚合更新后,再对多层图注意力网络得到的用户和项目实体嵌入表示进行拼接,作为用户和项目的最终嵌入表示。此外,KGAT还将各个实体和关系的嵌入表示进行了规范化,如式(14):

并将损失加入反向传播的优化任务中。模型基于Amazonbook、Last.FM 和Yelp2018 三个数据集与其他几个主流模型进行了对比实验,结果表明KGAT 在Recall 和NDCG指标上均优于其他模型。模型的整体结构如图2所示。

图2 KGAT整体框架图Fig.2 KGAT overall frame diagram

荣沛等人在文献[40]提出了基于知识图谱和图注意力网络的推荐算法(knowledge graph and graph attention network,KG-GAT)。该模型在预处理层中将用户、实体和关系嵌入到统一的低维向量空间中。然后在注意力嵌入层中,利用实体注意力机制学习不同近邻实体的权重,并利用语义注意力机制区分不同路径的重要性,避免不相关实体的信息。最后在预测层中预测用户-项目的交互概率。该模型的优点在于考虑运用了知识图谱中的关系,探索用户潜在偏好时存在的不相关实体问题,提高了推荐的准确性和可解释性。

基于GCN 的推荐大多数关注同构图或用户-物品二部图,未能充分利用异构图中实体间复杂而丰富的语义。Yang 等人在文献[41]提出了一种采用层次图注意力网络结合知识图谱的可解释推荐模型(hierarchical attention graph convolutional network incorporating knowledge graph for explainable recommendation,HAGERec)。该模型从高阶连接结构中挖掘用户的潜在偏好信息,设计了一种双向实体传播策略和分层注意力机制。首先,HAGERec 在消息传递过程中采用GCN 建模实体的局部结构,合并实体的邻居信息。为了充分挖掘多跳连接提高RS,设计一个扁平化操作,进一步使关系下的连接有序,更好地区分不同的连接。之后在实体传播过程,通过双向实体传播策略获得用户和项目的聚合表示。由于每个实体都有不同关系的邻居,为区分实体与邻居之间的不同关系,提出一种层次注意力机制,自适应地挖掘和调整每个用户-项目对之间的协作信号,并将其分为邻居级注意力和预测级注意力。再将每个邻居实体的注意力评分作为与中心实体之间的相似度,并对相似度低的邻居实体进行筛选。同时,对大小固定的相关邻居实体进行采样,从而节省计算和存储开销。

相比较以往的知识图谱推荐方法,HAGERec 利用了KG和GCN的优势缓解了稀疏性的问题,利用分层机制来采样邻居实体,通过高阶连通性实现了模型的可解释性。在4个公共数据集进行实验,验证了该模型的可行性和可解释性。

Qu 等人在文献[42]提出了一种知识增强的邻域交互模型(knowledge-enhanced neighborhood interaction,KNI)。该模型将用户-项目的交互扩展到它们的邻居,并引入知识图谱来增加局部联通性,提出一个统一的邻域交互(NI)模型。具体来说,模型使用一个双注意力网络直接对局部结构进行预测,而不是将它们压缩到用户-项目嵌入表示中,并利用图神经网络整合高阶邻域信息。最后,利用用户的邻域信息和项目的邻域信息进行预测。

该模型在4 个真实数据集上进行了评估,并与8 个基于特征、基于元路径和基于图的模型进行了对比实验。结果表明,KNI模型在预测点击率方面的AUC值,比其他几个主流模型提高1.1%~8.4%,在Top-N推荐方面也远超其他几个模型。

在推荐系统中加入注意力机制,可以有效地获取用户重点偏好,优化推荐模型。现阶段研究中融入注意力机制可以区分实体和其邻居实体的不同关系权重,更能突出用户的个性化偏好。注意力得分的引入反映了人类天生的注意力机制特点,使得推荐系统更加接近用户真实的思考过程。之后可以深入研究针对不同问题的更为高效的注意力机制,使用户-项目之间的关系权重更加细粒度化,以进一步提升推荐效果。

3.2 引入路径信息的推荐

现有处理知识图谱的方法大多是提取用户-项目链接对,或者在整个知识图谱上传播节点的特征,并没有考虑不同的路径信息。文献[43-44]考虑不同路径对节点特征学习的影响,以充分挖掘图结构信息,提升推荐效果。

Wang等人在文献[43]提出了KGIN(knowledge graphbased intent network)模型。该模型利用辅助的项目知识来探讨用户-项目交互背后的意图。首先,模型根据不同的路径为用户意图建模,如式(15)所示:

式中,α(r,p)是关系r的注意力得分,wrp是可训练的权重参数,每个关系r的嵌入都分配一个注意力得分以量化意图p中每个路径的重要性。对用户意图建模后,模型引入了独立性约束,以表达意图之间的显著差异,进而获得更好的可解释性。再对路径关系信息进行聚合,得到用户嵌入表示如式(16)所示:

其中,β(u,p)是意图p的注意力得分。对于给定的用户,不同的意图具有不同的动机激发用户的行为,故引入注意力得分来区分意图p的重要性。对项目的嵌入更新可表示如式(17)所示:

在l层之后,获得用户和项目不同层的表示,将路径的意图感知关系和知识图谱关系汇总为最终表示,再预测用户与该项目交互的可能性。文献在三个基准数据集上的实验结果表明,KGIN 取得了显著的效果。进一步的分析表明,KGIN通过识别意图和关系路径,在意图的粒度上揭示用户项目关系,关系路径感知聚合中集成了来自多跳路径的关系信息以细化表示,为推荐结果提供了有效性和可解释性。

大多数的KG 用于推荐系统中的主要思路集中于两种方法:一是集中于用户和项目之间的线性路径联系,但不能够有效地挖掘整个KG的语义信息和拓扑结构信息。二是通过传递用户的偏好,再得到用户的嵌入表示,传播的过程反而容易引入噪音。因此,Sha 等人在文献[44]提出了AKGE(attentive knowledge graph embedding)模型。该模型特点在于同时关注知识图谱对应的语义信息和拓扑信息。设计了一种距离感知路径采样策略,对于给定的两个实体,仅保留最后的K条最短路径,并进行路径装配构建子图。随后,在构建的子图上,将图中各个实体的嵌入和其对应的类型嵌入进行拼接,利用关系感知传播计算邻居实体的临时隐藏状态,再通过注意力机制将上一步得到的邻居实体进行加权聚合,运用门控机制更新实体信息。最后,通过一个多层感知机(multi-layer perceptron,MLP)预测用户是否会对项目进行交互。模型的优点是在构造的特定子图上进行传播,能更有效地构建子图,以及提取有效的、高质量的交互信息,缓解了基于整个知识图谱的传播而容易引起的噪声问题。最后通过MovieLens-1M、Last.FM、Yelp三个真实数据集上的实验,评估了AKGE模型的性能,表明AKGE明显优于其他主流模型。

引入路径信息的推荐,充分运用了知识图谱中的结构信息,以及用户和项目之间的多种关系,增加推荐的可行性。

3.3 引入其他方法的推荐

Tai 等人在文献[45]提出了一种多视图网络(multiview item network,MVIN)。该模型包含用户-实体和实体-实体交互模块。为了丰富用户-实体交互,模型首先学习基于知识图谱增强的用户表示,用户-实体交互模块对每个实体的关系和信息的重要性进行了描述。为了细化实体-实体交互,提出了一个混合层来进一步改进图卷积网络聚合实体嵌入的方式,并允许MVIN从各种层级邻域特征中捕获聚合更新后信息。此外,为了保持计算效率和使用整个邻域的信息,还采用了分阶段训练策略[46]和采样策略[30,47],以更好地利用知识图谱中的信息。最后评估了MVIN模型在MovieLens-1M、LFM-1b、Amazon-book三个真实数据集上的性能,结果表明,对于点击率(click through rate,CTR)预测和Top-N推荐,MVIN的性能明显优于其他主流模型。

现有与知识图谱结合的推荐方法中考虑项目之间的连接性的同时,不能捕获用户项目之间显式的长期语义。因此,Lyu 等人在文献[48]提出了一种既捕获用户和项目之间的显式长范围语义信息,又考虑项目之间各种连接性的推荐模型(rule learning and graph neural networks for recommendation,RGRec)。该模型结合了规则学习和图神经网络进行推荐,首先将项目映射到知识图谱中的相应实体,并将用户添加为新实体。然后,自动学习规则,捕获长范围语义信息,并通过聚合捕获实体之间的连通性,更好地编码各种信息。RGRec提出了利用知识图谱嵌入进行规则过滤的策略,这是一种更精确的方法计算规则的置信度,还可以运用规则学习对规则权重进行预训练。最后在三个真实的数据集上进行实验,RGRec 模型较于KGCN、KGAT、RKGE 模型分别获得2.8%~11.9%(Last.FM),1.9%~20.1%(MovieLens-1M),3.7%~13.8%(Dianping-Food)的性能提升,验证了RGRec 的有效性,与只使用其中某一种方法相比,规则学习和GNN的结合,使推荐性能取得了实质性的改进。

为充分提取知识图谱中隐含的结构信息,并考虑目标用户和项目在嵌入传播过程中的相互影响,Feng等人在文献[49]提出了一种自适应目标-行为关系图网络模型(adaptive target-behavior relational graph network,ATBRG)。该模型为了自适应地提取知识图谱中目标用户-项目对的有效关系子图,提出了图连接和图剪枝技术。首先,分别对目标项目和用户历史交互项目在知识图谱上的多阶邻居进行探索。在这些实体集中,对出现在多个实体集中的实体进行连接,对只属于一个实体集的实体进行修剪。然后,构建自适应的目标-行为关系图,用来描述用户行为和目标项目之间的结构关系。模型考虑了知识图谱的结构关系,设计了基于注意力机制的关系感知提取层,对每个用户行为和目标项目的关系图进行结构化知识聚合。在两个真实世界的数据集上进行了实验,证明了ATBRG有效性。

在知识图谱中,项目的众多属性导致具有大量的邻居实体,若聚合邻域中的所有实体节点的信息则不仅带来信息的过平滑问题,也会使计算成本增加。一种普遍的解决方式是对邻域中的邻居进行随机采样,只聚合一部分邻居节点信息。然而这种随机无差别的采样方式,并不能很好地区分不同邻居节点的重要性,可能会丢失关键邻居的信息。针对这一问题,梁顺攀等人在文献[50]提出了一种基于关系紧密度的重要性采样方法。该方法通过计算目标节点与邻居节点的关系紧密度,来采样更重要的邻居,以避免无差别采样的随机性,同时引入池化层训练,得到不同邻居节点对目标节点的差异化权值。该文献提出的推荐算法在五个真实数据集上进行评估,对比其他基于知识图的推荐算法,在AUC和召回率指标均有提升。

在对已有协同知识图谱增强的图神经网络推荐相关研究进行分析的基础上,表2 从主要文献与内容、方法及优点等方面对基于协同知识图谱增强的图神经网络推荐研究进行了小结。

表2 基于协同知识图谱推荐研究小结Table 2 Summary of recommendation based on collaborative knowledge graph

从表2可以看出,基于项目知识图谱增强分为引入关系感知、引入标签优化和引入知识图谱上下文的推荐,可以有效缓解数据稀疏性和冷启动问题,利用邻居信息获得更加细致的特征表示,但同时存在模型单一、算法复杂性高等问题。基于协同过滤知识图谱增强分为引入注意力机制、引入路径信息和引入其他方法的推荐,其优点在于区分不同邻居节点的重要性,充分挖掘图结构信息,提升模型性能,但算法的复杂度高,难以为用户推荐多样的兴趣项目。

4 知识图谱增强的图神经网络推荐研究存在的主要问题

4.1 大规模动态知识图谱处理问题

现实生活中,知识图谱会随着时间的推移不断变化,图谱中新的关系不断出现,旧的关系不断失效。文献[51]通过设计不同时间步长的动态图,来学习节点的嵌入表示,但其考虑的仅是小规模知识图谱。随着时间及求解问题复杂性的增加,知识图谱规模也会变得很大,现有研究很少考虑到这种大规模、动态知识图谱情形。尽管对大规模知识图谱可使用各种采样策略,但这可能导致模型的适应性较差,学习效果降低,进而影响模型最终的推荐性能。同时,处理动态、大规模知识图谱也使得模型的复杂度增高,而且多数模型需要堆叠多层图卷积运算,即便引入注意力机制,也为模型带来了大量的待学习参数,使得训练成本增大。

4.2 用户对项目属性偏好挖掘问题

将知识图谱运用于个性化推荐的相关研究中,一定程度上提高了推荐结果的可解释性,即用户与某个项目产生交互的原因,可能是用户喜欢该项目的某个或某些属性。但已有推荐模型只是简单地通过关系,聚合来自属性节点的信息,并没有考虑到用户对项目属性的偏好随着时间而变化,也存在用户的长短期兴趣变化问题。如文献[52]探讨了图神经网络推荐中用户的长短期兴趣,但仅局限于在用户-项目交互图上用户对项目的偏好,并没有考虑到在知识图谱上用户对项目属性的长短期偏好。

4.3 用户知识图谱处理问题

推荐模型需要有一定的用户-项目历史交互数据,对于一个新用户或项目而言,其交互数据较少,很难学习其偏好特征,这就使得模型容易面临冷启动问题。本文所探讨的知识图谱增强的图神经网络推荐研究中一般是对项目构建知识图谱,或是将用户节点加入构建协同知识图谱,主要运用项目的属性信息来缓解项目冷启动问题,而较少涉及到对用户知识图谱的处理,模型仍然容易面临用户冷启动问题。文献[33]通过引入社交网络对部分新用户建模,但社交关系仅为相似用户间的一种辅助信息,难以从中较好地学习用户对项目或项目属性的偏好信息,关键还是在于需要引入用户知识图谱并对其进行处理。

4.4 知识图谱的图嵌入学习问题

知识图谱嵌入是将实体和关系嵌入到低维向量空间,同时保留知识图谱的结构和语义信息。在知识图谱嵌入学习中,不同的模型从不同的角度把相应的语义信息嵌入知识图谱的向量表示中。在各种嵌入方法中,针对不同实体应用不同的向量表示,不同的关系也应拥有不同的语义空间,因此在处理复杂关系上存在一定问题。在实体和关系的交互过程中,可以融入附加信息来进一步改进任务,比如关系路径。如果使用大量路径来提高模型的性能,那么对模型的复杂度也是个严峻的挑战。在融入附加信息过程中,由于增加了节点的属性特征,需要考虑节点的异质性和多模态性,从而需要用合适的嵌入方法进行学习。

5 知识图谱增强的图神经网络推荐的主要研究方向

5.1 动态时序知识图谱增强的GNN推荐

为增加模型的适应性,同时也为更好地全面获取整个演化过程和捕获所有动态知识,在引入知识图谱数据的同时加入时间维度信息,利用时序分析技术和图深度学习技术,在动态过程中能准确地捕捉节点和边的所有变化的动态性,分析知识图谱结构随时间的变化和发展趋势,从而有效获取图谱中的关键信息,对提升知识图谱增强的GNN推荐性能具有重要意义。但利用动态时序信息也意味着模型复杂度的增高,最重要的是时序信息的处理方式。因此,如何处理这种动态时序知识图谱来增强图神经网络推荐是未来研究的一个重要方向。

5.2 基于元学习的知识图谱增强GNN推荐

元学习[53]又被称为“学会学习”(learn to learn)或“学习如何学习”。元学习主要思想是通过以前任务中学习的先验知识,来指导新场景任务的学习,以此达到自主学习的目的。文献[54]提出了一个元关系学习框架(meta relational learning,MetaR),融合了元学习和知识图谱嵌入的方法,通过转移特定元信息,从而解决知识图谱少样本连接预测的问题,元学习同样也是解决深度学习系统中样本缺乏问题的重要框架.如果将元学习思想融入知识图谱增强的图神经网络推荐研究中,可以通过新项目的少量示例样本,实现较为复杂知识图谱表示学习和有效的知识获取,进而完成高效的GNN 推荐任务,对提高已有推荐模型学习的泛化性、降低模型的训练成本具有一定的现实意义。

5.3 多模态知识图谱增强的GNN推荐

现有知识图谱增强的GNN 推荐模型中,构建知识图谱所用的信息均是项目的一些属性,并没有考虑图像、音频、视频等数据。多模态知识图谱则是在传统知识图谱中构建了多种模态,不同模态包含同一对象不同方面的知识,对于项目可能包含了丰富的图片信息、结构化的属性描述和图谱数据以及文本信息描述,可以从中抽取有利的信息补全知识图谱。同样,知识图谱的融入也可以增强多模态数据处理的能力,增强多模态学习模型的可解释性。如何利用这种不同模态数据,实现多模态知识图谱[55]的构建,以提升知识图谱增强的图神经网络推荐效果,也将是未来本领域一个重要的研究方向。

5.4 知识图谱增强的GNN跨领域推荐

已有知识图谱增强的图神经网络推荐研究,大多集中在单个领域内,常常面临数据稀疏性和冷启动等问题,并且仅限于向目标用户推荐单个领域内的项目,并不能实现真正意义上的个性化。研究基于知识图谱增强的GNN跨领域推荐,通过分析各领域的关系数据,探索关系对用户自身行为的相关性,找到相关的关系数据来表征自身。解决不同领域的异构性和数据不平衡性,将不同领域的知识、信息融合到一起的问题,来实现多个领域内信息共享,互为补充,使得知识图谱内容更加丰富,可以在一定程度上缓解推荐过程中的数据稀疏性和冷启动问题。

6 结束语

随着人工智能和推荐技术的发展,越来越多的学者开始关注知识图谱增强的图神经网络推荐。知识图谱拥有丰富的辅助信息,图神经网络在处理图结构数据方面具有天然的优势,基于知识图谱的图神经网络推荐,不仅有助于提升推荐模型的性能,还有助于缓解数据稀疏性和冷启动等问题。本文从项目知识图谱增强和协同知识图谱增强两个视角,对知识图谱增强的图神经网络推荐研究进行了深入探讨,分析了不同研究模型的特点,指出了现有知识图谱增强的图神经网络推荐研究在大规模动态知识图谱处理、用户对项目属性偏好挖掘等方面存在的问题。最后,对知识图谱增强的图神经网络推荐未来主要研究方向,如动态时序知识图谱增强的GNN推荐、基于元学习的知识图谱增强GNN推荐等进行了展望。希望本文能对基于知识图谱及其图神经网络的个性化推荐系统研究提供一定的借鉴作用。

猜你喜欢
图谱注意力实体
让注意力“飞”回来
绘一张成长图谱
前海自贸区:金融服务实体
实体的可感部分与实体——兼论亚里士多德分析实体的两种模式
“扬眼”APP:让注意力“变现”
补肾强身片UPLC指纹图谱
两会进行时:紧扣实体经济“钉钉子”
振兴实体经济地方如何“钉钉子”
A Beautiful Way Of Looking At Things
主动对接你思维的知识图谱