第二节 知识图谱的发展历程

虽然知识图谱这一命名是在2012年才出现的,但是它的发展历程却可以追溯到20世纪的引文网络、语义Web、描述逻辑和专家系统等。在这一技术的历史演变过程中,出现了多次发展瓶颈,人们也多次通过技术的发展突破了这些瓶颈。本节对知识图谱的发展历程进行简要回溯。

一、起源:科学知识图谱

1955年,尤金·加菲尔德(Eugene Garfield)在《科学》(Science)杂志发表了一篇题为《Citation Indexes for Science: A New Dimension in Documentation Through Association of Ideas》的论文,提出了“引文索引”的设想,即提供一种文献计量学的工具,帮助科学家识别其感兴趣的文献。这一引文技术的概念开创了从引文角度研究文献及科学发展动态的新方法。

1965年,普莱斯发表了《Networks of Scientific Papers》一文,提出了用引证网络表示科学文献之间印证关系的方法。这相当于为当代科学发展绘制了一张地形图,由此引文网络开始成为研究科学发展脉络的方法,进而形成了科学知识图谱(Mapping Knowledge Domain)的概念。但在这一阶段,科学知识图谱主要应用于研究科学发展的历程,更多地被用在科学计量学科和情报学科,致力于发展科学文献引用网络的可视化。

1968年,奎林(J.R.Quillian)提出了语义网络(Semantic Network)的概念,为人类联想记忆提供了一个明显的公理模型。这一模型的本质是一种用图表示知识的结构化方式,可以看成一种用于存储知识的图的数据结构。但在语义网络被提出之后,有人认为自然语言比语义网络更适合表示人类的知识,于是展开了对语义网络和自然语言谓词逻辑之间联系的讨论。在20世纪70年代的研究成果中,Bertram C.Bruce提供了一种将语义网络转化成谓词逻辑的算法,且该算法在计算上具有一定优势;B.Kaiser给出了用语义网络表示连接词的方法。在此之后,语义网络可以方便地将自然语言的句子用图进行表达和存储,此技术可被广泛应用于机器翻译、问答系统和自然语言理解等任务。

二、发展:知识库

1977年,美国斯坦福大学的计算机科学家费根·鲍姆教授在第五届国际人工智能大会上提出了知识工程(Knowledge Engineering)的概念。知识工程是通过存储现有的专家知识对用户的提问进行求解的系统,本质上是一个通过智能软件建立的专家系统,研究如何由计算机进行问题的自动求解。知识工程的提出使人工智能的研究从基于推理的模型转向基于知识的模型,从理论转向了应用。随后,作为知识工程的一个重要组成部分,知识库(Knowledge Base,KB)应运而生,并成为知识图谱技术发展史上的重要阶段。

知识库来自于人工智能-知识工程领域和数据库领域两方面技术的有机融合。它经过分类和有序化,根据一定格式将相互关联的各种知识存储在计算机中。相比于一般的数据库,知识库可以对知识结构进行分析,根据知识的各方面特征将其编构成便于利用的、有结构的组织形式。相比于一般的应用程序只能把问题求解的知识隐含地编码在程序中,知识库则可以将问题的答案显式地表达,并单独组成一个相对独立的程序实体。

对于知识库的研究,核心在于对知识的组织和表达,因此逻辑基础十分重要。在此后的一段时期,对语义网络的研究方向逐渐转变为具有严格逻辑语义的表示和推理。从20世纪80年代末到20世纪90年代,语义网络的工作集中在对概念之间关系的建模,有人提出了术语逻辑(Terminological Logic)以及描述逻辑的概念。这一时期比较有代表性的工作是Brachman等人提出的CLASSIC语言和Horrock实现的FaCT推理机。

进入21世纪,语义网(Semantic Web)和链接数据(Linked Data)的出现开启了语义网络应用的新场景。语义网和链接数据是万维网之父Tim Berners Lee分别在1998年和2006年提出的。相对于语义网络,语义网和链接数据倾向于描述万维网中资源、数据之间的关系。

