1.一种基于知识图谱解耦的推荐方法,其特征在于包括以下步骤:
步骤(1):构建知识图谱;
1-1获取用户行为数据;所述用户行为数据包括用户、物品、用户固有属性特征和物品固有属性特征;
1-2将用户行为数据中用户、物品、用户固有属性特征和物品固有属性特征作为实体,并提炼实体关系,最终得到实体-关系-实体的三元组知识图谱;
步骤(2):搭建基于循环解耦的推荐模型RDK-GCN;
所述基于循环解耦的推荐模型包括输入层、特征解耦层、邻域聚合层、自注意力层、相似度计算层;
所述输入层用于接收知识图谱中实体u信息,并将其进行向量化表示;根据知识图谱获取该实体u对应的若干邻接实体v,并将其进行向量化表示;根据知识图谱获取实体u和邻接实体v之间的关系,并进行向量化表示;
所述特征解耦层用于将所述输入层输出的实体u向量化表示、邻接实体v向量化表示或上一次迭代中自注意力层输出的实体特征,对其投影到k个子空间进行特征解耦,以提取语义隐因子得到解耦特征;
所述邻域聚合层用于接收所述特征解耦层输出的解耦特征,计算邻接实体v和实体u之间的置信度,然后利用该置信度将邻接实体v和实体u的解耦特征进行更新,得到更新后的解耦特征;
所述自注意力层用于接收所述邻域聚合层输出的聚合特征和所述特征解耦层输出的解耦特征进行均值化处理,并将其返回到所述特征解耦层或输出实体u的特征;
输出层用于输出最大迭代次数下自注意力层给出的解耦特征记为实体u特征;
步骤(3):根据基于循环解耦的推荐模型RDK-GCN输出的实体u特征获得待推荐实体u1特征和被推荐实体u2特征然后计算上述两个特征的相似度,最后向被推荐实体u2推荐相似度较高的前n个待推荐实体u1。
2.根据权利要求1所述的一种基于知识图谱解耦的推荐方法,其特征在于步骤1-2中所述实体关系包括用户与用户间的关系、用户与物品间的交互关系、物品与物品间的关系、用户与用户固有属性特征之间的关系、物品与物品固有属性特征之间的关系。
3.根据权利要求1所述的一种基于知识图谱解耦的推荐方法,其特征在于步骤(2)中所述特征解耦层具体是:其中t表示当前迭代次数,m≥t≥1,m表示最大迭代次数;表示第t次迭代下对象i在第k个子空间的解耦特征,对象i表示实体u或邻接实体v;Wk表示第k个子空间的权重;bk表示第k个子空间的偏移;σ(·)表示激活函数,通常使用ReLU激活函数;为对象i的向量化表示。
4.根据权利要求3所述的一种基于知识图谱解耦的推荐方法,其特征在于步骤(2)中所述邻域聚合层具体是:(1)计算邻域实体v与实体u的解耦特征间的置信度,具体的计算方法为:其中μ表示调节置信度的系数;表示第t次迭代中实体u和邻域实体v在第k个子空间的置信度,用于衡量邻域实体v在第k个子空间的解耦特征是否用于构造实体u的解耦特征;softmax(·)表示softmax激活函数;表示邻域实体v在第t次迭代中第k个子空间的解耦特征;表示实体u在第t次迭代中第k个子空间的解耦特征;ru,v表示实体u和邻域实体v的关系向量化表示;
(2)通过置信度聚合实体u的解耦特征和邻域实体v的解耦特征,然后通过激活函数更新解耦特征,具体的计算方法为:
5.根据权利要求4所述的一种基于知识图谱解耦的推荐方法,其特征在于步骤(2)中所述自注意力层具体是:通过自注意力将特征解耦层输出的解耦特征与邻域聚合层输出的解耦特征结合,以加深实体u解耦特征的提取,具体的计算方法为:其中,mean{·}表示对两个解耦特征进行均值化操作。
6.根据权利要求5所述的一种基于知识图谱解耦的推荐方法,其特征在于步骤(3)中相似度计算公式如下:其中表示待推荐实体u1和被推荐实体u2之间的相似度。
7.一种基于知识图谱解耦的推荐系统,其特征在于包括:
知识图谱模块,用于根据用户行为数据中用户、物品、用户固有属性特征和物品固有属性特征作为实体,并提炼上述实体关系,最终得到实体-关系-实体的三元组知识图谱;
基于循环解耦的推荐模块,用于利用基于循环解耦的推荐模型RDK-GCN实现对待推荐实体u1特征和被推荐实体u2特征提取;所述基于循环解耦的推荐模型RDK-GCN包括输入层、特征解耦层、邻域聚合层、自注意力层、相似度计算层;
所述输入层用于接收知识图谱中实体u信息,并将其进行向量化表示;根据知识图谱获取该实体u对应的若干邻接实体v,并将其进行向量化表示;根据知识图谱获取实体u和邻接实体v之间的关系,并进行向量化表示;
所述特征解耦层用于将所述输入层输出的实体u向量化表示、邻接实体v向量化表示或上一次迭代中自注意力层输出的实体特征,对其投影到k个子空间进行特征解耦,以提取语义隐因子得到解耦特征;
所述邻域聚合层用于接收所述特征解耦层输出的解耦特征,计算邻接实体v和实体u之间的置信度,然后利用该置信度将邻接实体v和实体u的解耦特征进行更新,得到更新后的解耦特征;
所述自注意力层用于接收所述邻域聚合层输出的聚合特征和所述特征解耦层输出的解耦特征进行均值化处理,并将其返回到所述特征解耦层或输出实体u的特征;
输出层用于输出最大迭代次数下自注意力层给出的解耦特征记为实体u特征;
相似度计算模块,用于对待推荐实体u1特征和被推荐实体u2特征进行相似度计算,最后向被推荐实体u2推荐相似度较高的前n个待推荐实体u1。