知识图谱知识图谱入门详细介绍

Posted 笃℃

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识图谱知识图谱入门详细介绍相关的知识,希望对你有一定的参考价值。

【知识图谱】入门与介绍

文章目录

1. 引言

知识图谱是知识工程的分支,在人工智能领域有重要的作用。我们日常使用的搜索引擎背后的工作逻辑****、电商平台的智能推荐等都运用了知识图谱,本文主介绍知识图谱的基本概念、相关技术,以及知识图谱构建流程。通过本文可以了解什么是知识图谱,知识图谱经历的怎样的发展,知识图谱的作用,知识图谱如何建立以及相关技术。

2. 概念

知识图谱是人工智能的重要分支技术,在2012年由谷歌推出,是结构化的语义知识库,用于以符号形式描述知识库及其相互关系。

  • 其基本组成单位是实体—关系—实体”三元组,以及实体及其相关属性—值对;
  • 实体间通过关系相互联结,构成网状的知识结构。

上面的图展示了知识图谱的基本结构和单元,

  • 绿色圆圈也就是节点,代表实体;黑色直线也就是边,代表关系,蓝色圆圈也就是属性,表示实体的属性。

总之,知识图谱就是由这些节点和边组成的网络状知识库,知识图谱建立起来后的各种应用将在后面继续讨论。

3. 分类

知识图谱按照功能和应用场景可以分为通用知识图谱和领域知识图谱。其中,

  • 通用知识图谱面向的是通用领域,强调知识的广度,形态通常为结构化的百科知识,针对的使用者主要为普通用户;
  • 领域知识图谱则面向某一特定领域,强调知识的深度,通常需要基于该行业的数据库进行构建,针对的使用者为行业内的从业人员以及潜在的业内人士等。

4. 发展历程

知识图谱的起源可以追溯至1960年,在人工智能的早起发展中,有两个主要的分支,也就是两派系,

  • 一个是符号派,注重模拟人的心智,研究如何用计算机符号表示人脑中的知识,以此模拟人的思考、推理过程;
  • 一个则是连接派,注重模拟人脑的生理结构,由此发展了人工神经网络。这个时候提出了Semantic Networks,也就是语义网络,作为一种知识表示的方法,主要用于自然语言理解领域。

1970年,随着专家系统的提出和商业化发展,知识库(Knowledge Base)构建和知识表示得到重视。专家系统的主要思想认为专家是基于脑中的知识来进行决策的,所以为了实现人工智能应该用计算机符号来表示这些知识,通过推理机来模仿人脑对知识进行处理。

  • 早期的专家系统常用的知识表示方法有基于框架的语言(Frame-based Languages)和产生式规则(Production Rules)。
    • 框架语言用来描述客观世界的类别、个体、属性等,多用于辅助自然语言理解;、
    • 产生式规则主要用于描述逻辑结构,用于刻画过程性知识。

1980年,哲学概念—“本体”(Ontology)被引入人工智能领域来刻画知识,本体大概可以说是知识的本体,一条知识的主体可以是人,可以是物,可以是抽象的概念,本体就是这些知识的本体的统称。

1989年,Tim Berners-Lee在欧洲高能物理研究中心发明了万维网,人们可以通过链接把自己的文档链入其中;
在万维网概念的基础上,1998年又提出了语义网(Semantic Web)的概念,与万维网不同的是,链入网络的不止是网页,还包括客观实际的实体(如人、机构、地点等)。2012年谷歌发布了基于知识图谱的搜索引擎。

5. 作用

5.1 搜索

互联网的终极形态是万物互联,而搜索的终极目标是对万物直接进行搜索。

  • 传统的搜索是靠网页之间的超链接实现网页的搜索,而语义搜索是直接对事物进行搜索,比如人、物、机构、地点等,这些事物可以来自文本、图片、视频、音频、物联网设备等。
  • 知识图谱和语义技术提供了关于这些事物的分类、属性和关系的描述,这样搜索引擎就可以直接对事物进行搜索。比如我们想知道“《觉醒年代》的导演是谁?”,那么在进行搜素时,搜索引擎会把这句话进行分解,获得“《觉醒年代》”,“导演”,再与现有的知识库中的词条进行匹配,最后展现在用面前。

传统的搜索模式下,我们进行这样的搜索后得到的通常是包含其中关键词的网页链接,我们还需要在多个网页中进行筛选,可以看出基于知识图谱的搜索更加便捷与准确。

5.2 问答

人与机器通过自然语言进行问答与对话也是人工智能实现的标志之一,知识图谱也广泛应用于人机问答交互中。借助自然语言处理和知识图谱技术,比如基于语义解析、基于图匹配、基于模式学习、基于表示学习和深度学习的知识图谱模型。

