APP下载

基于统计的知识推理研究进展

2020-07-27赵国清何佳洲李永盛王景石

指挥控制与仿真 2020年4期
关键词:三元组知识库相似性

赵国清,何佳洲,李永盛,王景石

(江苏自动化研究所,江苏 连云港 222061)

为了能充分利用异质多元、组织结构松散的互联网数据,从中获取有价值的知识,研究人员们做了大量的工作。Bernerslee等人[1]提出了语义网概念,用本体模型形式化表达Web数据信息中的隐含语义;W3C提出使用资源描述框架(RDF)和万维网本体语言(OWL)来规范化地描述网络资源[2]。2012年Google在此基础上提出了知识图谱概念[3],用以提升搜索引擎能力、增强用户体验。目前,知识图谱以其强大的语义处理能力和开放组织结构,已经成为人工智能领域的关键技术,也是当下研究的热点之一。

目前,已经出现了一大批可用的开放知识图谱,如YAGO[4-5]、Dbpedia[6]、NELL[7]、Freebase[8]等。这些知识图谱从大量数据资源中精炼出知识,并组织及管理知识库,为垂直搜索,问答系统等智能应用提供支持。然而不全面的数据来源使得这些知识图谱比较稀疏,大量实体间的关系未标注,甚至已标注关系中也存在错误,这就需要使用知识图谱补全技术补全知识图谱中缺失的知识,同时使用知识图谱去噪修正错误关系[9],主要采用的方法便是知识推理技术。

1 知识图谱中的知识推理

区别于传统意义上的推理,面向知识图谱的知识推理,是根据知识库中两个或两个以上的已有知识,通过各种方法推理出新知识的过程。由于知识图谱是以(头实体,关系,尾实体)事实三元组形式存储知识,故知识推理的任务主要是对实体预测或对实体间关系预测。

根据采用的方法不同,知识推理可分为基于逻辑的推理和基于统计的推理两大类。其中,基于逻辑的知识推理方法又可具体分为基于一阶谓词逻辑、基于描述逻辑和基于本体三种。一阶谓词逻辑以非结构化形式表达知识,将三元组化为一系列命题,其中头尾实体对应命题的个体,实体间关系对应命题的谓词,再根据设定好的逻辑规则与约束条件推理出新的命题(知识)。例如,由“A是B的父亲”和“B是C的父亲”,可推出“A是C的爷爷”。描述逻辑专门用来应对实体关系复杂的推理任务,通过知识库中的TBox与Abox将复杂问题简化为一致性检测问题[10]。基于本体的知识推理,则是利用SWRL等规则语言,在概念层次上进行推理。

基于逻辑的方法依靠专家先行给出确定的逻辑规则,再在此基础上进行推理,在小规模的知识图谱上取得了很高的精准度和解释性。然而为了适应信息技术的飞速发展,现在的开放知识图谱规模越来越大,包含的知识也横跨了越来越多的领域,单靠专家们一一设定逻辑规则效率太低。由此产生了基于统计的知识推理方法,利用知识图谱的统计规律,结合机器学习来进行推理。

2 基于统计的知识推理技术

知识图谱除了遵循一些确定性规则(如实体类型的传递性)外,还遵循一些统计规律:1)同质性,即具有相同特征的实体间更有可能有联系;2)可用块结构划分实体,同一个块的所有实体都与其他块的实体有相似关系[11];3)部分实体间依赖关系可能横跨多个不同三元组链与关系类型。基于统计的知识推理要充分利用知识图谱的这些统计规律,从现有知识库中学习新的知识。

2.1 基于隐特征的实体关系学习

2.1.1 建立数学模型

为学习实体及实体间关系,需要先建立起数学模型,将实体与关系转化为机器所能理解的形式。设知识图谱中所有实体的集合为E={e1,e2,…,en},所有关系的集合为R={r1,r2,…,rm},则事实三元组可表示为xijk=(ei,rk,ej),其中i,j=1,2,…,n,k=1,2,…,m。

引入随机变量yijk∈{0,1} 表示三元组xijk的存在性,yijk取1代表xijk存在,取0则表示xijk不存在。由m*n2个yijk组成三阶张量Yijk∈{0,1}n×m×n,每个可能的Yijk都代表真实世界的一个可能实现。令P(Yijk)为随机张量Yijk的联合分布函数,则基于统计的知识推理方法便是通过机器学习方法计算P(Yijk)来达到预测事实三元组的目的。

例如,在假设随机变量yijk条件独立的情况下,P(Yijk)可定义为[12]

(1)

