CN111651613A - 一种基于知识图谱嵌入的动态推荐方法及*** - Google Patents
一种基于知识图谱嵌入的动态推荐方法及*** Download PDFInfo
- Publication number
- CN111651613A CN111651613A CN202010649393.4A CN202010649393A CN111651613A CN 111651613 A CN111651613 A CN 111651613A CN 202010649393 A CN202010649393 A CN 202010649393A CN 111651613 A CN111651613 A CN 111651613A
- Authority
- CN
- China
- Prior art keywords
- fact
- query
- graph
- embedding
- knowledge
- 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.)
- Granted
Links
Images
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (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
本发明公开了一种基于知识图谱嵌入的动态推荐方法和***。该方法包括步骤:接收输入的查询事实,在知识图谱中查找是否存在所述查询事实,若存在所述查询事实,则直接输出推荐结果,若不存在所述查询事实,则更新所述知识图谱后再输出推荐结果;其中更新所述知识图谱是采用结合图卷积神经网络与ANALOGY模型的动态知识图谱嵌入方法。本发明能够减少知识图谱的冗余学习过程,使用户每次数据更新或者有了新的倾向与喜好时,能够迅速地更新整个知识图谱,大大提高整个动态推荐的可靠性与稳定性。
Description
技术领域
本发明属于信息处理技术领域,更具体地,涉及一种基于知识图谱嵌入的动态推荐方法及***。
背景技术
知识图谱对推荐***十分有用,目前关于知识图谱用于预测和推荐的研究主要集中在知识图谱的嵌入方法上。知识图谱嵌入可以把复杂的异构有向图转换为符合一定特征的低维向量或者线性变换。传统的方法一般可分为翻译距离法、匹配语义法和神经网络法。传统的推荐***中使用的知识图谱嵌入算法有以下两个缺点。
(1)由于每次对知识图谱进行嵌入时,都要将整个知识图谱进行重新学习与嵌入,在实际使用中,推荐***不可避免地需要对用户的数据进行实时与动态更新,而传统方法显然对于动态更新是十分繁琐而低效的,每次更新都对整个知识图谱进行重新嵌入将会大大影响用户的体验和整个推荐***的有效性。
(2)对于一些有明确规则且数据量较少的数据,缺少大量数据学习的知识图谱嵌入缺乏准确性,往往做出轻率错误的判断,不能有效利用现存的知识,从而影响用户对推荐***的体验。
发明内容
针对现有技术的至少一个缺陷或改进需求,本发明提供了一种基于知识图谱嵌入的动态推荐方法、***及存储介质,能够减少知识图谱的冗余学习过程,使用户每次数据更新或者有了新的倾向与喜好时,能够迅速地更新整个知识图谱,大大提高整个动态推荐的可靠性与稳定性。
为实现上述目的,按照本发明的第一方面,提供了一种基于知识图谱嵌入的动态推荐方法,包括步骤:
接收输入的查询事实,在知识图谱中查找是否存在所述查询事实,若存在所述查询事实,则直接输出推荐结果,若不存在所述查询事实,则更新所述知识图谱后再输出推荐结果;
其中,所述更新所述知识图谱实现如下:
获取受所述查询事实影响的其他事实;
分别获取所述查询事实的关联子图和所述其他事实的关联子图;
分别将所述查询事实的关联子图和所述其他事实的关联子图输入到图卷积神经网络,以分别输出所述查询事实的关联子图的嵌入向量和所述其他事实的关联子图的嵌入向量;
将所述查询事实的原始嵌入向量与所述查询事实的关联子图的嵌入向量进行结合,获取所述查询事实的上下文嵌入向量,将所述其他事实的原始嵌入向量与所述其他事实的关联子图的嵌入向量进行结合,获取所述其他事实的上下文嵌入向量,将所述查询事实的原始嵌入向量、所述其他事实的原始嵌入向量、所述查询事实的关联子图的嵌入向量、所述其他事实的关联子图的嵌入向量、所述查询事实的上下文嵌入向量和所述其他事实的上下文嵌入向量保存在所述知识图谱中。
优选地,动态推荐方法还包括步骤:预先定义逻辑规则,基于所述逻辑规则对所述查询事实进行逻辑推理,输出推荐结果。
优选地,动态推荐方法还包括步骤:预先训练所述图卷积神经网络,在更新所述知识图谱的过程中,所述图卷积神经网络的参数保持不变。
优选地,采用线性变换矩阵或距离模型对所述知识图谱中的关系进行建模。
优选地,所述基于所述逻辑规则对所述查询事实进行逻辑推理包括步骤:
判断所述查询事实的数据类型,若所述查询事实为复合数据,则对所述查询事实进行分解,然后对分解后的数据进行预处理,若为原子数据,则直接对所述查询事实进行预处理;
基于所述逻辑规则对预处理后的数据进行合一过滤,输出替换信息子集;
根据所述替换信息子集对所述查询事实进行替换,输出推荐结果。
优选地,若所述逻辑规则为包括条件和结论的规则,则在所述合一过滤前,对所述逻辑规则分离所述条件和所述结论,首先将所述结论与所述预处理后的数据进行合一过滤,若匹配成功则将所述条件与所述预处理后的数据进行合一过滤。
优选地,所述预处理为对所述查询事实中的变量进行重命名,以防止变量名称冲突。
优选地,动态推荐方法还包括步骤:用输出的所述推荐结果更新所述知识图谱和所述逻辑规则。
按照本发明的第二方面,提供了一种基于知识图谱嵌入的动态推荐***,包括:
查询模块,用于接收输入的查询事实,在知识图谱中查找是否存在所述查询事实,若存在所述查询事实,则直接输出推荐结果,若不存在所述查询事实,则更新所述知识图谱后再输出推荐结果;
知识图谱嵌入模块,用于更新所述知识图谱;
其中,所述知识图谱嵌入模块包括:
其他事实获取模块,用于获取受所述查询事实影响的其他事实;
关联子图获取模块,用于分别获取所述查询事实的关联子图和所述其他事实的关联子图;
图卷积神经网络,用于分别将所述查询事实的关联子图和所述其他事实的关联子图输入到所述图卷积神经网络,以分别输出所述查询事实的关联子图的嵌入向量和所述其他事实的关联子图的嵌入向量;
更新模块,用于将所述查询事实的原始嵌入向量与所述查询事实的关联子图的嵌入向量进行结合,获取所述查询事实的上下文嵌入向量,将所述其他事实的原始嵌入向量与所述其他事实的关联子图的嵌入向量进行结合,获取所述其他事实的上下文嵌入向量,将所述查询事实的原始嵌入向量、所述其他事实的原始嵌入向量、所述查询事实的关联子图的嵌入向量、所述其他事实的关联子图的嵌入向量、所述查询事实的上下文嵌入向量和所述其他事实的上下文嵌入向量保存在所述知识图谱中。
本发明与现有技术相比,具有有益效果:
(1)结合使用ANALOGY模型和图卷积神经网络的方法,减少整个知识图谱的冗余学习过程。结合使用ANALOGY模型与图卷积神经网络的动态嵌入方法从两个不同的层面与角度大大降低了整个推荐***与知识图谱嵌入、建模与使用的复杂度。ANALOGY模型从关系建模的角度降低了学习的复杂度,图卷积神经网络从学习方式的角度降低了学习的成本。
(2)融合逻辑编程、推理的方法对动态推荐***的功能进行拓展。在推荐***中融入逻辑模块不仅可以大幅提高推荐***推荐时的效率、可靠性与稳定性,还可以大大简化知识图谱的建立与输入过程,通过几条简单的逻辑规则,我们便可以构造大量的符合规则的事实,为动态推荐***提供更多的选择与提升的空间。并且由于知识图谱并不是根据推理规则来进行推理与推荐,而是依靠事实之间相关联的概率来进行计算事实存在的概率。而且知识图谱往往是缺失事实的,所以得到的概率在数据不够完整的情况下可能是不准确的。所以引入逻辑编程模块显式地利用确定可靠的逻辑规则来进行推理是更加可靠且准确的。
(3)知识图谱嵌入模块与逻辑模块的互补性。知识图谱嵌入模块与逻辑***模块是相互补充与促进的,知识图谱嵌入模块可以挖掘出新的逻辑规则来补充逻辑模块,逻辑***可以使用逻辑规则产生更多的事实来训练与补全知识图谱***。
总而言之,本发明通过知识图谱的实时更新嵌入的方式以及逻辑编程***对事实和规则的推理,从而适应用户数据不断变化的动态推荐环境,使用户每次数据更新或者有了新的倾向与喜好时,能够迅速地更新整个知识图谱对用户的分析,同时通过对已有的逻辑规则的有效利用,大大提高整个推荐***的可靠性与稳定性。
附图说明
图1是本发明实施例的推荐***流程示意图;
图2是本发明实施例的实体子图示意图;
图3是本发明实施例的关系子图示意图;
图4是本发明实施例的知识图谱更新示意图;
图5是本发明实施例的逻辑模块示意图;
图6是是实验效果对比分析示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
如图1所示,本发明实施例的一种基于知识图谱嵌入的动态推荐方法,包括步骤A到步骤E。
步骤A:接收输入的查询事实。
查询事实即为用户输入需要推测的数据。该数据可以是含有变量的推理或推测的数据模式,也可以是普通的一条用来直接查询的简单的数据。
步骤B:预先定义逻辑规则,基于逻辑规则对查询事实进行逻辑推理,输出推荐结果。
基于逻辑规则,便可根据查询事实构造符合规则的事实。
如果查询事实可以由逻辑模块直接推理得到,则可以无需执行步骤C,即无需利用知识图谱进行推荐,直接输出结果即可。
步骤C:图卷积神经网络与ANALOGY模型相结合的知识图谱动态嵌入。
如果查询事实无法由逻辑模块直接推理得到,则执行步骤C利用知识图谱进行推荐。在知识图谱中查找是否存在查询事实,若存在查询事实,则直接输出推荐结果,若不存在查询事实,则更新知识图谱,将与每个事实相关的子图通过图卷积神经网络获得其相关联的子图的嵌入结果,然后将该结果与原事实的嵌入向量进行合并。嵌入向量通过一定的运算进行叠加,从而使得最终结果满足约束条件。
知识图谱中的数据表示包括节点和关系。ANALOGY的评分模型对不同的关系使用线性变换(矩阵)来进行建模。具体实现时需要要求矩阵满足正规性与复合可交换性,因而所有矩阵可以拆分为一个分块对角矩阵,从而大大降低知识图谱学习与嵌入的成本。
实施知识图谱动态更新时,KGCN模型在实际操作中为每个实体或关系在向量空间中定义两种不同的表示形式。当一个实体(或关系)表示其嵌入的原始知识图时,我们将其映射为向量空间中的低维向量(或线性变换)。当它表示与实体(或关系)关联的子图的一部分时,我们定义嵌入在可表示向量空间中的子图(上下文)元素的另一种表示形式。为了获得子图的嵌入,我们使用图卷积神经网络,该网络将原始向量嵌入和与元素相关联的子图嵌入相结合,以获得上下文嵌入(Context Embedding)。我们可以结合使用上下文元素嵌入来为动态知识图实现动态学习算法。
为了嵌入与每个实体(元素)关联的子图,需要首先训练该实体所需要的图卷积神经网络。对于相应的图卷积神经网络,初始输入数据是一个随机的嵌入向量,然后由嵌入向量组成的矩阵通过图卷积神经网络的每一层(共享每一层的邻接矩阵信息)以获得我们需要的子图嵌入结果x_sub。我们将该子图嵌入x_sub与原元素的向量嵌入进行结合得到x_context,如此,在每次知识图谱进行动态更新时,由于我们将子图嵌入与元素本身的嵌入相分离然后再组合,我们便不再需要将这个知识图谱的所有节点与关系重新学习,只要将上下文结构发生变化的元素进行重新学习即可。这大大减少了知识图谱更新的复杂度,提高了整个推荐***对现实世界的复杂问题的实用性。
步骤D.更新知识图谱。
根据输出的推荐结果,将新推测得到的事实作为知识图谱的补全并更新知识图谱。
步骤E.输出推荐结果。
最后输出推测分析的结果,该结果可以是具体数据也可以是一个概率值,作为推荐***的前端数据库用来匹配具体的物品或用户。
优选地,可通过动态知识图谱嵌入挖掘出新的逻辑规则来补充逻辑模块,逻辑***可以使用逻辑规则产生更多的事实来训练与补全知识图谱***。
如何从知识图谱中挖掘出规则可以使用传统的数据挖掘中的规则挖掘算法,有很多算法可以使用,这里不做具体的具体要求。
如图4所示,动态更新知识图谱具体可通过以下方式实现。
下面介绍本发明实施例所使用的动态优化算法。由于现实世界中的知识图谱总是动态变化与更新的,因而如何实现一种代价小,效率高的知识图谱嵌入动态更新算法变得很重要。当一个或多个事实发生更新时,一个好的知识图谱嵌入算法不仅应该能够快速获得更新的事实的向量嵌入,而且应该能快速对由于更新所影响到的其它事实进行调整。因此对于动态更新算法来说,最重要的事即是快速发现哪些事实的向量嵌入需要更新然后针对性的去处理这些变化。
由于需要对每个事实的关联子图进行嵌入,所以首先保持KGCN初始化时所学习到的图卷积神经网络参数保持不变,而且已经获得的事实的关联子图的嵌入也保持不变。因而对于知识图谱的更新而言,我们需要更新的元素有:(1)查询事实的嵌入向量;(2)查询事实的关联子图的嵌入向量;(3)受查询事实影响的其他事实的嵌入向量。
本发明实施例的主要创新点在于将图卷积神经网络与ANALOGY相融合的更准确高效的建模方法。ANALOGY可以在有效降低嵌入学习的复杂度的同时,保持模型对一对多与多对一关系以及非对称与对称关系的表达能力。图卷积神经网络的结合更是进一步降低了整个知识库嵌入的成本,使知识图谱在推荐***中的实际使用成为可能。
所述知识图谱更新实现方法具体可包括步骤C1至C5。
步骤C1:查找该查询事实:根据查询事实的值和模式,在知识图谱的***里面查找该查询事实是否存在,如果找到该查询事实则无需更新,否则执行步骤C2。
步骤C2:获取受查询事实影响的其他事实:搜索该查询事实的关联子图,可采取搜索直接相邻的事实,即为受查询事实影响的其他事实,然后将这些事实共同列入待更新数据。
即待更新数据包括该查询事实以及受查询事实影响的其他事实,即为下文所说的新事实/新数据。
步骤C3:获取新数据的相关子图:即分别获取查询事实的关联子图和该其他事实的关联子图,将与新数据相关联的实体和关系提取出来组成相关子图用于图卷积神经网络的输入。
对于每一个事实三元组中的实体来说,最直接的相关联的子图就是它们的相邻实体。由于图卷积神经网络的特性以及为了捕获给定实体及其相邻实体之间的拓扑信息,将每个实体的相关联的子图定义为由其相邻实体及其自身组成的有向子图。在解决实际问题时,由于知识图谱的数据量往往十分巨大且复杂,必须尽可能降低KGCN的复杂性,因此被捕获的相邻实体的数量应该尽可能少,比如仅考虑直接相邻的实体。如图2所示,中间实体的相邻节点为周围实体。
对于每一个事实三元组中的关系来说,其先关联的子图选取则较为复杂。对于一个事实三元组中的关系,首先需要捕获与这一关系相关联的关系,即相邻的关系。为了获取所有相邻的关系,首先需要获得所有该关系相连的节点实体,然后通过这些节点实体获得需要的相邻关系。捕获相邻关系便不再是关系和箭头,而是作为一个节点与一开始选取的关系相连构成一个新的无向图。如图3所示,中间关系的相邻关系是周围的关系。
步骤C4:学习需要更新的数据(事实):采用梯度下降的方法,对整个处理过程进行反向传播更新。对于新事实的更新,我们首先随机初始化其原始嵌入向量,然后将关联子图输入到图卷积神经网络中得到新的关联子图向量,将新的关联子图向量与原始嵌入向量相结合使用ANALOGY模型来进行评估嵌入结果,然后将评估得到的误差反向传播(可以使用Adam,SGD等已有算法)给图卷积神经网络和原始嵌入向量,更新图卷积神经网络的参数和原始嵌入向量的参数,直到结果合适为止。
具体的是:分别将查询事实的关联子图和其他事实的关联子图输入到图卷积神经网络,以分别输出查询事实的关联子图的嵌入向量和其他事实的关联子图的嵌入向量;将查询事实的原始嵌入向量与查询事实的关联子图的嵌入向量进行结合,获取查询事实的上下文嵌入向量,将其他事实的原始嵌入向量与其他事实的关联子图的嵌入向量进行结合,获取其他事实的上下文嵌入向量,将查询事实的原始嵌入向量、其他事实的原始嵌入向量、查询事实的关联子图的嵌入向量、其他事实的关联子图的嵌入向量、查询事实的上下文嵌入向量和其他事实的上下文嵌入向量更新保存在知识图谱中。
步骤C5:完成知识图谱更新:将数据嵌入保存在知识图谱***中。
如图5所示,基于逻辑规则推荐可通过以下方式实现。
在阐述基于逻辑规则推荐的过程中,我们多使用术语“数据”来代替“事实”这一词,但实际上它们是相似的概念。
逻辑模块可以使用三种基本元素构成:原子数据(atom data),复合数据(compound data)和逻辑规则(rule)。原子数据是不可分割的数据,比如一个单词;复合数据是由多个数据复合得到的数据,比如词组,句子;逻辑规则规定了什么样的复合是有效的,逻辑规则可以用来生成大量新数据。
优选地,本发明实施例的逻辑模块核心使用合一算法,即利用等价关系求得需要的结果。合一算法对原子数据直接比较是否相等,对复合数据进行递归调用。使用合一算法,便可以构造本发明逻辑模块的整个***。
步骤B1:判断查询事实的数据类型。
分析查询事实(数据)的数据类型,如果是一条复合数据,即由多个条件语句绑定,则需要对数据进行步骤B6的分解,并作为流(Stream)来逐一处理;否则,数据为一条简单数据,无需分解直接进入步骤B2。
步骤B2:对复合数据分解后的数据或原始的原子数据进行预处理。
预处理最重要的功能之一是对数据中需要匹配的变量进行重命名,以防止后续推理所有可能带来的变量名冲突。该步骤还可以对数据进行一些变形以提高推理的效率。
步骤B3:合一(unify)过滤。
对于unify算法来说,我们需要输入的是三个参数,即匹配对象、匹配目标和匹配替换信息。匹配对象即查询事实,匹配目标即逻辑规则。对于每一个(var x)来说,只要第一个单词是var,我们就认为x是一个需要通过匹配得出结果的变量。在进行实际匹配的时候,我们首先需要判断匹配的目标和对象是否其中之一是一个变量,如果是的话,我们使用match_var函数来进行下一步的匹配,否则如果是常量的话,则两边必须相等,否则返回失败信息。如果以上情况都不是,那么我们首先取两边数据的第一个元素,然后尝试对两者的第一个数据进行匹配,如果成功,则继续匹配两者剩余的数据。
有了unify函数,下一步我们需要定义的是match_var函数。match_var函数首先判断两者是否相等,如果相等的话直接返回替换信息,否则,尝试从替换信息中得到变量的值,如果得到的话则进行下一步的匹配,如果没有查询到相应的值,则对这一变量进行绑定并添加到替换信息中去。
最后我们还需要注意的是,我们需要检查unify的匹配对象两边是否存在循环定义,如果存在的话我们直接返回匹配失败。
步骤B4:获得替换结果。
从步骤B3合一算法中可以得到不同变量的替换结果所组成的替换信息子集,我们还可以对变量替换值进行整理与化简,从而为步骤B5作准备。
步骤B5:完成替换并输出推荐结果。
根据步骤B4中得到的替换信息子集,我们对数据做替换操作,从而得到最终我们需要的推荐结果。该结果可以作为推荐***其他模块使用。
步骤B6:分解查询事实。
如果步骤B1发现输入查询事实是一条多个条件所组成的复合数据,则步骤B6对数据进行逐条分解,然后每一条进入步骤B2预处理步骤,并根据每一条的处理结果进行合一过滤,最终将所有结果合并在一起,最终进入步骤B5输出结果。
步骤B7:分离逻辑规则的条件和结论。
在进行合一过滤处理时,如果某一条知识库中的逻辑规则为包括条件和结论的规则,则将该逻辑规则的条件与结论分离,并首先将输入的待处理数据与结论相匹配过滤,如果成功,则对该知识的条件部分进行匹配与过滤。
本发明实施例的一种基于知识图谱嵌入的动态推荐方法,还存在其他可能的替换方式,例如:
(1)在知识图谱嵌入阶段,为了降低学习的复杂度提高处理速度,可以使用距离模型来代替使用矩阵来对关系进行建模,但是如此会降低嵌入结果的精确度与表达力。
(2)可以如图1所示,先基于逻辑规则推荐,若无法推理成功,则继续基于知识图谱推荐。也可以调换两种方法的顺序,先基于知识图谱推荐,若无法推荐成功,则继续基于逻辑规则推荐。也可以单独使用基于知识图谱推荐的方法。
(3)动态更新步骤与推荐步骤可以使用多线程的方式来达到一定程度上的并发。
(4)在逻辑模块的预处理步骤中可以加入更多优化,比如进行逻辑上的形式化化简;而且,我们也可以不使用变量重命名的方法,转而使用多个命名空间的方法。
对比传统的使用随机游走、贝叶斯推测等推荐***的核心方法,本发明采用了一种基于知识图谱嵌入的动态推荐方法,该方法可以将网络上成千上万的大数据进行统一处理,并且对比许多传统的嵌入方法,如距离向量法等静态嵌入方法,本方法使用结合图卷积神经网络与ANALOGY的方法,使得对关系的建模拥有足够的表达力来表达更多一对多与非对称的关系,同时,渐进式的嵌入方式大大提高了推荐***的效率与灵活性。
图6是在数据集WN18实验下的loss下降对比图。横坐标是训练次数,纵坐标是loss值。可以看到,本发明实施例所使用的KGCN与ANALOGY算法相比传统的TransE在一开始的训练中便已经接近与0,收敛速度大大提高。
本发明实施例还融入了逻辑编程的方法,使得我们不仅可以简单地描述事实与单条数据,还可以使用逻辑推理来构造成千上万的新知识。在推理与推测阶段,逻辑模块更是大大降低了推测的复杂度,同时提高了分析的准确性与可靠性。
本发明实施例的一种基于知识图谱嵌入的动态推荐***,包括:查询模块,用于接收输入的查询事实,在知识图谱中查找是否存在该查询事实,若存在该查询事实,则直接输出推荐结果,若不存在该查询事实,则更新知识图谱后再输出推荐结果;知识图谱嵌入模块,用于更新知识图谱;知识图谱嵌入模块包括:其他事实获取模块,用于获取受查询事实影响的其他事实;关联子图获取模块,用于分别获取查询事实的关联子图和该其他事实的关联子图;图卷积神经网络,用于分别将查询事实的关联子图和其他事实的关联子图输入到该图卷积神经网络,以分别输出查询事实的关联子图的嵌入向量和其他事实的关联子图的嵌入向量;更新模块,用于将查询事实的原始嵌入向量与查询事实的关联子图的嵌入向量进行结合,获取查询事实的上下文嵌入向量,将其他事实的原始嵌入向量与其他事实的关联子图的嵌入向量进行结合,获取其他事实的上下文嵌入向量,将查询事实的原始嵌入向量、其他事实的原始嵌入向量、查询事实的关联子图的嵌入向量、其他事实的关联子图的嵌入向量、查询事实的上下文嵌入向量和其他事实的上下文嵌入向量更新保存在知识图谱中。
优选地,基于知识图谱嵌入的动态推荐***,还包括逻辑模块,用于预先定义逻辑规则,基于逻辑规则对查询事实进行逻辑推理,输出推荐结果。
基于知识图谱嵌入的动态推荐***的实现原理、技术效果与上述基于知识图谱嵌入的动态推荐方法类似,此处不再赘述。
必须说明的是,上述任一实施例中,方法并不必然按照序号顺序依次执行,只要从执行逻辑中不能推定必然按某一顺序执行,则意味着可以以其他任何可能的顺序执行。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于知识图谱嵌入的动态推荐方法,其特征在于,包括步骤:
接收输入的查询事实,在知识图谱中查找是否存在所述查询事实,若存在所述查询事实,则直接输出推荐结果,若不存在所述查询事实,则更新所述知识图谱后再输出推荐结果;
其中,所述更新所述知识图谱实现如下:
获取受所述查询事实影响的其他事实;
分别获取所述查询事实的关联子图和所述其他事实的关联子图;
分别将所述查询事实的关联子图和所述其他事实的关联子图输入到图卷积神经网络,以分别输出所述查询事实的关联子图的嵌入向量和所述其他事实的关联子图的嵌入向量;
将所述查询事实的原始嵌入向量与所述查询事实的关联子图的嵌入向量进行结合,获取所述查询事实的上下文嵌入向量,将所述其他事实的原始嵌入向量与所述其他事实的关联子图的嵌入向量进行结合,获取所述其他事实的上下文嵌入向量,将所述查询事实的原始嵌入向量、所述其他事实的原始嵌入向量、所述查询事实的关联子图的嵌入向量、所述其他事实的关联子图的嵌入向量、所述查询事实的上下文嵌入向量和所述其他事实的上下文嵌入向量保存在所述知识图谱中。
2.如权利要求1所述的一种基于知识图谱嵌入的动态推荐方法,其特征在于,还包括步骤:预先定义逻辑规则,基于所述逻辑规则对所述查询事实进行逻辑推理,输出推荐结果。
3.如权利要求1或2所述的一种基于知识图谱嵌入的动态推荐方法,其特征在于,还包括步骤:预先训练所述图卷积神经网络,在更新所述知识图谱的过程中,所述图卷积神经网络的参数保持不变。
4.如权利要求1或2所述的一种基于知识图谱嵌入的动态推荐方法,其特征在于,采用线性变换矩阵或距离模型对所述知识图谱中的关系进行建模。
5.如权利要求2所述的一种基于知识图谱嵌入的动态推荐方法,其特征在于,所述基于所述逻辑规则对所述查询事实进行逻辑推理包括步骤:
判断所述查询事实的数据类型,若所述查询事实为复合数据,则对所述查询事实进行分解,然后对分解后的数据进行预处理,若为原子数据,则直接对所述查询事实进行预处理;
基于所述逻辑规则对预处理后的数据进行合一过滤,输出替换信息子集;
根据所述替换信息子集对所述查询事实进行替换,输出推荐结果。
6.如权利要求5所述的一种基于知识图谱嵌入的动态推荐方法,其特征在于,若所述逻辑规则为包括条件和结论的规则,则在所述合一过滤前,对所述逻辑规则分离所述条件和所述结论,首先将所述结论与所述预处理后的数据进行合一过滤,若匹配成功则将所述条件与所述预处理后的数据进行合一过滤。
7.如权利要求5所述的一种基于知识图谱嵌入的动态推荐方法,其特征在于,所述预处理为对所述查询事实中的变量进行重命名,以防止变量名称冲突。
8.如权利要求2所述的一种基于知识图谱嵌入的动态推荐方法,其特征在于,还包括步骤:用输出的所述推荐结果更新所述知识图谱和所述逻辑规则。
9.一种基于知识图谱嵌入的动态推荐***,其特征在于,包括:
查询模块,用于接收输入的查询事实,在知识图谱中查找是否存在所述查询事实,若存在所述查询事实,则直接输出推荐结果,若不存在所述查询事实,则更新所述知识图谱后再输出推荐结果;
知识图谱嵌入模块,用于更新所述知识图谱;
其中,所述知识图谱嵌入模块包括:
其他事实获取模块,用于获取受所述查询事实影响的其他事实;
关联子图获取模块,用于分别获取所述查询事实的关联子图和所述其他事实的关联子图;
图卷积神经网络,用于分别将所述查询事实的关联子图和所述其他事实的关联子图输入到所述图卷积神经网络,以分别输出所述查询事实的关联子图的嵌入向量和所述其他事实的关联子图的嵌入向量;
更新模块,用于将所述查询事实的原始嵌入向量与所述查询事实的关联子图的嵌入向量进行结合,获取所述查询事实的上下文嵌入向量,将所述其他事实的原始嵌入向量与所述其他事实的关联子图的嵌入向量进行结合,获取所述其他事实的上下文嵌入向量,将所述查询事实的原始嵌入向量、所述其他事实的原始嵌入向量、所述查询事实的关联子图的嵌入向量、所述其他事实的关联子图的嵌入向量、所述查询事实的上下文嵌入向量和所述其他事实的上下文嵌入向量保存在所述知识图谱中。
10.如权利要求9所述的一种基于知识图谱嵌入的动态推荐***,其特征在于,还包括逻辑模块,用于预先定义逻辑规则,基于所述逻辑规则对所述查询事实进行逻辑推理,输出推荐结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010649393.4A CN111651613B (zh) | 2020-07-08 | 2020-07-08 | 一种基于知识图谱嵌入的动态推荐方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010649393.4A CN111651613B (zh) | 2020-07-08 | 2020-07-08 | 一种基于知识图谱嵌入的动态推荐方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111651613A true CN111651613A (zh) | 2020-09-11 |
CN111651613B CN111651613B (zh) | 2021-07-27 |
Family
ID=72346320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010649393.4A Active CN111651613B (zh) | 2020-07-08 | 2020-07-08 | 一种基于知识图谱嵌入的动态推荐方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111651613B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112487199A (zh) * | 2020-11-24 | 2021-03-12 | 杭州电子科技大学 | 一种基于用户购买行为的用户特征预测方法 |
WO2022088417A1 (zh) * | 2020-10-29 | 2022-05-05 | 深圳大学 | 一种基于异质特征深度残差网络的内容推荐方法 |
CN115631008A (zh) * | 2021-07-16 | 2023-01-20 | 腾讯科技(深圳)有限公司 | 商品推荐方法、装置、设备及介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108874878A (zh) * | 2018-05-03 | 2018-11-23 | 众安信息技术服务有限公司 | 一种知识图谱的构建***及方法 |
US10157226B1 (en) * | 2018-01-16 | 2018-12-18 | Accenture Global Solutions Limited | Predicting links in knowledge graphs using ontological knowledge |
CN109508419A (zh) * | 2018-11-23 | 2019-03-22 | 成都品果科技有限公司 | 一种基于知识学习的推荐方法和*** |
CN109583562A (zh) * | 2017-09-28 | 2019-04-05 | 西门子股份公司 | Sgcnn:结构的基于图的卷积神经网络 |
CN110245238A (zh) * | 2019-04-18 | 2019-09-17 | 上海交通大学 | 基于规则推理和句法图式的图嵌入方法及*** |
CN110609902A (zh) * | 2018-05-28 | 2019-12-24 | 华为技术有限公司 | 一种基于融合知识图谱的文本处理方法及装置 |
US10528871B1 (en) * | 2018-09-24 | 2020-01-07 | Yewno, Inc. | Structuring data in a knowledge graph |
US20200110746A1 (en) * | 2018-10-05 | 2020-04-09 | Accenture Global Solutions Limited | Density-based computation for information discovery in knowledge graphs |
CN111190968A (zh) * | 2019-12-16 | 2020-05-22 | 北京航天智造科技发展有限公司 | 基于知识图谱的数据预处理和内容推荐方法 |
-
2020
- 2020-07-08 CN CN202010649393.4A patent/CN111651613B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109583562A (zh) * | 2017-09-28 | 2019-04-05 | 西门子股份公司 | Sgcnn:结构的基于图的卷积神经网络 |
US10157226B1 (en) * | 2018-01-16 | 2018-12-18 | Accenture Global Solutions Limited | Predicting links in knowledge graphs using ontological knowledge |
CN108874878A (zh) * | 2018-05-03 | 2018-11-23 | 众安信息技术服务有限公司 | 一种知识图谱的构建***及方法 |
CN110609902A (zh) * | 2018-05-28 | 2019-12-24 | 华为技术有限公司 | 一种基于融合知识图谱的文本处理方法及装置 |
US10528871B1 (en) * | 2018-09-24 | 2020-01-07 | Yewno, Inc. | Structuring data in a knowledge graph |
US20200110746A1 (en) * | 2018-10-05 | 2020-04-09 | Accenture Global Solutions Limited | Density-based computation for information discovery in knowledge graphs |
CN109508419A (zh) * | 2018-11-23 | 2019-03-22 | 成都品果科技有限公司 | 一种基于知识学习的推荐方法和*** |
CN110245238A (zh) * | 2019-04-18 | 2019-09-17 | 上海交通大学 | 基于规则推理和句法图式的图嵌入方法及*** |
CN111190968A (zh) * | 2019-12-16 | 2020-05-22 | 北京航天智造科技发展有限公司 | 基于知识图谱的数据预处理和内容推荐方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022088417A1 (zh) * | 2020-10-29 | 2022-05-05 | 深圳大学 | 一种基于异质特征深度残差网络的内容推荐方法 |
CN112487199A (zh) * | 2020-11-24 | 2021-03-12 | 杭州电子科技大学 | 一种基于用户购买行为的用户特征预测方法 |
CN115631008A (zh) * | 2021-07-16 | 2023-01-20 | 腾讯科技(深圳)有限公司 | 商品推荐方法、装置、设备及介质 |
CN115631008B (zh) * | 2021-07-16 | 2024-02-13 | 腾讯科技(深圳)有限公司 | 商品推荐方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111651613B (zh) | 2021-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111651613B (zh) | 一种基于知识图谱嵌入的动态推荐方法及*** | |
Demirović et al. | Murtree: Optimal decision trees via dynamic programming and search | |
Qian et al. | Fusing monotonic decision trees | |
CN112507699B (zh) | 一种基于图卷积网络的远程监督关系抽取方法 | |
CN110110858B (zh) | 一种基于强化学习的自动化机器学习方法 | |
CN111459988B (zh) | 一种机器学习流水线自动化设计的方法 | |
Brucker et al. | Multi-label classification and extracting predicted class hierarchies | |
CN113254630B (zh) | 一种面向全球综合观测成果的领域知识图谱推荐方法 | |
CN111767216B (zh) | 一种可缓解类重叠问题的跨版本深度缺陷预测方法 | |
Munch et al. | Towards interactive causal relation discovery driven by an ontology | |
Demirović et al. | MurTree: optimal classification trees via dynamic programming and search | |
US8495055B2 (en) | Method and computer program for evaluating database queries involving relational and hierarchical data | |
Mihaljević et al. | Learning Bayesian network classifiers with completed partially directed acyclic graphs | |
Kalifullah et al. | Retracted: Graph‐based content matching for web of things through heuristic boost algorithm | |
Simiński | Extraction of rules dependencies for optimization of backward inference algorithm | |
Chen et al. | GOOSE: Learning domain-independent heuristics | |
WO2021248319A1 (en) | Database management system and method for graph view selection for relational-graph database | |
Loza Mencía et al. | Tree-based dynamic classifier chains | |
Kumar et al. | Learning distributional programs for relational autocompletion | |
CN113449869A (zh) | 一种易推理贝叶斯网络的学习方法 | |
Lv et al. | CEP rule extraction framework based on evolutionary algorithm | |
Shahzad et al. | Automated Generation of Graphs from Relational Sources to Optimise Queries for Collaborative Filtering | |
Rahimov et al. | STRUCTURAL-FUNCTIONAL ORGANIZATION AND CORRECTNESS OF KNOWLEDGE MODELS OF PRODUCT SYSTEMS | |
Sitnikov et al. | An algebraic approach to defining rough set approximations and generating logic rules | |
Montero-Hernandez et al. | Intervals of causal effects for learning causal graphical models |
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 |