中国包装大数据知识图谱
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2 国内外相关研究述评

知识图谱是以知识为对象,显示相关知识的发展进程与结构关系的一种图形,具有“图”和“谱”的双重性质与特征。作为对科学知识及其间的关系可视化所得出的结果,具有较为直观、定量、简单与客观等诸多优点,被广泛应用并取得较可靠的结论。目前成为科学计量学、管理学、人工智能和信息处理等领域的研究热点。

知识图谱的起源最早可追溯到文献计量学和科学计量学的诞生时期,1938年Bernal制作了早期学科图谱;1948年Ellingham手工绘制了图表,形象地展示自然科学和技术分支学科间的关系;同年,普赖斯用简单的曲线可视化科学知识指数增长规律。到20世纪50年代加菲尔德创制《科学引文索引》,并以编年体形式手工绘制引文网络图谱;随后“文献耦合”“科学引文网络”“同被引”“共词”“引文可视化”等相继被提出,科学知识可视化成为专门研究领域。知识图谱最初的雏形可以追溯到1965年Price博士在Science发表的文章《Networks of Scientific Papers》,通过对科学论文相互引文规律进行研究,成为一个以引文分析和网络分析为研究内容的新研究方向。随着互联网信息科学技术的快速发展,尤其是到了Web 2.0时代,人们可以自主生产和发布信息,引起信息井喷式的增长。然而,大多数的信息都只能被人理解,而机器无法理解其语义。为了帮助计算机理解语义信息,在20世纪60和70年代,由Simon和Minsky等人在此问题上也做了一些前期探索,其中Simon在进行自然语言理解(Natural Language Understanding)的应用研究时提出了语义网络(Semantic Network)的概念。在1998年,万维网联盟的蒂姆—伯纳斯—李(Tim Berners-Lee)提出了语义网(Semantic Web)的概念。同时,随着互联网的广泛普及,网络上出现了大量资源描述框架数据(Resource Description Framework,RDF),例如,用户生成内容(User Generated Content,UGC)和开放链接数据(Linked Open Data,LCD)等;另外,互联网逐渐从以网页超链接方式构建的文档万维网(Document Web)向描述各种实体和实体之间丰富关系的数据万维网(Data Web)转变。在此背景下,2012年5月份,Google公司花重金收购Metaweb公司,并向外界正式发布其知识图谱(Knowledge Graph),并利用知识图谱来加强搜索的智能性,增强用户搜索质量和搜索体验。自此,开启了大规模知识图谱的研究和应用热潮。Google公司的艾米特·辛格博士认为“The world is not made of strings,but is made of things”。开放领域大规模知识图谱纷纷出现,包括NELL,Freebase,Dbpedia,Probase等。

1.2.1 知识图谱主要构建技术

目前知识图谱大多采用自底向上的方式构建,本书也主要介绍自底向上的知识图谱构建技术,按照知识获取的过程分为3个步骤:信息抽取、知识融合以及知识加工。其构建知识图谱的过程是一个迭代更新的过程,每一轮更新都包括这3个步骤:

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

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

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

1. 信息抽取

信息抽取是知识图谱构建的第一步,其中的关键问题是如何从异构数据源中自动抽取信息得到候选知识单元。信息抽取是一种自动化地从半结构化和无结构数据中抽取实体、关系以及实体属性等结构化信息的技术。涉及的关键技术包括:命名实体识别、关系抽取和属性抽取。

(1)命名实体识别(实体抽取)

命名实体识别(Named Entity Recognition,NER)也称实体抽取,是指从文本数据集中自动识别出命名实体。实体抽取的质量(准确率和召回率)对后续的知识获取效率和质量影响极大,因此是信息抽取中最为基础和关键的部分。

2012年Ling等人归纳出112种实体类别,并基于条件随机场CRF进行实体边界识别,最后采用自适应感知机算法实现了对实体的自动分类,取得了不错的效果。

但是随着互联网中内容的动态变化,采用人工预定义实体分类体系的方式已经很难适应时代的需求,因此提出了面向开放域的实体识别和分类研究。

