一种复杂网络下基于路径选择的表示学习方法与流程

文档序号:15688422发布日期:2018-10-16 21:30阅读:258来源:国知局

本发明涉及一种基于路径选择的表示学习方法,尤其涉及一种复杂网络下基于路径选择的表示学习方法,属于知识图谱推理以及自然语言技术领域。



背景技术:

知识图谱(knowledgegraph)是大型知识库的一种结构化的表示形式,目前国内外已经累积了很多大型知识图谱,国外比较权威的知识图谱包括freebase,dbpedia和yago,国内较完备的知识库如cn-dbpedia,xlore等。这些kbs由大量三元组构成,知识图谱中的节点代表实体,节点之间的连线代表关系,每一个三元组描述一个事实,如(中国,的首都是,北京)。在知识图谱构建过程中,存在着知识补全问题。虽然一个普通的知识图谱就存在数百万的实体和数亿的关系,但相距完整还差很远。知识推理是利用现有知识图谱中的信息对缺失部分进行补全。

在知识推理领域中,经典的基于路径推理是路径排序算法pra(laon,cohenww.relationalretrievalusingacombinationofpath-constrainedrandomwalks[m].kluweracademicpublishers,2010),由lao&cohen于2010年提出。pra算法可以看作是沿一组带有关系信息的边上的随机游走算法,它与经典随机游走算法相比,主要优势在于它加入了限制游走的边的类型信息。原始的pra算法的主要思想是将关系对应的路径集合抽取出来作为推理的特征集合,游走概率作为特征值,然后构建分类器训练出每条路径对应的权值,作为推理的依据。

