一种基于知识图谱卷积算法的个性化推荐方法与流程

    专利2022-07-08  120


    本发明属于混合推荐系统领域,尤其涉及一种基于知识图谱卷积算法的个性化推荐模型。
    背景技术
    :近年来科学技术尤其是互联网的蓬勃发展使人类社会开始面临严重的“信息过载”问题,如何在有限的互联网页面更有效的显示最能够吸引用户的内容成为各大技术公司竞相追逐的热点。这一过程中,各种推荐算法获得了长足的发展。推荐算法意图对于给定的用户物品对,首先估算用户可能与此物品发生交互的得分,然后基于得分高低将物品排序,并最终将topn的物品推荐给用户。经典的协同过滤推荐算法尝试对用户的兴趣特征和物品的属性特征进行联合建模,并通过向量运算估算出交互概率。更早的基于内容的推荐算法则简单的考虑物品在内容上的相似性,并通过历史行为记录给用户推荐相似的物品。以上算法存在可解释性较差、冷启动、精确度不足等问题。而混合推荐算法则通过综合多种推荐算法的优良性,具有更好的推荐效果。比如融合协同过滤与知识图谱表示学习的推荐算法和融合矩阵分解与循环神经网络的推荐模型。其中,由于知识图谱包含用户和物品的丰富信息,基于知识图谱的推荐受到了越来越多的关注。这类算法主要分为两种,一种是通过元路径方法计算知识图谱中的物品相似性,另一种是使用知识图谱表示学习模型自动获得实体及关系的语义嵌入。元路径法严重依赖于人工选择的元路径特性,而表示学习模型虽然克服了这一缺点,但其学习到的表示向量只适合在知识图谱内部进行推理计算,缺少用户兴趣特征的融入。近年来,随着非欧几里得空间数据——图数据的大量增长,适合对其进行建模的图卷积神经网络模型吸引了大量的关注。其在挖掘有效拓扑信息、处理异质数据、提取关键复杂特征方面具有较好的可靠性。知识图谱属于一种典型的图数据。目前,基于知识图谱的图卷积神经网络推荐模型主要通过聚合邻域信息对实体进行建模,但在聚合方式上处理的过于简单,使得实体及关系的向量表示不够精确,推荐效果有待提高。技术实现要素:本发明针对目前基于知识图谱的图卷积神经网络模型在聚合邻域信息时处理过于简单,实体及关系的向量表示不够精确的问题,提出一种基于知识图谱表示学习与图卷积算法进行信息聚合的个性化精准推荐方法。该方法在聚合邻域信息时先通过知识图谱表示学习模型distmult进行了严格的关系推理,然后使用注意力机制计算所得推理嵌入向量的加权和,可以提高实体及关系嵌入表示的准确性,进而改善推荐结果的准确性与可解释性。本发明采用的技术方案如下:一种基于知识图谱卷积算法的个性化推荐方法,该方法通过聚合物品实体嵌入向量在领域知识图谱中的多跳感受野信息从而学习其高阶特征表示;首先构建每个物品在领域知识图谱中的1至d跳实体感受野集合,然后以图卷积算法聚合d至1跳感受野实体的嵌入向量,最终计算出含有高阶邻居信息的物品嵌入向量;聚合过程中在图卷积算法的基础上使用知识图谱表示学习模型distmult以及表示用户兴趣分布的注意力机制提高嵌入向量表达能力;方法借鉴矩阵分解模型,将迭代生成的高阶物品嵌入向量与用户嵌入向量进行乘积,并使用sigmoid函数输出预测的交互概率;方法基于贝叶斯公式,使用最大后验概率估计推理出混合用户-物品交互矩阵损失函数和知识图谱表示学习损失函数的联合损失函数,并使用adam算法进行优化;方法在构建训练数据时使用了负采样方法,并使用auc与f1值评价性能。进一步的,所述构建领域知识图谱的方法具体为:(1)获取由三元组(头实体h,关系r,尾实体t)表示的通用知识图谱,并基于实体的标签属性过滤出本领域的子知识图谱;(2)如果通用知识图谱不涵盖本领域知识,则使用命名实体识别及关系抽取技术基于本领域已经积累的数据资料构建领域知识图谱。进一步的,所述生成物品实体v的1至d跳感受野的方法具体为:(1)确定感受野深度d与某跳感受野集合的长度f,设感受野集合的第0跳感受野集合由候选物品v及其邻居实体集合t组成的三元组(h,r,t)构成。(2)对于当前第c跳感受野集合,选择其所包含每一个实体h与直接邻居节点t形成的(h,r,t)三元组组成c 1跳感受野集合。如果c 1跳感受野集合长度大于f,就进行随机采样;如果小于f,就进行重复采样。(3)取c 1跳感受野集合为新的当前感受野集合,重复步骤(2),直到|c| 1=d。进一步的,所述以图卷积算法聚合物品实体v的d至1跳感受野表示向量,从而生成实体v的高阶嵌入向量的步骤具体为:(1)对用户物品对<u,v>以及感受野集合中的三元组(h,r,t),从物品实体v的最远d跳感受野实体t开始聚合,生成新的d-1跳感受野邻居实体嵌入向量hnew。(2)设当前感受野集合是第c跳,则聚合过程中使用表示学习关系模型r·h=t推理出新的c-1跳感受野实体嵌入向量hnew。(3)在推理对应头实体嵌入hnew时,同时计算用户嵌入向量u与关系嵌入向量r的相似度s。(4)计算用户u在本跳感受野集合中所有相似度s的归一化权重向量w。(5)将推理出的每个头实体向量hnew与对应归一化权重w相乘并求和,生成新的聚合头实体嵌入向量hc。(6)计算hc与原c-1跳感受野实体嵌入向量h之和,并将结果添加一层非线性激活函数,输出结果hagg最终作为新的c-1阶感受野嵌入向量tc-1。(7)取新构建的c-1跳感受野中三元组(hc-1,r,tc-1)以及用户物品对<u,v>作为输入,迭代执行步骤2至步骤6共d-1次,取最后一次聚合生成的第0跳感受野的实体嵌入向量h0作为物品实体v的最终嵌入表示向量。进一步的,所述方法基于知识图谱表示学习模型distmult,以公式r·h=t建模第c跳感受野三元组(h,r,t)中尾实体嵌入向量t与头实体嵌入向量h之间的表示关系,并基于逆矩阵运算推理出头实体向量h=r-1·t,其中,h表示头实体嵌入向量,r表示三元组中的关系转换矩阵,r-1表示关系转换矩阵的逆矩阵,t表示尾实体嵌入向量。进一步的,所述方法通过注意力机制区分用户对不同关系r的兴趣大小。注意力机制先计算用户嵌入向量u与关系嵌入向量r的相似度数值s=ut·r,然后使用softmax函数计算实体第c跳感受野中所有相似度的归一化权重。进一步的,所述方法先计算用户嵌入向量u与新物品嵌入向量h0的内积,然后通过sigmoid函数计算用户与物品交互的概率。进一步的,所述方法生成训练数据时,对于有历史交互行为的用户物品对直接转换为正样本,并使用负采样法从没有与用户发生过交互的物品集合中筛选出和正样本同等数量的负样本。进一步的,所述方法的训练目标是最大化如下的后验概率:其中,p(θ)表示模型参数的先验概率,假设其服从均值为0,方差为对角矩阵的高斯分布;p(g|θ)表示给定模型参数θ时观察到的知识图谱g的似然;p(y|θ,g)表示给定模型参数θ和知识图谱g时观察到的交互矩阵的似然。进一步的,所述方法基于对数似然函数和pairwise排序模型推理出联合代价函数,并通过adam算法进行模型参数优化更新。上式第一项表示根据交互矩阵信息计算的总交叉熵损失,其保证模型在正样本上的损失较小,在负样本上的损失较大。其中u表示用户集合,表示样本标签,表示正样本集合,表示样本预测值,表示交叉熵损失,tu表示负样本数量,即vi~p(vi)表示负样本满足均匀分布。第二项保证表示学习模型etre的计算结果在正样本上接近于1,在负样本上接近于0。其中e表示实体的嵌入向量,r表示关系r的转换矩阵,r表示关系r的嵌入矩阵,ir表示关系r的指示张量切片,λ3表示权重衰减系数。最后两项表示待学习参数的l2正则化项,其中w表示模型中的其它待学习参数,λ1、λ2分别表示权重衰减系数。模型基于上述代价函数计算梯度,并通过adam算法进行待学习参数的取值更新。本发明的有益效果如下:本发明采用图卷积算法由远及近的聚合知识图谱中实体的多跳感受野嵌入向量,丰富了物品的高阶嵌入特征表示;本发明使用知识图谱表示学习模型实体的邻接关系,使得实体及关系嵌入向量的语义结构信息更加准确;本发明基于注意力机制描绘用户对不同实体关系的兴趣分布,使得对用户的兴趣刻画更加精准,并增强了可解释性;本发明最终提升了推荐结果的准确性与可解释性,改善了冷启动问题。附图说明图1是本发明涉及的推荐流程示意图;图2是本发明涉及的推荐方法训练流程图;图3是本发明涉及的聚合全部d跳感受野嵌入向量的计算过程,其中白色方块表示物品实体v,ei[j]表示某一实体嵌入向量,j表示实体v的第j跳感受野,i表示实体ei[j]在实体v的第j跳感受野集合中的编号;图4是本发明涉及的聚合物品的某跳感受野嵌入向量的计算过程。具体实施方式下面结合附图对本发明的技术方案作进一步详细描述。如图1和图2所示,一种基于知识图谱卷积算法的个性化推荐方法,该方法通过聚合物品实体嵌入向量在领域知识图谱中的多跳感受野信息从而学习其高阶特征表示;方法首先构建每个物品在领域知识图谱中的1至d跳实体感受野集合,然后以图卷积算法聚合d至1跳感受野实体的嵌入向量,最终计算出含有高阶邻居信息的物品嵌入向量;聚合过程中在图卷积算法的基础上使用知识图谱表示学习模型distmult以及表示用户兴趣分布的注意力机制提高嵌入向量表达能力;方法借鉴矩阵分解模型,将迭代生成的高阶物品嵌入向量与用户嵌入向量进行乘积,并使用sigmoid函数输出预测的交互概率;方法基于贝叶斯公式,使用最大后验概率估计推理出混合用户-物品交互矩阵损失函数和知识图谱表示学习损失函数的联合损失函数,并使用adam算法进行优化;方法在构建训练数据时使用了负采样方法,并使用auc与f1值评价性能。上述构建领域知识图谱的方法具体为:(1)获取由三元组(头实体h,关系r,尾实体t)表示的通用知识图谱,并基于实体的标签属性过滤出本领域的子知识图谱。例如,对于开源的通用知识图谱wikidata,通过过滤实体的instancesof属性为film从而构建出电影知识图谱。(2)如果通用知识图谱不涵盖本领域知识,则使用命名实体识别及关系抽取技术基于本领域已经积累的数据资料构建领域知识图谱。上述生成物品实体1至d跳感受野的方法具体为:(1)确定感受野深度d与某跳感受野集合的长度f,设感受野集合的第0跳感受野集合由候选物品v及其邻居实体集合t组成的三元组(h,r,t)构成。(2)对于当前第c跳感受野集合,选择其所包含每一个实体h与直接邻居节点t形成的(h,r,t)三元组组成c 1跳感受野集合。如果c 1跳感受野集合长度大于f,就进行随机采样;如果小于f,就进行重复采样。(3)取c 1跳感受野集合为新的当前感受野集合,重复步骤(2),直到|c| 1=d。上述以图卷积算法聚合物品实体v的d至1跳感受野嵌入向量,从而生成实体v的高阶嵌入向量的步骤如图3所示:s1、对用户物品对<u,v>以及感受野集合中的三元组(h,r,t),从物品实体v的最远d跳感受野实体t开始聚合,生成新的d-1跳感受野邻居实体嵌入向量hnew。具体步骤如图4所示:s2.1、对于c跳感受野三元组(h,r,t),本方法通过知识图谱表示学习模型distmult,以公式r·h=t建模尾实体嵌入向量t与头实体嵌入向量h之间的表示关系,并基于逆矩阵运算推理出头实体向量h=r-1·t,其中,h表示头实体嵌入向量,r表示三元组中的关系转换矩阵,r-1表示关系转换矩阵的逆矩阵,t表示尾实体嵌入向量;聚合过程先使用关系模型h=r-1·t推理出新的d-1跳感受野实体嵌入向量hnew。s2.2、在推理对应头实体嵌入hnew时,同时计算用户嵌入向量u与关系嵌入向量r的相似度数值s=ut·r。s2.3、基于注意力机制,使用softmax函数计算实体第c跳感受野中所有相似度的归一化权重:其中u表示用户嵌入向量,表示实体对<v,vi>之间的关系嵌入向量,nv(j)表示物品v的第j跳感受野集合的邻居尾实体集合。s2.4、将推理出的每个头实体向量hnew与对应归一化权重w相乘并求和,生成新的聚合头实体嵌入向量hc:其中表示上文中的归一化权重w,nh(c)表示物品v的第c跳感受野集合的邻居尾实体集合。s2.5、计算hc与原c-1跳感受野实体嵌入向量h之和,并将结果添加一层非线性激活函数,输出结果hagg最终作为新的c-1阶感受野嵌入向量tc-1。hagg=σ(w1(hc h) b)其中,hc表示各邻居尾实体嵌入向量的加权和,h表示物品v的原d-1阶嵌入向量,w1和b表示待学习的模型参数,σ表示非线性激活函数。s3、取新构建的c-1跳感受野中三元组(hc-1,r,tc-1)以及用户物品对<u,v>作为输入,迭代执行步骤s2.1至s2.5共d-1次,取最后一次聚合生成的第0跳感受野的实体嵌入向量h0作为物品实体v的最终嵌入表示向量。本发明最后通过计算用户嵌入向量u与新物品嵌入向量vu(h0)的内积,然后通过sigmoid函数输出用户与物品交互的概率:在生成训练样本时,考虑到方法预测的是用户物品对(u,v)交互的概率,故方法将有历史交互行为的用户物品对直接转换为正样本,并使用负采样法从没有与用户发生过交互的物品集合中筛选出和正样本同等数量的负样本。基于以上建模过程,本发明优化目标是最大化如下的后验概率,其中θ表示本方法待学习的参数,g和y分别表示已知的知识图谱信息与交互矩阵信息maxp(θ|g,y)基于贝叶斯公式,上式即为最大化如下等式:其中,p(θ)表示模型参数的先验概率,假设其服从均值为0,方差为对角矩阵的高斯分布;p(g|θ)表示给定模型参数θ时观察到的知识图谱g的似然;p(y|θ,g)表示给定模型参数θ和知识图谱g时观察到的交互矩阵的似然。将上式取负对数,并参考pairwise排序模型的代价函数,得出本方法的优化目标是最小化如下的对数似然联合代价函数。上式第一项表示根据交互矩阵信息计算的总交叉熵损失,其保证模型在正样本上的损失较小,在负样本上的损失较大。其中u表示用户集合,表示样本标签,表示正样本集合,表示样本预测值,表示交叉熵损失,tu表示负样本数量,即vi~p(vi)表示负样本满足均匀分布。第二项保证表示学习模型etre的计算结果在正样本上接近于1,在负样本上接近于0。其中e表示实体的嵌入向量,r表示关系r的转换矩阵,r表示关系r的嵌入矩阵,ir表示关系r的指示张量切片,λ3表示权重衰减系数。最后两项表示待学习参数的l2正则化项,其中w表示模型中的其它待学习参数,λ1、λ2分别表示权重衰减系数。模型基于上述代价函数计算梯度,并通过adam算法进行待学习参数的数值更新。实验验证对比结果如下:本发明方法和各种基准方法基于微软satori知识图谱在movielens-20m数据集上的实验对比结果如表1所示。在auc和f1-score指标上,本发明方法均取得了最好的效果。表1:实验对比结果模型aucf1-scoresvd0.9630.919libfm0.9590.906ripplenet0.9680.912kgcn-sum0.9780.932thismodel0.9820.940当前第1页1 2 3 
    技术特征:

    1.一种基于知识图谱卷积算法的个性化推荐方法,其特征在于,通过聚合物品实体嵌入向量在领域知识图谱中的多跳感受野信息从而学习其高阶特征表示;首先构建每个物品在领域知识图谱中的1至d跳实体感受野集合,然后以图卷积算法聚合d至1跳感受野实体的嵌入向量,最终计算出含有高阶邻居信息的物品嵌入向量;聚合过程中在图卷积算法的基础上使用知识图谱表示学习模型distmult以及表示用户兴趣分布的注意力机制提高嵌入向量表达能力;借鉴矩阵分解模型,将迭代生成的高阶物品嵌入向量与用户嵌入向量进行乘积,并使用sigmoid函数输出预测的交互概率;基于贝叶斯公式,使用最大后验概率估计推理出混合用户-物品交互矩阵损失函数和知识图谱表示学习损失函数的联合损失函数。

    2.根据权利要求1所述的方法,其特征在于,所述构建领域知识图谱的方法具体为:

    (1)获取由三元组(头实体h,关系r,尾实体t)表示的通用知识图谱,并基于实体的标签属性过滤出本领域的子知识图谱;

    (2)如果通用知识图谱不涵盖本领域知识,则使用命名实体识别及关系抽取技术基于本领域已经积累的数据资料构建领域知识图谱。

    3.根据权利要求1所述的方法,其特征在于,所述生成物品实体v的1至d跳感受野的方法具体为:

    (1)确定感受野深度d与某跳感受野集合的长度f,设感受野集合的第0跳感受野集合由候选物品v及其邻居实体集合t组成的三元组(h,r,t)构成;

    (2)对于当前第c跳感受野集合,选择其所包含每一个实体h与直接邻居节点t形成的(h,r,t)三元组组成c 1跳感受野集合;如果c 1跳感受野集合长度大于f,就进行随机采样;如果小于f,就进行重复采样;

    (3)取c 1跳感受野集合为新的当前感受野集合,重复步骤(2),直到|c| 1=d。

    4.根据权利要求1所述的方法,对比现有方法,其特征在于,所述以图卷积算法聚合物品实体v的d至1跳感受野嵌入向量,从而生成实体v的高阶嵌入向量的步骤具体为:

    (1)对用户物品对<u,v>以及感受野集合中的三元组(h,r,t),从物品实体v的最远d跳感受野实体t开始聚合,生成新的d-1跳感受野邻居实体嵌入向量hnew;

    (2)设当前感受野集合是第c跳,则聚合过程中使用表示学习关系模型r·h=t推理出新的c-1跳感受野实体嵌入向量hnew;

    (3)在推理对应头实体嵌入hnew时,同时计算用户嵌入向量u与关系嵌入向量r的相似度s;

    (4)计算用户u在本跳感受野集合中所有相似度s的归一化权重向量w;

    (5)将推理出的每个头实体向量hnew与对应归一化权重w相乘并求和,生成新的聚合头实体嵌入向量hc;

    (6)计算hc与原c-1跳感受野实体嵌入向量h之和,并将结果添加一层非线性激活函数,输出结果hagg最终作为新的c-1阶感受野嵌入向量tc-1;

    (7)取新构建的c-1跳感受野中三元组(hc-1,r,tc-1)以及用户物品对<u,v>作为输入,迭代执行步骤2至步骤6共d-1次,取最后一次聚合生成的第0跳感受野的实体嵌入向量h0作为物品实体v的最终嵌入表示向量。

    5.根据权利要求1所述的方法,其特征在于,对于c跳感受野三元组(h,r,t),基于知识图谱表示学习模型distmult,以公式r·h=t建模尾实体嵌入向量t与头实体嵌入向量h之间的表示关系,并基于逆矩阵运算推理出头实体向量h=r-1·t,其中,h表示头实体嵌入向量,r表示三元组中的关系转换矩阵,r-1表示关系转换矩阵的逆矩阵,t表示尾实体嵌入向量。

    6.根据权利要求1所述的方法,其特征在于,通过注意力机制区分用户对不同关系r的兴趣大小;注意力机制先计算用户嵌入向量u与关系嵌入向量r的相似度数值s=ut·r,然后使用softmax函数计算实体第c跳感受野中所有相似度的归一化权重。

    7.根据权利要求1所述的方法,其特征在于,方法先计算用户嵌入向量u与新物品嵌入向量h0的内积,然后通过sigmoid函数计算用户与物品交互的概率。

    8.根据权利要求1所述的方法,其特征在于,方法生成训练数据时,对于有历史交互行为的用户物品对直接转换为正样本,并使用负采样法从没有与用户发生过交互的物品集合中筛选出和正样本同等数量的负样本。

    9.根据权利要求1所述的方法,其特征在于,基于对数似然函数和pairwise排序模型推理出联合代价函数,并通过adam算法进行模型参数优化更新;

    模型优化目标定义为最大化如下的后验概率,其中θ表示模型参数,g表示知识图谱,y表示交互矩阵:

    maxp(θ|g,y)

    基于贝叶斯公式,上式即为最大化如下等式:

    其中,p(θ)表示模型参数的先验概率,假设其服从均值为0,方差为对角矩阵的高斯分布;p(g|θ)表示给定模型参数θ时观察到的知识图谱g的似然;p(y|θ,g)表示给定模型参数θ和知识图谱g时观察到的交互矩阵的似然;将上式取负对数,并参考pairwise排序模型的代价函数,得出本方法的优化目标是最小化如下的对数似然联合代价函数;

    上式第一项表示根据交互矩阵信息计算的总交叉熵损失,其保证模型在正样本上的损失较小,在负样本上的损失较大;其中u表示用户集合,表示样本标签,表示正样本集合,表示样本预测值,表示交叉熵损失,tu表示负样本数量,即vi~p(vi)表示负样本满足均匀分布;第二项保证表示学习模型etre的计算结果在正样本上接近于1,在负样本上接近于0;其中e表示实体的嵌入向量,r表示关系r的转换矩阵,r表示关系r的嵌入矩阵,ir表示关系r的指示张量切片,λ3表示权重衰减系数;最后两项表示待学习参数的l2正则化项,其中w表示模型中的其它待学习参数,λ1、λ2分别表示权重衰减系数;

    模型基于上述代价函数计算梯度,并通过adam算法进行待学习参数的数值更新。

    技术总结
    一种基于知识图谱卷积算法的个性化推荐方法属于混合推荐系统领域;该方法首先构建每个物品在领域知识图谱中的1至d跳实体感受野集合,以图卷积算法聚合d至1跳感受野实体的嵌入向量,计算出含有高阶邻居信息的物品嵌入向量;聚合过程中在图卷积算法的基础上使用知识图谱表示学习模型DistMult以及表示用户兴趣分布的注意力机制提高嵌入向量表达能力;借鉴矩阵分解模型,将迭代生成的高阶物品嵌入向量与用户嵌入向量进行乘积,并使用Sigmoid函数输出预测的交互概率;使用最大后验概率估计推理出混合用户‑物品交互矩阵损失函数和知识图谱表示学习损失函数的联合损失函数。本发明丰富了物品嵌入向量的高阶特征表示,增强了实体及关系嵌入向量的表达准确性。

    技术研发人员:张海龙;颜金尧
    受保护的技术使用者:中国传媒大学
    技术研发日:2020.11.30
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-17172.html

    最新回复(0)