本发明涉及数据处理领域,特别是涉及一种双视图增强知识对比学习推荐方法、系统及电子设备。
背景技术:
1、在信息爆炸的时代,推荐系统作为缓解信息过载问题的有效手段应运而生,其目的是尽可能准确地推荐用户喜欢的内容。在各种推荐方法中,协同过滤(collaborativefiltering,cf)是一种基本且有效的方法,它假设具有相同交互的用户具有相似的兴趣。然而,由于用户-物品交互数据稀疏问题,早期的矩阵分解和新兴的基于图神经网络的推荐都面临着协同信号不足的挑战。为了缓解这种数据稀疏性问题,知识图谱(knowledge graph,kg)被作为辅助信息集成到推荐系统中,它包含丰富的实体和关系,这些实体和关系表达了物品的语义信息。现有的基于知识图谱的推荐方法主要利用知识图谱的表示学习和构建知识元路径来挖掘kg中的语义信息。然而,这些方法存在以下两个问题:i)知识噪声:kg包含许多与推荐无关的关系噪声,这些关系噪声在表示学习过程中会被放大。ii)知识稀疏性:kg中实体的曝光次数呈长尾分布,这表明某些实体对应的三元组数量极其稀疏,这不利于语义信息的学习。
技术实现思路
1、本发明的目的是提供一种双视图增强知识对比学习推荐方法、系统及电子设备,能够得到更准确的物品推荐排序。
2、为实现上述目的,本发明提供了如下方案:
3、一种双视图增强知识对比学习推荐方法,所述推荐方法包括:
4、获取用户的多个目标物品;
5、将所述多个目标物品输入至推荐模型,得到所述多个目标物品的推荐排序;其中,所述推荐模型时通过应用训练集对初始推荐模型进行训练得到的;所述训练集包括多个物品的知识图谱以及根据所述用户对各所述物品的历史交互数据构建的用户物品交互图;所述用户物品交互图包括用户表示、初始物品表示和对应的交互关系;所述交互关系为所述用户和所述物品存在交互记录或者所述用户和所述物品不存在交互记录;所述初始推荐模型包括依次连接的知识视图生成模型、关系感知的注意力聚合器和跨视图对比学习模型;所述知识视图生成模型用于根据所述多个物品的知识图谱中各关系的得分得到关系感知的知识视图,以及根据所述多个物品的知识图谱中各实体的曝光次数将所有实体划分为长尾实体和非长尾实体,并将所述长尾实体进行聚类后得到的语义实体替换所述多个物品的知识图谱中的所述长尾实体得到语义感知的知识视图;所述关系感知的注意力聚合器用于计算所述关系感知的知识视图和所述语义感知的知识视图的注意力系数,并根据所述注意力系数对所述关系感知的知识视图和所述语义感知的知识视图中的实体进行聚合和堆叠操作,得到对应的第一物品表示和第二物品表示;所述跨视图对比学习模型用于计算所述用户表示分别与所述第一物品表示、所述第二物品表示、所述初始物品表示之间的内积,得到对应的第一匹配得分、第二匹配得分和第三匹配得分,并根据所述第一匹配得分、第二匹配得分和第三匹配得分,得到所述多个物品的推荐排序;所述曝光次数是包含某一所述实体的三元组的数量。
6、可选地,所述推荐模型的构建过程,具体包括:
7、获取多个物品的知识图谱,并根据所述用户对各所述物品的历史交互数据构建用户物品交互图;
8、计算所述多个物品的知识图谱中各关系的得分,并根据所述得分按照预设规则确定多个目标关系,以及根据多个所述目标关系对所述多个物品的知识图谱进行更新,得到关系感知的知识视图;
9、根据所述多个物品的知识图谱中各实体的曝光次数,将所有实体划分为长尾实体和非长尾实体;
10、应用聚类算法对所述长尾实体进行聚类,得到语义实体;
11、将所述多个物品的知识图谱中长尾实体更新为所述语义实体,得到语义感知的知识视图;
12、分别计算所述关系感知的知识视图和所述语义感知的知识视图的注意力系数,得到对应的关系感知注意力系数和语义感知注意力系数;
13、利用所述关系感知注意力系数对所述关系感知的知识视图中实体进行聚合运算,再进行堆叠计算,得到第一物品表示;
14、利用所述语义感知注意力系数对所述语义感知的知识视图中实体进行聚合运算,再进行堆叠计算,得到第二物品表示;
15、根据所述第一物品表示、所述第二物品表示和所述初始物品表示,应用对比学习算法,计算所述用户物品交互图、所述关系感知的知识视图和所述语义感知的知识视图之间的对比学习损失;所述对比学习损失包括所述用户物品交互图与所述关系感知的知识视图之间的第一对比学习损失、所述关系感知的知识视图和所述语义感知的知识视图之间的第二对比学习损失以及所述用户物品交互图和所述语义感知的知识视图之间的第三对比学习损失;
16、计算所述第一对比学习损失、所述第二对比学习损失和所述第三对比学习损失的和,得到跨视图对比损失;
17、计算所述用户表示分别与所述第一物品表示、所述第二物品表示、所述初始物品表示之间的内积,得到对应的第一匹配得分、第二匹配得分和第三匹配得分;
18、根据所述第一匹配得分、所述第二匹配得分和所述第三匹配得分,应用贝叶斯个性化排序损失函数,得到排序损失;
19、根据所述排序损失和所述跨视图对比损失,得到推荐损失;
20、根据所述推荐损失,应用多任务训练策略进行优化,得到推荐模型。
21、可选地,根据所述得分按照预设规则确定多个目标关系,具体包括:
22、根据所述得分,将所述多个物品的知识图谱中各关系从大到小进行排序;
23、以得分最高的关系作为起始,依次选择预设目标关系数量的关系,确定多个目标关系。
24、可选地,所述聚类算法为k-means聚类算法。
25、可选地,所述关系感知注意力系数的计算公式为:
26、
27、
28、
29、
30、
31、
32、其中,β1(h,r,t)为关系感知注意力系数,leakyrelu(·)为非线性激活函数,为er的转置,er为关系的初始化的向量表示,eh为头实体的初始化的向量表示,et为尾实体的初始化的向量表示,为中头实体h对应的三元组的集合,为er'的转置,er'为中关系的向量表示,et'为中尾实体的向量表示,r'是关系感知的知识视图中头实体h对应的三元组的集合中所有头实体h对应的关系,t'是关系感知的知识视图中头实体h对应的三元组的集合中所有头实体h对应的尾实体,h为头实体,r为关系,t为尾实体,为关系感知的知识视图,ε为实体的集合,为新的关系集合,sr为关系的得分,s为所有关系的得分集合,α是控制关系保留比例的超参数,为原始知识图谱的关系集合,nr是关系r在知识图谱中所对应的三元组的个数,为知识图谱。
33、可选地,所述语义感知注意力系数的计算公式为:
34、
35、
36、
37、
38、其中,β2(h,r,t)为语义感知注意力系数,leakyrelu(·)为非线性激活函数,为er的转置,er为关系的初始化的向量表示,eh为头实体的初始化的向量表示,et为尾实体的初始化的向量表示,为中头实体h对应的三元组的集合,为er'的转置,er'为中关系的向量表示,et'为中尾实体的向量表示,r'是关系感知的知识视图中头实体h对应的三元组的集合中所有头实体h对应的关系,t'是关系感知的知识视图中头实体h对应的三元组的集合中所有头实体h对应的尾实体,h为头实体,r为关系,t为尾实体,为语义感知的知识视图,ε为实体的集合,为知识图谱的关系集合,为知识图谱,εnl表示非长尾实体集合,εs表示语义实体集合。
39、可选地,所述推荐损失的计算公式为:
40、
41、其中,推荐损失,为排序损失,λ1为控制跨视图对比损失的权重,lc为控制跨视图对比损失,λ2为正则化项的权重,θ为模型中所有可训练的参数,为正则化项,||·||2为二范数。
42、一种双视图增强知识对比学习推荐系统,应用上述的双视图增强知识对比学习推荐方法,所述推荐系统包括:
43、构建模块,用于获取用户的多个目标物品;
44、推荐模块,用于将所述多个目标物品输入至推荐模型,得到所述多个目标物品的推荐排序;其中,所述推荐模型时通过应用训练集对初始推荐模型进行训练得到的;所述训练集包括多个物品的知识图谱以及根据所述用户对各所述物品的历史交互数据构建的用户物品交互图;所述用户物品交互图包括用户表示、初始物品表示和对应的交互关系;所述交互关系为所述用户和所述物品存在交互记录或者所述用户和所述物品不存在交互记录;所述初始推荐模型包括依次连接的知识视图生成模型、关系感知的注意力聚合器和跨视图对比学习模型;所述知识视图生成模型用于根据所述多个物品的知识图谱中各关系的得分得到关系感知的知识视图,以及根据所述多个物品的知识图谱中各实体的曝光次数将所有实体划分为长尾实体和非长尾实体,并将所述长尾实体进行聚类后得到的语义实体替换所述多个物品的知识图谱中的所述长尾实体得到语义感知的知识视图;所述关系感知的注意力聚合器用于计算所述关系感知的知识视图和所述语义感知的知识视图的注意力系数,并根据所述注意力系数对所述关系感知的知识视图和所述语义感知的知识视图中的实体进行聚合和堆叠操作,得到对应的第一物品表示和第二物品表示;所述跨视图对比学习模型用于计算所述用户表示分别与所述第一物品表示、所述第二物品表示、所述初始物品表示之间的内积,得到对应的第一匹配得分、第二匹配得分和第三匹配得分,并根据所述第一匹配得分、第二匹配得分和第三匹配得分,得到所述多个物品的推荐排序;所述曝光次数是包含某一所述实体的三元组的数量。
45、一种电子设备,包括存储器及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行上述的双视图增强知识对比学习推荐方法。
46、可选地,所述存储器为可读存储介质。
47、根据本发明提供的具体实施例,本发明公开了以下技术效果:
48、本发明通过关系感知的知识视图抑制关系噪声,通过语义感知的知识视图缓解长尾实体问题,并通过对比学习算法,将知识语义信号与协同信号连接起来,用去噪的语义信息增强用户-物品交互图中的初始物品表示从而得到更准确的物品推荐排序。