在面向开放域的实体识别和分类研究中,不需要(也不可能)为每个领域或者每个实体类别建立单独的语料库作为训练集。因此,该领域面临的主要挑战是如何从给定的少量实体实例中自动发现具有区分力的模型。

一种思路是根据已知的实体实例进行特征建模,利用该模型处理海量数据集得到新的命名实体列表,然后针对新实体建模,迭代地生成实体标注语料库。

另一种思路是利用搜索引擎的服务器日志,事先并不给出实体分类等信息,而是基于实体的语义特征从搜索日志中识别出命名实体,然后采用聚类算法对识别出的实体对象进行聚类。

(2)关系抽取

文本语料经过实体抽取,得到的是一系列离散的命名实体,为了得到语义信息,还需要从相关的语料中提取出实体之间的关联关系,通过关联关系将实体(概念)联系起来,才能形成网状的知识结构。研究关系抽取技术的目的,就是解决如何从文本语料中抽取实体间的关系这一基本问题。

早期的关系抽取研究方法主要是通过人工构造语法和语义规则。随后,出现了大量基于特征向量或者核函数的有监督学习方法,关系抽取的准确性也不断提高。但以上研究成果的共同特点是需要预先定义实体关系类型,如雇佣关系、整体部分关系以及位置关系等。

与之相对的,Banko等人提出了面向开放域的信息抽取方法框架(Open Information Extraction,OIE),并发布了基于自监督(Self-Supervised)学习方式的开放信息抽取原型系统(TextRunner),该系统采用少量人工标记数据作为训练集,据此得到一个实体关系分类模型,再依据该模型对开放数据进行分类,依据分类结果训练朴素贝叶斯模型来识别“实体-关系-实体”三元组,经过大规模真实数据测试,取得了显著优于同时期其他方法的结果。

TextRunner系统中错误的部分主要是一些无意义或者不合逻辑的实体关系三元组,据此引入语法限制条件和字典约束,采用先识别关系指示词,然后再对实体进行识别的策略,有效提高了关系识别准确率。

(3)属性抽取

属性抽取的目标是从不同信息源中采集特定实体的属性信息。例如,针对某个公众人物,可以从网络公开信息中得到其昵称、生日、国籍、教育背景等信息。属性抽取技术能够从多种数据来源中汇集这些信息,实现对实体属性的完整勾画。

由于可以将实体的属性视为实体与属性值之间的一种名词性关系,因此也可以将属性抽取问题视为关系抽取问题。

百科类网站提供的半结构化数据是当前实体属性抽取研究的主要数据来源。但是还有大量的实体属性数据隐藏在非结构化的公开数据中。

一种解决方案是基于百科类网站的半结构化数据,通过自动抽取生成训练语料,用于训练实体属性标注模型,然后将其应用于对非结构化数据的实体属性抽取。

另一种方案是采用数据挖掘的方法直接从文本中挖掘实体属性与属性值之间的关系模式,据此实现对属性名和属性值在文本中的定位。这种方法的基本假设是属性名和属性值之间在位置上有关联关系,事实上在真实语言环境中,许多实体属性值附近都存在一些用于限制和界定该属性值含义的关键词(属性名),在自然语言处理技术中将这类属性称为有名属性,因此可以利用这些关键字来定位有名属性的属性值。

2. 知识融合

通过信息抽取,实现了从非结构化和半结构化数据中获取实体、关系以及实体属性信息的目标,然而,这些结果中可能包含大量的冗余和错误信息,数据之间的关系也是扁平化的,缺乏层次性和逻辑性,因此有必要对其进行清理和整合。

知识融合包含2部分内容:实体链接和知识合并。

(1)实体链接

实体链接(Entity Linking)是指对于从文本中抽取得到的实体对象,将其链接到知识库中对应的正确实体对象的操作。

实体链接的基本思想是首先根据给定的实体指称项,从知识库中选出一组候选实体对象,然后通过相似度计算将指称项链接到正确的实体对象。

实体链接的一般流程是:

● 从文本中通过实体抽取得到实体指称项;

● 进行实体消歧和共指消解,判断知识库中的同名实体与之是否代表不同的含义,以及知识库中是否存在其他命名实体与之表示相同的含义;

● 在确认知识库中对应正确实体对象之后,将该实体指称链接到知识库中对应实体。

实体消歧是专门用于解决同名实体产生歧义问题的技术,通过实体消歧,就可以根据当前的语境,准确建立实体链接,实体消歧主要采用聚类法。其实也可以看做基于上下文的分类问题,类似于词性消歧和词义消歧。

共指消解技术主要用于解决多个指称对应同一实体对象的问题。在一次会话中,多个指称可能指向的是同一实体对象。利用共指消解技术,可以将这些指称项关联(合并)到正确的实体对象,由于该问题在信息检索和自然语言处理等领域具有特殊的重要性,吸引了大量的研究努力。共指消解还有一些其他的名字,比如对象对齐、实体匹配和实体同义。

共指消解问题的早期研究成果主要来自自然语言处理领域,近年来统计机器学习领域的学者越来越多地参与到这项工作中。

基于自然语言处理的共指消解是以句法分析为基础的,代表方法是Hobbs算法和向心理论(Centering Theory)。Hobbs算法是最早的代词消解算法之一,主要思路是基于句法分析树进行搜索,因此适用于实体与代词出现在同一句子中的场景,有一定的局限性。

向心理论的基本思想是:将表达模式(Utterance)视为语篇(Discourse)的基本组成单元,通过识别表达式中的实体,可以获得当前和后续语篇中的关注中心(实体),根据语义的局部连贯性和显著性,就可以在语篇中跟踪受关注的实体。

随着统计机器学习方法被引入该领域,共指消解技术进入了快速发展阶段,McCarthy等人首次将C4.5决策树算法应用于解决共指消解问题。

除了将共指消解问题视为分类问题,还可以将其作为聚类问题来求解。聚类法的基本思想是以实体指称项为中心,通过实体聚类实现指称项与实体对象的匹配。其关键问题是如何定义实体间的相似性测度。Turney基于点互信息来求解实体所在文档的相似度,能够有效地实现共指消解。

基于统计机器学习的共指消解方法通常受限于2个问题:训练数据的(特征)稀疏性和难以在不同的概念上下文中建立实体关联。为解决该问题,Pantel等人基于Harris提出的分布相似性模型,提出了一个新的实体相似性测度模型,称为术语相似度(Term Similarity),借助该模型可以从全局语料中得到所有术语间的统计意义上的相似性,据此可以完成实体合并,达到共指消解的目的。

(2)知识合并

在构建知识图谱时,可以从第三方知识库产品或已有结构化数据中获取知识输入。

常见的知识合并需求有两个:一个是合并外部知识库,另一个是合并关系数据库。

将外部知识库融合到本地知识库需要处理以下两个层面的问题:

● 数据层的融合,包括实体的指称、属性、关系以及所属类别等,主要的问题是如何避免实例以及关系的冲突问题,造成不必要的冗余;

● 通过模式层的融合,将新得到的本体融入已有的本体库中。

然后是合并关系数据库,在知识图谱构建过程中,一个重要的高质量知识来源是企业或者机构自己的关系数据库。为了将这些结构化的历史数据融入到知识图谱中,可以采用资源描述框架(RDF)作为数据模型。业界和学术界将这一数据转换过程形象地称为RDB-to-RDF,其实质就是将关系数据库的数据转换成RDF的三元组数据。

3. 知识加工

通过信息抽取,可以从原始语料中提取出实体、关系与属性等知识要素,再经过知识融合,可以消除实体指称项与实体对象之间的歧义,得到一系列基本的事实表达。然而事实本身并不等于知识,要想最终获得结构化、网络化的知识体系,还需要经历知识加工的过程。知识加工主要包括3方面内容:本体构建、知识推理和质量评估。

(1)本体构建

本体(Ontology)是对概念进行建模的规范,是描述客观世界的抽象模型,以形式化的方式对概念及其之间的联系给出明确定义。本体最大的特点在于它是共享的,本体反映的知识是一种明确定义的共识。

本体是同一领域内的不同主体之间进行交流的语义基础。本体是树状结构的,相邻层次的节点(概念)之间有严格的“IsA”关系。在知识图谱中,本体位于模式层,用于描述概念层次体系,是知识库中知识的概念模板。

本体可以采用人工编辑的方式手动构建(或借助本体编辑软件),也可以以数据驱动的自动化方式构建本体,其包含3个阶段:实体并列关系相似度计算、实体上下位关系抽取以及本体生成。

实体并列关系相似度计算适用于考察任意给定的两个实体在多大程度上属于同一概念分类的指标测度。相似度越高,表明这2个实体越有可能属于同一语义类别。所谓并列关系,是相对于纵向的概念隶属关系而言的。

实体上下位关系抽取是用于确定概念之间的隶属(IsA)关系,这种关系也称为上下位关系。

本体生成阶段的主要任务是对各层次得到的概念进行聚类,并对其进行语义类的标定(为该类中的实体指定1个或多个公共上位词)。

当前主流的实体并列关系相似度计算方法有两种:模式匹配法和分布相似度。其中,模式匹配法采用预先定义实体对模式的方法,通过模式匹配取得给定关键字组合在同一语料单位中共同出现的频率,据此计算实体对之间的相似度。分布相似度方法的前提假设是:在相似的上下文管径中频繁出现的实体之间具有语义上的相似性。

实体上下位关系抽取是该领域的研究重点,主要的研究方法是基于语法模式(如Hearst模式)抽取IsA实体对。也有方法利用概率模型判定IsA关系和区分上下位词,通常会借助百科类网站提供的概念分类知识来帮助训练模型,以提高算法精度。

(2)知识推理

知识推理是指从知识库中已有的实体关系数据出发,进行计算机推理,建立实体间的新关联,从而拓展和丰富知识网络。知识推理是知识图谱构建的重要手段和关键环节,通过知识推理,能够从现有知识中发现新的知识。

知识推理的对象也并不局限于实体间的关系,也可以是实体的属性值,本体的概念层次关系等。

知识推理的方法可以分为三大类:基于符号逻辑的推理、基于图的推理和基于统计的推理。

基于符号逻辑的推理主要包括一阶谓词逻辑、描述逻辑以及基于规则的推理。

一阶谓词逻辑建立在命题的基础上,在一阶谓词逻辑中,命题被分解为个体(Individuals)和谓词(Predication)2部分。个体是指可独立存在的客体,可以是一个具体的事物,也可以是一个抽象的概念。谓词是用来刻画个体性质及事物关系的词。比如(A,friend,B)就是表达个体A和B关系的谓词。

对于复杂的实体关系,可以采用描述逻辑进行推理。描述逻辑(Description Logic)是一种基于对象的知识表示的形式化工具,是一阶谓词逻辑的子集,它是本体语言推理的重要设计基础。

基于规则的推理可以利用专门的规则语言,如SWRL(Semantic Web Rule Language)。

基于图的推理方法主要基于神经网络模型或Path Ranking算法。Path Ranking算法的基本思想是将知识图谱视为图(以实体为节点,以关系或属性为边),从源节点开始,在图上执行随机游走,如果能够通过一个路径到达目标节点,则推测源和目的节点可能存在关系。

基于统计的推理主要指机器学习方法,通过统计规律从知识图谱中学习创新的实体间关系。典型方法主要有:实体关系学习方法、类型推理方法和模式归纳方法。

(3)质量评估

质量评估也是知识库构建技术的重要组成部分。其意义在于:可以对知识的可信度进行量化,通过舍弃置信度较低的知识,可以保障知识库的质量。

1.2.2 典型知识图谱系统

随着知识抽取、知识推理等知识图谱相关技术的进步以及众包数据的进一步积累,知识图谱数据资源越来越丰富,知识图谱也越来越多,主要可分为通用知识图谱和垂直领域知识图谱两种类型,下面对当前两种类型典型的知识图谱做一些介绍。

1. 通用知识图谱

