知识图谱信息表示学习方法、系统、设备及终端技术方案

技术编号:28374034 阅读:23 留言:0更新日期:2021-05-08 00:01
本发明专利技术属于知识图谱技术领域,公开了一种知识图谱信息表示学习方法、系统、设备及终端,所述知识图谱信息表示学习方法包括:根据路径约束资源分配方法进行预处理;计算所有路径的可靠性,输出到训练集和测试集中;初始化模型,设置参数;根据迭代器生成三元组,并随机替换头尾实体;根据得分函数计算三元组的损失函数;根据路径可靠性计算额外路径的损失函数;使用Adam方法进行参数优化;使用实体预测和关系预测进行模型验证。本发明专利技术考虑知识图谱中包含的丰富的路径信息,有助于改进实体与关系的建模效果,通过将向量投入复平面,用旋转表示向量的计算可以优化对关系的建模,可用于链路预测以及推荐系统。

【技术实现步骤摘要】
知识图谱信息表示学习方法、系统、设备及终端
本专利技术属于知识图谱
,尤其涉及一种知识图谱信息表示学习方法、系统、设备及终端。
技术介绍
目前,谷歌在2012年提出知识图谱的概念,旨在将互联网中非结构化或半结构化的信息表示为结构化的知识。知识图谱以其强大的信息处理能力和开放的组织能力,为互联网时代的知识化组织和智能应用提供了契机,在语义智能搜索、个性化推荐、知识智能问答等方面得到了广泛的应用。知识图谱由语义网络发展而来,本质是由实体和关系组成的有向图,每个实体作为有向图的节点,每种关系作为有向图的边,每条知识表示为三元组(实体,关系,实体)的形式。基于这种有向图的表示方式,传统知识图谱的相关研究和应用往往需要借助于图算法来完成,面临着以下两个方面的问题:-方面,大规模知识图谱常面临数据稀疏的问题,利用图算法难以达到很好的效果;另一方面,图算法往往计算复杂度较高,计算效率较低,无法适应大规模知识图谱的应用需求。知识图谱表示学习的出现缓解了上述问题,其核心思想是将知识图谱中的实体和关系表示为低维连续空间中的实值向量,度量实体和关系间的语义联系。通过该方法得到实体和关系的向量表示,可以用于计算实体间的语义相似度,预测两个实体间的关系,便于拓展到知识图谱的各项研究和应用中。在过去的十几年中,出现了大量的知识图谱,如FreeBase,DBpedia和YAGO等,都存储着大量现实世界中复杂的结构化事实。知识图谱的典型数据模型是基于RDF(ResourceDescriptionFramework)的,它以(headentity,relation,tailentity)这样的三元组形式表示结构化事实,如(ThomasAlvaEdison,invented,electriclight)。在过去的十几年中,基于符号和逻辑的知识图谱补全工作做了非常多,但是对于大规模知识图谱来说,它们既不容易处理又不足够收敛。随着互联网的不断发展,知识图谱的规模不断增长,如何在这种大规模知识图谱上实现高效的表示与计算成为了至关重要的问题。随着深度学习的迅速发展,表示学习逐渐崭露头角,取得了重要的进展,在多个领域都获得了不俗的成绩,引起了广泛的研究热潮。近几年,研究人员已经提出了很多种办法来从纯文本中自动构建或填充知识库,在知识图谱表示学习方面做了很多的工作和研究,其目的都是将实体和实体间的关系编码到连续的低维度的向量空间,捕获知识图谱中数据固有的复杂性和语义。表示学习可以描述潜在的语义信息,并预测新的缺失的事实关系。利用这样的表示可以更方便的抽取有用的信息,更方便的计算语义相关度等,进而支撑很多的相关应用。表示学习异军突起,研究人员提出了多种知识图谱表示学习的模型。Bordes和Weston等人在2011年提出了一种基于距离的模型SE(structuredembedding),是较早提出的知识图谱表示学习的模型之一,模型为特定的关系针对不同的头尾实体构造两个投影矩阵,SE由于使用了两个独立的矩阵,不能精确地刻画两个实体之间的联系。Bordes和Glorot等人在2014年提出了一种语义匹配能量模型SME(semanticmatchingenergy,该模型用向量表示每一个关系,通过多个矩阵乘积与Hadamard乘积与实体向量相互作用,以捕获实体和关系之间的精确联系,操作更为复杂。Socher等人提出了一个基于张量的模型NTN(NeuralTenorNetwork),该模型是SLM模型的一种扩展,用双线性张量层代替神经网络层,能够预测现有知识库中实体之间存在的缺失关系,该模型展现出了神经网络在推理实体-关系的能力,但模型复杂度非常高。这样的基于张量的模型也存在着一些问题,当知识图谱的规模不断增大时,张量的维度会增加,计算复杂度随之增加,因此基于张量的模型在大规模知识图谱的表示学习上并不能展现出很好的效果。然而这些表示学习方法,几乎所有的嵌入模型都需要较高的时间复杂度和较大的内存空间,因此很难在大规模知识图谱上展现出较好地效果。Bordes等人提出了基于平移的模型TransE(Translationembeddingformodelingmulti-relationdata),是知识表示学习的一个具有代表性的模型,该模型将关系视为头实体到尾实体的一种平移操作,类似于单词嵌入的单词类比任务和基于句子嵌入的句子关系分类。这一想法来源于word2vec,word2vec的作者研究发现词向量空间普遍存在平移值不改变的特征,如V(husband)-V(wife)≈V(man)-V(woman),V(x)代表词x通过word2vec学习到的词向量,即实体与实体之间的关系对应于潜在特征空间中的平移。TransE实现了大规模知识图谱表示学习的计算效率和精度的良好平衡。TransE认为,当(h,r,t)是一个正确的三元组时,尾实体的嵌入向量应该与头实体与关系的嵌入向量的和接近,负例样本则相反。TransE采用最大间隔化的方法设计能量损失函数训练模型,提高了表示学习区分正负样本的能力。负例样本通过将数据集中每一个三元组中的头实体h,关系r和尾实体t中的一项随机替换成其他实体或关系的方式来构造,而并非随机产生。TransE自提出以来就备受业界认可,模型参数较少,简单高效,可解释性强,完美解决了传统训练复杂的缺点,TransE与以往的模型相比,性能有显著的提升。但TransE过于简单,实体和关系都采用单一的向量表示,不能精确地刻画自反、1-N、N-1、N-N这样复杂的关系。因此,有很多后续的研究工作基于TransE进行了改进和扩展。如TransH提出将头实体h和尾实体t投影到关系r对应的超平面上,在超平面上实现头实体到尾实体的平移操作。TransH允许实体在不同的关系下有不同的表示,克服了TransE在处理自反、1-N、N-1、N-N这类关系时的局限性。TransR提出将头实体h和尾实体t投影到关系r对应的关系空间中,在关系空间中实现头实体到尾实体的平移操作,在不同的语义空间中建模实体和关系,能够精确地刻画实体的多种属性。TransD通过定义动态映射矩阵来同时捕捉实体和关系的多种属性类型。PTransE提出了考虑多步关系路径建模的方式进行表示学习,利用丰富的路径信息对于缓解数据稀疏性的问题也是非常有帮助的。此外,也有很多的研究工作利用了与知识图谱相关的其他的信息进行表示学习,而不仅仅局限于结构信息,如DKRL(description-embodiedknowledgerepresentationlearning)模型提出了一种将实体的描述信息引入到表示学习当中的方式。IKRL(Image-embodiedKnowledgeRepresentationLearningmodel)模型从实体的图像信息中提取出丰富的视觉信息进行表示学习。表示学习的信息来源已经不再仅仅局限于固有的结构信息,利用这些多源异质信息能够有效地提高知识表示学习的表现能力,有效地缓解数据稀疏问题以及过拟合的问题。但是,目前知识图谱表示学习的典型工作是以TransE为代表的平移模型,通过学习三元组结构信息本文档来自技高网...

【技术保护点】
1.一种知识图谱信息表示学习方法,其特征在于,所述知识图谱信息表示学习方法包括:根据路径约束资源分配方法进行预处理;计算所有路径的可靠性,输出到训练集和测试集中;初始化模型,设置参数;根据迭代器生成三元组,并随机替换头尾实体;根据得分函数计算三元组的损失函数;根据路径可靠性计算额外路径的损失函数;使用Adam方法进行参数优化;使用实体预测和关系预测进行模型验证。/n

【技术特征摘要】
1.一种知识图谱信息表示学习方法,其特征在于,所述知识图谱信息表示学习方法包括:根据路径约束资源分配方法进行预处理;计算所有路径的可靠性,输出到训练集和测试集中;初始化模型,设置参数;根据迭代器生成三元组,并随机替换头尾实体;根据得分函数计算三元组的损失函数;根据路径可靠性计算额外路径的损失函数;使用Adam方法进行参数优化;使用实体预测和关系预测进行模型验证。


2.如权利要求1所述的知识图谱信息表示学习方法,其特征在于,所述根据路径约束资源分配方法进行预处理,包括:
(1)生成反向关系,读取关系对应id的文件,获取总的关系数量,将关系r的id加上总关系数量n得到的新的idr+n作为关系r的反关系;
(2)获取单步路径信息,读取train.txt和text.txt获得所有正确正向三元组,将所有的正确三元组添加反向关系生成新的反向三元组,正向三元组和反向三元组作为所有的正确三元组;通过循环遍历三元组得到所有的头实体,然后遍历每个头实体的关系和对应的尾实体;通过操作将训练数据中的所有的实体对存储到向量表中;将实体X到实体Y所有存在的路径的概率存储到向量表中;
(3)获取多步路径信息,通过上面的步骤我们已经将所有实体之间存在单步路径的实体对提取出来了;遍历三元组中的头实体e1,获得所有头实体e1的关系和尾实体e2;然后以e2作为头结点查找e2的关系和尾结点e3,并且将e1和e3作为一条新的路径连接起来,将该路径存入表中,对于不唯一的路径,将每条路径的概率存入表中;
(4)数据集预处理,将计算得到的路径可靠性的数据写入confidence.txt文件中,将训练集,测试集的三元组对应的所有的路径可靠性写入train_pra.txt和test_pra.txt文件中,为模型训练时所使用。


3.如权利要求2所述的知识图谱信息表示学习方法,其特征在于,步骤(3)中,采用路径约束资源PCRA,假设从一个头实体t出发经过多条路径p,衡量最后到达尾节点t的资源数量来衡量h和t之间p的可靠度,数学表达如下:



从头实体h出发,按照路径S0→S1→S2...→Sl,其中S0=h,t∈Sl,S是一个集合,尾节点可能有多个,Sl是尾节点的集合;则对于实体m∈Si,定义m的上一个节点的集合是Si-1(·,m),n是其中的一个节点(实体);Si(n,·)则是节点n(实体)的下一个节点的集合;Rp(n)是从实体n上获得的资源;定义头节点Rp(h)=1,最后尾节点t的Rp(t)的数值则代表了路径p从头节点h可以传输多少信息到尾节点t,即路径p的可靠性;R(p|h,t)为给定头节点h尾节点t时计算Rp(t)。


4.如权利要求1所述的知识图谱信息表示学习方法,其特征在于,所述读取训练集和测试集、建立模型并训练模型,包括:
(1)读取训练集和测试集
将train_pra.txt文件及test_pra.txt文件中的三元组读入内存中,作为正确的三元组数据集,同时将每个三元组对应路径的可靠性读入内存中;将训练集的三元组按epoch进行分割,存入迭代器中;
(2)建立基于旋转的考虑路径信息的知识图谱表示学习模型,得分函数为:
G(h,r,t)=E(h,r,t)+E(h,P,t),






其中,表示Hadamard积,即元素乘积;
(3)训练模型
1)设置参数:设置嵌入维度为1000,batchsize为512,学习率为0.001,训练步数为200000次;
2)初始化模型:将实体向量均匀初始化,将关系向量均匀初始化到0-2π之间;
3)开始训练模型:
迭代器生成一组正确三元组(h,r...

【专利技术属性】
技术研发人员:易运晖周小寒何先灯权东晓朱畅华赵楠陈南
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1