www.teandq.com
晓安科普

知识图谱的三大类技术(知识图谱推理技术)一篇读懂

2023-10-04Aix XinLe

【51CTO.com原创稿件】随着互联网业务的发展,产生了大量的数据,数据经过分析会推动业务的发展。将数据中蕴含的知识用图的结构表示出来,就形成

知识图谱的三大类技术(知识图谱推理技术)一篇读懂

 

【51CTO.com原创稿件】随着互联网业务的发展,产生了大量的数据,数据经过分析会推动业务的发展。将数据中蕴含的知识用图的结构表示出来,就形成了知识图谱。

图片来自 Pexels知识图谱可以应用到智能搜索,自动文档,推荐,决策支持等领域例如:WordNet,Freebase,Wikidata今天和大家一起了解知识图谱构建的方法和基本原理知识图谱概括知识图谱是一个较大的话题。

从发展,特点,分类和生命周期等不同的方面都有很多需要讲的东西

知识领域示意图这里我们主要从知识图谱的生命周期作为切入点,讲讲在其形成和使用过程中用到的原理和方法①知识体系构建根据分类,可以把知识图谱分为通用型和领域型无论是什么类型的知识图谱都需要对其服务的领域进行知识建模。

也就是说,采用什么样的方式来表达知识②知识融合一个知识库可以和其他知识库进行融合在不同领域知识图库进行融合时,会发现来自不同领域,不同语言,甚至不同结构的知识需要做“补充,更新和去重的操作”这就是知识融合,一般分为:知识体系融合和实例融合。

这部分的操作也可以在构建知识体系的时候统筹考虑③知识获取知识获取的目的是从海量的信息(文本)中抽取知识本文中提到的“获取信息”多为文本信息,因此这里的“获取信息”也是从文本中获取信息的过程获取信息结构上划分为三类,分别是结构化信息,半结构化信息和非结构化信息。

从获取信息内容上又分为,实体识别,实体消歧,关系抽取和事件抽取知识存储在完成了知识抽取和融合之后,就需要将知识存储下来了有 RDF(Resource Description Framework,资源描述框架)格式和图数据库两种方式。

因为图数据库对于查询友好,因此被广泛使用,例如:Neo4j④知识推理识别并抽取知识以及存储知识以后,我们会试图挖掘实体(知识)之间隐含的语义关系这个过程就是知识推理例如:已知 A 是 B 的儿子,又知道 B 是 C 的儿子。

那么可以推理出 A 是 C 的孙子⑤知识应用识别,抽取,存储和推理的最终目的还是为了应用知识图谱在搜索,问答,推荐,决策方面被广泛应用后面会将上述过程展开讲解,由于知识图谱中包括的内容比较丰富,因此会着重介绍前面几个部分的内容,关于知识推理和知识应用的部分会放到以后的文章中介绍。

知识体系构建我们常说的知识是人类对现实世界的认识,如何将这种认识转化为一种标准的形式呢?因此,需要有一种模型,对其进行描述,从而能够存储到计算机中知识表示知识图谱的表示方式有多种,有语义网络,框架,脚本。

使用比较多的是语义网络模型它是通过语义关系连接的概念网络,将知识表示为互相连接的点和边。其中,节点表示为实体,时间,值等信息;边表示实体之间的关系。例如:马是一种动物,可以表示为如下:

这里的马和动物表示为实体,“是一种”表示它们之间的关系这也是我们常说的三元组的表现形式用 RDF(Resource Description Framework,资源描述框架)可以表述为:(节点 1,关系,节点 1)。

(马,是一种,动物)针对关系来说有多种类型的定义:实例关系:“是一个”表示一个事物是另一个事物的一个实例例如:小明是一个人分类关系:“是一种”表示一个事物是另一个事物的种类例如:篮球是一种球成员关系:“个人与集体”。

表示一个事物是另一个事物的成员例如:小王是三年级一班的学生属性关系:“一个节点具有另一个节点所表示的属性”例如:猴子会爬树聚合关系:“部分与整体”例如:手是身体的一部分位置关系:事物的方位关系例如:苹果在桌子上。