5.3 辅助大数据分析

知识图谱也可以用于辅助进行数据分析与决策。不同来源的知识通过知识融合进行集成,通过知识图谱和语义技术增强数据之间的关联,用户可以更直观地对数据进行分析。此外知识图谱也被广泛用于作为先验知识从文本中抽取实体和关系,也被用来辅助实现文本中的实体消歧,指代消解,实体统一等

  • Entity Disambiguation(实体消歧):就是把一个实体的具体意思搞明白,比如Apple,通过具体方法计算出,它是水果,还是苹果公司。
  • Entity Resolution(实体统一 ):给定两个实体,判断是否是指向同一个实体。
  • Co-reference Resolution(指代消解):就是文本里的she,he,it 到底指代的什么。

6. 知识图谱的构建

知识体系的构建(知识图谱的构建),也叫知识建模,是指采用什么样的方式表达知识,其核心就是构建一个本体对目标知识进行描述。

  • 所谓的本体,就是一个知识描述框架,它定义了知识的类别体系,每个类别下所属的概念和实体、某类概念和实体所具有的属性以及概念之间、实体之间的语义关系。
  • 感兴趣可以去看一看中文通用知识体系的一个例子:cnschema。

知识体系的构建有两种方法:

  • 一种是自顶向下:即先构建一个完善的知识体系,再将知识填充到这个知识体系中;
  • 另外一种是自底向上:即在知识抽取的过程中,自动的扩充和构建知识体系。目前比较流行的自底向上的方法。

目前,知识图谱中的数据采用RDF数据模型进行描述,也就是大家熟悉的三元组的模式,即“实体1”-“关系”-“实体2”。例如三元组,“董事长(马明哲,中国平安)”,“董事长”表示关系,“马明哲”是头实体,“中国平安”是尾实体。

  • 目前大多数知识图谱都是采用自底向上的方式进行构建,知识图谱大致的构建流程是个不断迭代更新的过程。

6.1 数据获取

建立一个知识图谱首先要获得数据,这些数据就是知识的来源,它们可以是一些表格、文本、数据库等。根据数据的类型可以分为结构化数据、非结构化数据和半结构化数据。

  • 结构化的数据为表格、数据库等按照一定格式表示的数据,通常可以直接用来构建知识图谱。
  • 非结构化的数据为文本、音频、视频、图片等,需要对它们进行信息抽取才能进一步建立知识图谱。
  • 半结构化数据是介于结构化和非结构化之间的一种数据,也需要进行信息抽取才能建立知识图谱。

拿到了不同来源的数据时,需要对数据进行知识融合,也就是把代表相同概念的实体合并,将多个来源的数据集合并成一个数据集。这样就得到了最终的数据,在此基础上就可以建立相应的知识图谱了。
知识图谱通过知识推理等技术获得新的知识,所以通过知识推理可以不断完善现有的知识图谱。

6.2 信息(知识)抽取

面对的都是非结构化的数据。面对非结构化的数据,就需要用各种信息抽取的手段去获得文本中隐藏的三元组。

  • 信息抽取:从各种类型的数据源中提取出实体(概念)、属性以及实体间的相互关系,在此基础上形成本体化的知识表达。

信息抽取又可以分为实体识别、关系抽取、属性抽取等。目前结构化的数据时最主要的知识来源。

  • 针对结构化的数据,知识图谱通常可以直接利用和转化,形成基础数据集,再利用知识图谱补全技术进一步扩展知识图谱。
  • 针对文本型数据这种非结构化数据,知识获取的方式主要包括实体识别、关系抽取、属性抽取等。
    • 实体识别指在一段文本中识别哪些词代表实体,并打上标签(进行分类)。例如“演员于和伟出演了电视剧《觉醒年代》”这句话中,“于和伟”和“《觉醒年代》”就是两个实体,将他们识别出来之后会分别给“于和伟”打上“演员”的标签,给“《觉醒年代》”打上“电视剧的标签”。
    • 关系抽取:识别文本(或其他数据)中实体之间的关系。例如“演员于和伟出演了电视剧《觉醒年代》”这句话中,“出演”为“演员于和伟”与“电视剧《觉醒年代》”之间的关系。
    • 具体的方法又包括基于特征模版的方法、基于核函数的监督学习方法、基于深度学习的方法等。

6.3 知识融合

在获得新知识之后,需要对其进行整合,以消除矛盾和歧义,比如某些实体可能有多种表达,某个特定称谓也许对应于多个不同的实体等。

  • 很多情况下,数据来源都不单一。当知识来源于多系统时,就需要进行知识融合。例如,原本构建了一个知识图谱,现需要用一批补充的知识来更新它,就需要进行更新和去重。

