知识图谱的构建方法
知识图谱的概念,来自于语义网络,根据 W3C的解释,语义网络是一张数据构成的网络,语义网络技术向用户提供的是一个查询环境,其核心要义是以图形的方式向用户返回经过加工和推理的知识
而知识图谱技术则是实现智能化语义检索的基础和桥梁.
传统搜索引擎技术能够根据用户查询快速排序网页,提高信息检索的效率,然而,这种网页检索效率并不意味着用户能够快速准确地获取信息和知 识,对于搜索引擎反馈的大量结果,还需要进行人工排查和筛选.
1 知识图谱的定义与架构
1.1 定义
知识图谱 是结构化的语义知识库,用 于以符号形式描述物理世界中的概念及其相互关系.其基本组成单位是“实体-关系-实体”三元组,以 及实体及其相关属性-值对,实体间通过关系相互联结,构成网状的知识结构
通过知识图谱,可以实现 Web 从网页链接向概念链接转变,支持用户按主题而不是字符串检索,从而真正实现语义检索,基于知识图谱的搜索引擎,能够以图形方式向用户反馈结构化的知识,用户不必 浏览大量网页,就可以准确定位和深度获取知识.
定义包含3层含义
知识图谱本身是
一个具有属性的实体通过关系链接而成的网状知识库
.从图的角度来看,知识 图谱在本质上是一种概念网络,其中的节点表示物 理世界的实体(或概念),而实体间的各种语义关系 则构成网络中的边.由此,知识图谱是对物理世界的 一种符号表达.
知识图谱的研究价值在于,它是
构建在当前 Web基础之上的一层覆盖网络
, 借助知识图谱,能够在 Web 网页之上建立概念间的链接关系,
从而以最小的代价将互联网中积累的信息组织起来
,成为可以被利用的知识.
知识图谱的应用价值在于,它能够改变现有的信息检索方式,一方面通过推理实现概念
检索
(相 对于现有的字符串模糊匹配方式而言);另一方面以图形化方式向用户
展示
经过分类整理的结构化知识,从而使人们从人工过滤网页寻找答案的模式中解脱出来
1.2 知识图谱的架构
知识图谱的架构,包括自身的 逻辑结构 和 技术架构
逻辑结构 可分为2个层次 :数据层和模式层
数据层 : 知识以事实(fact)为单位存储在图数据库
模式层在数据层之上,是知识图谱的核心。在模式层存储的是经过提炼的知识,通常采用本体库来管理知识图谱的模式层借助本体库对公理、规则和约束条件的支持能力来规范实体、关系以及实体的 类型和属性等对象之间的联系.本体库在知识图谱 中的地位相当于知识库的模具,拥有本体库的知识库冗余知识较少
知识图谱的构建过程是从原始数据出发,采用一系列自动或半自动的技术手段,从原始数据中提取出知识要素(即事实),并将其存入知识库的数据层和模式层的过程.
这是一个迭代更新的过程,根据知识获取的逻辑,每一轮迭代包含3个阶段:信息抽取、知识融合以及知识加工
知识图谱的架构
知识图谱有自顶向下和自底向上2种构建方式.
2 知识图谱的构建技术
采用自底向上的方式构建知识 图谱的过程是一个迭代更新的过程,每一轮更新包 括3个步骤:
1)信息抽取,即从各种类型的数据源中 提取出实体(概念)、属性以及实体间的相互关系,在 此基础上形成本体化的知识表达;
2)知识融合,在获 得新知识之后,需要对其进行整合,以消除矛盾和歧 义,比如某些实体可能有多种表达,某个特定称谓也 许对应于多个不同的实体等;
3)知识加工,对于经过 融合的新知识,需要经过质量评估之后(部分需要人 工参与甄别),才能将合格的部分加入到知识库中, 以确保知识库的质量.新增数据之后,可以进行知识 推理、拓展现有知识、得到新知识.
2.1 信息抽取
关键问题是如何从异构数据源中自动抽取信息得到候选知识单元
涉及的关键技术包括:实体抽取、关系抽取和属性抽取
2.1.1 实体抽取
实体抽取,也称为命名实体识别(named ,NER),是指从文本数据集中自动识别出命名实体.实体抽取的质量(准确率和召回率)对 后续的知识获取效率和质量影响极大,因此是信息 抽取中最为基础和关键的部分
2.1.2 关系抽取
文本语料经过实体抽取,得到的是一系列离散 的命名实体,为了得到语义信息,还需要从相关语料中提取出实体之间的关联关系,通过关系将实体(概念)联系起来,才能够形成网状的知识结构.研究关系抽取技术的目的,就是解决如何从文本语料中抽取实体间的关系这一基本问题.
2.1.3 属性抽取
属性抽取的目标是从不同信息源中采集特定实体的属性信息.例如针对某个公众人物,可以从网络公开信息中得到其昵称、生日、国籍、教育背景等信息.属性抽取技术能够从多种数据来源中汇集这些信息,实现对实体属性的完整勾画
2.2 知识融合
通过信息抽取,实现了从非结构化和半结构化数据中获取实体、关系以及实体属性信息的目标,然而,这些结果中可能包含大量的冗余和错误信息,数据之间的关系也是扁平化的,缺乏层次性和逻辑性, 因此有必要对其进行清理和整合.知识融合包括 2 部分内容:实体链接和知识合并.通过知识融合,可以消除概念的歧义,剔除冗余和错误概念,从而确保 知识的质量.
2.2.1 实体链接
实体链接( )是指对于从文本中抽 取得到的实体对象,将其链接到知识库中对应的正确实体对象的操作.
实体链接的基本思想是首先根据给定的实体指称项,从知识库中选出一组候选实体对象,然后通过相似度计算将指称项链接到正确的实体对象
实体链接的一般流程是:
1)从文本中通过实体 抽取得到实体指称项;
2)进行实体消歧和共指消解, 判断知识库中的同名实体与之是否代表不同的含义 以及知识库中是否存在其他命名实体与之表示相同 的含义;
3)在确认知识库中对应的正确实体对象之 后,将该实体指称项链接到知识库中对应实体
2.2.1.1 实体消歧
实体消歧( )是专门用于解决同名实体产生歧义问题的技术.在实际语言环 境中,经常会遇到某个实体指称项对应于多个命名 实体对象的问题,例如“李娜”这个名词(指称项)可以对应于作为歌手的李娜这个实体,也可以对应于 作为网球运动员的李娜这个实体,通过实体消歧,就 可以根据当前的语境,准确建立实体链接.实体消歧 主要采用聚类法.
2.2.1.2 共指消解
共指消解( )技术主要用于解决多个指称项对应于同一实体对象的问题.例如在 一篇新闻稿中,“ Obama”,“ Obama”, “ the ”等指称项可能指向的是同一实体对 象,其中的许多代词如“he”,“him”等,也可能指向 该实体对象.利用共指消解技术,可以将这些指称项 关联(合并)到正确的实体对象.由于该问题在信息 检索和自然语言处理等领域具有特殊的重要性,吸 引了大量的研究努力,因此学术界对该问题有多种 不同 的 表 述,典 型 的 包 括:对 象 对 齐 ( )、实体匹配( )以及实体同 义( )
2.2.2 知识合并
在构建知识图谱时,可以从第三方知识库产品 或已有结构化数据获取知识输入
2.2.2.1 合并外部知识库
将外部知识库融合到本地知识库需要处理2个层面的问题.
数据层的融合,包括实体的指称、属性、关系以及所属类别等,主要的问题是如何避免实例以及关系的冲突问题,造成不必要的冗余;
通过模式层的融合,将新得到的本体融入已有的本体库中.
2.2.2.2 合并关系数据库
在知识图谱构建过程中,一个重要的高质量知识来源是企业或者机构自己的关系数据库.为了将这些结构化的历史数据融入到知识图谱中,可以采用资源描述框架(RDF)作为数据模型.业界和学术界将这一数据转换过程形象地称为,其 实质就是将关系数据库的数据换成RDF的三元组数据
根据 W3C 的调查报告显示,当前已经出现了大量的开源工具 (如 ,, , 等),然而由于缺少标准规范,使得这些工具的推广应用受到极大制约
.为此,W3C于 2012年推出了2种映射语言标准: (A of data to RDF)和 R2RML (RDB to RDF ).
其中, 采用直接映射的方式,将关系数据库表结构和数据直接输出为RDF图,在RDF图中所用到的用于表示类和谓 词的术语与关系数据库中的表名和字段名保持一致.
而R2RML则具有较高的灵活性和可定制性,允许为给定的数据库结构定制词汇表,可以将关系数据库通过R2RML映射为RDF数据集,其中所用的术语如类的名称,谓词均来自定义词汇表
2.3 知识加工
通过信息抽取,可以从原始语料中提取出实体、 关系与属性等知识要素.再经过知识融合,可以消除实体指称项与实体对象之间的歧义,得到一系列基本的事实表达.然而,事实本身并不等于知识,要想最终获得结构化、网络化的知识体系,还需要经历知 识加工的过程.知识加工主要包括3方面内容:本体构建、知识推理和质量评估.
2.3.1 本体构建
本体()是对概念进行建模的规范,是 描述客观世界的抽象模型,以形式化方式对概念及其之间的联系给出明确定义.本体的最大特点在于它是共享的,本体中反映的知识是一种明确定义的共识.虽然在不同时代和领域,学者们对本体曾经给出过不同的定义,但这些定义的内涵是一致的,即: 本体是同一领域内的不同主体之间进行交流的语义基础. 本体是树状结构,相邻层次的节点(概念)之间具有严格的“IsA”关系,这种单纯的关系有助于知识推理,但却不利于表达概念的多样性.在知识图谱中,本体位于模式层,用于描述概念层次体系是知识库中知识的概念模板
2.3.2 知识推理
知识推理是指从知识库中已有的实体关系数据出发,经过计算机推理,建立实体间的新关联,从而拓展和丰富知识网络.知识推理是知识图谱构建的重要手段和关键环节,通过知识推理,能够从现有知 识中发现新的知识.例如已知(乾隆,父亲,雍正)和 (雍正,父亲,康熙),可以得到(乾隆,祖父,康熙)或 (康熙,孙子,乾隆).知识推理的对象并不局限于实体间的关系,也可以是实体的属性值、本体的概念层次关系等.例如已知某实体的生日属性,可以通过推理得到该实体的年龄属性.根据本体库中的概念继 承关系,也可以进行概念推理,例如已知(老虎,科, 猫科)和(猫科,目,食肉目),可以推出(老虎,目,食肉目).
2.3.3 质量评估
引入质量评估的意义在于:可以对知识的可信度进行量化,通过舍弃置信度较低的知识, 可以保障知识库的质量
2.3.4 知识更新
从逻辑上看,知识库的更新包括概念层的更新和数据层的更新.概念层的更新是指新增数据后获得了新的概念,需要自动将新的概念添加到知识库的概念层中.数据层的更新主要是新增或更新实体、 关系和属性值,对数据层进行更新需要考虑数据源 的可靠性、数据的一致性(是否存在矛盾或冗余等问 题)等多方面因素.当前流行的方法是选择百科类网 站等可靠数据源,并选择在各数据源中出现频率高 的事实和属性加入知识库.知识的更新也可以采用 众包的模式(如),而对于概念层的更新,则 需要借助专业团队进行人工审核.
知识图谱的内容更新有2种方式:数据驱动下的全面更新和增量更新.所谓全面更新是指以更新后的全部数据为输入,从零开始构建知识图谱.这种方式比较简单,但资源消耗大,而且需要耗费大量人力资源进行系统维护;而增量更新,则是以当前新增数据为输入,向现有知识图谱中添加新增知识.这种方式资源消耗小,但目前仍需要大量人工干预(定义规则等),因此实施起来十分困难
3 知识图谱的应用
在智能语义搜索应用中,当用户发起查询时,搜索引擎会借助知识图谱的帮助对用户查询的关键字进行解析和推理,进而将其映射到知识图谱中的一 个或一组概念之上,然后根据知识图谱中的概念层 次结构,向用户返回图形化的知识结构(其中包含指向资源页面的超链接信息),这就是我们在谷歌和百度的搜索结果中看到的知识卡片.
在深度问答应用中,系统同样会首先在知识图谱的帮助下对用户使用自然语言提出的问题进行语义分析和语法分析,进而将其转化成结构化形式的查询语句,然后在知识图谱中查询答案.对知识图谱 的查询通常采用基于图的查询语句(如), 在查询过程中,通常会基于知识图谱对查询语句进 行多次等价变换.例如,如果用户提问:“如何判断是 否感染了埃博拉病毒?”,则该查询有可能被等价变 换成“感染埃博拉病毒的症状有哪些?”,然后再进行 推理变换,最终形成等价的三元组查询语句,如(埃博拉,症状,?)和(埃博拉,征兆,?)等,据此进行知识 图谱查询得到答案.深度问答应用经常会遇到知识 库中没有现成答案的情况,对此可以采用知识推理 技术给出答案.如果由于知识库不完善而无法通过推理解答用户的问题,深度问答系统 还可以利用搜索引擎向用户反馈搜索结果,同时根 据搜索的结果更新知识库,从而为回答后续的提问 提前做出准备.
我来说两句