相近关系:事物在形状,内容等方面相似。例如:狮子和老虎在森林中都有霸主的地位。如果将实体通过上述描述,用三元组的方式表示出来,就形成了知识的图状结构,我们把这种结构的表现就叫做知识表现。

知识图谱的表现形式知识体系构建上面讲了知识表示,通过三元组表示现实世界的知识由于知识领域的不同,对事物的概念和定义也会不相同例如:“运维”这个词,在软件领域是指对软件的运行维护;在基础设施领域,是指对供配电,空调的运行和维护。

因此,知识图谱是针对具体知识领域而言的。需要根据具体的知识领域,进行“知识体系构建”。知识体系主要包括三个方面的核心内容:对概念的分类,概念属性的描述以及概念之间相互关系的定义。

知识领域示意图知识领域(知识体系结构)就好像知识图谱的框架,它定义了知识的概念,概念的属性以及概念之间的关系只有先定义了它,才能再构建知识图谱如果把知识领域(知识体系结构)理解成 Class 的话,知识图谱就是 Object;如果把知识领域(知识体系结构)理解成骨架的话,知识图谱就是肉体。

Ontology 对知识进行定义(Concept),根据定义生成实体(Instance)

骨架和肉体说完知识领域(知识体系结构)的概念,再来看看通过人工构建需要哪几个步骤①确定领域以及任务这里需要明确几个问题,为什么需要这个领域的知识图谱?其中包括哪些知识?它所服务的人群?以及谁来维护它?②知识体系整合。

由于知识图谱,需要包括海量的知识数据,所以从 0 开始建设成本很高因此,需要借助通用知识图谱,领域词典,语言学资源,开源知识图谱的资源在它们的基础上建立,大大降低成本③罗列要素针对要建立的知识图谱,列出这个领域知识的概念,属性,以及关系等要素。

例如:建立一个人物知识图谱,就要列出科学家,演员,老师,运动员等概念分类针对每个分类,定义姓名,年龄,国籍,出生地等属性以及父母,子女,朋友等关系④确定分类体系就是概念之间的层级关系,类似树状结构例如体育分类,下面包括体育组织,体育赛事,体育院校等等。

可以通过由上至下,或者由下至上的方式建立

分类体系示意图⑤定义属性以及关系这里的属性和关系的定义具有继承性例如:演艺人员拥有“年龄”,“毕业院校”,“经纪公司”等属性演艺人员分类下面包括了歌手和演员那么歌手和演员的属性中,除了包括“年龄”,“毕业院校”,“经纪公司”等属性以外,还可能包括其他属性,例如:歌手包括“低/中/高音“;演员包括:”国内/国际影星“。

⑥定义约束针对上面属性关系的约束关系例如:年龄为正整数每个人只有一个母亲(生理学意义上的)知识融合各个领域知识图谱的构建,导致存在各个垂直领域的知识库每个知识库为了扩大自身的广度和深度,就需要和其他库做融合。

知识融合示例图知识库的融合有两种模式:竖直方向的知识融合,将通用知识库与专业知识库进行融合专业知识库中需要一些通用知识库中的通用知识定义,例如:著名人物,地名,公理水平方向的知识融合,将相同领域的知识库进行融合。

让两个知识库进行数据互补知识体系能够在认知和语义层次上对领域知识进行建模和表达,确定领域内共同认可的词汇,通过概念之间的关系来描述概念的语义,提供对领域知识的共同理解多个知识体系在融合过程中会产生重叠,会产生许多不同的知识体系。

这些不同的知识体系会导致不同的知识图谱难以联合使用因此,下面要介绍几种融合的方法:元素级匹配,将一个词表示为语义向量空间中的一个点,如果词与词之间的相似度高,那么两个点之间的距离就近表明两个词可以融合结构级匹配,通过判断元素属性的定义域和值域匹配度,推断属性的匹配度。

