一种基于实体和关系结构信息的知识图谱表示学习方法与流程

文档序号:16537174发布日期:2019-01-08 20:00阅读:250来源:国知局
一种基于实体和关系结构信息的知识图谱表示学习方法与流程

本发明涉及知识图谱自然语言处理领域,具体涉及一种基于实体和关系结构信息的知识图谱表示学习方法。



背景技术:

随着大数据时代的到来,知识图谱成为当前的研究热点。知识图谱的出现是人工智能对知识需求的必然结果,当然它的发展是不同研究领域共同发展作用的结果,并非一脉相承。知识图谱本身是一个具有属性的实体通过关系链接而成的网状知识库。知识图谱的研究价值在于,借助知识图谱,能够在web网页之上建立概念间的连接关系,从而以最小的代价将互联网中的信息组织起来,成为可以被利用的知识。知识图谱的应用价值在于,它能够改变现有的信息检索方式,一方面通过推理实现信息检索;另一方面,以图形化方式向用户展示结构化知识。

知识图谱是结构化的语义知识库,其基本组成单位是(实体,关系,实体)三元组,以及实体及其相关属性-值对。实体是知识图谱中最基本的元素,不同实体之间存在不同的关系。概念主要包括集合、对象类型、事物种类,如地理、人物等;属性是指对象具有的属性特征、特性,如性别,国籍,出生日期等;属性值则是指属性所对应的值,如女,美国,1994-09-30等。实际应用中,我们使用(head,relation,tail)(简写为(h,r,t))来表示三元组,小明的爸爸是大明”这一知识,在知识图谱中可以使用(小明,爸爸,大明)三元组表示。

知识图谱的表示学习旨在将知识图谱中的实体和关系嵌入到低维向量空间,将实体和关系用稠密低维实值向量来表示。该过程的关键在于如何合理表示知识图谱中的事实。当前以transe模型为代表的翻译模型以其突出的性能与简单的模型参数受到了广泛的关注。该模型在对三元组(h,r,t)的训练过程中,利用实体和关系之间的向量计算,通过最小化fr(h,t),来使得实体和关系得到更有效的向量表示。但是transe在训练中,仅仅考虑了实体与关系单个三元组中的联系,没有充分考虑实体与关系丰富的结构语义信息,从而导致实体与关系的向量表示不能包含丰富的结构语义信息。



技术实现要素:

鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于实体和关系结构信息的知识图谱表示学习方法,用以解决现有技术中没有充分考虑实体与关系丰富的结构语义信息,从而导致实体与关系的向量表示不能包含丰富的结构语义信息的问题。

为实现上述目的及其他相关目的,本发明提供一种基于实体和关系结构信息的知识图谱表示学习方法,该方法包括以下步骤:

获取知识图谱中实体的结构语义信息与关系的结构语义信息;

根据所述实体的结构语义信息与关系的结构语义信息,构建实体目标向量与目标关系向量;

根据所述实体目标向量与目标关系向量,构建得分函数;

根据所述得分函数构建基于边界的损失函数,通过最小化所述损失函数,学习实体与关系的最佳向量表示。

可选地,所述根据所述实体的结构语义信息与关系的结构语义信息,构建实体目标向量与目标关系向量,具体包括以下子步骤:

根据与实体直接相连的关系和直接相邻的边,得到实体目标向量;

根据与关系直接相连的实体,得到目标关系向量。

可选地,所述根据与实体直接相连的关系和直接相邻的边,得到目标实体向量,具体方法为:

通过向量之间的运算并累加求均值,得到实体目标向量,具体采用以下方法:

其中,h*表示头实体h的目标向量,kh表示头实体h连接的三元组个数,ri和ti分别是与头实体h直接相连的关系向量和直接相邻的尾实体向量,t*表示尾实体t的目标向量,kt表示尾实体t连接的三元组的个数,rj和hj分别是与尾实体t直接相连的关系向量和直接相邻的头实体向量。

可选地,所述根据与关系直接相连的实体,得到目标关系向量,具体采用以下方法:

通过向量之间的运算并累加求均值,得到目标关系向量,具体采用以下公式:

其中,r*表示关系r的目标向量,kr表示关系r连接的三元组个数,hq是与关系r直接相连的头实体向量,tq是与关系r直接相连的尾实体向量。