其中D是E×R×E×{0,1}的一个子集,代表当前知识图谱,函数Ber(y|p)为伯努利分布函数。C为参数,σ(x)=1/(1+e-x)为sigmoid函数,fijk为事实三元组xijk的得分函数。

由此可见,P(Yijk)正相关于fijk,也即fijk可代表对三元组xijk存在的信心,得分越高,xijk越有可能存在。事实上,不管P(Yijk)表达式如何,总需要设计出一个与P(Yijk)正相关的合适的得分函数fijk,这即是影响统计关系学习效率与准确度的关键。

2.1.2 RESCAL模型

针对知识图谱中关系域维度高、分布稀疏的特点,Nickel等人[13-15]引入张量分解(Tensor Factorization)的方法,提出了RESCAL模型,通过模型的隐特征向量进行集体学习。他们认为实体的隐特征(Latent Feature)是影响实体间关系的关键,将各种不可被机器理解的实体用一个个隐特征向量表示后,可以方便地使用机器学习的方法来预测实体间的关系。

模型中设定xijk=(ei,rk,ej)的得分函数为

(2)

其中li=(li1,li2,…,liN)T,lj=(lj1,lj2,…,ljN)T为实体ei和ej的隐特征向量,d为实体的隐特征个数,wabk表示关系rk中隐特征a和b的相互作用程度。它用乘法项描述了两实体间的相互作用,因li和lj都是线性关系,故也称为双线性模型。训练过程中,同时学习实体的隐特征向量表示为影响矩阵Wk。

RESCAL模型的推理准确率高,但是计算慢,时间复杂度高,占用内存大,在大型知识图谱上并不适用。在此基础上,Chang等人[16]提出了TRESCAL模型,引入实体类型约束,提前排除与关系rk不相关类型的实体,很大地提升了计算速度。

2.1.3 结构化嵌入模型(SE)

相比较于RESCAL模型直接利用实体的隐向量表示进行集体机器学习,隐距离模型(LDM)方法则是根据实体隐特征向量间的距离来预测两实体间的关系。Hoff等人在文献[17]中第一次提出此算法,并用于社交网络分析。他们定义得分函数fij为

(3)

其中α与β为常数,附加协变量δij表示观测得到的潜在成对性,d(li,lj)表示实体ei和ej的隐特征向量之间的距离(常用欧氏距离,也即‖li-lj‖2)。d(li,lj)越大,则fij越小,实体ei和ej间就越可能有关系。

在此基础上,Bordes等人[18]提出了结构化嵌入(SE)模型,将隐距离模型方法推广到了多关系数据的知识推理中。定义所有实体的d维隐特征向量组成的空间为嵌入空间,取得分函数fij为

(4)

2.1.4 翻译模型(TransE)

无论是基于隐特征的RESCAL模型,还是基于隐距离的SE模型,都是将关系视作一个变换矩阵,将实体映射到特定维的向量空间中进行集体学习。然而训练过程中需要先学习出关系变换矩阵等参数,对于大型知识图谱来说耗费时间较长,占用内存也较大,准确度不高。

为此,Bordes等人[19]受文献[20]中提出的“用嵌入空间中的向量差表示词汇间关系”思路启发,提出了TransE模型,定义得分函数fij为

(5)

其中函数d(x1,x2)表示向量x1,x2间距离(常取欧氏距离),li与lj分别为头实体ei和尾实体ej在嵌入空间中的向量表示,rk为关系rk在嵌入空间中的向量表示。该模型思路为:如果事实三元组xijk=(ei,rk,ej)存在,那么头实体向量li与关系向量rk之和与尾实体向量lj相近,否则远离。训练过程中,若关系数量不足,可通过替换头尾实体增加负例,最终根据得分函数的高低确定推理结果。

TransE模型简单有效,可并行性好,计算效率和召回率都很高,在学术界大受欢迎,科研工作者们不断地投入了对Trans系列的研究。例如, Wang等人[21]为了提升TransE处理多属性关系的能力,提出了TransH模型,先将实体映射到关系所在的超平面上,再利用TransE算法建模;Lin等人[22]提出了TransR模型,先将实体和关系映射到不同向量空间,再通过空间映射矩阵将实体向量映射到每个关系对应的不同空间中,最后再计算得分函数。

2.2 基于图特征的实体关系学习