实体对齐,通过判断相同或不同知识库中的两个实体是否表示同一个物理对象的过程知识获取定义了知识领域和领域之间的融合,就搭建了知识图谱的框架,接下来就要填充内容了根据三元组理论,知识图谱是由(实体 1,关系,实体 2)组成的。

所以,接下来就要介绍知识获取,它包括实体识别,实体消歧,关系抽取,事件抽取。

知识获取示意图实体识别实体(Entity)是知识图谱的基本单元,也是本文中承载信息的重要语言单位实体识别是抽取文本中命名性指称项例如:人名,地名,机构名,产品名通常意义上分为三大类:实体类,时间类和数字类;七小类:人名,地名,机构名,时间,日期,货币和百分比。

例如:红利小学篮球教练张平出席了会议,他在会议上分享了执教心得实体“张平”就有三个指称项,“红利小学篮球教练”是名词性指称项;“张平”是命名性指称项;“他”是代词性指称项实体识别抽取有以下几种方法:①基于规则的方法,通过建立命名实体词典的方法,每次抽取都从文本中查找词典的内容。

中文人名识别:例如:张平中文组织名识别:例如:中国软件信息协会中文地名的识别:例如:武汉市②基于特征的方法,通过机器学习的方法利用预先标注好的语料训练模型,使模型学习到某个字或者词作为命名实体组成部分的概率,计算出一个候选字段作为命名实体的概率值。

如果大于某个设定的阀值,就抽取命名实体③基于神经网络的方法:特征表示:利用神经网络模型将文字符号特征表示为分布式特征信息模型训练:利用标注数据,优化网络参数,训练网络模型模型分类:利用训练的模型对新样本进行分类,完成识别。

实体消歧实体识别完成以后,我们遇到一些问题两个实体名字一模一样,但在不同的语境下面,表达的内容完全不同例如:实体指称项,迈克尔·乔丹(Michael Jordan)在不同的文本中,有可能是篮球明星,也有可能是一位机器学习的研究员。

实体消歧示例图在介绍如何进行实体消歧之前,先介绍几个相关概念,以上图为例:实体名:迈克尔·乔丹(Michael Jordan)目标实体列表:迈克尔·乔丹(研究员),迈克尔·乔丹(运动员)实体指称项:“迈克尔·乔丹” 是 “迈克尔·乔丹(研究员)”的实体指称项。

同样,“迈克尔·乔丹”也是 “迈克尔·乔丹(运动员)”的实体指称项那么如何消除这种歧义呢?这里有两种歧义消除系统推荐聚类的消歧系统:将同一实体指称项分配到同一类别下面,聚类结果中每个类别对应一个目标实体。

聚类示意图实体链接的消歧系统:将实体指称项与目标实体列表中对应的实体进行连接实现消歧。

实体链接示意图关系抽取上面可以将文本中的实体抽取出来,并且消除它们之间的歧义接下来,要知道实体之间的关系,就需要用到关系抽取关系抽取就是,识别实体之间的语义关系可以分为二元关系抽取(两个实体)和多元关系抽取(三个及以上实体)。

通常表示为(实体 1, 关系, 实体 2)三元组根据处理数据源的不同,关系抽取可以分为以下三种:面向结构化文本的关系抽取:包括表格文档、XML文档、数据库数据等面向非结构化文本的关系抽取:纯文本面向半结构化文本的关系抽取:介于结构化和非结构化之间。

根据抽取文本的范围不同,关系抽取可以分为以下两种:句子级关系抽取:从一个句子中判别两个实体间是何种语义关系语料级关系抽取:不限定两个目标实体所出现的上下文根据所抽取领域的划分,关系抽取又可以分为以下两种:。

限定域关系抽取:在一个或者多个限定的领域内对实体间的语义关系进行抽取,限定关系的类别,可看成是一个文本分类任务开放域关系抽取:不限定关系的类别由于篇幅关系,这里对具体关系抽取的方法不展开描述有兴趣可以自行查找,每个算法都可以单独成为一篇文章。