另一个知识推理的经典算法是基于知识表示的transe([6].bordesa,usuniern,westonj,etal.translatingembeddingsformodelingmulti-relationaldata[c]//internationalconferenceonneuralinformationprocessingsystems.curranassociatesinc.2013:2787-2795)算法,由bordes于2013年提出,它假设存在隐式的向量空间,将知识图谱中的实体和关系在低维的空间里进行表达,得到连续的向量。将两个实体之间抽象的关系映射为两个向量之间的转换关系。正式的表示:对于任意三元组,都存在。transe算法在推理方面表现良好,实现简单,但是对于一对多、多对一、多对多关系有着很大的缺陷。

当前新的研究方向是将知识表示和路径推理算法相结合,例如ptranse算法(liny,liuz,luanh,etal.modelingrelationpathsforrepresentationlearningofknowledgebases[j].computerscience,2015)但是ptranse的模型中对路径信息的处理略显简单,导致路径特征空间十分庞大,其中包含着大量冗余路径,冗余路径会降低模型的泛化能力,影响推理准确性。而且模型忽略了对缺失路径信息三元组的处理。针对上述问题,本发明致力于提出一种基于路径选择的表示学习方法。



技术实现要素:

本发明的目的在于解决传统路径推理中路径冗余导致的推理效率低下,以及探寻一种可以充分利用路径信息到表示学习中的结合方式,提出了一种复杂网络下基于路径选择的表示学习方法。

本发明的核心内容是:通过在知识图谱上进行规定起始点的随机游走,得到实体间的路径信息,这些路径信息存在大量的冗余数据,本文通过训练一个分类器来对高置信度的路径进行筛选;然后利用知识表示的方法将实体,关系和路径用低维向量方式进行表示,再通过向量间的运算判断实体之间的关系。

所用符号定义和描述如下:

知识图谱,记为t=<e,r,s>;

其中,e表示实体集合,r代表关系集合,任意三元组,记为:(h,r,t),是集合s中的元素;其中,h为三元组(h,r,t)的头,t为三元组(h,r,t)的尾,且h,t∈e,关系r∈r;

任意关系r对应的路径特征集合,记为πr=(p1;...;pd),;其中,πr是所有存在关系r的实体对间路径集合的并集,πr中的路径p1;...;pd对应的权值为路径置信度,记为w=(w1,...,wd);

在某种程度上路径特征可以视作是推理关系r的证据和现象,本发明将路径特征主要分为三种类型:强证据sr(p),弱证据wr(p),伴随现象cr(p),πr=sr(p)∪wr(p)∪cr(p),d=k+m+o.;

本发明通过以下步骤实现:

步骤一、关键路径选择,包括对关键路径进行筛选以及计算对应路径置信度,具体包括如下子步骤:

步骤1.1、路径特征抽取,具体为:将知识图谱视为无向图,以某实体为起点进行随机游走或者深度优先搜索,获取每一对三元组实体之间的路径集合;统计所有存在关系r的实体对作为分类器的样本,并取所有样本的路径集合的并集作为关系r的特征集合πr=(p1;...;pd);

步骤1.2、采用二值化的特征空间计算特征值,具体为:将存在关系r的样本中两个实体间的路径对应到特征集合πr=(p1;...;pd)中,将路径在特征集合对应位置的特征值置为1,其他不存在的路径位置的特征值置为0,每一个样本会得到一个二值化特征向量;

步骤1.2中采用二值化的特征空间而放弃原始pra算法的原因为:原始pra算法采用游走概率作为特征值,在知识图谱中两个节点之间的路径数量会很大,对推理有很强的置信度的路径可能游走到的概率并不是很高,所以路径置信度和路径游走概率没有很密切的相关性;并且在多篇相关文献中实验证明,使用随机游走概率对于推理效果没有明显的提高,而且在计算关系路径概率时时间开销过大,所以为了提高算法的效率我们决定采用二值化的特征空间,放弃原始pra算法的游走概率特征值;

步骤1.3、使用线性模型和非线性模型分别计算路径的置信度,得到两套路径的置信度向量;

本步骤构造了路径特征的选取模型,在建立模型之前,首先需要解决负样本缺失的问题,提出一种构造负样本的方法:对于某一目标关系r,随机在其他关系中随机选择其中一个样本,如果该样本的两个实体之间不存在目标关系r,则将该样本作为负样本,正负样本个数比例为1:1;

路径特征的选取模型包括线性模型和非线性模型;

分别使用线性模型和非线性模型来对路径的置信度进行计算:

其中,线性模型采用弹性网络的方法使用l1和l2范式对模型结构风险进行约束得到稀疏的权重向量,且可得到稳定的参数,使得模型具有一定的容错性;

非线性模型采用集成学习中的随机森林方法,利用随机森林对多元共线性不敏感的特性使模型在缺失样本和特征相关的情况下依旧保证良好的效果;此外,非线性模型对在特征的选择和样本的使用上进行随机化,使得非线性模型具有很强的泛化能力;

步骤二、表示学习,具体通过构造负例、优化目标函数得到关系和实体的向量;

具体使用transe的实体和关系向量化方法以及transe的目标函数,保证头、尾和关系之间的联系;在此基础上使用路径信息进一步对模型进行优化,又包括如下子步骤:

步骤2.1、构造负例,以等概率随机替换三元组的头、尾及关系得到不出现在数据集中的三元组数据集合;

具体基于知识图谱的封闭世界假设,封闭世界假设认为知识图谱中的事实都是正确的,而不出现在图谱中的事实都认为是错误的;所以利用知识库中的三元组(h,r,t)构造负例,以等概率随机替换三元组的头h,尾t,关系r得到不出现在数据集中的三元组数据集合:s-={(h',r,t)}∪{(h,r',t)}∪{(h,r,t')};

步骤2.2、构造由两部分组成的目标函数,目标函数包括关系三元组损失函数和路径三元组损失函数两部分;

其中,关系三元组损失函数:对于一个三元组(h,r,t),损失函数的定义如下:e(h,r,t)=||h+r-t||,ξ是预设大于0的正数来约束||h+r-t||≤ξ,来确保r≈t-h;

路径三元组损失函数:对于长度为l的路径p=(r1,...,rl)路径向量由关系路径中的关系向量的相加得到,表示为:p=r1+...+rl;

对于一个路径三元组(h,p,t)来说,损失函数定义如下:

e(h,p,t)=||p-(t-h)||=||p-r||=e(r,p),路径p作为推理关系r的有效规则之一,需要保证能量函数e(r,p)可以得到尽可能低的分数;

确定模型目标函数(1)如下:

等式右边l(h,r,t)是对实体关系的约束,l(p,r)是路径关系约束,r(p,r)是上文通过路径特征选取算法得到的路径p对于推理出关系r的置信度,是路径置信度w中的非零项,p(h,t)是实体对之间所有路径的集合;等式右边最后一项是目标函数的正则化项,λ是正则化项的超参数,θ={h,t∈e}∪{r∈r};

其中,目标函数(1)中的l(h,r,t)和l(p,r)具体使用hinge损失函数的形式计算,得到(2)和(3)的目标函数表示如下:

步骤2.3、基于批量梯度下降法优化目标函数:

采用批量梯度下降的方式对目标函数(1)中的l(s)进行最小化,迭代更新参数θ={h,t∈e}∪{r∈r},最终得到关系和实体的向量。

有益效果

一种复杂网络下基于路径选择的表示学习方法,与现有方法相比,具有如下有益效果:

1.现有方法对路径信息的处理略显简单,导致路径特征空间十分庞大,其中包含着大量冗余路径,冗余路径会降低模型的泛化能力,影响推理准确性,本发明提出的基于路径选择的表示学习模型是结合了当前知识图谱领域中主流的两大推理方法;结合图谱中的显式和隐式的信息进行模型的训练,并且保留高质量的路径证据,使得模型的训练复杂度先比现有方法有明显的降低;

2.结合了路径推理算法和表示学习方法的优点,提高了模型整体的推理能力;在路径选择阶段进行关键路径选择,精简了路径特征空间,缩短了训练时间,进一步提高了模型的泛化能力;相比pra算法,以及表示学习transe模型本发明提出的方法的表现在准确率和时间开销上都有更优秀的表现。

附图说明

图1是本发明一种复杂网络下基于路径选择的表示学习方法及实施例1所基于的表示学习系统的组成;

图2是本发明一种复杂网络下基于路径选择的表示学习方法及实施例1所基于的表示学习系统的实现流程图。

具体实施方式

下面结合附图和实施例对本发明做进一步说明和详细描述。

实施例1

本实施例叙述了本发明一种复杂网络下基于路径选择的表示学习方法的组成及具体实现过程,分别如图1和图2所示。

从图1中可以看出,本发明一种复杂网络下基于路径选择的表示学习方法所基于的表示学习系统包括:路径选择模块和表示学习模块;

其中,路径选择模块又包括路径抽取单元,路径特征值计算单元,线性及非线性分类器,关键路径筛选单元,表示学习模块包括负例构造单元,知识表示及路径结合模型,构建以及优化目标函数单元,输出向量表示单元。

本发明的具体实施流程如图2所示,从图2可以看出,步骤如下:

步骤a、关键路径选择,进行关键的路径的筛选,以及对应路径置信度的计算;

步骤b、对实体、关系、路径进行表示学习,主要功能是结合关键路径信息构建知识表示模型,学习得到实体关系向量;

步骤b.1、路径特征抽取;

在头尾实体之间进行随机游走或者深度优先搜索,获取每一对三元组实体之间的路径集合。对图谱中每一个关系建立分类器,统计所有存在关系r的三元组作为样本,并取所有样本的路径集合的并集作为关系r的特征集合πr=(p1;...;pd);

步骤b.2、特征值计算;

具体采用二值化的特征空间:

将存在关系r的样本中两个实体间的路径对应到步骤b.1中得到的特征集合πr=(p1;...;pd)中,将路径在特征集合对应位置的特征值置为1,其他不存在的路径位置的特征值置为0,每一个样本会得到一个二值化特征向量;

步骤b.3、置信度计算;

本步骤构造了路径特征的选取模型,在建立模型之前,首先需要解决负样本缺失的问题:对于某一目标关系r,随机在其他关系中随机选择其中一个样本,如果该样本的两个实体之间不存在目标关系r,则将该样本作为负样本;正负样本个数比例为1:1;

模型分别使用线性模型和非线性模型来对路径的置信度进行计算,线性模型采用弹性网络的方法使用l1和l2范式对模型结构风险进行约束:模型目标函数如下:

目标函数中的超参数α和ρ,α为控制正则化惩罚力度的参数,ρ为控制l1,l2范式所占比重的参数。在超参数集上进行交叉验证,确定优选参数α=1.0,ρ=0.7。通过梯度下降更新权值w,最终得到w=(w1,...,wd)作为特征空间πr=(p1;...;pd)中各路径的置信度。

非线性模型使用集成学习中的随机森林方法,利用随机森林对多元共线性不敏感的特性使模型在缺失样本和特征相关的情况下依旧保证良好的效果,具体计算步骤如下:

输入:特征空间πr=(p1;...;pd),样本集合,决策树数量n=50,关键特征数量m=200。

输出:关键特征空间πr'=(p1;...;pm),特征权重向量w=(w1,...,wm)。

step1、利用特征空间πr建立包含n颗决策树的随机森林。

step2、计算每颗树的袋外误差,第i颗树i=1,2,..,n的袋外误差为erroob(i)。

step3、对于每一条pj∈πr计算特征pj的重要性。随机地对袋外数据oob所有样本的特征pj加入噪声干扰,计算袋外误差erroob'(i),计算特征x的重要性:

step4、按照特征的重要性对特征进行排序,去除重要性低的特征到新的特征空间πr'=(p1;...;pd'),d'<d。

step5、重复step1直至选出m个特征。

另外模型对在特征的选择和样本的使用上进行随机化,可以使模型具有很强的泛化能力,最终得到通过两种方法可以得到两套路径的置信度向量;

步骤c、表示学习;

步骤c使用transe的实体和关系向量化方法以及transe的目标函数,保证头、尾和关系之间的联系,在此基础上,使用路径信息进一步对模型进行优化;

步骤c.1、构造负例;

对于任意三元组来说,随机替换其头,尾,关系得到不出现在数据集中的三元组数据集合:s-={(h',r,t)}∪{(h,r',t)}∪{(h,r,t')};

对关系损失函数来说,要分别替换头尾,关系作为负例,对于路径损失函数来说只需要对关系进行替换;

步骤c.2、构建目标函数;

步骤c.2a、构造目标函数,选取路长度l=2的路径p=(r1,...,rl)路径向量由关系路径中的关系向量的相加得到,表示如下p=r1+...+rl,对于一个三元组(h,r,t),能量函数的定义如下:e(h,r,t)=||h+r-t||,来确保r≈t-h成立。对于一个路径三元组(h,p,t)来说,能量函数定义如下:e(h,p,t)=||p-(t-h)||=||p-r||=e(r,p).路径p作为推理关系r的有效规则之一,需要保证能量函数e(r,p)可以得到尽可能低的分数;

综上所述,本文确定模型目标函数(5)如下:

等式右边l(h,r,t)是对实体关系的约束,l(p,r)是路径关系约束,r(p,r)是上文通过路径特征选取算法得到的路径p对于推理出关系r的置信度,是路径置信度w中的非零项,p(h,t)是实体对之间所有路径的集合。等式右边最后一项是目标函数的正则化项,选取λ=1作为正则化项的参数,θ={h,t∈e}∪{r∈r}。

其中,目标函数(5)中的l(h,r,t)和l(p,r)具体使用hinge损失函数的形式计算,得到(6)和(7)的目标函数表示如下:

步骤c.2b、目标函数优化:

我们采用批量梯度下降的方式对目标函数l(s)进行最小化,迭代直至收敛,最终得到关系和实体的向量;

至此,经过步骤a到步骤c,完成了一种基于路径选择的表示学习方法。

以上所述为本发明的较佳实施例而已,本发明不应该局限于该实施例和附图所公开的内容。凡是不脱离本发明所公开的精神下完成的等效或修改,都落入本发明保护的范围。

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