一种基于翻译模型的知识图谱表示方法与流程

文档序号:11729407阅读:565来源:国知局
一种基于翻译模型的知识图谱表示方法与流程

本发明涉及知识图谱表示技术领域,具体涉及一种基于翻译模型的知识图谱表示方法。



背景技术:

目前在世界范围内已有的知识图谱表示方法主要集中在利用人工构建的特征和基于rdf框架表示的特征。这些特征表示方法在进行知识表示方面存在效率低下,算法复杂等问题。近几年来,利用深度学习的方法提出了一系列的知识表示方法,但当前的训练的知识表示方法多少存在一些模型复杂度较高,或者训练效率较低的问题。

另外国内外的知识图谱表示方法代表性工作主要包括transe(基于翻译的嵌入式模型)[1],transh(基于超平面的嵌入式模型)[2],transr(基于实体关系空间的嵌入式模型)[3],ctransr(基于聚类和实体关系空间的嵌入式模型)[3]和transd(基于动态映射矩阵的嵌入式模型)[4]等方法.上述方法被统称为基于翻译的知识表示模型。基于翻译的模型认为,对每个三元组(h,r,t),其中的关系r是从头实体向量h到尾实体向量t的一个翻译操作,据此,bordes等人率先提出了transe(基于翻译的嵌入式模型)知识表示方法,transe(基于翻译的嵌入式模型)通过欧氏距离上的偏移量来衡量计算实体之间的语义相似度,是一种简单基本的知识表示方法.它的优化目标是尽量使得h+r=t,因此相应模型学习的得分函数是fr(h,t)=||h+r-t||2,其中||h+r-t||2是h+r-t的2阶范数,即欧氏距离。transh(基于超平面的嵌入式模型)方法建立了一个面向关系的超平面,它由一个法向量nr和翻译向量r表示,头实体向量h和尾实体向量t首先被投影到关系的超平面,得到向量h⊥=h-nrthnr和t⊥=t-nrthnr.因而,transh(基于超平面的嵌入式模型)的优化目标变为h⊥+r=t⊥,相应的其得分函数修改为fr(h,t)=||h⊥+r-t⊥||2。transr(基于实体关系空间的嵌入式模型)和ctransr(基于聚类和实体关系空间的嵌入式模型)希望通过建立一个映像矩阵mr和一个向量r来表示每一个关系r,具体地,transr(基于实体关系空间的嵌入式模型)将头实体向量h和尾实体向量t通过矩阵映射到关系向量r的层次上,得到mrh+r=mrt,也即transr(基于实体关系空间的嵌入式模型)的优化目标,transd(基于动态映射矩阵的嵌入式模型)以向量操作取代了transr(基于实体关系空间的嵌入式模型)中的矩阵与向量的乘法操作,提高了算法效率。

在实际应用中,transe(基于翻译的嵌入式模型)[1]取得了较好的预测效果。在transe(基于翻译的嵌入式模型)中,针对每个三元组(h,r,t),头实体向量h、尾实体向量t和关系r被表示为n维向量h(t)和r。嵌入向量t近似等于嵌入的h加上嵌入的r,即h+r≈t,transe(基于翻译的嵌入式模型)能很好的处理一对一关系,但是在处理如一对n,n对一和n对n的复杂关系时有一个明显的缺点。具体来说,在处理复杂关系的过程中,会导致不同实体使用相同的向量,这是不符合实际情况的。transh(基于超平面的嵌入式模型)[2]通过将头实体向量h和尾实体向量t映射到关系特异性超平面的超平面映射规则解决了复杂关系的问题。但是实体和关系是两种完全不同的概念,因此把它们放在同一向量空间是不正确的。transr(基于实体关系空间的嵌入式模型)/ctransr(基于聚类和实体关系空间的嵌入式模型)[3]和transd(基于动态映射矩阵的嵌入式模型)[4]提出了把实体和关系放在不同向量空间的两种新颖的模型,例如:实体空间和多重关系空间,transr(基于实体关系空间的嵌入式模型)对每个关系r设定了一个映射矩阵mr,然后用mr将实体映射到关系空间中。在关系空间中,用mr映射后的实体向量和关系向量r可以构造一个黄金三元组,这个三元组被描述为mrh+r≈mrt。作为对transr(基于实体关系空间的嵌入式模型)的扩展,ctransr(基于聚类和实体关系空间的嵌入式模型)使用簇算法对transe(基于翻译的嵌入式模型)的初始结果进行了分割,将每个关系r分为几个子关系rs。在某种程度上,使用rs替换r解决了每个关系的多义性问题。transd(基于动态映射矩阵的嵌入式模型)使用两个向量ep和hp为每个实体-关系对构造了动态的映射矩阵。但transr(基于实体关系空间的嵌入式模型)/ctransr(基于聚类和实体关系空间的嵌入式模型)的算法复杂度较高,没法在实际中应用。

