- 知识图谱技术与应用
- 闫树 魏凯 洪万福等
- 3650字
- 2020-08-27 10:11:24
第一节 什么是知识图谱
一、知识图谱的定义
作为一种智能、高效的知识组织方式,知识图谱能够帮助用户迅速、准确地查询到自己需要的信息,近年来得到了飞速发展。尽管产业界对其内涵有了基本共识,但实际上目前尚没有一个公认的定义。
知识图谱由Google公司在2012年提出,但发布时Google公司并没有对这一概念做出清晰的定义。维基百科上知识图谱的词条实际是对Google公司搜索引擎使用的知识库功能的描述,即知识图谱是Google公司使用的一个知识库及服务,它利用从多种来源收集的信息提升搜索引擎返回的结果的质量。
百度百科将知识图谱定义为“通过将应用数学、图形学、信息可视化技术、信息科学等学科的理论和方法与计量学引文分析、共现分析等方法结合,并利用可视化的图谱形象地展示学科的核心结构、发展历史、前沿领域以及整体知识架构,达到多学科融合目的的现代理论。”但从该词条的详细内容可以看出,百度百科的定义仍是一种对知识图谱的早期理解和对Google公司提出的知识图谱功能的复述。
国内外学术机构围绕知识图谱进行了大量研究,近年来我国高校学者也在知识图谱领域发表了许多优秀的论文,并对知识图谱做出了比较完整和全面的定义。如华东理工大学教授王昊奋认为:“知识图谱旨在描述真实世界中存在的各种实体或概念。其中,每个实体或概念用一个全局唯一确定的ID来标识,这个ID被称为它们的标识符。‘属性-值’对(Attribute-Value Pair,AVP)用来刻画实体的内在特性,而关系用来连接两个实体,刻画它们之间的关联。”而电子科技大学的刘峤等人认为:“知识图谱是结构化的语义知识库,用于以符号形式描述物理世界中的概念及其相互关系,其基本组成单位是‘实体-关系-实体’三元组以及实体及其属性-值对,实体间通过关系相互联结,构成网状的知识结构。”
在互联网上有大量对知识图谱的讨论,在知乎等社交问答网站上存在多种对知识图谱的表述,内容大同小异,如“本质上,知识图谱旨在描述真实世界中存在的各种实体或概念及其关系,其构成一张巨大的语义网络图,节点表示实体或概念,边则由属性或关系构成。现在的知识图谱已被用来泛指各种大规模的知识库”。
技术厂商和用户对知识图谱有着不同的理解,但大多没有提出明确的定义。
从以上研究中可以看到知识图谱的起源和在中国的传播发展。综合其中的共识,作者对本书探讨的知识图谱给出以下定义:知识图谱本质上是一种语义网络,是新一代的知识库技术,通过结构化、语义化的处理将信息转化为知识,并加以应用。
二、对知识图谱定义的解读
对于上述知识图谱的定义,可以从以下几个方面进行解读。
1.表现形式
知识图谱的抽象表现形式是以语义互相连接的实体,是把人对实体世界的认知通过结构化的方式转化为计算机可理解和计算的语义信息。我们可以将知识图谱理解成一个网状知识库,这个知识库反映的是一个实体及与其相关的其他实体或事件,不同的实体之间通过不同属性的关系相互连接,从而形成了网。由此,知识图谱可以被看成对物理世界的一种符号表达。
2.涵盖范围
知识图谱由传统的知识库演变而来,可以说狭义的知识图谱就是知识库,但广义的知识图谱应涵盖知识库、从信息到知识的知识库构建以及高效定位正确的知识、发现隐含的知识的知识库运用等方面,目标是解决信息过载和信息缺失的问题。
3.技术表现
知识图谱在技术上表现为技术栈,通常被认为是由知识提取、知识融合、知识加工、知识呈现4层技术组合而成的。知识图谱在知识库的构建方面具备接入多数据源的能力,比传统的人工方式更加高效。除了知识库部分外,知识图谱技术还包括可以生成新知识的推理引擎,被视为自动化、智能化的新一代知识库技术。
4.研究价值
知识图谱是人工智能的关键技术之一,人工智能追求的目标是利用机器快速、便捷地获得高质量的数据信息,进而辅助人们进行更多智能化的应用。在实现这一目标的过程中,知识就是核心力量。知识对于人工智能的价值在于让机器具备对数据的认知能力和理解能力。构建知识图谱的目的就是让机器形成这种认知能力,使其能够理解这个世界。
知识的获取,特别是自动获取本身就很难,知识的来源广泛,且种类多样,形成知识的数据可能是结构化的,也可能是非结构化的。获取知识后的理解和推理是对知识的选择和应用,是将零散的数据整合到一起并梳理出脉络的过程,更为复杂。
这个时候,可以通过“图”这样一种直观、清晰的基础性通用“语言”,清楚地还原各个数据之间的复杂关系。知识图谱的构建就是在Web网页的基础上增加一层覆盖的网状的图,将Web网页上的概念相互链接起来,用最小的成本将互联网中大量的信息组织成可以被利用的知识。
5.应用价值
知识图谱提供了一种从海量数据中抽取结构化知识的手段,快速便捷,拥有广阔的应用前景。
对于使用知识图谱的人来说,相比文字,图更加直观、有条理,因此知识图谱可以帮助人们更好地理解和记忆知识。很多人应用思维导图对知识进行记忆和梳理,在这个过程中应用的是使用者本身的记忆习惯和技巧。知识图谱是从知识本身出发,保留了知识原来的组织,引导使用者理解知识。
对于使用知识图谱的软件、服务、系统来说,知识图谱提供了结构化的数据存储格式,降低了软件、服务、系统在数据挖掘和管理过程中的难度。同时,知识图谱可以在较好地保存数据及数据之间关联的基础上,挖掘出更多的有效信息,开发更多的应用场景。在使用知识图谱服务进行搜索时,人们可以直接获得与数据关联的答案,而不是可能包含答案的网页。
知识图谱由复杂多层次的技术栈构成,内涵覆盖构建、应用等多个生命周期环节,知识图谱技术的供需双方对于知识图谱的理解和着眼点实际是不同的。需求方企业往往倾向于简单化理解,或者将其等同于传统的专家库,或者认为其就是图可视化的炫酷展现形式;而技术厂商可能基于自身在技术栈不同层面的优势宣传和解读这一技术。透过复杂的技术栈和纷繁的技术术语来看,知识图谱的本质是运用新的技术在知识结构化和分析洞察两个方面提升信息转化为知识并且被利用的效率,具体如下。
● 知识结构化:与传统知识库相比,知识图谱在知识构建部分除了专家人工的方式,还利用机器学习算法等手段进行文本挖掘和自然语言处理,从大量的非结构化和半结构化数据中抽取知识。
● 分析洞察:在人、企业、产品、兴趣、想法、事实存在交织的关联关系时,使用图分析这些复杂的关系效率更高,也更加有可扩展性。如应用图遍历、最短路径、三角计数、连通分量、类中心等算法进行目标实体搜寻、实体关联识别、关联程度评价、关键人物和特殊关系群体发现等工作时,可得到较好的效果。
从企业级信息管理的全局视角来看,知识图谱无疑是企业信息管理的一种方式和手段。知识图谱的主要功能(如文本分析、语义计算等)与传统的数据采集、清洗、整合等数据处理功能在处理方法和流程上有一定的相似性,在技术上也有互通或重合的内容。知识图谱的建设横跨企业级数据建设和应用的多个环节,在技术的整合方面复杂度较高,因此应用知识图谱的用户企业需要具备一定的数据基础和数据技术能力基础,比如持续的数据治理和知识管理机制、较好的基础数据质量、对数据技术能力和团队的积累等。
三、知识图谱的通用表示
从本质上来看,可以将知识图谱理解成一张由不同知识点相互连接形成的语义网络。任何一种网络都是由节点和边构成的,因此,知识图谱也是由节点和边构成的。节点表示实体或概念,边表示实体的属性或实体间的关系。
知识图谱中的节点分为以下两种。
● 实体:指具有可区别性且独立存在的某种事物,如一个人、一座城市、一种商品等。某个时刻、某个地点、某个数值也可以作为实体。实体是一个知识图谱中最基本的元素,每个实体可以用一个全局唯一的ID进行标识。
● 语义类/概念:语义类指具有某种共同属性的实体的集合,如国家、民族、性别等;而概念则反映一组实体的种类或对象类型,如人物、气候、地理等。
知识图谱中的边分为以下两种。
● 属性(值):指某个实体可能具有的特征、特性、特点以及参数,是从某个实体指向它的属性值的“边”,不同的属性对应不同的边,而属性值是实体在某一个特定属性下的值。例如,图1所示的“类别”“首都”是不同的属性,“北京”是中国在“首都”这一属性下的属性值。
图1 知识图谱示例
● 关系:是连接不同实体的“边”,可以是因果关系、相近关系、推论关系、组成关系等。在知识图谱中,将关系形式化为一个函数。这个函数把若干个节点映射到布尔值,其取值反映实体间是否具有某种关系。
基于以上定义,可以更好地理解三元组。三元组是知识图谱的一种直观、简洁的通用表示方式,可以方便计算机对实体关系进行处理。
用三元组G=(E,R,S)表示知识图谱,其中,E={e1,e2,……,eE}是知识图谱中的实体集合,包含|E|种不同的实体;R={r1,r2,……,rE}是知识图谱中的关系集合,共包含|R|种不同的关系;S⊆E×R×E是知识图谱中的三元组集合。三元组的基本形式主要包括(实体1,关系,实体2)以及(概念属性,属性值)等。(实体1,关系,实体2)、(实体,属性,属性值)都是典型的三元组。如图1所示,方块是实体,椭圆是属性值,实线是两个实体之间的关系,虚线是实体的属性。中国的首都是北京就可以用(中国,首都,北京)表示。