通过知识图谱中节点的领域与节点间路径的存在性观测度量出实体的相似性,相似性越高的实体间更可能存在关系(边)。根据度量方法不同可分为局部相似性指数、全局相似性指数和准局部相似性指数。局部相似性指数是通过实体的公共邻居数或绝对邻居数衡量实体间的相似性,计算效率高但无法预测远程或全局依赖关系,如文献[23]中提出的Adamic-Adar指数,文献[24]中提出的偏好连接(Preferential Attachment)算法;全局相似性指数是通过实体间所有的路径集合或图上的随机游走来计算实体相似性,预测效果更好但计算代价很高,对如Katz指数[25]、PageRank算法[26];准局部相似指数是对两者的折中,以兼顾计算效率和预测效果,如局部Katz指数[27]、局部随机游走算法[28]。

另一种方法是基于归纳逻辑编程(ILP)从知识图谱中挖掘提取出新的规则,并利用这些规则预测新的关系,如ALEPH系统[29]、AMIE系统[30-31],它们挖掘出的规则可解释性好,但是难于挖掘出有用的规则。此外,还有路径排序方法(Path Ranking)[32-33],受随机游走算法启发,先观测出两实体间的所有联通路径,然后随机跟踪一个传出链接,通过抽样过程递归地计算出每种不同长度路径的概率,并以此为特征预测新的边,即实体间关系。

2.3 实体类型推理(Type Inference)

大型知识图谱中实体数量众多,为了更方便地管理、调用知识库,需要实体按类型分组划分。而由于跨领域大型知识库中实体种类繁杂,靠人工标注耗费过大且效率低下,所以研究结合机器学习方法的自动类型推理方法很有必要。

基于RDF,知识图谱由一系列事实三元组组成,其中有一种特殊的关系叫“属性”,此时三元组可写作(实体,属性,属性值),例如(中国,首都,北京)三元组表示“中国的首都是北京”。在此基础上,Paulheim等人[34]提出了SDtype模型,利用三元组中头尾实体的在属性链接中的位置统计分布规律来推理实体的类型。例如,统计知识库中所有的关于属性“首都”的(x,首都,y)三元组的分类情况,可计算出x是“国家名”的概率P(x是国家名)与y是“城市名”的概率P(y是城市名),进而便可推理出其他未分类的形如(a,首都,b)三元组中实体的类型。

设类型集合为Type={t1,t2,…,tM},待分类实体的属性有Property={p1,p2,…,pN},Sdtype模型定义待分类实体类型为T的置信度为

(6)

其中事件cp(i)表示头实体与尾实体是否含有公共属性pi,含有则为真,不含则为假;cp(i)为真时,P(T|cp(i))是由统计得到的公共属性pi存在时实体为类型T的概率;N为待分类实体属性总数,既包含传入属性(作为尾实体),也包含传出属性(作为头实体);wpi为权系数,代表预测实体类型时属性pi的重要程度,定义为

(7)

其中P(tj)表示类型tj的三元组在全体三元组中所占比例。Sdtype模型可用于大型跨域数据集,分类准确率高,且能够处理噪声数据,在Dbpedia上取到了很好的效果,其不足之处是仅能预测较高级别的类型,难以预测更细粒度的类型。

3 结束语

知识图谱能够方便地将真实世界翻译成一张机器能够理解的数据网络,在人工智能领域占有重要地位,一直以来备受学术界与工业界的关注。知识推理技术能够在现有知识库基础上挖掘,预测新的知识,是知识图谱补全与知识图谱去噪的重要手段。

当前的基于统计的知识推理方法还存在一些问题,如难以处理开放世界多元关系问题,对实体属性的利用率不高。同时,近几年在图像,视频处理等领域的深度学习技术,也由于缺乏可解释性与因果推断能力,在知识推理领域受挫。而结合深度学习神经网络与分布式学习的混合推理方法,如ConvKB[35]、R-GCN[36]等模型,展现出较优的性能与较好的潜力,值得后续深入研究。

随着知识图谱规模越来越大、横跨的领域越来越多,传统的基于逻辑的知识推理方法计算速度缓慢、耗费代价高,不适用于大型知识图谱。而结合机器学习方法的知识推理技术能简单高效地完成推理任务,该方向的研究对完善知识图谱具有重要意义,值得后续深入探究。

猜你喜欢

三元组知识库相似性
TransP:一种基于WordNet中PartOf关系的知识图谱嵌入方法
汉语近义词辨析知识库构建研究
隐喻相似性问题的探讨
基于卷积神经网络的知识图谱补全方法研究
K-VQA:一种知识图谱辅助下的视觉问答方法
12个毫无违和感的奇妙动物组合
基于隐喻相似性研究[血]的惯用句
我国联合虚拟参考咨询系统知识库现状研究*
——基于与QuestionPoint的对比
位置与方向测试题
潜析结构 把握性质