这里我们只需要对关系抽取的分类和方法有基本认识就好事件抽取和关系抽取类似,事件抽取是从文本中抽取出事件并以结构化的形式呈现出来首先识别事件及其类型,其次识别出事件所涉及的实体,最后需要确定实体在事件中扮演的角色。

通过一个例子,来介绍几个概念例如:“小明和小红于 2019 年 12 月 30 日在北京举行婚礼”事件指称:具体事件的自然语言描述,通常是一个句子或句群就是上面这句话的描述事件触发词:代表事件发生的词,是决定事件类别的特征,一般是动词或名词。

例如:“举行婚礼”事件元素:事件中的参与者,主要由实体、时间和属性值组成。例如:“小明”,“小红”, “2019 年 12 月 30 日”。

事件元素类型元素角色:事件元素在事件中扮演的角色。例如:“小明”与“小红”扮演的是“夫妻角色”。事件类别:事件元素和触发词决定了事件的类别,每个分类下面还有子分类。例如:生命,结婚。

事件类型示意图事件抽取的方法比较多,基本上分为限定域事件抽取和开放域事件抽取两大类在两类中又分为若干小类这里针对限定域中给予模式匹配的方法给大家做简单介绍限定域事件抽取:在进行抽取之前,预先定义好目标事件的类型及每种类型的具体结构(包含哪些具体的事件元素),通常会给出一定数量的标注数据。

通过这些标注数据引导事件的抽取比较有代表的是基于模式匹配的方法,首先通过人工标注语料,再通过学习模型来抽取模式,最后将“待抽取文档”与模式库中的模式进行匹配,生成抽取结果。

事件抽取,匹配流程图另外,关于事件抽取的方法和关系还有很多,这里不展开描述,放出思维导图供大家参考。

事件抽取思维导图知识存储与检索前面提到了知识图谱的架构,知识的抽取,接下来就需要将这些知识(数据)存储下来。并且可以将存储的数据进行检索。

知识存储示意图谈到存储,需要回到前面说的三元组知识图谱中的知识是通过 RDF(Resource Description Framework,资源描述框架)构成的每个事实被表示为一个形如(subject,predicate,object)的三元组:。

subject:主体(也称主语),其取值通常是实体、事件predicate:谓词(也称谓语),其取值通常是关系或属性object:客体(也称宾语),其取值既可以是实体、 事件、概念,也可以是普通的值(如数字、字符串等) 。

基于表数据的介绍知识图谱的表存放方式有两种,分别是三元组表,类型表。来看看前两种存储的方式。例如:有下图关系。

知识图谱存储示例图用三元组方式存储:

用类型表存储:

基于图数据库的介绍图数据库基于有向图,其理论基础是图论节点、边和属性是图数据库的核心概念节点,用于表示实体、事件等对象,可以类比于关系数据库中的记录例如人物、 地点、电影等都可以作为图中的节点边,是指图中连接节点的有向线条,用于表示不同节点之间的关系。

例如:夫妻关系、同事关系等属性,用于描述节点或者边的特性。例如:姓名、夫妻关系的起止时间等。来看个例子:

用节点表示实体:刘德华、刘青云、Film:暗战 用边表示实体间的关系:刘德华和暗战之间的参演关系、刘德华和刘青云之间的朋友关系等 节点可以定义属性:刘德华性别男、身高 174cm、出生地香港等边上也可以定义属性:刘德华参演暗战的时间是 1999 年,参演角色是张彼得等。

无向关系需要转化为两条对称的有向关系:刘德华和刘青云之间互为朋友关系知识图谱的检索上面说了按照表方式和图方式的存储,再来看看存储之后如何检索知识信息知识图谱信息可以通过 SQL 和 SPARQL 搜索来获得。

这里着重介绍 SPARQL,它是 Simple Protocol and RDF Query Language 的缩写,是由 W3C 为 RDF 数据开发的一种查询语言和数据获取协议,被图数据库广泛支持。