可选地,所述得分函数为:

f(p,p*)=||p-p*||

其中,p代表实体向量(h或t)或关系向量(r),p*表示p所对应的目标向量。

可选地,根据所述得分函数构建基于边界的损失函数,通过最小化所述损失函数,学习实体与关系的最佳向量表示,具体公式如下:

其中,γ为设定的边界值,f(p,p*)表示正确的实体或关系的得分,f'(p',p*)表示用错误的实体或关系替换之后的得分,p'为替换p的负例向量,p*是p所对应的目标向量,s为正例p的集合,s'为负例p'的集合。

如上所述,本发明的一种基于实体和关系结构信息的知识图谱表示学习方法,具有以下有益效果:

本发明充分利用实体与关系的结构语义信息,实现实体与关系向量表示更加完整。

附图说明

为了进一步阐述本发明所描述的内容,下面结合附图对本发明的具体实施方式作进一步详细的说明。应当理解,这些附图仅作为典型示例,而不应看作是对本发明的范围的限定。

图1为本发明一种基于实体和关系结构信息的知识图谱表示学习方法的流程图;

图2为知识图谱中实体与关系三元组的结构示例图;

图3为本发明的一个实施例提供的结合头实体的结构信息进行训练的示例图。

具体实施方式

以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。

需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。

本发明公开了一种基于实体和关系结构信息的知识图谱表示学习方法,该方法充分考虑了实体和关系丰富的语义信息,实现实体和关系更加完整的表示。

图2示出了一个知识图谱中包含实体和关系语义信息的示例图。其中在三元组(李**,出生地,北京)中,“李**”作为头实体,还出现在其他三元组中,这样的三元组有:(李**,工作地,公司1)、(李**,工作地,公司2)、(李**,职业,歌手),说明每一个实体可能具有多个属性,如:出生地、职业等。为了使每一个实体都能满足它所在的所有三元组的结构信息,采取的方法是利用与实体直接相连的边和与实体直接相邻的实体来计算得到对应的目标实体。同样的,利用和获得目标实体相同的方法计算得到目标关系。经过上述过程得到的目标实体满足其对应的实体所在的所有三元组的结构信息,目标关系满足其所对应的关系所在的所有三元组的结构信息。最后本发明根据得分函数和基于边界的损失函数,通过最小化损失函数,来获得实体和关系更好的向量表示。

如图1所示,本发明提供一种基于实体和关系结构信息的知识图谱表示学习方法,该方法包括以下步骤:

步骤1、获取知识图谱中实体的结构语义信息与关系的结构语义信息;具体的,收集知识图谱中实体和关系所有结构信息。

步骤2、根据所述实体的结构语义信息与关系的结构语义信息,构建实体目标向量与目标关系向量;

步骤3、根据所述实体目标向量与目标关系向量,构建得分函数;

步骤4、根据所述得分函数构建基于边界的损失函数,通过最小化所述损失函数,学习实体与关系的最佳向量表示。

与现有的技术相比,本发明提出的一种基于实体和关系结构信息的知识图谱表示学习方法,不仅仅利用了实体和关系之间的三元组结构信息,还充分利用了实体和关系周围的结构信息,通过构建得分函数,实现对实体和关系的约束,最后利用基于边界的损失函数,得到实体和关系更好的表示。本发明学习到的知识图谱表示,能够在知识图谱补全等任务中得到更高的准确率。通过该方法有效丰富了实体和关系的语义信息,使得实体和关系得到更准确的向量表示,整体上提升了模型性能。

于本实施例中,所述获取知识图谱中实体与关系的结构语义信息。详细的,实体的结构语义信息表示为以该实体为中心,该实体所在的所有三元组所组成的结构;关系的结构语义信息表示为以该关系为中心,该关系所在的所有三元组所组成的结构。

于本实施例中,根据所述实体的结构语义信息与关系的结构语义信息,构建实体目标向量与目标关系向量,具体包括以下子步骤:

步骤21、收集实体所在的所有三元组,通过单个三元组的实体信息的获取方式,延伸得到该实体满足其所在的所有三元组的结构信息的表示。对于一个给定三元组(h,r,t),根据实体的结构语义信息,即与实体直接相连的关系和直接相邻的边,来得到目标实体。具体采用以下公式:

其中,h*表示头实体h的目标向量,kh表示头实体h连接的三元组个数;t*表示尾实体t的目标向量,kt表示尾实体t连接的三元组的个数,ri和ti分别是与头实体直接相连的关系向量和直接相邻的尾实体向量,rj和hj分别是与尾实体直接相连的关系向量和直接相邻的头实体向量。

对于公式在这些三元组中仅仅保证头实体之间是完全相同的,不同三元组中的关系之间和尾实体之间可以相同也可以不同,即满足:

对于公式在这些三元组中仅仅保证尾实体之间是完全相同的,不同三元组中的关系之间和头实体之间可以相同也可以不同,即满足:

步骤22、收集关系所在的所有三元组,通过单个三元组的关系信息的获取方式,延伸得到该关系满足其所在的所有三元组的结构信息的表示。于本实施例中,根据关系的结构语义信息,即与关系直接相连的实体,来得到目标关系;具体计算方法是:通过向量之间的运算并累加求均值,得到实体关系的目标向量,具体采用以下公式:

其中,r*表示关系r的目标向量,kr表示关系r连接的三元组个数,hq是与关系r直接相连的头实体向量,tq是与关系r直接相连的尾实体向量。

在这些三元组中仅仅保证关系之间是完全相同的,不同三元组中的头实体之间和尾实体之间可以相同也可以不同,即满足:

对于知识图谱中存在的其中一个三元组的实体和关系,分别收集知识图谱中已存储的该实体和关系所在的所有三元组。通过统计实体及其相关的结构信息、关系及其相关的结构信息来构建所需要的目标实体和目标关系。

需要说明的是,本发明改进了现有的基于单个三元组进行训练的模型,设计了新的得分函数。本发明基于实体和关系结构信息的知识图谱表示学习方法,充分结合了实体和关系的结构信息。绝大多数实体和关系都存在着复杂的结构信息,不同的结构信息代表着实体和关系在不同领域所表现出来的多样的属性。例如图2中,实体“李**”具有不同的属性,如“工作地”、“职业”等。每个实体和关系在不同的属性下应该有不同的向量表示,而训练结果中一个实体只能有一个确定的向量表示,因此本发明在实现了结合实体和关系的结构信息的基础上,得到了实体和关系很好的向量表示。

于本实施例中,根据实体目标向量与目标关系向量,构建得分函数,公式如下:

f(p,p*)=||p-p*||

其中,p代表实体向量(h或t)或关系向量(r),p*表示p所对应的目标向量。

于本实施例中,根据得分函数构建基于边界的损失函数,通过最小化所述损失函数,学习实体与关系的最佳向量表示,具体公式如下:

其中,γ为设定的边界值,f(p,p*)表示正确的实体或关系的得分,f'(p',p*)表示用错误的实体或关系替换之后的得分,p'为替换p的负例向量,p*是p所对应的目标向量,s'为负例p'的集合,s'为负例p'的集合。

需要说明的是,传统的知识图谱表示学习方法中,得分函数和损失函数都是针对三元组来进行的,现有的方法没有很好的结合实体和关系的结构信息,导致实体和关系的向量表示不够完整。针对这个问题,本发明提出了结合实体或关系的结构信息来完善对实体和关系的表示,再利用对基于边际的损失函数的优化,更进一步提升了知识图谱表示学习的效果。

本发明提出了一种基于实体和关系结构信息嵌入的知识图谱表示学习方法。图3给出了结合头实体的结构信息来进行训练的示例图,其基本思想是:获取知识图谱中头实体结构语义信息;根据实体的结构语义信息,构建实体目标向量;根据实体目标向量,构建得分函数;逐步实现对实体的最佳向量表示。通过该方法有效丰富了实体和关系的语义信息,使得实体和关系得到更准确的向量表示,丰富了实体与关系的表达能力,整体上提升了模型性能。

本发明充分地利用了实体和关系周围的结构信息来对实体和关系的表示进行丰富和约束。本发明采用全新的思想来进行知识图谱表示学习的研究,有效地增强了对实体和关系的表达能力,构造了全新的目标函数,从而更好的对实体和关系进行表示,并保存实体和关系之间的联系,从而能够很好的应用于大规模的知识图谱补全当中。

上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1