【1】bordesa,usuniern,garcia-durana,etal.translatingembeddingsformodelingmulti-relationaldata[c]//procofnips.cambridge,ma:mitpress,2013:2787–2795

【2】wangzhen,zhangjianwen,fengjianlin,etal.knowledgegraphembeddingbytranslatingonhyperplanes[c]//procofaaai.menlopark,ca:aaai,2014:1112–1119

【3】linyankai,liuzhiyuan,sunmaosong,etal.learningentityandrelationembeddingsforknowledgegraphcompletion[c]//procofaaai.menlopark,ca:aaai,2015

【4】jiguoliang,heshizhu,xuliheng,etal.knowledgegraphembeddingviadynamicmappingmatrix[c]//procofacl.stroudsburgpa:acl,2045:687–696



技术实现要素:

本发明的目的在于提出一种更为普遍适用的基于翻译模型的知识图谱表示方法,其提取了知识图谱潜在分布式特征,并进行知识图谱的补全与分类。

为了实现本发明的目的,本发明的技术方案具体如下:

一种基于翻译模型的知识图谱表示方法,该方法包括以下步骤:

1)利用数据采集模块抽取现有知识图谱中的数据,利用分布式爬虫系统对互联网中存在的知识进行分布式的采集,并将其存储在分布式的图数据库中;

2)利用预处理模块对抽取的数据进行结构化处理,所述预处理模块对采集到的数据进行过滤,主要分为实体关系去重、过滤掉不符合描述规范实体关系以及过滤存在非法字符的实体关系三部分;

3)利用特征抽取模块对结构化处理后的数据进行特征抽取,抽取知识图谱中包含的实体、关系、属性,并将其用三元组的形式进行描述,并利用训练模块对抽取的特征进行训练;

4)利用训练好的结果通过知识图谱补全模块以及分类模块进行知识图谱预测和分类,所述知识图谱补全模块以及分类模块对训练好的表示模型进行测试以验证模型的有效性,实现对知识图谱中缺失的实体或者关系进行推荐、以及对现有的三元组进行正确与否的判断。

作为本发明技术方案的进一步改进,所述训练模块为gtrans模型(基于翻译的知识表示模型),所述gtrans模型构建具体包括模型构建过程和模型训练过程;

所述模型构建过程包括实体空间构建和动态空间构建,所述实体空间为用于表示实体特征的表示空间,所述动态空间为用于表示关系特征的表示空间,所述实体空间构建包括本征态和拟态以及设置两种状态的权重参数;所述动态空间构建包括动态关系空间的设置;

所述模型训练包括训练过程和优化方法、以及防止过拟合的策略和方法。

作为本发明技术方案的进一步改进,所述本征态用于描述实体固有的状态,所述拟态用于描述实体受外界改变而产生的变化状态,拟态向量构成拟态矩阵,拟态向量和本征态向量共同构成实体空间的特征向量;

所述的两种状态的包括静态参数和动态参数两种方式;

所述的动态关系空间的设置包括关系空间的距离计算公式,采用权重向量赋予头尾实体的不同维度以不同的权重,其使用标准欧式距离,并添加动态空间约束,得到动态关系空间模型。

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

1、本发明提出了一个新颖的模型gtrans(基于翻译的知识表示模型),考虑实体的不同状态和不同关系空间的特征趋势。

2、本发明构造了由本征特征表示和拟态特征表示组成的真实实体特征表示,同时运用dw和sw策略来为这两种状态设置权重。由于该模型为本征态和拟态设置了不同的权重,使得本发明模型的灵活性显著增加。