通用知识图谱不面向特定领域,可将其类比为“结构化的百科知识”。这类知识图谱包含了大量常识性知识,强调知识的广度。具有代表性的大规模通用知识图谱有WikiData、DBPedia、YAGO、Concept Graph等,中文通用知识图谱有OpenKG、Zhishi.me、CN-Probase、XLore、PKU-PIE、Belief-Engine等。

(1)WikiData

WikiData是维基媒体基金会主持的一个自由的协作式多语言辅助知识库,旨在为维基百科、维基共享资源以及其他的维基媒体项目提供支持。WikiData的目标是构建一个免费开放、多语言、任何人或机器都可以编辑修改的大规模链接知识库。WikiData由维基百科于2012年启动,早期得到微软联合创始人Paul Allen、Gordon Betty Moore基金会以及Google的联合资助。WikiData继承了Wikipedia的众包协作的机制,但与Wikipedia不同,WikiData支持的是以三元组为基础的知识条目(Items)的自由编辑。一个三元组代表一个关于该条目的陈述(Statements)。截至2016年,WikiData已经包含超过4265万个知识条目。其中的每个文档都有一个主题或一个管理页面,且被唯一的数字标识。WikiData提供了数据的完全下载链接。

(2)DBPedia

DBPedia是一种跨语言综合百科知识库,它主要以维基百科中的数据为基础,使用固定的规则模板从维基百科的Page中提取信息。由于DBPedia的数据来源覆盖范围广阔,所以它在LOD项目中处于核心地位,许多知识图谱都可以关联映射到DBPedia。截至2014年年底,DBPedia包含了超过2800万个实体和30亿事实三元组数量。DBPedia支持数据集的完全下载。

(3)YAGO

YAGO是由德国马普研究所研制的链接数据库。YAGO主要集成了Wikipedia、WordNet和GeoNames三个来源的数据。YAGO将WordNet的词汇定义与Wikipedia的分类体系进行了融合集成,使得YAGO具有更加丰富的实体分类体系。YAGO还考虑了时间和空间知识,为很多知识条目增加了时间和空间维度的属性描述。目前,YAGO包含超过1000万的实体以及超过1.2亿条三元组知识。YAGO是IBM Watson的后端知识库之一。YAGO支持数据集的完全下载。

(4)Concept Graph

微软推出Concept Graph以更好地理解自然语言。背景知识是人类与机器在语言理解上的主要差别之一。Probase是一个知识数据库,微软在该产品上开发了相当一段时间。该数据库是开放工具Microsoft Concept Graph(微软概念图)的基础。Probase包含了540万个概念,超过了如提供12万个概念的Cyc等其他知识数据库。Concept Graph是以概念层次体系为中心的知识图谱。与Freebase等知识图谱不同,Concept Graph以概念定义和概念之间的IsA关系为主。给定一个概念如“Microsoft”,Concept Graph返回一组与“Microsoft”有IsA关系的概念组,如:“Company”“Software Company”“Largest OS Vender”等。这被称为概念化“Conceptualization”。Concept Graph可以用于短文本理解和语义消歧中。例如,给定一个短文本“the engineer is eating the apple”,可以利用Concept Graph来正确理解其中“apple”的含义是“吃的苹果”还是“苹果公司”。微软发布的第一个版本包含超过540万个概念、1255万个实体和8760万个关系。Concept Graph主要通过从互联网和网络日志中挖掘来构建。关于数据集的使用,Microsofe Concept Graph目前仅支持HTTP API调用。

(5)OpenKG

中文开放知识图谱社区OpenKG旨在推动中文领域知识图谱数据的开放与互联,目的是促进百科类、通用域的知识图谱的开放与互联。目前已经初步建立了国内几个主要中文开放百科类知识图谱的链接,包括Zhishi.me(狗尾草科技、东南大学)、CN-DBPedia(复旦大学)、XLore(清华大学)、Belief-Engine(中科院自动化所)、PKUPie(北京大学)等在内的76个高质量知识图谱,涵盖了百科、金融、医学、城市等类目。这些百科知识图谱都已经通过OpenKG提供了开放的Dump或开放访问API,完成的链接数据集也向公众完全免费开放。

(6)Zhishi.me