知识融合的过程,大致会包括知识体系的融合和实例的融合。

  • 知识体系的融合就是两个或多个异构知识体系进行融合,相同的类别、属性、关系进行映射;
  • 实例的融合,就是两个图谱中的实例进行融合,包括实体实例和关系实例。

6.4 知识加工和存储

知识加工:对于经过融合的新知识,需要经过质量评估之后(部分需人工参与),将合格的部分加入到知识库中,以确保知识库的质量,新增数据之后,可以进行知识推理、拓展现有知识、得到新知识。

6.4.1 知识存储

知识存储就是研究采用何种方式将已有的知识图谱进行存储。目前的知识图谱存储基本都基于图数据库,比较流行的有neo4j。主要有两种存储方式:

  • 一种是基于RDF的存储;
  • 另一种是基于图数据库的存储。

它们的区别是:

  • RDF一个重要的设计原则是数据的易发布以及共享,图数据库则把重点放在了高效的图查询和搜索上。
  • 其次,RDF以三元组的方式来存储数据而且不包含属性信息,但图数据库一般以属性图为基本的表示形式,所以实体和关系可以包含属性,这就意味着更容易表达现实的业务场景。
  • 其中Neo4j系统目前仍是使用率最高的图数据库,它拥有活跃的社区,而且系统本身的查询效率高,但唯一的不足就是不支持准分布式。相反,OrientDB和JanusGraph(原Titan)支持分布式,但这些系统相对较新,社区不如Neo4j活跃,这也就意味着使用过程当中不可避免地会遇到一些刺手的问题。
  • 如果选择使用RDF的存储系统,Jena或许一个比较不错的选择。

6.5 知识推理

通过知识建模、知识获取以及知识融合,基本可以构建一个知识图谱。但是,很多时候,由于知识的不完备性,搭建出来的图谱通常会有很多缺失。由于数据的稀疏性,很难通过抽取和融合的方法去丰富图谱。

  • 这时,就需要通过知识推理的方法去补齐图谱中大量的关系缺失和实体缺失。

7. 总结

知识图谱是人工智能技术最重要的基础设施,是计算机能够实现推理、预测等类似人类思考能力的关键。由于知识图谱的信息抽取,知识融合以及知识推理等过程都依赖于NLP技术,因此知识图谱与NLP通常是分不开的。

在知识图谱中,如何有效表示现实世界中的知识,就是知识表示的内容。知识表示的研究由来已久,在如今的知识图谱领域,基于语义网的框架(三元组)来表示知识。知识图谱是一个既充满挑战又非常有趣的领域,它改变了现有的信息检索方式:

  • 一方面,通过推理实现概念检索;
  • 另一方面,以图形化方式向用户展示经过分类整理的结构化知识,从而使人们从人工过滤网页寻找答案的模式中解脱出来。

基于知识图谱的服务和应用是当前的一大研究热点。按照应用方式可以分为语义搜索、知识问答,以及基于知识的大数据分析与决策等。知识图谱一个很重要的作用是知识的推理,知识推理是人工智能的一个重要技术途径。

  • 基于知识图谱的信息技术在军事领域也有着广泛的应用需求,蒋锴等人在《基于知识图谱的军事信息搜索技术架构》中提出了基于知识图谱的军事信息搜索技术架构,并结合军事数据库搜索给出了具体步骤,基于知识图谱的军事信息搜索具有广泛的应用场景,能支撑情报保障、作战筹划和辅助决策等多种应用。在航天系统中,对于研究过程中存在着的大量知识和信息,通过以知识图谱为代表的知识工程技术应用,可以充分利用这些信息,实现对知识资源全面和充分的开发以及有效的利用和知识创新。

8. 参考

【1】https://blog.csdn.net/weixin_44023658/article/details/112503294
【2】https://blog.csdn.net/kuxingseng123/article/details/128941048
【3】https://blog.csdn.net/qq_27586341/article/details/93588720

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

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

本文分享自华为云社区《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 实战营]——六大实战营课程单元制,随进随学,供大家免费学习。

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

以上是关于知识图谱知识图谱入门详细介绍的主要内容,如果未能解决你的问题,请参考以下文章

知识图谱与认知智能,超详细架构解读!送5本!

典型的知识库/链接数据/知识图谱项目

快速入门知识图谱 - Neo4J Cypher查询语言教程

快速入门知识图谱 - Neo4J Cypher查询语言教程

快速入门知识图谱 - Neo4J Cypher查询语言教程

3.知识图谱概念和相关技术简介[知识抽取知识融合知识推理方法简述],典型应用案例介绍国内落地产品介绍。一份完整的入门指南,带你快速掌握KG知识,芜湖起飞!