3、与现有技术中的其他模型相比较,gtrans(基于翻译的知识表示模型)为每一个关系构造了一个动态关系空间,能够为每一个关系表示空间提供灵活的关系权重,以及增强关系表示的能力并减少其他关系的干扰。

附图说明

图1是本发明方法模块组成示意图。

图2是本发明方法实施流程图。

图3是本发明中gtrans模型的基本思想阐述图。

图4是本发明多态实体空间构建流程图。

图5是本发明动态空间构建流程图。

图6是本发明模型训练流程图。

具体实施方式

下面结合附图对本发明做进一步详细说明。

本具体实施方式为一种基于翻译模型的知识图谱表示方法,如图1所示,所述基于翻译模型的知识图谱表示方法由以下模块实现,包括数据采集模块,预处理模块,特征抽取模块,知识图谱补全模块以及分类模块。所述方法具体如图2所示,包括以下步骤:

1)利用数据采集模块抽取现有知识图谱中的数据,利用分布式爬虫系统对互联网中存在的知识进行分布式的采集,并将其存储在分布式的图数据库中;

2)利用预处理模块对抽取的数据进行结构化处理,所述预处理模块对采集到的数据进行过滤,主要分为实体关系去重、过滤掉不符合描述规范实体关系以及过滤存在非法字符的实体关系三部分;

3)利用特征抽取模块对结构化处理后的数据进行特征抽取,抽取知识图谱中包含的实体、关系、属性,并将其用三元组的形式进行描述,并利用训练模块对抽取的特征进行训练;

4)利用训练好的结果通过所述知识图谱补全模块以及分类模块进行知识图谱预测和分类,所述知识图谱补全模块以及分类模块对训练好的表示模型进行测试以验证模型的有效性,实现对知识图谱中缺失的实体或者关系进行推荐、以及对现有的三元组进行正确与否的判断。

所述训练模块为gtrans模型(基于翻译的知识表示模型),其建立过程的具体如下:

图3展示了gtrans(基于翻译的知识表示模型)的基本思想,本发明为每个实体h(t)定义两个状态,本征态和拟态,本征态代表实体本身具有的特征,拟态代表受到其他关系影响的特征;实体在实体空间中是随机无序的,但在被翻译到关系空间中后,他们就变成了有序的,因此gtrans为关系构造了一个动态关系空间,使得其不仅可以更灵活地表示模型,而且可以减少其他关系带来的干扰。

定义g代表三元组(h,r,t),其中h表示头实体,r表示关系,t表示尾实体,粗体h,r,t表示(h,r,t)的向量表示,δ表示正确三元组的集合,δ′代表错误三元组的集合,wr代表关系表示的权重,wα表示关系对实体的影响。

其中表示关系j对实体i的影响,本发明用e和r来表示实体和关系集合。

gtrans(基于翻译的知识表示模型)的构建首先用本征态和拟态来构建实体和关系特征,本征态描述了实体固有的特征,拟态描述了受到其他实体和关系影响的特征;然后,用不同的权重向量来为不同的关系构建动态的关系空间,这使得每一个关系都有一个特定空间的描述。

gtrans(基于翻译的知识表示模型)的构建具体包括多态实体空间构建、动态关系空间构建、模型训练。

多态实体空间构建

多态实体空间的构建具体如图4所示,使用两个向量来表示实体和关系,一个用来表示实体(关系)的本征态,另一个用来表示实体和关系的抽象状态以构造其拟态空间。

对于每一个三元组(h,r,t),本发明定义了两个拟态矩阵mh和mt来分别表示头和尾实体拟态矩阵,mh和mt的定义如下:

mh=rahat

mt=ratat.

ra表示关系的抽象状态,ta表示实体的抽象状态,抽象实体和关系构建了对称的拟态矩阵,因此,对于每一个三元组,h和t有不同的拟态矩阵,本发明用拟态矩阵将本征态映射到拟态空间中,被映射的矩阵称为拟态向量,用来表示受外界干扰而得到的特征向量。

拟态向量表示如下:

hm=mhhe=rahathe,

tm=mtte=ratatte.

其中,rm表示关系的拟态,tm表示实体的拟态,re表示关系的本征态,te表示实体的本征态。事实上,实体的真实态是由拟态和本征态共同组成的。

