摘要:本文从知识推理的基本概念出发,通俗易懂得介绍了知识图谱知识推理的应用和方法。

本文分享自华为云社区《0基础入门知识图谱的超能力——知识推理》,作者:Cheri Chen。

一、知识推理的概念

推理是运用逻辑思维能力,从已有的知识出发,得出未知的、隐性的知识。

具体到知识图谱中,所谓的知识推理,就是利用图谱中现有的知识(三元组),得到一些新的实体间的关系或者实体的属性(三元组)。如下图所示:假如原来的知识图谱中有这样两个三元组,<姚明,妻子,叶莉>和<姚明,女儿,姚沁蕾>,通过知识推理,可以得到<姚明,女儿,姚沁蕾>。

二、知识推理的应用

知识补全

实际构建的知识图谱,通常存在不完备的问题,即部分关系或属性会缺失。知识补全呢,就是通过算法,补全知识图谱中缺失的属性或者关系。

如下图所示,以“姚沁蕾的妈妈是谁”为例。有一条常识是 “父亲的妻子是妈妈”,则可依据该常识,推理出姚沁蕾的妈妈是叶莉,进而补全“姚沁蕾”和“叶莉”之间的关系,提升我们这个简单的人物关系知识图谱的完备性。

知识纠错

实际构建的知识图谱还可能存在错误知识。其中,实体的类型、实体间的关系、实体属性值均可能存在错误。知识图谱的纠错是一个极具挑战的任务。这些错误会影响知识图谱质量,进而影响基于知识图谱的应用。

我们可以通过推理进行知识图谱纠错(如下图)。比如,在某个影视知识图谱中,虚线框中的实体《春光灿烂猪八戒》,其类型为“电影“。它的属性有集数,主题曲、片尾曲等。而其他同为”电影“类别的实体,其属性多包含上映时期、票房,且大多没有集数这个属性。则推理可知,《春光灿烂猪八戒》这个实体的类型大概率存在错误,其正确类型应该是电视剧。

推理问答

基于知识图谱的推理问答也是知识图谱推理的典型应用。基于知识图谱的问答,一般简称为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 实战营]——六大实战营课程单元制,随进随学,供大家免费学习。

点击关注,第一时间了解华为云新鲜技术~

初学者入门知识图谱必看的能力:推理相关推荐

  1. 荐书:理解知识图谱必看的那些书、公众号和其他资料

    初稿已完成,以后慢慢补充. 在知识图谱领域摸爬滚打了近三年,几乎全靠自学,现在想起来还是一把辛酸泪.虽然现在的工作和知识图谱没太多关系,但还是放不下自己研究了很久的领域,所以在此总结一些有用的书和资料 ...

  2. Java如何快速入门?Java初学者从入门到精通必看!

            作为刚刚接触Java的小白来说,最担心的应该就是Java怎么学,都需要掌握哪些内容?今天这篇文章希望能帮助大家快速入门Java,少走弯路! 如何快速入门Java? 一.作为刚接触Jav ...

  3. 自学python买什么教材-从入门到进阶必看,51本Python精品书籍免费送!

    原标题:从入门到进阶必看,51本Python精品书籍免费送! 源 /网络 Python是一种多功能语言.它经常用作Web应用程序的脚本语言,嵌入到软件产品中,以及人工智能和系统任务管理.它既简单又强大 ...

  4. 热烈推荐: A*算法 (启发式搜索的入门篇,必看)转载

    热烈推荐: A*算法 (启发式搜索的入门篇,必看)转载 (2005-10-8 21:56)在搜索式算法中,A*算法算是个分水岭.因为它引入了启发式估价函数,从"瞎搜"转化到了&qu ...

  5. 新手如何快速入门Python(菜鸟必看篇)

    学习任何一门语言都是从入门(1年左右),通过不间断练习达到熟练水准(3到5年),少数人最终能精通语言,成为执牛耳者,他们是金字塔的最顶层.虽然万事开头难,但好的开始是成功的一半,今天这篇文章就来谈谈如 ...

  6. 如何看待,入门学习Python必看视频?python字符串(string)方法整理

    如何看待,入门学习Python必看视频?哈佛大学教授推荐,python字符串(string)方法整理 哈佛大学推荐,Python基础入门,Python小白书籍,Python学习路线,Python进阶, ...

  7. the crew 服务器维护,飙酷车神 the crew入门指南 新手必看

    就如同我们所知道的那样,EA 极品飞车的跳票,让<飙酷车神the crew>成为了今年竞速游戏的重头戏,而飙酷车神本身又融合了无缝式衔接的沙盒玩法,与我们所熟知的一般赛车游戏略有不同.接下 ...

  8. 户外设备选择远距离蓝牙需要了解的知识-----工程师必看

    户外设备选择远距离蓝牙需要了解的知识-----工程师必看 社会的进步和科技的发展,有一些户外设备方案商在选型和测试蓝牙数传模块时发现距离达不到自己预期值,心里很是着急,要知道传输距离是比较核心的参数, ...

  9. 手把手教你快速入门知识图谱 - Neo4J教程

    手把手教你快速入门知识图谱 - Neo4J教程 前言 1. Neo4J简介 2. Neo4J安装 3. Neo4J使用 4. Cypher查询语言 5. Neo4J实战教程 1. 首先,我们删除数据库 ...

最新文章

  1. iOS架构-静态库.a打包之资源文件打包成bundle(4)
  2. python使用符号#表示单行注释-Pyhton中单行和多行注释的使用方法及规范
  3. 数据关系模式设计的标准化
  4. 设计模式:迭代器模式
  5. 【PAT乙级】1013 数素数 (20 分)
  6. 别跟我说测试的坏话...
  7. moss 2007 单点登录的配置
  8. 腾讯课堂的物理实验(2017计蒜客初赛第三场)
  9. RTCM3.1/3.2
  10. 微信小程序实现秒杀、拼团、团购等效果
  11. Qt调用工业相机之相机的触发模式及代码实现
  12. 【反思】写在腾讯电话面试之后
  13. 手把手教你用小米手机OTG功能连接打印机
  14. Indel (Insertion and Deletion)分析简介
  15. Android基础学习笔记14:安卓手势编程
  16. Linux内核4.14版本:ARM64的内核启动过程(二)——start_kernel
  17. 吉信通:如何使用电脑简单的发送短信
  18. linux中查看文件大小
  19. 如何轻松画好服装设计效果图
  20. 齐岳DSPE-mPEG2000|二硬脂酸磷脂酰乙醇胺-聚乙二醇2000

热门文章

  1. 原生JS去除二维数组中重复了的一维数组
  2. react中的state、props、ref
  3. Java之Integer源码
  4. mysql mybatis springMVC
  5. iOS 系统级别录屏方式调研
  6. docker file 示例
  7. php执行linux命令的6个函数
  8. 【系统篇】从int 3探索Windows应用程序调试原理
  9. Linux下性能测量和调试诊断工具Systemtap
  10. [OS] 远程启动计划任务时以管理员身份运行