CN114637863B - 一种基于传播的知识图谱推荐方法 - Google Patents
一种基于传播的知识图谱推荐方法 Download PDFInfo
- Publication number
- CN114637863B CN114637863B CN202210329811.0A CN202210329811A CN114637863B CN 114637863 B CN114637863 B CN 114637863B CN 202210329811 A CN202210329811 A CN 202210329811A CN 114637863 B CN114637863 B CN 114637863B
- Authority
- CN
- China
- Prior art keywords
- user
- entity
- propagation
- knowledge
- recommendation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 239000013598 vector Substances 0.000 claims abstract description 63
- 230000003993 interaction Effects 0.000 claims abstract description 42
- 230000008569 process Effects 0.000 claims abstract description 23
- 230000002457 bidirectional effect Effects 0.000 claims abstract description 15
- 238000013507 mapping Methods 0.000 claims abstract description 13
- 230000002776 aggregation Effects 0.000 claims abstract description 11
- 238000004220 aggregation Methods 0.000 claims abstract description 11
- 230000007246 mechanism Effects 0.000 claims abstract description 7
- 238000012549 training Methods 0.000 claims description 16
- 125000004122 cyclic group Chemical group 0.000 claims description 9
- 239000011159 matrix material Substances 0.000 claims description 9
- 238000010586 diagram Methods 0.000 claims description 7
- 230000004913 activation Effects 0.000 claims description 6
- 230000000007 visual effect Effects 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000000644 propagated effect Effects 0.000 claims description 4
- 241000135164 Timea Species 0.000 claims description 3
- 238000013459 approach Methods 0.000 claims description 3
- 238000005065 mining Methods 0.000 claims description 3
- 238000006116 polymerization reaction Methods 0.000 claims description 3
- 238000002360 preparation method Methods 0.000 claims description 3
- 230000001902 propagating effect Effects 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 238000013528 artificial neural network Methods 0.000 abstract description 3
- 230000004931 aggregating effect Effects 0.000 description 4
- 238000009792 diffusion process Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于传播的知识图谱推荐方法,涉及推荐系统技术领域。由双端知识传播模块、循环注意力嵌入模块、推荐预测模块以及推荐解释模块组成。双端知识传播模块包括双端传播和双向知识传播,双端传播进行用户和物品信息的知识映射,双向知识传播是将用户和物品的信息在知识图谱上进行传播更新;循环注意力嵌入模块采用基于循环神经网络的注意力机制,学习实体迭代更新过程中邻居实体的权重;推荐预测模块通过聚合知识传播后得到的多层向量表示更新用户和物品嵌入向量,并采用内积操作得到最终的预测交互概率;推荐解释模块通过融合用户—物品交互图和知识图谱,挖掘目标用户到推荐结果之间的潜在联系,并以图结构的形式给出解释结果。
Description
技术领域
本发明涉及推荐系统技术领域,尤其涉及一种基于传播的知识图谱推荐方法。
背景技术
为了解决信息爆炸的问题,人们开始在各种在线应用中引入推荐系统来建模用户的偏好。随着个性化推荐长达几十年的研究和发展,个性化推荐已经逐渐成为各种网络应用中不可或缺的核心功能,目前已应用于电子商务、多媒体服务、音乐推荐以及电影推荐等多个领域,早已成为支撑互联网智能的基础技术之一。
近年来,知识图谱在推荐系统的发展过程中扮演着重要的角色。与单独利用用户-物品交互数据来完成推荐的方法相比,将知识图谱作为辅助信息引入推荐过程能帮助捕获更深层次的语义关系从而生成更精确的推荐结果。同时,知识图谱除了能够丰富用户和物品的向量表示外,其特有的图结构赋予了跟踪推荐背后推理路径的能力,可以帮助生成更为直观的和更多为推荐结果量身定制的解释,生成人们可接受的解释建议,使得系统对最终用户更加透明和可靠。因此将知识图谱作为辅助信息引入推荐系统引起了研究者的广泛关注。现有的基于知识图谱的推荐方法主要分为三类:基于嵌入的知识图谱推荐,基于路径的知识图谱推荐以及基于传播的知识图谱推荐。
基于传播的知识图谱推荐,是将基于嵌入推荐和基于路径推荐进行联合的知识图谱推荐方法。其采用迭代更新的思想,通过将实体信息在整个知识图谱上进行传播,并聚合当前实体的多跳邻居实体信息来丰富自身的向量表示。这种方法既弥补了基于嵌入的方法无法捕获高阶语义信息的缺点,又解决了基于路径的推荐方法中路径选择方面存在的问题。其中RippleNet是最早提出的基于传播的知识图谱推荐方法,它借用知识图谱中的实体连接,挖掘用户深层次的偏好以完成更好的推荐。KGCN利用图卷积神经网络在知识图谱上进行建模,通过聚合邻居实体和自身的表示获得最后的候选物品的向量表示。CKAN模型提出了一种将协作信号与知识关联相结合的方法,即采用异构传播的策略来显式地编码这两种信息,同时在实体向量更新的过程中应用注意力机制来区分不同邻居实体的贡献。
现有的大部分基于传播的方法在进行知识传播过程中均使用了单向传播的思想,即按照知识图谱这一有向图固有的方向从中心实体向外传播扩散,但这种单向传播的方法在一些数据稀疏的知识图谱上无法完成远距离的传播扩散,继而无法通过知识图谱中的实体连接捕获高阶的语义信息,这使得知识图谱在辅助推荐过程中无法发挥出最大效用。同时现有的大部分基于知识图谱的推荐方法,仅利用知识信息来丰富用户和物品的向量表示来提高推荐结果的准确性。其最终的推荐结果是一份个性化的推荐列表,并没有利用知识图谱丰富的内容信息和结构信息显式输出结构化信息作为推荐结果的合理解释提供给用户,而这种不具备解释的推荐结果往往不大容易被用户所接受。
发明内容
针对上述现有技术的不足,本发明提供了一种基于传播的知识图谱推荐方法;
一种基于传播的知识图谱推荐方法,具体包括以下步骤:
步骤1:对目标用户和参与推荐的物品信息在知识图谱上进行双端知识传播;
步骤1.1:对目标用户和参与推荐的物品信息进行双端传播;
对于用户u来说,从其历史交互数据中找到该用户曾经交互过得物品v,然后物品v与知识图谱中实体e之间进行映射,获得用户u知识传播的初始实体集;同时对于物品v,直接将物品v与知识图谱中的实体e进行映射匹配,将实体e作为物品v知识传播的初始实体集;其中用户u和物品v的初始实体集定义如下:
其中,yuv=1表示用户u和物品v之间存在交互;A表示表示物品和实体之间的映射集合;
步骤1.2:对用户和物品的初始实体集进行双向知识传播;
知识图谱G在形式上被表示为{(h,r,t)|h,t∈ε,r∈R}三元组的形式,其中h代表三元组的头实体,r表示三元组的关系,t表示三元组的尾实体,ε和R分别表示知识图谱G的实体集和关系集;采用双向知识传播的思想对用户u和物品v的初始实体集进行知识传播,获得初始实体集的l跳邻居实体集;借此来挖掘知识图谱中含有的高阶语义信息,帮助提高推荐的精度;将用户u和物品v的l跳邻居实体集定义如下:
其中l表示从初始实体集向外传播的距离,下角标w表示用户u和物品v的统一占位符;
在l跳邻居实体集的定义基础上,给定用户u和物品v的l跳传播集如下:
其中r′表示关系r的反向;
步骤2:采用循环注意力嵌入聚合传播过程中l跳邻居实体集的信息;
知识图谱G表示为{(h,r,t)|h,t∈ε,r∈R},其中每一个三元组描述了头实体h和尾实体t存在着关系r这一事实;知识图谱中每一个三元组的头实体和尾实体的相关性决定于它们之间的关系;
步骤2.1:设(h,r,t)是l跳传播集的第k个三元组,考虑某一头实体,其相关尾实体的循环注意力嵌入定义如下:
对于当前三元组而言,是头实体的嵌入向量,rk是关系的嵌入向量,是尾实体的嵌入向量,同时作为注意力权重控制实体信息传播过程中的衰减;该循环注意力机制定义如下:
zk=tanh(Wzxk+Whh0+bz)
fk=σ(Wfxk+Whh0+bf)
ik=σ(Wixk+Whh0+bi)
ok=σ(Woxk+Whh0+bo)
ck=fk⊙c0+ik⊙zk
其中h0,c0表示随机初始化的隐藏状态,Wz,Wi,Wf,Wo,Wh表示可训练的权重矩阵,同时bz,bi,bf和bo表示偏差;ik,ok和fk分别表示输入、输出和遗忘门;σ表示Sigmoid激活函数,⊙是向量的元素级乘积;
步骤2.2:采用softmax函数来对用户u和物品v的l跳传播集中的三元组的权重进行归一化处理:
其中,(h',r',t')表示当前传播集中任意一个三元组,和r′k分别表示三元组(h',r',t')中头实体和关系的嵌入向量表示;
步骤2.3:通过上述步骤1以及步骤2.1和2.2,得到用户u和物品v的l跳实体信息表示,其定义如下:
其中,w表示用户u和物品v的统一占位符,表示用户u和物品v在第l层传播集三元组的个数;l层即l跳;
步骤2.4:对于最终的用户和物品的向量表示,还需要将知识传播的起点即初始实体向量表示纳入最终的用户和物品多层向量表示集;用户u和物品v的初始实体向量表示定义如下:
用户u和物品v的信息在经过多层知识传播之后,得到最终的用户和物品的多层实体向量表示集:
步骤3:对目标用户u和参与推荐的物品v的交互概率进行预测;
在最终的预测之前需要将用户u和物品v的多层实体向量表示聚合为单个的用户和物品向量表示;在此,采用了连接聚合方式来实现多层到单个的向量聚合:
连接聚合:将多层实体向量表示进行连接操作,然后进行非线性变换的处理:
其中W1和b1分别表示转换权重矩阵和偏差,σ是非线性激活函数Sigmoid,||表示连接操作;
使用表示用户u最终的向量表示,使用代表物品v最终的向量表示;最后,对用户和物品的最终向量使用内积来预测用户u对物品v的偏好得分:
步骤4:对上述三个步骤得到的推荐结果进行解释;为了增加对推荐结果的理解,提出一种针对推荐结果的图形化的直观后解释方法;
步骤4.1:首先从用户—物品交互矩阵Y中提取每条用户和物品之间的交互信息以三元组的形式保存;若用户u和物品v之间存在历史交互,则会存在{(u,user.interact,v)|u,v∈Y}三元组表示;
步骤4.2:遵循构建知识图谱的思想构建用户—物品交互图,通过用户—物品交互图中的物品和知识图谱中的实体映射将二者融为交互知识图作为解释的准备条件;
步骤4.3:针对推荐部分给出的推荐结果;将用户和推荐结果中的每个物品以用户—物品对(u,v')的形式引入到构建好的交互知识图中,挖掘图中存在的用户与用户之间、用户与物品之间、物品与物品之间的潜在联系,从该用户出发探索图中存在的用户到推荐物品的路径语义信息,提取多条关系密切的用户到物品的路径,并将路径整合以图结构化的形式输出出来作为模型对推荐物品的解释;
步骤5:对步骤1-步骤3推荐过程进行训练优化;
为了优化推荐结果,采用交叉熵损失函数作为目标函数对步骤1-步骤3的推荐过程进行训练;在训练过程中,对每个用户采样与正样本数相同的的负样本进行训练;训练结束后,执行步骤1-步骤3对目标用户进行推荐;
损失函数定义如下:
其中J是交叉熵损失函数,P+表示用户—正样本对集合,P-表示用户—负样本对集合;是推荐过程中的参数,其中E和R是知识图谱中所有实体和关系的嵌入矩阵,λ表示L2正则化系数。
本发明有益技术效果:
在音乐和图书两个数据集上对本发明提出的方法进行实验,无论是在点击预测场景中还是Top-K推荐场景中,本方法与现有方法相比均有所提升,因此本方法能很好地缓解单向知识传播方法在较为稀疏的知识图谱上无法捕获更高阶语义信息的问题,从而提高了知识图谱在推荐系统中的利用率,能够为用户生成更加准确的个性化推荐列表,提高用户对系统的信任和接受程度。同时,本方法能很好的挖掘到用户的交互信息和知识信息之间的潜在联系,给出的图形化解释形式能为开发人员和用户提供对模型和推荐结果的合理解释,这种带有合理解释的推荐结果更容易被用户所接受。同时这种可解释个性化推荐方法能够加速用户获取高质量知识的效率,提高用户选择体验产品的概率以及用户满意程度等等,能够提高用户在平台上的留存率和转化率,从而为公司创造更大的商业价值。
附图说明
图1本发明实施例一种基于传播的知识图谱推荐方法流程框架示意图;其中,a为双端知识传播;b为循环注意力嵌入;c为推荐预测;d为推荐解释;e为b循环注意力嵌入的具体展开说明;
图2本发明实施例基于两个数据集的Top-K推荐场景下的Recall@K结果;其中图a为Last.FM数据集的结果;图b为Book-Crossing数据集的结果;
图3本发明实施例基于音乐数据集的推荐解释层实例。
具体实施方式
下面结合附图和实施例对本发明做进一步说明;
一种基于传播的知识图谱推荐方法从用户和物品两端出发,采用双向知识传播的思想进行实体信息的传播扩散,同时在知识传播过程中,基于循环嵌入的注意力机制聚合邻居实体的信息来丰富中心实体的向量表示,以最终得到的实体信息来丰富用户和物品的向量表示提高模型的推荐准确性。同时,针对推荐模块给出的推荐结果给出合理的解释,将目标用户和推荐物品输入到推荐解释模块,挖掘二者之间的潜在联系,最后输出图形式的解释作为推荐结果的解释。本发明整体流程框架示意图如图1所示;
本发明提出的基于双向传播的知识图谱可解释推荐方法主要有四种设计:第1,双端知识传播,它由双端知识和双向知识传播两部分组成,其中双端传播主要是将用户和物品信号传播到知识图谱上面,然后对双端传播所映射的实体信息进行双向知识传播扩散,通过聚合来自多跳邻居实体的知识信息来丰富用户和物品的向量表示,既能扩散用户偏好又能缓解新物品的冷启动问题。
第2,循环注意力嵌入,受基于路径的方法的启发,,引入一种新的基于循环神经网络的注意力机制,来学习实体向量迭代聚合更新过程中各邻居实体的权重。
第3,推荐预测,通过聚合双向知识传播得到的多层实体向量表示信息更新用户和物品的嵌入向量表示,然后对用户向量和物品向量采用内积操作得到最终的预测交互概率。
第4推荐解释,基于模型后解释的思想,根据用户的历史行为数据构建用户-物品交互图,将用户-物品交互图与知识图谱进行融合构建交互知识图,因此现有的交互知识图中既包含了历史行为数据中的用户交互信息,又包含了知识图谱中的知识关联信息,挖掘图中用户与用户之间、用户与物品之间、物品与物品之间的语义联系,针对推荐预测层给出的推荐结果,探索当前目标用户和推荐结果之间的潜在的路径语义联系,将挖掘到的语义联系进行可视化处理并以图结构化的形式展示针对目标用户和推荐结果的个性化推荐解释。
一种基于传播的知识图谱推荐方法,具体包括以下步骤:
步骤1:对目标用户和参与推荐的物品信息在知识图谱上进行双端知识传播;
双端知识传播分为双端传播和双向知识传播两部分;双端传播主要是将用户和物品信息引入知识图谱,构建用户和物品在进行双向知识传播的初始实体传播集;双向知识传播主要是将用户和物品信息在知识图谱上进行传播扩散;
步骤1.1:对用户和物品信息进行双端传播;
对于用户u来说,从其历史交互数据中找到该用户曾经交互过得物品v,然后物品v与知识图谱中实体e之间进行映射,获得用户u知识传播的初始实体集;同时对于物品v,直接将物品v与知识图谱中的实体e进行映射匹配,将实体e作为物品v知识传播的初始实体集;其中用户u和物品v的初始实体集定义如下:
其中,yuv=1表示用户u和物品v之间存在交互;A表示表示物品和实体之间的映射集合;
步骤1.2:对用户和物品的初始实体集进行双向知识传播;
知识图谱G在形式上被表示为{(h,r,t)h,t∈ε,r∈R}三元组的形式,其中h代表三元组的头实体,r表示三元组的关系,t表示三元组的尾实体,ε和R分别表示知识图谱G的实体集和关系集;采用双向知识传播的思想对用户u和物品v的初始实体集进行知识传播,获得初始实体集的l跳邻居实体集;借此来挖掘知识图谱中含有的高阶语义信息,帮助提高推荐的精度;将用户u和物品v的l跳邻居实体集定义如下:
其中l表示从初始实体集向外传播的距离,下角标w表示用户u和物品v的统一占位符;
在l跳邻居实体集的定义基础上,给定用户u和物品v的l跳传播集如下:
其中r'表示关系r的反向;
双向的知识传播使初始实体集沿着知识图谱中的实体连接一层一层由里向外传播;借此能够捕获知识图谱中丰富的高阶语义信息,进而更好地挖掘目标用户的潜在偏好,大大地提高模型对用户和物品嵌入表示能力;
步骤2:采用循环注意力嵌入聚合传播过程中l跳邻居实体集的信息;
知识图谱G表示为{(h,r,t)|h,t∈ε,r∈R},其中每一个三元组描述了头实体h和尾实体t存在着关系r这一事实;知识图谱中每一个三元组的头实体和尾实体的相关性决定于它们之间的关系;因此,提出了一种循环注意力嵌入的方法,帮助生成迭代更新过程中不同邻居实体的注意力权重;
步骤2.1:设(h,r,t)是l跳传播集的第k个三元组,考虑某一头实体,其相关尾实体的循环注意力嵌入定义如下:
对于当前三元组而言,是头实体的嵌入向量,rk是关系的嵌入向量,是尾实体的嵌入向量,同时作为注意力权重控制实体信息传播过程中的衰减;该循环注意力机制定义如下:
zk=tanh(Wzxk+Whh0+bz)
fk=σ(Wfxk+Whh0+bf)
ik=σ(Wixk+Whh0+bi)
ok=σ(Woxk+Whh0+bo)
ck=fk⊙c0+ik⊙zk
其中h0,c0表示随机初始化的隐藏状态,Wz,Wi,Wf,Wo,Wh表示可训练的权重矩阵,同时bz,bi,bf和bo表示偏差;ik,ok和fk分别表示输入、输出和遗忘门;σ表示Sigmoid激活函数,⊙是向量的元素级乘积;
步骤2.2:采用softmax函数来对用户u和物品v的l跳传播集中的三元组的权重进行归一化处理:
其中,(h',r',t')表示当前传播集中任意一个三元组,和r′k分别表示三元组(h',r',t')中头实体和关系的嵌入向量表示;
步骤2.3:对l跳传播集再次执行步骤1的双向知识传播,得到用户u和物品v的l跳实体信息表示,其定义如下:
其中,w表示用户u和物品v的统一占位符,表示用户u和物品v在第l层传播集三元组的个数;l层即l跳;
步骤2.4:对于最终的用户和物品的向量表示,还需要将知识传播的起点即初始实体向量表示纳入最终的用户和物品多层向量表示集;用户u和物品v的初始实体向量表示定义如下:
用户u和物品v的信息在经过多层知识传播之后,得到最终的用户和物品的多层实体向量表示集:
步骤3:对目标用户u和参与推荐的物品v的交互概率进行预测;
在最终的预测之前需要将用户u和物品v的多层实体向量表示聚合为单个的用户和物品向量表示;在此,采用了连接聚合方式来实现多层到单个的向量聚合:
连接聚合:将多层实体向量表示进行连接操作,然后进行非线性变换的处理:
其中W1和b1分别表示转换权重矩阵和偏差,σ是非线性激活函数Sigmoid,||表示连接操作;
使用表示用户u最终的向量表示,使用代表物品v最终的向量表示;最后,对用户和物品的最终向量使用内积来预测用户u对物品v的偏好得分:
步骤4:基于前三个步骤,对推荐结果进行解释;为了增加对推荐结果的理解,提出一种新的针对推荐结果的图形化的直观后解释方法;
步骤4.1:首先从用户—物品交互矩阵Y中提取每条用户和物品之间的交互信息以三元组的形式保存;若用户u和物品v之间存在历史交互,则会存在{(u,user.interact,v)|u,v∈Y}三元组表示;
步骤4.2:遵循构建知识图谱的思想构建用户—物品交互图,通过用户—物品交互图中的物品和知识图谱中的实体映射将二者融为交互知识图作为解释的准备条件;
步骤4.3:针对推荐部分给出的推荐结果;将用户和推荐结果中的每个物品以用户—物品对(u,v')的形式引入到构建好的交互知识图中,挖掘图中存在的用户与用户之间、用户与物品之间、物品与物品之间的潜在联系,从该用户出发探索图中存在的用户到推荐物品的路径语义信息,提取多条关系密切的用户到物品的路径,并将路径整合以图结构化的形式输出出来作为模型对推荐物品的解释;这有助于开发人员了解模型的行为,进一步对不同应用场景下的模型进行有针对性的改进,同时,帮助系统的用户了解推荐的原因,从而对推荐结果做出更加明确的选择;
步骤5:对步骤1-步骤3进行训练优化;
为了优化推荐结果,采用交叉熵损失函数作为目标函数对步骤1-步骤3进行训练;在训练过程中,对每个用户采样与正样本数相同的的负样本进行训练;训练结束后,执行步骤1-步骤3进行推荐;
损失函数定义如下:
其中J是交叉熵损失函数,P+表示用户—正样本对集合,P-表示用户—负样本对集合。是推荐过程中的参数,其中E和R是知识图谱中所有实体和关系的嵌入矩阵,λ表示L2正则化系数。
本发明方法基于音乐和图书两个真实的数据集进行了大量的实验,在两种实验场景中评估方法。其中在点击预测场景中,采用AUC和F1来评价本方法在点击预测场景中的表现。在Top-k推荐场景中,使用Recall@K作为评价指标来评价最后的推荐物品的准确性。基于两种数据集的点击预测和Top-K推荐结果分别见表1和附图2。从实验结果可以看出,与现有的基于传播的知识图谱推荐方法相比,该方法在音乐数据集针对AUC和F1评价指标分别实现了相对1.4%和1.2%的提升,在图书数据集针对AUC和F1评价指标分别实现了相对1.8%和1.6%的提升。
表1基于两个数据集的点击预测场景下的AUC和F1结果
从图2的实验结果可以看出,本发明方法在Top-K推荐场景中相较于其他基于传播的知识图谱推荐方法仍然表现优越。因此该推荐方法能为用户生成更加准确的个性化推荐列表,更加易于捕捉用户的潜在兴趣,更加精准的向用户推荐物品。
同时,针对本方法提出的推荐解释,基于音乐数据集进行实验验证模型整体的可解释性。从音乐数据集随机抽样用户u197然后从该用户的推荐结果中随机抽样音乐m2371。将用户u197和音乐m2371一同输入到推荐解释模块得到的图结构化的解释结果如图3所示。
图3中G1~G10表示与相同的物品存在交互的用户集合,通过图3展示的实验结果可以看出,本发明可以挖掘出目标用户和被推荐音乐之间存在多条包含不同语义信息的关系路径,并以图结构化的形式给出针对推荐结果的合理解释。这种具有合理解释的推荐结果更容易被用户所接受,从而增强用户对系统的信任和满意程度。
Claims (2)
1.一种基于传播的知识图谱推荐方法,其特征在于,具体包括以下步骤:
步骤1:对目标用户和参与推荐的物品信息在知识图谱上进行双端知识传播;双端知识传播包括双端传播和双向知识传播;得到用户和物品l跳邻居实体集;
步骤2:采用循环注意力嵌入聚合传播过程中l跳邻居实体集的信息;
步骤3:对目标用户u和参与推荐的物品v的交互概率进行预测;
步骤4:对上述三个步骤得到的推荐结果进行解释;为了增加对推荐结果的理解,提出一种针对推荐结果的图形化的直观后解释方法;
步骤5:对步骤1-步骤3推荐过程进行训练优化;训练结束后,执行步骤1-步骤3对目标用户进行推荐;
所述步骤1具体为:
步骤1.1:对目标用户和参与推荐的物品信息进行双端传播;
对于用户u来说,从其历史交互数据中找到该用户曾经交互过得物品v,然后物品v与知识图谱中实体e之间进行映射,获得用户u知识传播的初始实体集;同时对于物品v,直接将物品v与知识图谱中的实体e进行映射匹配,将实体e作为物品v知识传播的初始实体集;其中用户u和物品v的初始实体集定义如下:
其中,yuv=1表示用户u和物品v之间存在交互;A表示表示物品和实体之间的映射集合;步骤1.2:对用户和物品的初始实体集进行双向知识传播;
知识图谱G在形式上被表示为{(h,r,t)h,t∈ε,r∈R}三元组的形式,其中h代表三元组的头实体,r表示三元组的关系,t表示三元组的尾实体,ε和R分别表示知识图谱G的实体集和关系集;采用双向知识传播的思想对用户u和物品v的初始实体集进行知识传播,获得初始实体集的l跳邻居实体集;借此来挖掘知识图谱中含有的高阶语义信息,帮助提高推荐的精度;将用户u和物品v的l跳邻居实体集定义如下:
其中l表示从初始实体集向外传播的距离,下角标w表示用户u和物品v的统一占位符;
在l跳邻居实体集的定义基础上,给定用户u和物品v的l跳传播集如下:
其中r'表示关系r的反向;
所述步骤2具体为:
知识图谱G表示为{(h,r,t)h,t∈ε,r∈R},其中每一个三元组描述了头实体h和尾实体t存在着关系r这一事实;知识图谱中每一个三元组的头实体和尾实体的相关性决定于它们之间的关系;
步骤2.1:设(h,r,t)是l跳传播集的第k个三元组,考虑某一头实体,其相关尾实体的循环注意力嵌入定义如下:
对于当前三元组而言,是头实体的嵌入向量,rk是关系的嵌入向量,是尾实体的嵌入向量,同时作为注意力权重控制实体信息传播过程中的衰减;该循环注意力机制定义如下:
zk=tanh(Wzxk+Whh0+bz)
fk=σ(Wfxk+Whh0+bf)
ik=σ(Wixk+Whh0+bi)
ok=σ(Woxk+Whh0+bo)
ck=fk⊙c0+ik⊙zk
其中h0,c0表示随机初始化的隐藏状态,Wz,Wi,Wf,Wo,Wh表示可训练的权重矩阵,同时bz,bi,bf和bo表示偏差;ik,ok和fk分别表示输入、输出和遗忘门;σ表示Sigmoid激活函数,⊙是向量的元素级乘积;
步骤2.2:采用softmax函数来对用户u和物品v的l跳传播集中的三元组的权重进行归一化处理:
其中,(h',r',t')表示当前传播集中任意一个三元组,和分别表示三元组(h',r',t')中头实体和关系的嵌入向量表示;
步骤2.3:通过上述步骤1以及步骤2.1和2.2,得到用户u和物品v的l跳实体信息表示,其定义如下:
其中,w表示用户u和物品v的统一占位符,表示用户u和物品v在第l层传播集三元组的个数;l层即l跳;
步骤2.4:对于最终的用户和物品的向量表示,还需要将知识传播的起点即初始实体向量表示纳入最终的用户和物品多层向量表示集;用户u和物品v的初始实体向量表示定义如下:
用户u和物品v的信息在经过多层知识传播之后,得到最终的用户和物品的多层实体向量表示集:
所述步骤3具体为:
在最终的预测之前需要将用户u和物品v的多层实体向量表示聚合为单个的用户和物品向量表示;在此,采用了连接聚合方式来实现多层到单个的向量聚合:
连接聚合:将多层实体向量表示进行连接操作,然后进行非线性变换的处理:
其中W1和b1分别表示转换权重矩阵和偏差,σ是非线性激活函数Sigmoid,||表示连接操作;使用表示用户u最终的向量表示,使用代表物品v最终的向量表示;最后,对用户和物品的最终向量使用内积来预测用户u对物品v的偏好得分:
所述步骤4具体为:
步骤4.1:首先从用户—物品交互矩阵Y中提取每条用户和物品之间的交互信息以三元组的形式保存;若用户u和物品v之间存在历史交互,则会存在{(u,user.interact,v)u,v∈Y}三元组表示;
步骤4.2:遵循构建知识图谱的思想构建用户—物品交互图,通过用户—物品交互图中的物品和知识图谱中的实体映射将二者融为交互知识图作为解释的准备条件;
步骤4.3:针对推荐部分给出的推荐结果;将用户和推荐结果中的每个物品以用户—物品对(u,v')的形式引入到构建好的交互知识图中,挖掘图中存在的用户与用户之间、用户与物品之间、物品与物品之间的潜在联系,从该用户出发探索图中存在的用户到推荐物品的路径语义信息,提取多条关系密切的用户到物品的路径,并将路径整合以图结构化的形式输出出来作为模型对推荐物品的解释。
2.根据权利要求1所述的一种基于传播的知识图谱推荐方法,其特征在于,所述步骤5具体为:
为了优化推荐结果,采用交叉熵损失函数作为目标函数对步骤1-步骤3的推荐过程进行训练;在训练过程中,对每个用户采样与正样本数相同的的负样本进行训练;训练结束后,执行步骤1-步骤3对目标用户进行推荐;
损失函数定义如下:
其中J是交叉熵损失函数,P+表示用户—正样本对集合,P-表示用户—负样本对集合;是推荐过程中的参数,其中E和R是知识图谱中所有实体和关系的嵌入矩阵,λ表示L2正则化系数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210329811.0A CN114637863B (zh) | 2022-03-31 | 2022-03-31 | 一种基于传播的知识图谱推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210329811.0A CN114637863B (zh) | 2022-03-31 | 2022-03-31 | 一种基于传播的知识图谱推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114637863A CN114637863A (zh) | 2022-06-17 |
CN114637863B true CN114637863B (zh) | 2024-07-26 |
Family
ID=81950909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210329811.0A Active CN114637863B (zh) | 2022-03-31 | 2022-03-31 | 一种基于传播的知识图谱推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114637863B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116664240B (zh) * | 2023-06-05 | 2024-02-02 | 谢馥聪 | 基于图神经网络的购物行为预测方法、系统、存储介质及终端 |
CN117808089B (zh) * | 2024-02-29 | 2024-06-11 | 山东大学 | 一种基于双空间信息聚合的知识图谱推荐方法及系统 |
CN118069938A (zh) * | 2024-04-11 | 2024-05-24 | 南京争锋信息科技有限公司 | 一种基于时序和跨域协同的个性化推荐方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109903117A (zh) * | 2019-01-04 | 2019-06-18 | 苏宁易购集团股份有限公司 | 一种用于商品推荐的知识图谱处理方法及装置 |
CN113032618A (zh) * | 2021-03-26 | 2021-06-25 | 齐鲁工业大学 | 基于知识图谱的音乐推荐方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110704411B (zh) * | 2019-09-27 | 2022-12-09 | 京东方科技集团股份有限公司 | 适用于艺术领域的知识图谱搭建方法及装置、电子设备 |
CN110955834B (zh) * | 2019-11-27 | 2023-07-07 | 西北工业大学 | 一种知识图谱驱动的个性化精准推荐方法 |
-
2022
- 2022-03-31 CN CN202210329811.0A patent/CN114637863B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109903117A (zh) * | 2019-01-04 | 2019-06-18 | 苏宁易购集团股份有限公司 | 一种用于商品推荐的知识图谱处理方法及装置 |
CN113032618A (zh) * | 2021-03-26 | 2021-06-25 | 齐鲁工业大学 | 基于知识图谱的音乐推荐方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114637863A (zh) | 2022-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zheng et al. | Research on image classification method based on improved multi-scale relational network | |
CN114637863B (zh) | 一种基于传播的知识图谱推荐方法 | |
CN111241311B (zh) | 媒体信息推荐方法、装置、电子设备及存储介质 | |
Zhang et al. | Heterogeneous graph neural network | |
CN112529168B (zh) | 一种基于gcn的属性多层网络表示学习方法 | |
CN110737778A (zh) | 基于知识图谱和Transformer的专利推荐方法 | |
Sang et al. | Knowledge graph enhanced neural collaborative filtering with residual recurrent network | |
Yang et al. | Bilateral knowledge graph enhanced online course recommendation | |
CN113590976A (zh) | 一种空间自适应图卷积网络的推荐方法 | |
Hu et al. | Learning peer recommendation using attention-driven CNN with interaction tripartite graph | |
CN117390267A (zh) | 基于知识图谱的个性化多任务增强推荐模型 | |
Gwadabe et al. | IC-GAR: item co-occurrence graph augmented session-based recommendation | |
Zheng et al. | Kernelized deep learning for matrix factorization recommendation system using explicit and implicit information | |
Song et al. | A novel encoder-decoder knowledge graph completion model for robot brain | |
Zhang et al. | Knowledge graph driven recommendation model of graph neural network | |
Cui et al. | RAKCR: Reviews sentiment-aware based knowledge graph convolutional networks for Personalized Recommendation | |
Zhang et al. | Hybrid structural graph attention network for POI recommendation | |
Zeng | Application of conditional random field model based on machine learning in online and offline integrated educational resource recommendation | |
CN117235375A (zh) | 基于图神经网络与元学习的用户多行为推荐方法 | |
Lu | Design of a music recommendation model on the basis of multilayer attention representation | |
CN115310004A (zh) | 融合项目时序关系的图神经协同过滤推荐方法 | |
CN115545833A (zh) | 一种基于用户社交信息的推荐方法及系统 | |
Zhao et al. | MFGCL: Light graph contrast learning with multi-feature information for recommendation | |
Wang et al. | HGCR: A heterogeneous graph enhanced interactive course recommendation scheme for online learning | |
Shi et al. | Mpl-transkr: multi-perspective learning based on transformer knowledge graph enhanced recommendation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |