,
2012年5月17日,谷歌正式推出知识图谱(Knowledge Graph)项目,针对互联网上的网页信息世界,试图通过真实世界中存在的各种实体和概念进行知识描述和检索,从而代替传统的字符串匹配检索,创造全新的信息检索模式[1]。国内外的互联网搜索引擎公司紧随其后纷纷构建了自己的知识图谱,如微软的Probase、搜狗的“知立方”、百度的“知心”等,知识图谱已经成为构建下一代智能化搜索引擎的基础。
尽管在学术界和工业界,有关知识图谱的研究与应用不断升温,并且出现一些知识图谱产品,但在国防科研领域尚缺乏知识图谱构建的成熟解决方案。本文在研究知识图谱的概念和现有构建技术的基础上,结合国防科技文献特点,提出了从科研本体模式构建知识图谱的思路,并以权威科技文摘数据为对象开展了知识图谱构建实践。
知识图谱(Knowledge Graph)是结构化的语义知识库,用于以符号形式描述物理世界的概念及其相关关系,其基本组成单位是“实体-关系-实体”三元组,以及实体及其相关“属性-值对”,实体间通过关系相关联结,构成网状的知识结构[2]。
一般来说,知识图谱是由具有属性的实体通过关系链接而成的网状知识库,可以看作是一张巨大的图,图的特征更明显一些,谱的特征相对较弱。这张图中的节点表示实体或概念,图中的边则构成关系,是一种有效的知识表达形式。
知识图谱和本体结构非常类似,但将其与本体概念进行比较后可以发现,知识图谱并不是本体的替代品,相反它是在本体的基础上进行了丰富和扩充,这种扩充主要体现在实体(Entity)层面。本体中突出和强调的是概念以及概念之间的关联关系,描述的知识图谱的数据模式(Schema),即为知识图谱构建数据模式相当于为其构建本体;而知识图谱则是在本体的基础上,增加了更加丰富的关于实体的信息。
知识图谱在逻辑上分为数据层和模式层,模式层是知识图谱的核心,主要对图谱中的知识节点进行定义和规范,同时对知识节点之间的关系定义描述和约束;数据层则是在模式层约束下,对大数据资源进行“实体-关系-实体”或者“实体-属性-属性值”描述,最终形成庞大的知识网络。知识图谱构建主要是利用现有大数据资源和知识抽取等技术,获取知识图谱模式结构并构建关联网络,最终完成知识图谱构建。有学者[3]给出了知识图谱的构建和维护流程(图1)。
图1知识图谱构建与更新流程
国内有学者[3]把知识图谱构建过程分为自顶向下和自底向上两种模式。其中,自顶向下构建是指借助已有权威知识,在专家干预之下获取模式信息,按照模式信息对数据资源进行加工,形成知识图谱;自底向上构建则是指借助一定技术手段,从数据资源中获取实体/概念及关系,利用统计学原理选择其中置信度较高的新模式,经人工审核之后形成知识库。总之,随着大数据时代的到来,知识抽取和知识加工技术的不断成熟,知识图谱构建基本是由专家、数据、技术结合而进行的螺旋式进化和迭代式更新的过程,已经很难区分是从自顶向下还是自底向上。
大数据信息环境为知识图谱构建提供了丰富的资源基础,大数据技术的迅速发展不断推动知识图谱构建工作向工程化和自动化发展,其中信息抽取、知识融合、知识推理等是影响知识图谱构建的关键技术[3]。
信息抽取是自然语言处理研究中的一个重要领域,主要实现从半结构化、无结构化的自由文本或其他信息资源中抽取出结构化的、无二义性信息。在知识图谱构建中主要完成从半结构化和无结构数据中抽取实体、关系以及实体属性等结构化信息,主要涉及命名实体识别、关系抽取、属性抽取等技术。命名实体识别是指从文本中自动识别并抽取出特定的实体信息[3],如人物、地点、机构、时间等;关系和属性抽取则是根据已经识别出的实体,按照一定句法和句式自动识别出实体与实体之间的关系,以及实体自身附着的特性信息。
知识融合是将不同来源的事实知识准确、有效地合并到知识仓储中,并保证知识描述的一致性。为此,知识融合过程要准确识别待合并事实知识与已有知识重复和相矛盾的部分,并采取适当的措施进行处理,保证知识的一致性、无冗余、无矛盾。在知识图谱构建过程中主要是对抽取出的实体、关系以及属性信息进行概念消歧、冗余剔出和知识准确性检查,主要涉及实体消歧、共指消解、知识合并等技术[3]。
知识推理是在知识表达的基础上,进行机器思维求解问题,实现知识推理的智能操作过程,是目前的技术难点[3]。在知识图谱构建过程中,主要通过干预和机器学习实现知识图谱的更新和自我进化,是目前知识图谱工程化和自动化的难点,涉及到的技术包括自然语言学习、机器学习和深度学习等技术。
本体是对概念进行建模的规范,是描述客观世界的抽象模型,旨在以形式化方式对概念及其之间的关系给出明确定义。科研本体目前没有统一的定义,通常是以科研信息活动为描述对象,揭示和反映领域科研活动主体及各科研对象之间的联系,如科研人员、科研机构、科研成果、科学会议、科研设备等各种对象属性及其相互之间的本质联系,是支持科研人员从海量科技文献中进行知识发现的基础。
从科技文献入手进行科研本体构建最早来源于书目本体。20世纪90年代初,斯坦福人工智能研究的著名学者Tom Gruber用LISP语言定义了书目数据的本体模型[4]。很多学者都尝试利用语义网技术实现书目信息的本体化[5-6]。国内学者王军采用了SKOS Core的所有类和关系构建了KVision书目本体,并提供了主要类和关系如图2(图片素材来自于文献[7])。
图2 KVision本体
该本体中定义了文献(Document)、概念(Concept)、作者(Author)、出版机构(Press)等实体类型。在关系的定义中,主要包括两个方面,一是继承主题词表中概念间用代属分参关系,二是利用文献与概念、文献与作者、文献与出版社之间形成的固有关系进行定义。本体实例则是通过海量的文献元数据进行填充。KVision最终用于概念浏览和简单语义检索支持。总之,书目本体更关注于文献这个核心,通过与文献与文献附属的科研实体之间的关系进行关联扩展,相对简单,因而对语义检索的支持相对较弱。
VIVO是康奈尔大学图书馆于2004年启动的项目,后期利用RDF、OWL、Jena和SPARQL等技术进行改造,最终形成了面向科学和学术交流的科学家语义网络,即VIVO科学家本体,主要用来促进科研人员的科研网络化协作[8]。该本体结构以欧美教育体系为原型,以促进科研人员的科研网络化和协作为目标,描述内容覆盖康奈尔大学所有院系的教员、科研人员和学科信息,分为人员、机构、学术活动和科研。VIVO本体由核心本体(VIVO Core)和一些大众本体(BIBO,FOAF,SKOS等)构成,内容重点关注科学家的学术、教育与服务等方面。如学术方面的教育背景、出版物、专业领域、资助,教育方面开设的课程、报告会、培训等,服务方面的组织会议、参加编委会、学术社团服务等。
VIVO集成了不同本体中大量的类,围绕学术这个中心进行数据建模,主要实体类型除了传统的机构(Organization)、概念(Concept)、学者(Person)、期刊(Journal)外,还包括与学者相关的教学(Teaching)、教育培训(Education and Training)、获奖(Award)、资助(Grant)等[9]。这些类之间通过对象类型属性形成了复杂的学术知识网络。
随着文献数据量的大幅提升,特别是文献计量方法和社会网络分析方法的广泛应用,科学研究活动中学者的关注点逐渐从获取全文文献转变为文献引证分析和科研主体实例分析。在这样的背景下,各大出版商、服务商和信息服务科研机构迅速推进知识服务创新,围绕科研信息活动中涉及的对象与关系,按照自身服务需求构建科研本体,在创新文献检索服务的基础上开展科研实体分析服务。
信息出版和服务主要围绕所占有的海量文献开展服务,因此在科研本体建设方面仍然围绕文献这个核心实体,从文献元数据中所描述的作者、作者单位、基金、文献出处、主题概念、文献分类、引文、共被引文献、共引文献等方面进行知识对象定义,利用文献及其之间的关系将知识对象关联形成知识网节,提高用户在相关知识对象之间跳转的友好性;通过检索结果中对知识对象的统计分析帮助用户快速获取情报信息,从定量情报分析角度运用文献信息,并辅以可视化展示。
国外以EI、SCI等权威数据库服务为代表,国内则以清华同方、万方数据、维普三大数据服务商为龙头。其中万方公司围绕学科、主题、人物、机构、基金五要素构建检索服务体系的脉络,以科学为纽带,组成各个要素之间的相互关联关系,构成知识关联网络,各知识库详细描述各要素信息,形成知识节点,每个节点与所有放射状箭头所指的节点形成“以点带面”的知识库(图3)[10]。
图3 知识关联“五要素”
信息服务科研机构以支撑科研活动为使命,在科研本体建设方面侧重于结合自身科研活动特征需求进行科研本体设计。科技部组织的“面向外文科技文献信息的知识组织体系”项目中,科技知识组织系统(Science& Techology Knowledge Organization System,STKOS)科研本体以国外重要科技机构、核心科技人员、主要科技期刊、国际重要会议为主体构建,涵盖理工农医四大领域,包括科研人员本体、科研机构本体、科研项目本体、科技会议本体、科研基金本体、科研成果本体等,揭示和反映了领域科研活动主体及各科研对象之间的联系。中国医学科学院医学信息研究所开展了卫生政策科研本体建设,围绕卫生政策研究过程设计了活动、机构、成果、人员、项目、研究主题、信息来源7个类[11]。中国科学院国家科学图书馆利用protégé构建了用于项目目标的科研本体,主要概念包括科研活动、科研产出、科研主体、科研设施和基本概念五大范畴。图4是该本体部分关系描述示例[12],图中粗箭头是类层次关系,细箭头是类之间逻辑关系。
图4 科研本体部分关系描述示例
传统的国防科技知识组织体系以国防科技叙词表、分类表为基础,通过不同来源词表之间的概念映射形成较为完备的知识概念网络,国防科技科研本体是对传统国防科技知识组织体系的拓展和深化。
国防科技科研活动具有明显的领域特色,国防科技科研本体紧紧围绕其领域特色,在国防科技主题概念网络的基础上,对各种信息资源进行本地化处理与集成,形成近亿条科技文献元数据作为样本进行建设。在知识描述广度上,从主题概念单维度拓展到与科研活动息息相关的各种实体,包括科研机构、科研人员、出版物、学术会议活动、国防产品等多维度;在实施描述深度上,突破传统“用代属分参”叙词关系,为每个实体定义属性,并在实体自身维度内和跨实体之间构建多种关系,从而使整个知识组织体系从单维度简单关系构成的知识网络,全面转变为多维立体的复杂关系网络。而国防科技知识图谱则依据国防科技科研本体中定义的包含实体概念、实体属性和实体关系的数据模型,利用海量国防科技文献元数据中所描述的信息,围绕内容相似、文献引用、用户浏览、社会网络关系等文献之间客观存在的显性关系,完成知识单元填充之后形成的包含了隐性知识的关联网络。其示意图如图5所示。
图5基于科研本体的国防科技知识图谱
基于科研本体的国防科技知识图谱是以国防科技科研活动中的实体为节点,以实体关联关系为边,在时间流的驱动下形成谱系。而国防科技海量文献元数据中包含了大量的科研实体信息,分别对作者、机构、期刊和会议活动等实体基本信息进行了描述。其中,作者是专业知识的研究或者传播主体,发文量、引文量多的作者是重要的学科带头人、领域影响者;机构是作者所在的团体,影响力强的作者聚集机构一般是领域学科的重要发现源;期刊和会议是科研成果的聚集点,是科研创新和变革的重要阵地。这些实体之间彼此关联,环环相扣,可以通过元数据从任何一个实体关联到其他实体。本文构建的国防科技知识图谱则以权威的国防科技文献元数据为素材,采用面向对象的思想,通过数据清洗、实体归一、关联抽取等方法,最终完成图谱构建。
4.1.1 实体模型定义
实体是以对象的形式存在的,每个实体都是一个对象。所抽象出的类包括各种属性,有些是主要属性,有些是次要属性。对实体信息的模型定义需要分析它在元数据中的描述特征。
机构名称在不同来源的元数据中描述有所不同,可能是因为历史变迁导致名称多次变动,也可能是长期以来学术界约定俗称的说法,或者是描述规则不同形成不同写法等。还有一种情况是描述相同,但不是一个机构,如每个国家都有科学院,相同的大学可以在不同地区建立分校。为此,明确所属地相同的机构作为一个类,该类所属的对象则是各种不同描述信息,以此为前提,定义如下的机构模型。
Organization = {Country*,City,Name*,Frelation,Fsub }
机构类包括国家、城市、名称属性和不同名称的关联函数、父子函数,其中国家和名称是必要属性。基于此模型,需要建立包括国家同义表、城市同义表,在此基础上建立机构名称规范系统,以及不同机构描述的关系(曾用名、简称、别名、错拼等)对应表和父机构与子机构的对应关系表。
采用相同的思想,定义如下的作者、期刊、会议模型。
Author = {Organization*,Surname*,Firstname*,Email }
作者类包括所属机构、姓、名、电子邮件地址,其中机构、姓和名是必要属性。
Journal = {ISSN*,Coden,Publisher*,Name*,Frelation }
期刊类包括ISSN、CODEN、出版机构、期刊名称和不同名称的关联函数,其中ISSN、出版机构、期刊名称是必要属性。
Conference = {Confername*,Conferdate*,Conferlocation*,Sponsor,Frelation }
会议类包括会议名称、会议召开时间、会议召开地点、会议主办者和不同名称的关联函数,其中会议名称、会议召开时间、会议召开地点是必要属性。
4.1.2 实体归一化
长期以来,信息服务机构的海量文献元数据是科研人员检索文献、全文获取的重要来源。Web of Science、Dialog、EI等元数据库是开展科学研究的基础素材。随着大数据分析技术的发展,基于科研实体等要素的学术文献产出分析成为重要需求。围绕文献检索和获取的元数据存在描述不规范统一、各家自成一体的现象,严重影响了数据分析结果,实体归一成为提高分析准确性的重要需求。
由于海量文献元数据中包含实体众多,很难对所有实体进行归一。因此,为了遵循科研活动的基本规律,笔者只针对具有国防科技特色的、高价值数据库,包括美国政府四大报告、AIAA、IEL等全文数据库和EI INSPEC等文摘数据库抽取其中学术产出较高、学术影响力大的科研实体进行归一处理。具体实现中,采用短文本匹配、高频次优先等方法进行,具体步骤如下:选取元数据库并进行数据预处理,定义实体模型并抽取相关属性,对实体属性的可辨识性(可以表征实体区别于其他实体的辨识度)进行权值分配,定义不同类型实体的选取阈值(在元数据中出现频次表征其学术重要度),通过短文本匹配算法对实体属性进行权值计算获得匹配的不同实体并给出唯一标识,对于一个实体的属性信息选取该唯一标识下出现频次最多的文本信息(如对期刊实体具有识别性价值的属性值,ISSN、刊名完成短文本匹配后,出版社、CODEN等属性值则选取出现频率最高文本值)。
实体归一是一个不断迭代更新的过程,需要定期计算。在短文本匹配处理中,采取去停用词、词干抽取和忽略词顺等方法过滤噪声信息,获取到具有实际意义的关键词集合。假设文本A形成的集合是S(A),|S(A)|表示包含的关键词数量,两个文本形成的集合A和B之间的相似度可以计算为:D(A,B) = |S(A)∩S(B)|/|S(A)∪S(B)|。
为上述的相似度设置一定阈值,有一部分可以由计算机直接处理,完成短文本匹配;有一部分需要人工核查;有一部分则不可能相同,直接过滤。
4.1.3 关联网络构建
所有科研实体信息通过处理后,形成了由唯一标识符标识的对象及其关系表,结合国防科技分类主题一体化词表,与国防科技文献元数据库进行实体关联和概念,所有实体采用唯一标识符进行连接,完成图谱中各节点的边建设。具体的数据表关系如图6所示。
国防科技知识图谱是以文献元数据中客观存在的科研实体关系为基础的,知识图谱构建后存储在后台关系型数据库中。构建不是知识图谱的目标,开展基于知识图谱的服务和推进基础文献获取服务向科研实体分析型服务转型,才是知识图谱构建的核心。笔者以构建的知识图谱为基础,从科研实体和科技论文等方面提供知识导航和检索服务,并借助可视化技术进行图谱关联关系展示,实施了服务模式的实践。
服务系统以已经构建完成的知识图谱存储数据库为输入,整个架构分上、下两层,如图7所示。图7中间的下面一层为引擎层,主要完成对提供数据的存储处理、索引构建和可视化引擎,其中数据库待用CASS,索引采用Solr完成;上面一层是服务层,主要面向知识服务用户需求提供多维度的导航、检索、关联展示和数据分析,主要实现以元数据、科研作者、科研机构、期刊、会议、概念为用户查阅入口,在提供基本文献检索和获取的同时,重点推出实体的导航、浏览、检索和学术成果统计分析等,主要利用引擎层提供的功能进行分析结果数据输出和可视化展示。
图6关联网络数据表关系
图7 国防知识图谱服务系统架构
知识图谱由不同类型的节点构成,服务系统面向各种节点类型设计了特色化的用户服务界面。对于科研机构部分,主要提供了按照机构名称首字母、机构类型、机构所属区域等进行信息导航与发文统计,并利用地图的形式提供发文数据的直观浏览;对于主题概念,则主要以其范畴分类、概念关系为主要导航点,为用户提供囊括中英文、融合多领域词表的知识体系;对于论文,作为所有科研实体关联的基础,在提供基础的专业分类导航外,则主要以检索结果中的实体、概念及其之间的关系挖掘为主要展示内容,为用户提供所检索论文内容的同时,还提供对结果数据量化的分析情况。图8是检索“航空发动机”之后对结果进行分析后的知识图谱可视化展示和文献列表。
图8国防知识图谱服务系统界面截图
大数据分析技术的迅猛发展促进了海量文献的量化分析,而知识图谱构建又是开展量化分析的重要基础。笔者从国防科研活动出发试图构建国防科技知识图谱,探索基于知识图谱服务的新模式。在整个研究和试验过程中,也发现了一些问题,主要有两类。一是信息服务机构业务转型问题。传统的组织加工不再是核心工作,其重点应该转向研究各领域间知识图谱构建所依赖的本体模型。二是智能化处理技术需求强烈。由于数据量的指数级增长,未来大部分文献处理工作需要计算机完成,因此实体识别、知识抽取、知识标注等技术还需要深入研究。