System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于知识图谱,尤其涉及一种面向层次结构实体的三元组分类方法。
技术介绍
1、知识图谱(knowledge graph,kg)作为语义知识形式化描述框架,是以有向图的结构描述客观世界的事物及其相互联系,已成为人工智能从感知智能向认知智能发展的重要途径。知识图谱以三元组形式(h,r,t)表示和存储,其中,h,r和t分别表示头实体,关系和尾实体。知识图谱嵌入(knowledge graph embedding,kge)通过将语义信息表示成空间中低维连续向量来实现实体和关系语义联系的高效计算,被广泛用于智能搜索、个性化推荐和智能问答等任务。
2、知识图谱由于本身的数据稀疏性和数据不平衡问题,使得当前学习出的知识嵌入性能欠缺。知识图谱中具有层次结构关系的实体构成的三元组作为知识图谱的重要组成部分,能够用来补充实体和关系的语义信息。因此,研究人员尝试利用知识图谱中具有层次结构关系的实体之间的的潜在语义信息来学习其表示。比如具有层次结构关系的实体构成的三元组(鸭嘴兽,isa,动物),对于邻接样本较少的实体“鸭嘴兽”,它与其他同层次常见的实体“猫”、“狗”一样,具有其对应的高层次实体“动物”的基本属性信息,由此它的嵌入表示可以通过“动物”及“猫”、“狗”的嵌入表示来大致确定,这种方法可以在不增加额外训练数据要求的前提下缓解数据稀疏性带来的学习不充分问题。
3、然而,现有的面向实体层次结构建模的知识嵌入方法仍然面临着诸多挑战:一是现有模型对于不同层次的实体的设置同样的嵌入维度,代表性工作包括将不同层次的实体嵌入在
4、综合来说,当前面向实体层次结构建模的知识嵌入方法面临着以下挑战:一是对于不同层次的实体嵌入设置同样的嵌入维度会导致过拟合以及存储与计算资源的浪费;二是通过人工在离散空间中搜索完成嵌入维度的设置使得模型容易错过最优参数并且造成训练成本的增加。
技术实现思路
1、有鉴于此,本专利技术考虑通过自动学习嵌入维度的方式将不同层次的实体在不同维度的向量空间中建模。现有知识嵌入领域里没有嵌入维度的自动学习算法,本专利技术借鉴推荐系统的嵌入维度自动学习算法(auto embedding size,aes)来实现知识嵌入维度的自动学习。当前,推荐系统的aes算法大致包括三类:基于网络结构搜索方法、基于神经架构搜索方法以及基于剪枝的方法。基于网络结构搜索方法其将aes问题建模为网络结构搜索问题,使用强化算法、演化算法等求解,然而这类方法比较耗时。基于神经架构搜索方法将aes问题与推荐任务优化问题融合起来,建立了双层优化问题,然而这类方法由于候选维度被限制在有限且离散的范围使得求解的嵌入维度不一定是最优的。基于剪枝的方法首先设定一个最大的嵌入维度,然后通过具体推荐任务对嵌入向量训练的过程过滤掉向量中的“无用”元素来实现嵌入维度的自动剪枝。综上,本专利技术考虑借鉴基于剪枝的方法中的pep方法来实现知识嵌入维度的自动学习,通过在所有实体构成的嵌入表上强制执行列稀疏,利用自适应学习出的剪枝阈值来修剪嵌入向量的维度,从而为不同层次实体自动学习出不同的嵌入维度。
2、pep是一个嵌入维度自动学习的通用框架,需要与基于实体层次结构建模的知识嵌入模型这个具体任务结合,才能为不同层次的实体学习出维度各异的嵌入。现有的建模实体层次结构的知识嵌入模型主要分为三类:第一类是基于区域的方法,包括transc、cist等,这类方法利用空间中区域之间的包含关系建模实体之间的层次结构关系,但其对于实例与概念这两种不同层次结构的实体建模方式略有不同。第二类是基于线性变换的方法,这类方法使用线性变换的方式建模实体之间的层次结构关系。然而这类方法无法建模层次结构关系的反对称性和传递性。第三类是基于偏序关系建模的方法,这类方法通过约束有层次结构关系的头实体和尾实体在正实数嵌入表示空间中始终保持有序来建模层次结构关系。然而,这类方法将嵌入空间限定在正实数空间,限制了模型的表达能力。为此,本专利技术提出了一种建模具有层次结构关系实体的表示学习方法——kehe(knowledge embeddingmethod for hierarchical entities,面向层次结构实体建模的知识嵌入方法),它不仅对于不同层次结构实体的建模方式是一致的,而且能够建模层次结构关系的反对称性和传递性这两个特性。另外,pep要求训练数据为带标签的数据,而现有的模型训练只有三元组(h,t,r)作为输入数据。为此,本专利技术改造现有模型的输入数据,以形如{(h,t,r),l(h,t,r)}的形式给出,其中l(h,t,r)∈{0,1}为三元组(h,t,r)对应的特征标签,1表示正三元组,0表示负三元组。相应地,将模型的训练方式建模为基于三元组分类任务,即是预测三元组是正三元组或是负三元组。
3、综上,本专利技术的总体思路是:首先,基于新提出的建模实体层次结构的方法对具有层次结构的实体进行建模,并且使用基于三元组分类预测任务对模型进行训练;然后,通过自适应学习的剪枝阈值修剪嵌入向量,为不同层次的实体学习出适当的嵌入维度。最后,将修剪后的嵌入维度更新回模型重新进行训练,从而为不同层次的实体自动学习出不同维度的嵌入。
4、本专利技术公开的面向层次结构实体的三元组分类方法,包括以下步骤:
5、获取普通关系三元组集tr和具有层次结构关系的三元组集ie,并将这两种三元组集组成新的三元组集t;
6、使用知识图谱表示学习为普通关系三元组(h,r,t)学习出其嵌入表示(h,r,t)以及为具有层次结构关系的三元组(e,c)学习出其嵌入表示(e,c)其中h表示头,r表示关系,t表示尾,得到其嵌入表示(h,r,t),其中,d表示向量空间的维度,e表示实例,c表示概念;
7、使用均匀采样或者自对抗负采样的方法构造三元组集tr和ie的负样本;
8、使用结合实体层次结构建模的知识嵌入模型建模知识图谱嵌入,将具有层次结构本文档来自技高网...
【技术保护点】
1.一种面向层次结构实体的三元组分类方法,其特征在于,包括以下步骤:
2.基于权利要求1所述的面向层次结构实体的三元组分类方法,其特征在于,普通三元组Tr的负样本集其中,E表示实体集,R表示关系集,T表示三元组集,h’和t’分别为负样本中的头和尾;
3.基于权利要求2所述的面向层次结构实体的三元组分类方法,其特征在于,对于普通关系三元组(h、r、t),采用TransE模型进行建模,其评分函数定义为:
4.基于权利要求3所述的面向层次结构实体的三元组分类方法,其特征在于,将知识图谱的训练数据以形如D={(h,t,r),L(h,t,r)}的形式表示,其中,L(h,t,r)∈{0,1}为三元组(h,t,r)对应的标签,1表示正三元组,0表示负三元组;对于一个输入的训练数据{(h,t,r),L(h,t,r)},当L(h,t,r)为0时,目标函数O'(h,t,r)的优化目标是最小化P(r|h,t);当L(h,t,r)为1时,O'(h,t,r)的目标是最大化P(r|h,t),即最小化1-P(r|h,t);
5.基于权利要求4所述的面向层次结构实
6.基于权利要求5所述的面向层次结构实体的三元组分类方法,其特征在于,通过最小化所有训练数据的目标函数进行训练,因此普通关系三元组集的损失函数Lr为:
7.基于权利要求6所述的面向层次结构实体的三元组分类方法,其特征在于,为了学习模型参数,通过最小化基于实体层次结构建模的知识图谱嵌入模型的损失函数进行训练,即:
8.基于权利要求7所述的面向层次结构实体的三元组分类方法,其特征在于,为不同层次的实体自动分配嵌入维度,包括:
9.基于权利要求8所述的面向层次结构实体的三元组分类方法,其特征在于,对V进行软阈值重参数化,然后通过梯度下降来更新可学习的参数s来更新剪枝阈值g(s),从而完成对V的剪枝操作;对V重参数化后的表示为:
10.基于权利要求1所述的面向层次结构实体的三元组分类方法,其特征在于,所述的知识图谱为医学知识图谱、生物学知识图谱或者地理学知识图谱。
...【技术特征摘要】
1.一种面向层次结构实体的三元组分类方法,其特征在于,包括以下步骤:
2.基于权利要求1所述的面向层次结构实体的三元组分类方法,其特征在于,普通三元组tr的负样本集其中,e表示实体集,r表示关系集,t表示三元组集,h’和t’分别为负样本中的头和尾;
3.基于权利要求2所述的面向层次结构实体的三元组分类方法,其特征在于,对于普通关系三元组(h、r、t),采用transe模型进行建模,其评分函数定义为:
4.基于权利要求3所述的面向层次结构实体的三元组分类方法,其特征在于,将知识图谱的训练数据以形如d={(h,t,r),l(h,t,r)}的形式表示,其中,l(h,t,r)∈{0,1}为三元组(h,t,r)对应的标签,1表示正三元组,0表示负三元组;对于一个输入的训练数据{(h,t,r),l(h,t,r)},当l(h,t,r)为0时,目标函数o'(h,t,r)的优化目标是最小化p(r|h,t);当l(h,t,r)为1时,o'(h,t,r)的目标是最大化p(r|h,t),即最小化1-p(r|h,t);
...
【专利技术属性】
技术研发人员:张鹏飞,谭真,肖卫东,唐九阳,胡艳丽,方阳,赵翔,
申请(专利权)人:中国人民解放军国防科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。