首页> 中国专利> 一种基于知识图谱的可解释推荐系统

一种基于知识图谱的可解释推荐系统

摘要

本发明公开了一种基于知识图谱的可解释推荐系统,该系统包括序列知识图谱构建模块:从用户的购买序列以及用户评论中抽取出了预定义的实体以及关系;用户表示学习模块:设计了一个图注意力网络来学习用户的短期偏好,重新设计门控循环单元的结构,使其能够融合用户的长期偏好以及短期偏好,并获得捕捉到用户偏好动态性的用户向量表示;物品表示学习模块:设计一个自注意力层来学习到物品的用户特异的向量表示;评分预测模块:结合用户的向量表示以及物品的向量表示来获得用户对物品的预测评分。通过上述方案,本发明达到了很高的预测精度,同时提供非常高效的解释的目的,具有很高的实用价值和推广价值。

著录项

  • 公开/公告号CN112836123A

    专利类型发明专利

  • 公开/公告日2021-05-25

    原文格式PDF

  • 申请/专利权人 电子科技大学;

    申请/专利号CN202110151400.2

  • 发明设计人 郑凯;孙浩;

    申请日2021-02-03

  • 分类号G06F16/9535(20190101);G06F16/36(20190101);G06K9/62(20060101);G06N3/04(20060101);G06N3/08(20060101);G06Q30/06(20120101);

  • 代理机构51239 成都众恒智合专利代理事务所(普通合伙);

  • 代理人杨佳丽

  • 地址 610000 四川省成都市高新区(西区)西源大道2006号

  • 入库时间 2023-06-19 11:05:16

说明书

技术领域

本发明属于知识图谱技术领域,具体地讲,是涉及一种基于知识图谱的可解释推荐系统。

背景技术

近年来,可解释推荐系统在学术界以及产业界受到越来越多的关注,有相关研究表明,可解释推荐系统不仅可以提升用户对推荐物品的接受程度,还可以提升推荐系统的透明度、说服力、效率、可信赖性以及用户满意度。

为了使得推荐系统的可解释性提升,现存大部分模型使用包含丰富语义信息的用户评论作为模型的输入,尽管模型的可解释性提升了,但是这些可解释推荐模型还是存在一些局限。首先,这些可解释推荐模型大部分没有将用户偏好的动态性考虑在内,他们使用一个静态的向量来代表一个用户,从而无法捕捉到用户偏好的动态性。此外,他们无法对物品进行用户特异的建模,即他们假设每个物品都有一个全局的向量表示,这个向量表示可以用于对所有用户做推荐,但是不同用户对同一个物品的关注点不同,为了做更个性化的推荐,每个物品的向量表示中都应包含更多当前推荐用户关注的一些属性信息。其次,这些可解释推荐模型提供的评论层面以及特征层面的解释都存在局限性,评论层面的解释即为将其他用户的整段评论提供给当前用户作为解释,由于用户评论中包含很多个人偏好信息,从而导致评论层面的解释显得过于冗余,而特征层面的解释即为提供当前用户关注的一个物品特征作为解释,由于一个特征词包含信息过少,从而导致特征层面的解释显得过于简洁,可能会引起用户的困惑。最后,尽管这些推荐模型都使用用户评论作为模型的输入,这些推荐模型都没有深层次地挖掘评论中包含的丰富语义信息。

发明内容

为了克服现有技术中的上述不足,本发明提供一种基于知识图谱的可解释推荐系统,能够达到很高的预测精度,同时提供非常高效的解释。

为了实现上述目的,本发明采用的技术方案如下:

一种基于知识图谱的可解释推荐系统,包括序列知识图谱构建模块、用户表示学习模块,物品表示学习模块及评分预测模块;

所述序列知识图谱构建模块:从用户的购买序列以及用户评论中抽取出了预定义的实体以及关系;

所述用户表示学习模块:设计了一个图注意力网络来学习用户的短期偏好,重新设计门控循环单元的结构,使其能够融合用户的长期偏好以及短期偏好,并获得捕捉到用户偏好动态性的用户向量表示;

所述物品表示学习模块:设计一个自注意力层来学习到物品的用户特异的向量表示;

所述评分预测模块:结合用户的向量表示以及物品的向量表示来获得用户对物品的预测评分。

进一步地,所述序列知识图谱构建模块包括用户实体u、物品实体v以及特征实体f,其中,用户实体u、物品实体v以及特征实体f之间存在四类关系,分别是:(1)用户和物品之间存在的购买关系,(2)物品和特征之间存在的拥有关系,(3)用户和特征之间存在的提及关系,(4)物品与物品之间存在的同时购买关系。

进一步地,所述用户表示学习模块首先使用图注意力网络来对序列知识图谱构建模块中的实体以及关系的向量表示进行更新,然后将序列知识图谱构建模块里面所有的实体结合起来,最后使用相似度作为权重来对除用户实体外的其他实体进行加权求和,计算过程如下:

其中,h

进一步地,所述物品表示学习模块使用自注意力层来学习用户之间的相似度,并用该相似度作为权重来对物品进行用户特异的建模,具体公式如下:

其中,

具体地,所述评分预测模块在得到用户的全局序列嵌入

其中,q

与现有技术相比,本发明具有以下有益效果:

(1)本发明能够充分利用评论信息,来对用户的动态偏好建模以及对物品进行用户特异的建模,本发明修改了原始门控循环单元的结构,使得其能够感知到时间间隔对用户偏好变化的影响,本发明使用自注意力机制来学习用户之间的相似度,从而对物品进行用户特异的建模,通过结合评论层面以及特征层面的解释,本发明可以提升推荐的效率以及用户满意度。并且本发明在三个大型数据集上对模型进行测试,实验结果表明,本发明的模型可以达到很高的预测精度,同时提供非常高效的解释。因此本发明在评分预测领域尝试结合知识图谱以及门控循环单元来捕捉用户动态偏好并缓解推荐领域数据稀疏问题上取得了很大的进步。

(2)本发明从用户购买序列以及用户评论中挖掘出实体以及关系,从而构建出序列知识图谱,然后使用图注意力网络来挖掘出隐含在序列知识图谱中的用户短期偏好,本发明使用新设计的时间间隔可知门控循环单元来融合用户的短期偏好以及长期偏好,从而捕捉到用户偏好的动态性;本发明使用自注意力网络层来学习到用户之间的相似度,并将相似度作为用户评论的权重来为目标用户生成更加个性化的物品向量表示;最后,本发明通过结合评论层面以及特征层面的解释来提升模型的可解释性。

附图说明

图1为本发明的系统框架示意图。

图2为本发明序列知识图谱构建模块示例示意图。

图3为本发明用户表示学习模块结构示意图。

图4为本发明新设计的I-GRU结构示意图。

图5为本发明序列长度对模型效果的影响图。

图6为本发明为两个不同用户生成的解释示例图。

具体实施方式

下面结合附图和实施例对本发明作进一步说明,本发明的实施方式包括但不限于下列实施例。

实施例

如图1所示,一种基于知识图谱的可解释推荐系统,包括序列知识图谱构建模块、用户表示学习模块,物品表示学习模块及评分预测模块;其中在序列知识图谱构建模块,本发明从用户的购买序列以及用户评论中抽取出了预定义的实体以及关系;在用户表示学习模块,本发明设计了一个图注意力网络来学习用户的短期偏好,本发明重新设计了门控循环单元的结构,使得其能够融合用户的长期偏好以及短期偏好,并获得捕捉到用户偏好动态性的用户向量表示;在物品表示学习模块,本发明设计了一个自注意力层来学习到物品的用户特异的向量表示;在评分预测模块,本发明结合用户的向量表示以及物品的向量表示来获得用户对物品的预测评分。

在序列知识图谱构建模块,本发明自定义了三类实体以及四类关系,三类实体分别为:用户实体、物品实体以及特征实体,四类关系分别为:用户和物品之间存在的购买关系,物品和特征之间存在的拥有关系,用户和特征之间存在的提及关系,物品与物品之间存在的同时购买关系,通过自定义这些实体以及关系,本发明能够捕捉到隐含在用户购买序列以及用户评论中的用户行为信息以及商品属性信息,具体如图2所示。

用户表示学习模块的框架如图3所示,本发明首先使用图注意力网络来对序列知识图谱中的实体以及关系的向量表示进行更新,之后本发明将序列知识图谱里面所有的实体结合起来,考虑到不同实体有不同的优先级,本发明使用注意力机制来计算用户实体与其他所有实体之间的相似度,然后使用相似度作为权重来对除用户实体外的其他实体进行加权求和,计算过程如下:

其中,h

之后本发明将用户向量表示与其他实体的融合向量表示拼接起来,则可以得到反映用户短期偏好的局部序列嵌入S

S

考虑到用户的偏好在短时间内变化较小,在长时间内变化较大,因此,在对用户的动态偏好建模时,本发明将时间间隔融合进门控循环单元中,提出了时间间隔可知门控循环单元,其结构如图4所示,对应的计算公式为:

其中,Δt为两个序列之间的时间间隔,

在物品表示学习模块,考虑到不同用户对物品的关注点不同,本发明认为在有限维度的限制下,每个物品向量表示中应该更多地包含当前用户关注的信息,而且考虑到相似用户偏好相似,在对物品建模时,本发明认为相似用户的评论应该被赋予更高权重,因此,本发明使用自注意力层来学习用户之间的相似度,并用该相似度作为权重来对物品进行用户特异的建模,具体公式如下:

其中,

之后本发明就可以计算用户u

