初学者入门知识图谱必看的能力:推理
摘要:本文从知识推理的基本概念出发,通俗易懂得介绍了知识图谱知识推理的应用和方法。
本文分享自华为云社区《0基础入门知识图谱的超能力——知识推理》,作者:CheriChen。
一、知识推理的概念
推理是运用逻辑思维能力,从已有的知识出发,得出未知的、隐性的知识。
具体到知识图谱中,所谓的知识推理,就是利用图谱中现有的知识(三元组),得到一些新的实体间的关系或者实体的属性(三元组)。如下图所示:假如原来的知识图谱中有这样两个三元组,<姚明,妻子,叶莉>和<姚明,女儿,姚沁蕾>,通过知识推理,可以得到<姚明,女儿,姚沁蕾>。
二、知识推理的应用
知识补全
实际构建的知识图谱,通常存在不完备的问题,即部分关系或属性会缺失。知识补全呢,就是通过算法,补全知识图谱中缺失的属性或者关系。
如下图所示,以“姚沁蕾的妈妈是谁”为例。有一条常识是 “父亲的妻子是妈妈”,则可依据该常识,推理出姚沁蕾的妈妈是叶莉,进而补全“姚沁蕾”和“叶莉”之间的关系,提升我们这个简单的人物关系知识图谱的完备性。
知识纠错
实际构建的知识图谱还可能存在错误知识。其中,实体的类型、实体间的关系、实体属性值均可能存在错误。知识图谱的纠错是一个极具挑战的任务。这些错误会影响知识图谱质量,进而影响基于知识图谱的应用。
我们可以通过推理进行知识图谱纠错(如下图)。比如,在某个影视知识图谱中,虚线框中的实体《春光灿烂猪八戒》,其类型为“电影“。它的属性有集数,主题曲、片尾曲等。而其他同为”电影“类别的实体,其属性多包含上映时期、票房,且大多没有集数这个属性。则推理可知,《春光灿烂猪八戒》这个实体的类型大概率存在错误,其正确类型应该是电视剧。
推理问答
基于知识图谱的推理问答也是知识图谱推理的典型应用。基于知识图谱的问答,一般简称为 KBQA。与传统的信息检索式问答相比,KBQA 可以具备一定的推理能力,这是它的优势。基于知识图谱的推理问答,通常应用于涉及多个实体,多个关系,多跳,比较等相对复杂的问答场景中。
比如,“刘德华主演的电影中豆瓣评分大于 8 分的有哪些?“这样的问题。需要机器对该问题进行解析、理解,在知识图谱中完成查询、推理、比较动作,找到《天下无贼》和《无间道》作为答案返回(如下图所示)。
三、知识推理的方法
基于本体的推理
本体是对领域中概念和概念之间关系的描述。基于本体的推理是利用本体已经蕴含的语义和逻辑,来对实体类型以及实体之间的关系进行推理。本体的描述形式是有规范的。RDFS、OWL 等是一类满足特定规范和讲究的用来表述本体的语言。
以 RDFS 为例:RDFS 定义了一组用于资源描述的词汇:包括 class,domain,range 等。其本身就蕴含了简单的语义和逻辑。我们可以利用这些语义和逻辑进行推理。
如下图中左侧的例子,谷歌的类型是一家人工智能公司,而人工智能公司又是高科技公司的子类,那么可推理,谷歌的也是一家高科技公司。右侧例子中,定义了投资这种关系的 domain 是投资人,range 是公司。可以简单的认为,投资这种关系的头节点都是投资人这种类型、尾节点都是公司这种类型。假设现在有一条事实是大卫切瑞顿 投资 谷歌 。则可以推理出,大卫 切瑞顿的类型是投资人。这两个例子呢,便是利用了 RDFS 本身蕴含的语义和逻辑,来进行推理。
基于规则的推理
基于规则的推理就是说,可以抽象出一系列的规则,将这些规则应用于知识图谱中,进行补全纠错。这种思路也是很简单、直观的。基于规则的推理的优点是,推理结果精准,并且具有可解释性。因此规则推理在学术界和工业界都有广泛的应用。
图中的例子,是人工定义了一些规则,包括“B 是 A 的妻子,则 A 是 B 的丈夫”、“B 是 A 的女儿,则 A 是 B 的父亲”等等。运用这些规则来进行推理,进而补全知识图谱的缺失关系。我们可以利用这些规则,推理出“米歇尔的丈夫是奥巴马”、“玛利亚的父亲是奥巴马”等新的知识。
基于表示学习的推理
前两种方法:本体推理和规则推理,都是基于离散符号的知识表示来推理的。它们具有强逻辑约束,准确度高、易于解释等优点。但是不易于扩展。基于表示学习的推理,通过映射函数,将离散符号映射到向量空间进行数值表示,同时捕捉实体和关系之间的关联,再在映射后的向量空间中进行推理。
知识图谱是由实体和关系组成,通常采用三元组的形式表示:head(头实体),relation(实体的关系),tail(尾实体) ,简写为(h,r,t)。知识表示学习任务就是学习 h,r,t 的向量表示。如下图所示,不同的点表示了不同的知识。我们可以找到一个合适的映射函数,让距离较近的点,在语义上也是相似的。
基于表示学习的推理比较抽象和复杂,这里举个简单的例子,推理“姚沁蕾的出生地是哪儿”。
假设我们已经找到了一个完美的映射函数,可以把知识图谱和一段包含相关信息的文本映射到同一向量空间。再对这些向量进行计算,比如把“姚沁蕾”、“在”、“当地医院”、“出生”几个向量简单相加后,到达了“休斯顿”这个向量,则可以推理出姚沁蕾的出生地是休斯顿。
[2021华为云 AI 实战营]——六大实战营课程单元制,随进随学,供大家免费学习。
版权声明: 本文为 InfoQ 作者【华为云开发者社区】的原创文章。
原文链接:【http://xie.infoq.cn/article/b9b5144fa992328cd1638ec9a】。文章转载请联系作者。
评论