语义网中的“Web”希望将数据相互链接,组成一个庞大的信息网络,正如互联网中相互链接的网页,只不过基本单位变为粒度更小的数据。在万维网诞生之初,网络上的内容只有人类可读,计算机无法理解和处理。在用户浏览网页时,计算机只能判断这是一个网页,网页里面有图片、有链接,但并不知道图片描述的是什么,也不清楚链接指向的页面与当前页面有何关系。语义网是对Web的一个扩展,其核心是给Web上的文档添加能够被计算机理解的“元数据”,使网络上的数据对于机器可读,进而使整个互联网成为一个通用的信息交换媒介。

语义网与传统Web的最显著区别是用户可以上传各种图结构的数据,并且数据之间可以建立链接,从而形成链接数据。链接数据产生的目的是定义如何利用语义网技术在网上发布数据,强调在不同的数据集间创建链接。链接数据项目汇集了很多高质量的知识库,如FreeBase、DBpedia和YAGO,这些知识库都来源于人工编辑的大规模知识库——维基百科,随后出现的知识图谱就是对链接数据这一概念的进一步包装。

在这一阶段,由于技术发展程度的限制,知识库更多以机构知识库的形式出现。对于特定的机构,由于该机构所在领域的知识规模通常相对较小,因此容易通过知识库的理论和方法进行有效的组织和管理。有了机构知识库,对机构内容知识的保存、管理、访问更加方便,人们甚至可以利用机构知识库进行预测和决策支持。

三、形成:知识图谱

随着互联网的发展,知识与信息呈现爆发式增长,搜索引擎的使用越来越广泛。但海量的信息使得传统万维网并不能满足人们快速、准确地获取高质量信息的需求,于是,知识图谱出现了。

2012年11月,Google公司率先提出知识图谱的概念,表示将在其搜索结果中加入知识图谱的功能。此时的知识图谱与最初在引文网络中出现的科学知识图谱有很大的区别,但与知识库在理论和方法上还比较相近,只是由于建立在互联网搜索引擎的发展之上,知识图谱的含义更加宽泛。从发展愿景来看,知识图谱里的知识应该包含人们生活中的万事万物,涵盖人类文明发现和创造的所有知识。

知识图谱由知识及知识之间的关系组成,知识(实体)的内部特征使用属性-值对表示;知识(实体)之间的关系通过相互连接的边表示。从机构知识库到互联网搜索引擎,面向知识图谱的研究不断深入。传统的搜索引擎是基于关键词匹配的,而知识图谱是利用知识(实体或概念)之间的匹配度建立一个有序的知识组织,为用户提供智能化的访问接口,使用户在搜索时可以更加快速、准确地获得一个全面的信息体系。其工作原理如图2所示。

图2 知识图谱工作原理

Google公司拥有数量众多的互联网用户,有需求和资本建立一个庞大的知识图谱。Google公司采用多种语言对知识图谱中的实体、属性和实体间的关系进行描述。根据2015年统计的数据,Google公司构建的知识图谱拥有5亿个实体、约35亿条实体关系信息,已被广泛用于提高搜索引擎的搜索质量。

在Google知识图谱中,一个大规模的、协同合作的知识库——FreeBase起到了重要作用。FreeBase即链接数据的一个数据集,采用“图”的数据结构,把知识库绘制成一个有向图。这种数据模型相对于传统数据库的优势在于其可以处理更复杂的数据以及方便数据的插入。Google知识图谱的模式(Schema)是由Google公司的专业团队在FreeBase的基础上开发和设计的。在Google知识图谱中,所有的对象都有属于它的类型(Type),类型的数量是不固定的。

在Google之后,微软、百度、搜狗等互联网公司纷纷开始构建自己的知识图谱。随着探索研究的不断深入,知识图谱作为一种新的知识管理思路,不再局限于搜索引擎的拓展应用中,开始在各类智能系统(如IBM Watson)以及数据存储等领域发挥关键作用。但是目前的知识图谱构建尚不完善,期待知识图谱在实体之间更加复杂的关系推理等方面有更多的突破。