和 SQL 类似,SPARQL 也是一种结构化的查询语言,用于对数据的获取与管理。①数据插入INSERT DATA { } 包含三元组,不同的三元组通过”.”分割,连续的三元组用”;” 分割。

②数据删除DELETE DATA {} 包括的三元组,不同的三元组通过”.”分割。

删除刘德华参演电影的关系如果想删除所有刘德华对应节点的关系,用如下语句。

这里的 s,p,o 分别对应的是 subject,predicate 和 object。这样和刘德华这个节点的相关信息都删除了。但是刘青云和暗战对应的节点和关系依旧存在。

删除刘德华节点以及对应的关系③查询语句和上面两个语句类似,例如要查询身高为 174cm 的男演员。

得出的结果就是“s:刘德华”总结如果说知识图谱本身就是一个知识的数据库,那么知识领域(知识体系结构)就是这个数据库的框架在建立知识图谱之前我们需要对知识体系进行搭建,同时要解决知识融合的问题有了知识体系结构,就可以进行知识获取,这里包括实体识别,实体消岐,关系抽取和事件抽取。

实体识别有基于规则,特征和神经网络的识别方法实体消岐可以通过聚类和实体连接的方法搞定关系抽取和事件抽取,根据数据源,文本范围和领域划分的不同,方法各有千秋知识抽取以后需要做知识的存储,其中有表存储和图存储两种方式。

目前比较流行的是图存储的方式并且基于图存储的方式,还提供了 SPARQL 查询语言对数据进行管理PS:知识图谱的内容比较广博,本文只是对最基本的概念进行了描述很多观点来自于赵军老师的知识图谱一书如果需要深入了解,建议阅读。

作者:崔皓简介:十六年开发和架构经验,曾担任过惠普武汉交付中心技术专家,需求分析师,项目经理,后在创业公司担任技术/产品经理。善于学习,乐于分享。目前专注于技术架构与研发管理。

【51CTO原创稿件,合作站点转载请注明原文作者和出处为51CTO.com】

免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186

知识知识图谱的三大类技术(知识图谱推理技术)一篇读懂

2023-10-04Aix XinLe10

知识图谱的三大类技术(知识图谱推理技术)一篇读懂【51CTO.com原创稿件】随着互联网业务的发展,产生了大量的数据,数据经过分析会推动业务的发展。将数据中蕴含的知识用图的结构表示出来,就形成…

科普这都可以乐视电视官网(乐视电视官网投诉电话)

2023-10-04Aix XinLe93

这都可以乐视电视官网(乐视电视官网投诉电话)近几年,中国视频个人付费市场规模已达到5.9亿,2014至2015年度同步增幅高达178.1%。…

科学科学知识再生产是什么意思(科学知识图谱是什么意思)万万没想到

2023-10-04Aix XinLe105

科学知识再生产是什么意思(科学知识图谱是什么意思)万万没想到3亿多年前,一次彻底改变了地球生命面貌的关键事件到来:早期的四足类动物离开了海洋,勇敢地登上陌生的陆地,最终演化出了爬行类、鸟类以及哺乳类等陆生…

艺术万万没想到乐视电视官网(乐视电视官网下载)

2023-10-04Aix XinLe185

万万没想到乐视电视官网(乐视电视官网下载)最近张译的新剧《他是谁》正在火热播出,张译扮演的刑警在侦破连环谋杀案时目睹战友牺牲,从此该案成为心结,八年后的又一起案件将他拉回了那次事件,剧里…

历史历史学科五大核心素养什么时候提出的(历史学科五大核心素养的认

2023-10-04Aix XinLe54

历史学科五大核心素养什么时候提出的(历史学科五大核心素养的认识)一看就会【“双争”进行时】暑期培训促成长!曹妃甸2023年中学教师暑期学科培训圆满结束  7月19日至21日,曹妃甸区开展了为期三天的暑期教师学科培训。…