一种策略是为所有的本征态和拟态设置两个静态权重,该策略称为sw策略,将静态策略下真实向量表示如下:

h=αhe+βhm,

t=αte+βtm.

超参数α和β分别用来衡量拟态和本征态的权重,α+β=c,c是常数,其中α>0,β>0,若c=1,则α=1-β。

另一种策略是动态权重策略(dw),其考虑了不同的关系对每个实体有不同的影响,因此应该为每一个三元组选择一个α。

本发明通过已知知识图谱的统计信息来获得权重矩阵wα,对于一个已知的知识图谱,如果只考虑实体的直接影响,可以得到实体集合e和关系r的邻接矩阵mr,那么wα可以表示为:

wα=mr+b

其中b表示偏置项,表示实体ei出现在关系rj中的次数,如果将实体的直接和间接影响都考虑进去,那么可以得到不同实体e的邻接矩阵me,由此wα可以表示为:

wα=(me+1)mr+b

其中表示实体ei与实体ej有关系k。

对于每一个实体,关系出现的越多,关系的影响越重要。最后头实体向量可以表示如下:

h=(1-αh,r)he+αh,rhm

其中,αh,r表示头实体中拟态所占的权重,同样的,尾实体t可以描述如下:

t=(1-αt,r)te+αh,rtm

其中,αt,r表示尾实体中拟态所占的权重,与其他翻译模型一样,h,r,t可以构造为黄金三元组,表示为h+r≈t,其中r=re。

动态关系空间构建

动态关系空间构建过程具体如图5所示,在构建动态关系空间之前,我们首先分析翻译模型的得分函数,得分函数用于缩小h+r与t之间的距离,现有技术中的翻译模型都运用了欧式(ed)距离,得分函数可以表示如下:

该得分函数对每个特征维度的分布同等考虑,不能区分不同关系空间的不同趋势。在所有数学距离中,标准欧式距离(sed)以及马氏距离(md)可以为不同维度设置不同的权重。与md比较,sed涵盖了不同维度的相关性信息,这是非常实用的。另外,sed复杂性更低,可以更好地应用到大型知识表示中。同时,md可以描述非负的对称矩阵,并能进行ldl分解,其中l代表关系矩阵,d代表权重对角矩阵。考虑不同维度之间的相关性,可以使用对角矩阵d来简化md,也就变为了sed距离。

因此在本发明的模型中,使用sed来代替ed距离。

sed的定义如下:

其中x和x*分别表示归一化之前和归一化之后的特征向量,μ和σ分别是期望和标准偏差向量,因此h+r与t之间的距离为:

其中⊙表示按位相乘。取wr=1/σ,本发明提出了一个新颖的得分函数如下:

其中,wr>0,sed可以通过归一化消除特征的不均衡分布。

模型训练

模型训练的流程具体如图6所示,为了增加黄金三元组与错误三元组之间的区别,本发明定义了基于距离排序的损失函数:

其中δ和δ′分别表示正三元组和负三元组,γ是区分正负三元组之间的距离,因为原始三元组集合只包含正三元组,因此只能通过人工的方法来得到负三元组。本发明使用“unif”和“bern”抽样策略来构造负三元组,“unif”策略在构造三元组时对头尾实体用相同的概率替代,而“bern”抽样策略在构造负三元组时通过不同的关系类型赋予不同的概率。

在最小化损失函数时约束表示如下:

||h||≤1,||t||≤1

||wr||≥1(7)

其中式(7)验证了权重向量wr是常量,本发明通过软约束将损失函数变为如下不受约束的损失函数:

其中,λ和η是用来衡量软约束重要性的超参数,本发明采用改进的随机梯度下降法(adadelta)来训练损失函数,其中式(8)中未包括有式(5)和式(6),相应地,在训练每一个小批次时满足这两个约束。为了加速收敛,本发明直接使用transe得到的结果代替初始的向量he,te和re。

以上实施例仅起到解释本发明技术方案的作用,本发明所要求的保护范围并不局限于上述实施例所述的实现系统和具体实施步骤。因此,仅对上述实施例中具体的公式及算法进行简单替换,但其实质内容仍与本发明所述方法相一致的技术方案,均应属于本发明的保护范围。

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