知识图谱是什么?恐怕是每个对知识图谱感兴趣的人都会首先思考的问题。纵观网络有很多人试图从各种角度给过解释,笔者在与很多行业从业者交流过程中,发现并不是每个人都能清晰地表达出“知识图谱是什么”这个问题;或其自身是清楚的,但是传递过程中总有种“茶壶倒饺子”的感觉。究其根本可能是如下三个原因导致:
1. 知识图谱在自身演化过程中引入了哲学概念中的本体论(Ontology),用于刻画知识,本体如何理解呢?我们看下维基百科对其的解释:
本体论(英语:Ontology),又译存在论、存有论,是形而上学的基本分支,本体论主要探讨存有本身,即一切现实事物的基本特征。
2. 知识图谱综合了众多方面的技术和方法,有知识表示(RDF、OWL...)、知识抽取(D2R、NER命名实体识别、关系抽取...)、知识融合(实体对齐Entity Alignment...)、知识存储(图数据库存储、RDF存储...)、知识推理(归纳推理、演绎推理、符号推理...)、图计算(子图匹配、最短路径...)、可视化、语义搜索、知识问答、知识众包...
很多初学者一提到知识图谱就认为是图数据库,入门后认为知识图谱的存储只能用图数据实现,等等这些想法都是错误的。今后不要再有类似不专业的言论:“我会知识图谱,因为我会用neo4j”,“最近我们公司想引入知识图谱,你们用的哪种图数据库?”
3. 解释的时候要考虑你的受众,知识图谱由于其可解释性等优势,在人工智能火热的今天受到各行各业的关注,结合提问的受众背景知识,需要有针对性的解释,而不是每个人都回答“Things, Not Strings”,虽然这句话很精髓,但是你要明白你不是谷歌。
这篇文章题目叫“知识图谱是什么”,我们从两个方面来介绍,一个是目前看到的精彩定义,每个解释都是高度凝练和专业;另外一个是笔者口语化的总结思考,希望对你理解这个问题有帮助。
1. 谷歌的定义
谷歌在2012年基于语义网、Linked Data发布了知识图谱,主要用于提高谷歌搜索的质量,因此谷歌对知识图谱的解释更侧重于自身的搜索业务。
Google知识图谱(英语:Google Knowledge Graph,也称Google知识图)是Google的一个知识库,其使用语义检索从多种来源收集信息,以提高Google搜索的质量。知识图谱2012年加入Google搜索,2012年5月16日正式发布,首先可在美国使用。知识图谱除了显示其他网站的链接列表,还提供结构化及详细的关于主题的信息。其目标是,用户将能够使用此功能提供的信息来解决他们查询的问题,而不必导航到其他网站并自己汇总信息。
在谷歌的官方博客上,我们可以查看到Amit Singhal在2012年5月16日发表的博文,提到“知识图谱从三个方面增强谷歌的搜索”:
- Find the right thing
- Get the best summary
- Go deeper and broader
2. 王昊奋的定义
昊奋老师是知识图谱方面的专家,深入参与过IBM Watson系统的研发工作。
知识图谱旨在描述真实世界中存在的各种实体或概念。其中,每个实体或概念用一个全局唯一确定的ID来标识,称为它们的标识符。每个属性-值对用来刻画实体的内在特性,而关系用来连接两个实体,刻画它们之间的关联。
这个解释形象且完整的说明了知识图谱的基本组成元素,包括实体、概念、属性、关系,以及它们所代表的含义和相互之间的关系。实体或概念就是图上的一个个节点;属性-值是节点的内在特征;关系是节点和节点之间的关联,图上表现为两个节点之间的连线。
3. 漆桂林的定义
漆老师是东南大学计算机科学与工程学院的教授,著有《面向语义Web的知识管理技术》一书,17年发表的《知识图谱研究进展》既回顾了知识图谱的历史,又探讨了知识图谱研究的意义,是了解熟悉图谱不可多得的优秀文章。
漆老师对知识图谱及其意义的定义如下:
知识图谱是人工智能中研究如何将人类的知识转化为图,从而方便计算机存储并用于推理,计算机可以通过知识图谱实现从感知智能到认知智能的飞跃,支持智能问答、辅助决策、智能分析等应用。
漆老师作为一个完美主义者,对这个定义并不是最满意。该定义说明了知识图谱中几个要点问题
- 知识图谱是人工智能中的一项重要技术,实际上它是与深度学习并行的人工智能三个流派之一,属于符号主义
- 为什么要用图的方式来组织和描述人类知识?因为图结构更便于计算机存储,同时可用于后期的知识推理等智能应用
- 目前是人工智能发展的第三个重要阶段,前两个分别是计算智能和感知智能,知识图谱是实现机器认知智能的关键技术
- 知识图谱目前在工业届已经拥有很多成熟的落地应用,典型的有智能问答、辅助决策、智能分析等
4. 刘焕勇 薛云志的定义
最近刘老师与薛老师的文章《事理图谱,下一代知识图谱》探讨了从知识图谱到事理图谱的区别和联系,非常值得一读的文章,目前以传统本体概念为基础进行知识组织的偏静态知识图谱越来越显露出其局限性,对动态特征描述的事理图谱将是将来的发展方向。有关动态事件、时空、权重、地域等知识的利用,在后续文章中我们结合实际案例进行介绍。
这篇文章中从多个视角来看待知识图谱,每个视角都代表了不同角色看待问题的角度,笔者曾在不同场合针对不同受众对知识图谱有过不同的解释,这篇文章里的定义是我目前看过最系统和全面的。
从AI的视角来看,知识图谱是一种理解人类语言的知识库,
从数据库视角来看,知识图谱是一种新型的知识存储结构;
从知识表示视角来看,知识图谱是计算机理解知识的一种方法;
从web视角来看,知识图谱是知识数据之间的一种语义互联。
曾有人问过我:“知识图谱与知识库有什么区别?”从狭义的角度来讲,它可以看做一种理解人类语言的知识库,行业知识图谱即为行业知识库,本质上以一种新型的结构组织的知识库,相对于传统知识库,可能更容易基于图谱做智能的拓展和应用。
我们一直讲,知识图谱并不是一个新兴的技术,而是从最初的逻辑语义网(semantic-net)、到语义网络(semantic-web)再到Linked-data不断演变而来,因此需要对其有客观的认知,任何一个新的技术都不是对“旧”技术的颠覆,而是站在巨人肩膀上所取得的成果,要记住知识图谱不是“银弹”。
5. 口语版“知识图谱是什么?”
以下是笔者结合自身经历总结的极其不凝练的定义,如有不够准确的地方欢迎讨论。
知识图谱被称为人工智能的基石,它的前身是语义网,由谷歌在2012年率先提出,用于改善自身的搜索业务。
如果将人工智能比作一个人的话,那么图像识别可以看做人类的眼睛,语音识别与合成看做人的耳朵和嘴巴,知识图谱就是是人的大脑,因此可见其重要性。
我们人类的大脑存储了对客观世界的主观认知,这些知识人类可以理解,可是机器不能。我们知道互联网本质是一个描述资源和资源之间关系的网络,RDF则是一种资源的描述方式,简单来说,每一种描述都是一个主谓宾三元组,因此RDF几乎可以描述我们整个客观世界,而它的另外一个好处在于是机器可理解的。
对于传统知识图谱我们可以简单抽象出概念、实体、属性、关系、时序等要素,概念是一类实例的集合,实体就是具体的一个个实例,属性表示实例内在的特性,关系更多的侧重于外在,举个例子,比如:我正在听《安静》这首歌,我是一个实体,属于人这个概念;安静是一首歌,是属于歌曲概念下的一个实体;听是我和安静这两个实体之间正在发生的关系;因此在知识图谱里我和安静可以分别用一个节点来表示,我们之间的关系用一条线进行连接,这条线就代表听歌这个关系;<我, 听, 安静>。同时我作为一个实体有自己的内在属性,比如身高、体重、性别;<我, 性别, 男>。这一条条基本的三元组可以非常方便的转换成图,存储于计算机中,从而组成知识图谱。
以此类推,世间万事万物都可以以这种方式存储在计算机中,后续在这样一个知识库之上增加各种规则、模型、算法,即可以提供我们实际使用到的各类智能应用。