Zhishi.me通过从开放的百科数据中抽取结构化数据,是第一个中文领域的通用知识图谱。目前,已融合了三大中文百科(百度百科、互动百科以及维基百科)中的数据。其实体个数超过1000万,三元组数量超过1.2亿个,提供了SPARQL终端供用户查询,查询返回的结果以HTML的形式给出。

(7)CN-Probase

CN-Probase是由复旦大学知识工场实验室研发并维护的大规模中文概念图谱,包含约1700万个实体、27万个概念和3300万个IsA关系。IsA关系的准确率在95%以上,是目前规模最大的开放领域中文概念图谱和概念分类体系,提供了相关调用接口进行数据的访问。

(8)XLore

XLore从异构的跨语言在线百科中抽取结构化信息,并将其分享在网络上。XLore是第一个大规模的中英文知识平衡的知识图谱。目前,XLore包含663740个概念,56449个属性和10856042个实例。这给构建任何双语言知识平衡的大规模知识图谱提供了一种新的方式。

(9)PKU-PIE

PKU-PIE知识库是从维基百科、DBPedia、百度百科等多个来源自动收集知识形成的知识库,有自己的类别体系和谓词体系,并且和DBPedia等常见的数据库进行关联。实体的类别三元组,一共90万条,覆盖将近70万个维基百科实体,该数据集提供了本知识库内全领域实体的优质三元组数据集,规模超过5000万条,实体覆盖面广。

(10)Belief-Engine

Belief-Engine是中英文双语的跨领域知识图谱,包含来自百度、互动、维基百科的陈述性知识,在此基础上通过概念化产生概念层面的常识知识,并为每条常识知识赋予一个信念值(Belief Value)。目前包含5000万个三元组并且提供SPARQL endpoint进行数据的访问。

2. 垂直领域知识图谱

垂直领域知识图谱则面向特定领域,基于行业数据构建,强调知识的深度。垂直领域知识图谱可以看做基于语义技术的行业知识库,其潜在使用者是行业的专业人员。垂直领域知识图谱有中医药知识图谱、海洋知识图谱和企业知识图谱等。如在医疗领域,目前我国已有中国医学科学院医学研究所创建并维护的医药卫生知识服务系统,目前已涵盖乳腺癌、子宫颈癌、哮喘、脑卒中、肺炎、流感、心律失常、心肌炎、慢性支气管炎等病症的知识图谱。天津大学数据科学与服务团队建立了一套大规模知识图谱管理与推理系统,并与中国人民解放军总医院正在合作研究面向精准医学的知识图谱管理、处理、推理与共享等全生命周期的基础理论与关键技术。这个基于人工智能的精准医疗项目,就是将重症病人的基因和临床表现通过大数据关联并推理,帮助临床医生选定更恰当的治疗方案,也将帮助人们更好地预判和预防疾病。SciKG是一个以科研为中心的大规模知识图谱,目前包含计算机科学领域,由概念、专家和论文组成。其中,科技概念及其关系是从ACM计算分类系统中提取出来的,并辅以每个概念的定义(大多数来自维基百科)。使用AMiner将每个概念对应的顶尖专家和最相关的论文联系起来。每个专家包含职位、隶属机构、研究兴趣等属性,以及到AMiner系统的链接。每篇论文则包含标题、作者、摘要、出版地点和年份等元信息。SciKG可用于更好地了解计算机科学领域的动态和演化,并帮助用户进行计算机领域中专家和论文的搜索与推荐。

1.2.3 知识图谱的主要应用案例

知识图谱将搜索引擎从字符串匹配推进到实体层面,可以极大地改进搜索效率和效果,为下一代搜索引擎的形态提供了巨大的想象空间。知识图谱不是空中楼阁,而是基于现有数据的再加工,包括关系数据库中的结构化数据、文本或XML中的非结构化或半结构化数据、客户数据、领域本体知识以及外部知识,通过各种数据挖掘、信息抽取和知识融合技术形成一个统一的全局的知识库。因此,知识图谱有着非常好的应用前景。国内外在知识图谱方面的应用案例如表1-1所示。

表1-1 国内外知识图谱应用案例