最后,本发明对用户的评论进行加权求和来得到用户特异的物品向量表示,为了在物品评论中隐含更多信息,本发明使用了多头注意力机制:

其中,M为多注意力头的数量,m为求和时的索引。

在得到用户的全局序列嵌入

其中,q

为了验证本发明的可行性,申请人还做了相关实验,具体如如下:

数据集:为了验证本发明模型的效果,本发明选取了三个不同领域的大型公开数据集,分别是来自Amazon的Movies_and_TV数据集和Cell_Phones_and_Accessories数据集以及Yelp数据集,Movies_and_TV数据集和Cell_Phones_and_Accessorirs数据集分别包含影视娱乐领域以及电子产品领域商品的用户评分以及评论,Yelp数据集包含用户对餐馆的评分以及评论。三个数据集的基本信息如表1:

表1数据集的基本信息

对比实验:本发明选取了评分预测领域表现突出的5个模型来进行对比实验,分别是:

PMF:传统的矩阵分解方法,使用高斯分布来对用户和物品的隐因子来进行建模。

HFT:传统基于主题建模的方法,使用LDA来将用户的隐向量映射到隐主题空间。

DeepCoNN:基于深度学习的推荐模型,使用文本评论信息对用户行为和物品属性同时建模。

NARRE:性能优越的可解释推荐模型,使用了注意力机制来对用户评论的有效性进行建模。

DER:性能优越的可解释推荐模型,使用时间可感知的GRU来对用户的动态偏好进行建模。

实验设置:本发明使用Pytorch框架来实现本发明的模型,在本发明的实验中,训练批大小被设置为64,学习率初始化为5×10

实验结果:本发明使用评分预测领域常用的均方根误差(RMSE)作为指标来衡量模型的预测效果,具体计算公式为:

其中,D

其中,

测试结果如表2所示,可以看到本发明的模型PDKR在三个数据集上的效果要好于所有的基准模型,相比于基准模型中效果最好的DER模型,本发明分别在Cell_Phones_and_Accessories数据集,Movies_and_TV数据集和Yelp数据集上达到了9.8%,4.4%,8.0%的效果提升,由此验证了本发明模型的有效性。

表2所有模型的测试结果

本发明对比了序列长度对本发明模型效果的影响,本发明在{3,5,7,9,11}中去尝试不同的序列长度,效果如图5所示,其中,{3,5,7,9,11}指的是我分别尝试使用3,5,7,9,11作为子序列长度对原始序列进行分割,原始序列是按时间顺序排好序的一个用户的物品购买历史。

从图5中可以看出,在Cell_Phones_and_Accessories数据集上,效果最好的序列长度为5,在Yelp数据集上,效果最好的序列长度为7,而模型的效果随序列长度的增长大致呈先上升后下降的趋势,本发明认为这是由于当序列过短时,本发明学习到的全局序列表示不能很好地反映出用户偏好,而当序列过长时,本发明又很难学习到一个包含序列中反映出的所有偏好信息的全局序列表示,从而序列过长或过短都会使得模型效果下降。

数据稀疏是推荐领域非常严重的问题,本发明测试了模型在数据稀疏情况下的表现,如表3所示,本发明的模型在数据稀疏的情况下仍然要比所有基线模型baseline表现要好,由此验证了本发明模型的鲁棒性。

表3数据稀疏对模型效果的影响

为了验证模型的可解释性,本发明给出了在Cell_Phones_and_Accessories数据集上对不同用户生成推荐解释的例子,本发明分别对比了NARRE、DER以及本发明的PDKR生成的推荐解释。NARRE生成的解释用斜体标注了出来,可以看到NARRE对不同的用户给出了相同的解释,从而导致提供的解释不够个性化;DER生成的解释用虚线框标注了出来,PDKR生成的解释用实线框标注了出来,目标用户和对应的解释之间使用有向箭头连接起来。如图6所示,在PDKR生成的解释中,观点词和特征词之间使用箭头连接起来,特征词带有下划线标注,当用户对该特征表达的是积极情感时,对应的观点词与该特征词之间的连线为实线,否则,则为虚线。通过使用下划线来标注特征词,用户有了更多的选择,例如,当特征词已经非常明确,如用户A2Z45XKR1707P4Q的评论中显示的那样,用户可以选择忽略冗余的评论主体,但是当特征词像用户A1YOF7CINOIHR9的评论中显示的那样,用户可以在看完特征词后进一步参考上下文,从而更好地理解特征词的含义。注意到虽然DER模型为不同用户选择出了不同的评论,但是选出来的评论都非常简短,缺少上下文信息,例如DER为用户A3QQK02DVD45XF生成的解释中,只说明了手机无法正常使用,却没有给出具体理由,因此可能会引起用户的困惑。

上述实施例仅为本发明的优选实施例,并非对本发明保护范围的限制,但凡采用本发明的设计原理,以及在此基础上进行非创造性劳动而做出的变化,均应属于本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号