李晶晶 赵勤
摘 要: 提出了一种基于知识图谱(KG)的用户多偏好(MPKG)推荐系统,从用户关系级、实体级和细粒度高阶用户三种不同的视角建模用户的偏好. 首先,将KG中关系向量组合,构建关系级意图,并通过独立性将不同意图之间的差异最大化,由关系级意图来指导学习关系级偏好;然后,根据用户交互实体的频率构建实体偏好图(EPG),并学习用户的实体级偏好;接着,分别使用关系级意图和实体级偏好来指导模型学习用户的表示;此外,还直接从KG中构建关系实体信息流,用于用户的表示,挖掘用户的高阶细粒度偏好. 在两个基准数据集上进行实验,实验结果验证了该方法的有效性和可行性.
关键词: 推荐算法; 深度学习; 知识图谱(KG); 图神经网络(GNN)
中图分类号: TP 391 文献标志码: A 文章编号: 1000-5137(2024)02-0195-10
A user multi-preference recommendation system based on knowledge graph
LI Jingjing1, ZHAO Qin1,2*
(1. College of Information, Mechanical and Electrical Engineering, Shanghai Normal University,Shanghai 201418,China; 2. Shanghai Engineering Research Center of Intelligent Education and Bigdata, Shanghai Normal University,Shanghai 200234,China)
Abstract: A user multi-preference recommendation system based on knowledge graph (KG) was proposed in this paper, by which user preferences from three different perspectives: user relationship level, entity level, and fine-grained high-order user were modeled. Firstly, the relationship vectors in KG were combined to construct relationship level intentions, and the differences between different intentions were maximized through independence. Relationship level intentions were guided to learn relationship level preferences. Secondly, an entity preference graph(EPG) based on the frequency of user interaction with entities was constructed, and the users entity level preferences were learned. Thirdly, relationship level intent and entity level preference were performed to guide the learning of user representations, respectively. In addition, the relationship entity information flow was directly constructed from KG for user representation and mining of high-order fine-grained preferences. Experiments were conducted on two benchmark datasets, which verified the effectiveness and feasibility of this method.
Key words: recommendation algorithm; deep learning; knowledge graph (KG); graph neural network(GNN)
知识图谱(KG)与推荐系统融合的核心是如何将KG中的异质信息有效地整合到用户和物品的潜在向量表示中. 基于KG的推荐系统可以大致分为三种类型:基于嵌入的、基于路径的和基于传播的. 基于嵌入的方法使用不同的KG嵌入(KGE)模型,如TransE[1]和TransH[2]來预先训练实体嵌入模型,然后将学习到的实体和关系嵌入模型合并到推荐系统中. 然而,由于独立处理项目与实体的关系,这些方法无法捕捉实体之间的高阶关系. 基于路径的方法使用KG中实体之间的多种连接模式来指导推荐过程,例如,在KG上选择突出的路径[3-4]或定义元路径模式来约束路径[5-6]. 然而,基于路径的算法在很大程度上依赖于人工设计的元路径,缺乏灵活性和可扩展性. 基于传播的算法使用信息聚合的范式,将多跳邻居整合到节点的表示中[7-10],然后使用用户和物品的节点表示预测用户对物品的偏好程度. 因为可以学习图结构中的高阶信息,这些方法具备良好的性能,并成为基于KG推荐系统的主导方法.
基于知识图谱的意向网络(KGIN)模型[11]通过对用户-项目交互的细粒度意图进行建模来增强推荐效果. 然而,该模型对用户意图的构建是粗粒度的,对用户偏好的建模仅限于关系级别,忽略了实体级别的用户偏好. 在实际情况下,用户在选择物品时,往往受到物品实体的影响,仅依赖关系级别的偏好建立的模型不够精细,可能会影响用户和物品表示的质量.
本文作者提出了一种基于KG的用户多偏好(MPKG)推荐系统. MPKG推荐系统从关系级、实体级和细粒度高阶三种不同的视角对用户的偏好进行建模. 对于关系级用户偏好,通过关系级意图来刻画,将用户的不同意图表示为KG中关系向量的组合,并通过独立性将不同意图之间的差异最大化;对于实体级偏好,从用户的交互历史实体集中提取出其最感兴趣的实体,用于对用户的实体级偏好进行建模,并构建用户的实体偏好图(EPG),用户的实体级偏好由EPG唯一表示;对于细粒度高阶用户偏好,直接构建关系-实体的联系,用于用户的表示. 综上所述,MPKG推荐系统通过对用户的三种偏好进行建模,可以较为全面地挖掘用户的偏好信息,从而实现较为准确的推荐功能.
1 问题公式化定义
假设一个典型的推荐场景中,和分别表示个用户和个项目的集合. 根据用户的隐性反馈,构建用户和物品的交互矩阵,该矩阵是根据用户的隐性反馈构建的,其中,代表用户与物品有交互;否则,.
KG由一个三元组组成,其中,代表头实体,代表尾实体,代表和之間的关系,代表实体的集合,代表实体间关系的集合. 在推荐系统中,每个项目都可以与KG中的一个实体相匹配. 通过项目和实体之间的映射(?),KG可以描述项目,并为交互数据提供额外的信息. 本研究的目标是学习一个预测用户与项目交互可能性的函数.
2 基于KG的用户多偏好推荐系统
如图1所示,本研究模型整体上由4个模块构成:关系级意图建模、实体级偏好建模、项目和用户表示学习、预测与优化. 将用户的关系级意图建模为KG中关系的组合,并通过独立性建模使每个意图表示的语义互不相同. 根据用户交互实体的频率,构建EPG,唯一表示用户的实体级偏好. 通过关系感知注意力机制学习项目的表示,分别通过用户的关系级意图和实体级偏好指导模型学习用户的表示. 直接构建高阶的关系-实体偏好信息,用于用户的表示,反映用户对特定关系和实体的细粒度高阶偏好. 联合三种用户偏好表示进行预测评分,并实现优化.
2.1 关系级意图建模
意图是用户选择项目的原因,是关系的复杂组合,但又不包含所有的关系,反映了所有用户行为的共性. 通过对用户的意图进行建模,可以以较高的细粒度体现用户的交互关系,从而挖掘出更丰富的信息. MPKG推荐系统将每种兴趣与一个KG关系相结合,仅考虑单个关系,并没有考虑关系之间的交互和组合,难以捕捉详细的用户兴趣. 因此,可以利用KG关系的分布来分配每个意图,可用注意力机制来创建意图的嵌入,
, (1)
其中,是對应关系的嵌入;是注意力分数,以量化的重要性,
, (2)
其中,是代表指定关系和意图的可训练权重;r'表示与r相邻的KG关系.
此外,不同意图之间应该是相互独立的,如果一个意图可以被其他意图表示出来,那么这个意图可能是多余的,同时提供的信息量也较少. 因此,引入距离相关的独立性模块来评估意图之间的关联程度:
, (3)
其中,是两个意图表示的距离协方差;是每个意图表示的距离方差.为0时,是相互独立的. 通过最小化不同意图之间的相关性系数,可以减少冗余性,使每个意图向量都能够反映用户不同方面的偏好信息.
2.2 实体级偏好建模
用户的偏好除了与KG中的关系有关外,还与实体相关. 用户在选择物品时会受到物品的属性驱动,仅建立在关系级上的偏好不够精确,进而影响用户和物品表示的质量. 如果一个实体与用户喜欢的物品存在多次关联,那么用户有可能对该实体感兴趣并进行交互. 因此,可以通过分析实体与用户交互物品之间的连接数,来了解其实体级偏好. 为每个用户构建一个基于实体的用户偏好图,如图2所示. 确定用户与实体的互动频率,按照频率排序,并选择前个互动频率最高的实体构建用户的EPG,其中,是一个超参数. 图2中,用户与互动的频率最高,为3次. 因此,在用户EPG中排名第一. 實体级偏好推断方法如下:
(4)
其中,是用户的实体级偏好是由EPG得到的频率参数;是判断实体对用户偏好影响的注意力得分,
. (5)
注意力权重
, (6)
其中,是连接操作;,,是权重参数. 由式(6)可知,参数越大,与相关的实体对用户偏好的影响越大.
2.3 项目和用户表示学习
2.3.1 关系感知的项目表示学习
从KG的结构信息中学习高质量的项目表示可以帮助提升推荐系统的准确性. KG中存在大量的三元组,由于一个实体可能存在于多个KG三元组,可以通过整合相邻节点的信息来获取每个项目节点的特征. 在聚合过程中,由于不同的属性节点对项目的表示具有不同的重要性,采用关系感知的图注意力网络来聚合邻居节点的表示. 对于某个特定的项目,用来表示项目的属性和一阶联通性,然后集成来自相邻实体的关系感知信息,生成的表示
, (7)
其中,和分别表示物品和实体的表示是i与v之間的关系是一个判断实体对项目影响的注意力分数;是元素积运算符;
, (8)
其中,表示项目的相邻实体集合,将所有层的表示相加,得到项目表示
. (9)
2.3.2 具有偏好感知的用户表示学习
2.3.2.1 关系级意图感知的用户表示学习
在对用户关系级意图表示建模之后,需要使用意图指导用户表示的学习过程. 参考协同过滤推荐原则,相似意图的用户对项目表现出相似的偏好.
假设表示意图分布和其周围的一阶邻域项目. 通过整合意图分布和其周围的一阶邻域项目,可以将用户u和项目i分别表示为:
, (10)
, (11)
其中,和是用户和项目的表示;是用户意图的集合,不同的意图将导致用户产生不同的行为;是注意力机制,用于权衡用户在不同意图上的兴趣. 然后,将所有层的表征汇总,得到用户总的表征
. (12)
2.3.2.2 实体级偏好感知的用户表示学习
在隐式反馈中,用户缺乏对物品的准确评分,导致在学习用户表示时,无法为项目分配合适的权重,使得用户表示受到噪声交互物品的影响. 考虑到用户在选择物品时会受到实体的驱动,使用用户的实体偏好来指导用户的实体偏好表征的学习. 如果用户的偏好和项目之间有很强的相似性,那么用户就可能对项目的某些属性感兴趣,反之亦然. 依据用户历史交互项目执行偏好感知聚合机制,得到用户的表示:
(13)
, (14)
其中,是用戶的表示是用户的实体级偏好;表示用户交互历史的项目集合;表示项目和用户之间的权重. 然后,将所有层的表示相加,得到用户实体级的偏好表示
. (15)
2.3.2.3 细粒度高阶用户偏好表示学习
通过意图只能识别特定关系的组合,而用户喜欢一件物品的原因是复杂的,特定关系的组合并不能完全表示用户的偏好. 另外,用户对意图中的关系态度也是复杂的,可能只是因为部分关系而与项目形成交互,甚至同一个意图中,用户对不同关系连接的实体会出现相反的态度. 为了解决这些问题,从用户到KG直接构建关系-实体的信息流,一方面可以避免引入过多噪声的情况,另一方面可以更细化对用户偏好的建模,用户偏好被建模为特定关系和实体的组合. 考虑到不同交互项目的贡献不同,将用户-项目交互权重重新分配给每个连接的关系和实体:
(16)
其中,表示用户交互的关系实体集合,是用户通过项目到达关系和的路徑的权值函数,包括用户项目路径和项目关系实体路径. 形式上,可以扩展为
(17)
其中,表示投影矩阵. 为了使每个元路径得分相互依赖并量化其重要性,对所有元路径的系数进行归一化处理:
, (18)
其中和是用户的邻居项集合和项目的邻居实体集合. 结合KG,从各种路径中收集关系实体信息,进一步反映用户的特定属性偏好. 通过将KG中用户-项目交互上的协作信号与路径依赖关系相结合,进一步表达了用户的潜在兴趣和内在偏好. 将所有层的表示相加,得到用户实体级的偏好表示
. (19)
2.4 模型预测与优化
2.4.1 模型预测
为了区分不同偏好表示的重要性,通过注意力机制聚合三种用户表示:
, (20)
(21)
其中和是权重参数.通过内积来计算用户交互项目的预测得分
(22)
2.4.2 模型优化
选择成对的贝叶斯个性化排序(BPR)算法[8]来重建历史数据.对于一个给定的用户,相比未观察到的项目,其历史项目应该被分配更高的预测得分
, (23)
其中,是由交互数据集和未交互数据集组成的训练数据集;是Sigmoid函数. 通过结合独立性和BPR损失函数,最小化目标函数来学习模型参数,
(24)
其中,是模型参数的集合;和是兩个超参数,分别用于调整独立性损失和正则化项.
3 实验与分析
3.1 实验设置
3.1.1 数据集
为了评估MPKG的性能,在三个数据集上进行实验:Last.FM,Book-Crossing和MovieLens-1M. 这些数据集来自不同的社区,包括音乐、图书和电影推荐. 此外,这些数据集在规模和稀疏度上都不相同,使实验结论更具说服力.
3.1.2 对比模型
为验证MPKG模型的有效性,将MPKG与以下模型进行对比:
BPRMF[12],使用成对矩阵分解法从隐性反馈中进行物品推荐,并通过BPR算法进行优化;
CKE[1],通过KG提取物品的结构、文本和视觉信息,以增强物品的代表性;
PER[7],将KG视为异质信息网络,并沿着特定类型的元路径提取潜在特征,以表示用户和物品之间的连接;
RippleNet[9],在KG中传播用户的潜在偏好,以丰富用户的表示;
KGCN[13],通过有选择地聚合邻域信息,将图卷积网络(GCN)扩展到KG,从而学习KG中实体之间的高阶关联信息,以及用户的个性化和潜在兴趣;
KGNN-LS[14],通过传播和聚合相邻实体来计算用户特定的项目嵌入,并使用标签平滑来规范边缘权重,以防止过拟合;
KGAT[15],将用户-项目协作图和KG结合成协作KG,并使用图注意网络来学习用户表示和项目表示;
CKAN[16],结合协作信号和知识关联来传播用户对KG的潜在兴趣,并使用知识意识的关注机制来判断邻居的重要性;
KGIN[11],在用户意图的粒度上解开用户-项目交互,通过KG中的关系组合来表示意图,并在用户意图-实体图上构建GNN.
3.1.3 实验参数
在PyTorch框架下实现了MPKG模型的功能. 使用Adam[17]作为优化器,并使用Xavier[18]工具来初始化模型参数. 嵌入大小设置为64,batch大小为1 024. 学习率分别为,,,约束系数,为~1. 使用Area Under Curve(AUC),F1和Recall@K作为评估指标.
3.2 对比实验
表2和图3展示了MPKG和其他9种模型在三个实验数据集上的实验结果,得出以下结论.
(1) 在其他9种模型中,KGIN模型体现了优越的性能,说明对用户偏好进行建模和传播高阶信息有助于提高模型的精度. 然而,KGIN只对用户的关系级偏好进行建模,而本研究的MPKG模型从多个角度挖掘用户的偏好,可以更全面地建模用户信息,通过多跳传播,可以取得更好的性能. 具體而言,MPKG模型相对于其他9种模型的最佳表现:AUC指标分别提高了2.34%,1.95%和1.31%;F1值分别增加了3.07%,0.32%和1.57%.
(2) 大多数基于KG的方法都优于无KG的方法. 这一结果表明,使用KG可以为推荐提供额外的指导信息,这有助于提高推荐的性能. 此外,所有模型在Book-Crossing数据集上的表现比其他两个数据集差. 这可能是因为Book-Crossing数据集的平均交互次数比其他数据集少,没有足够的交互数据让推荐模型学习用户的兴趣. 在Book-Crossing数据集上,所提模型表现良好,也证明了从多个角度获取用户偏好信息的方式有助于缓解数据的稀疏性.
(3) 基于GNN的方法表现出优越的性能. GNN通过多跳传播策略,利用邻居节点的信息来学习每个节点的表示,可以捕捉到KG中的高阶关系,丰富节点表示. GNN具有很强的图学习能力,通过聚合局部和全局信息,可以有效提高模型的性能.
3.3 参数研究
3.3.1 GNN的层数
如表2所示,为了研究传播深度对模型性能的影响,将GNN的层数L从1依次递增到4进行实验. 观察到,对于三个数据集,当L={2,2,2}时,模型的性能最好. 这表明2层的传播距离足以聚合足够的邻居信息或远程知识. 当传播距离过大时,模型将聚合过多的不相关知识,产生过平滑问题,并引入无关的噪声,导致模型性能下降.
3.3.2 关系级意图的数量
分别选取1,4,8,12及16作为关系级意图的数量,并在Last.FM和Book-Crossing两个数据集上进行了AUC指标评价实验,结果如图4所示. 随着意图数的增加,模型在两个数据集上的性能都呈现先上升后下降的态势. 当意图数量为8时,模型达到了最佳效果,这可能是因为少量的意图无法准确地对用户偏好信息进行建模,但引入过多的意图会导致过擬合,无法获取有用的信息,进而降低了模型的性能.
3.3.3 实体级偏好中实体的数量
分别选取4,8,12,16和20作为实体的数量来研究其对模型性能的影响,结果如图5所示,可以得出:在数据集Last.FM和Book-Crossing上,模型的性能随着实体的数量先增长后下降. 当实体数量为12和8时,模型的性能较优,这可能是因为当实体数量较少时,用户喜欢的实体可能没有包含在意图中;当实体数量过大时,可能会引入过多的噪声,降低模型的性能.
3.4 消融实验
在本研究模型基础上,分别删除关系级意图、实体级偏好及细粒度高阶偏好模块,再与本研究的MPKG模型进行比较实验,来验证模型中主要组件对最终性能的贡献,结果如表3所示.
通过实验可以得到以下的结论:(1) 删除关系级意图、实体级偏好和细粒度高阶偏好模块都会降低MPKG模型的性能,说明加入用户的三种偏好信息,能增强用户和项目表示,提升模型的推荐性能. (2) 删除细粒度高阶偏好模块的模型性能下降最多,这表明构建从用户到关系-项目的元路径可以让用户从KG中特定的关系-实体组合中识别协作信号,从而提升模型性能.
4 结语
本文作者提出了MPKG模型,通过对用户的关系级、实体和细粒度高阶偏好进行建模,全面挖掘了用户的偏好信息. 通过关系的组合,建立了用户的关系级意图,并通过独立性建模,使每个意图表示的语义互不相同. 根据用户交互实体的频率构建了用户对实体偏好的权重,并在实体层次上表示用户的偏好. 分别使用关系级意图和实体级偏好来指导模型对用户表示的学习过程. 对于细粒度高阶偏好,直接从KG中构建了关系实体信息,用于用户的表示. 仿真实验证明了该方法的优越性.
参考文献:
[1] ZHANG F Z, YUAN N J, LIAN D F, et al. Collaborative knowledge base embedding for recommender systems [C]//Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining.San Francisco: ACM, 2016:353-362.
[2] CAO Y X, WANG X, HE X N, et al. Unifying knowledge graph learning and recommendation: towards a better understanding of user preferences [C]// The World Wide Web Conference. San Francisco: ACM, 2019:151-161.
[3] WANG H W, ZHANG F Z, XIE X, et al. DKN: deep knowledge-aware network for news recommendation [C]//Proceedings of the 2018 World Wide Web Conference. Geneva: ACM, 2018:1835-1844.
[4] JI G L, HE S Z, XU L H, et al. Knowledge graph embedding via dynamic mapping matrix [C]// Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing. Beijing: ACL, 2015:687-696.
[5] WANG H W, ZHANG F Z, ZHAO M, et al. Multi-task feature learning for knowledge graph enhanced recommendation [C]// The World Wide Web Conference. San Francisco: ACM, 2019:2000-2010.
[6] YU X, REN X, SUN Y Z, et al. Personalized entity recommendation: a heterogeneous information network approach [C]// Proceedings of the 7th ACM International Conference on Web Search and Data Mining. New York: ACM, 2014:283-292.
[7] SHI C, HU B B, ZHAO W X, et al. Heterogeneous information network embedding for recommendation [J]. IEEE Transactions on Knowledge and Data Engineering, 2018,31(2):357-370.
[8] ZHAO H, YAO Q M, LI J D, et al. Meta-graph based recommendation fusion over heterogeneous information networks [C]// Proceedings of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. Halifax: ACM, 2017:635-644.
[9] WANG H W, ZHANG F Z, WANG J L, et al. Ripplenet: propagating user preferences on the knowledge graph for recommender systems [C]// Proceedings of the 27th ACM International Conference on Information and Knowledge Management. Torino:ACM, 2018:417-426.
[10] WU J C, WANG X, FENG F L, et al. Self-supervised graph learning for recommendation [C]// Proceedings of the 44th International ACM SIGIR Conference on Research and Development in Information Retrieval. New York: ACM, 2021: 726-735.
[11] WANG X, HUANG T L, WANG D X, et al. Learning intents behind interactions with knowledge graph for recommendation [C]// Proceedings of the Web Conference 2021. Ljubljana: ACM, 2021:878-887.
[12] RENDLE S, FREUDENTHALER C, GANTNER Z, et al. BPR: Bayesian personalized ranking from implicit feedback [C]// Proceedings of the Twenty-Fifth Conference on Uncertainty in Artificial Intelligence.Virginia: ACM, 2012:452-461.
[13] WANG H W, ZHAO M, XIE X, et al. Knowledge graph convolutional networks for recommender systems [C]// The World Wide Web Conference. San Francisco: ACM, 2019:3307-3313.
[14] WANG H W, ZHANG F Z, ZHANG M D, et al. Knowledge-aware graph neural networks with label smoothness regularization for recommender systems [C]// Proceedings of the 25th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. Washington D. C.: ACM, 2019:968-977.
[15] WANG X, HE X N, CAO Y X, et al. Kgat: knowledge graph attention network for recommendation [C]// Proceedings of the 25th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining.Washington D. C.: ACM, 2019: 950-958.
[16] WANG Z, LIN G Y, TAN H B, et al. CKAN: collaborative knowledge-aware attentive network for recommender systems [C]// Proceedings of the 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval. New York: ACM, 2020:219-228.
[17] KINGMA D P, BA J. Adam: a method for stochastic optimization [J/OL]. arXiv: 1412.6980, 2014 [2023-10-10]. https: //arxiv.org/abs/1412.6980.
[18] GLOROT X, BENGIO Y. Understanding the difficulty of training deep feedforward neural networks [C]// Proceedings of the 13th International Conference on Artificial Intelligence and Statistics. New York: ACM, 2010:249-256.
(責任编辑:包震宇,顾浩然)
DOI: 10.3969/J.ISSN.1000-5137.2024.02.008
收稿日期: 2023-12-25
作者简介: 李晶晶(1996—), 男, 硕士研究生, 主要从事推荐系统方面的研究. E-mail: 703899630@qq.com
* 通信作者: 赵勤(1982—), 男, 副教授, 主要从事数据挖掘、社交网络分析、推荐系统和人工智能应用方面的研究. E-mail: q_zhao@shnu.edu.cn
引用格式: 李晶晶, 赵勤. 一种基于知识图谱的用户多偏好推荐系统 [J]. 上海师范大学学报 (自然科学版中英文), 2024,53(2):195?204.
Citation format: LI J J, ZHAO Q. A user multi-preference recommendation system based on knowledge graph [J]. Journal of Shanghai Normal University (Natural Sciences), 2024,53(2):195?204.