瑜伽常识 /MANUAL
乐鱼体育知识图谱之知识表示篇
乐鱼体育知识图谱这个概念在提出不到10年的时间内,已经在各行各业产生了极大的价值,落地效果明显。国务院《新一代人工智能发展规划》中,将知识图谱作为新一代人工智能关键共性技术体系的重要组成部分,投入大量经费来研究知识图谱的理论、技术和应用。中文信息学会成立语言与知识计算专业委员会(SIGKG),汇聚国内知识图谱领域的专家学者共同构建知识图谱生态圈,一些高校和公司成立了OpenKG联盟构建开放知识图谱平台。
国内知识图谱的发展速度之快乐鱼体育,是国外难以比拟的。2019年国内知识图谱旗舰会议CCKS
参会人数达到800人,同期国际知识图谱大会ISWC(/)不到500人,国际同行对国内知识图谱的工作高度认可,越来越多的国内学者加入到知识图谱国际会议和期刊的组织工作中。另外,中国在知识图谱的标准化方面也是走在了世界前列乐鱼体育,知识图谱的国际标准正在积极制定中,前期已经有一些不错的工作,比如说《知识图谱标准化白皮书》正式发布。国内在知识图谱的产品方面也有一些自主研发的产品,比如说南京柯基数据的知识图谱平台产品(见柯基数据)是全周期的知识图谱构建和运维管理平台,提供从数据到知识的全方位智能服务,这些产品在各个行业落地后,将使得中国在知识图谱方面的研发取得世界领先的地位。
虽然知识图谱取得了很大的进展,随着应用和技术的发展,它的定义一直在变,其中一个定义见
这种变化也是顺应人工智能的发展的必然,这就使得很多人搞不懂知识图谱到底是什么。在这一背景下,我们有必要对知识图谱是什么进行一个新的审视。本篇文章的目的是探讨知识图谱以前是什么,现在是什么,将来可能会是什么。
知识图谱的概念是谷歌2012年提出的,那么我们就可以把2012年作为一个分界点。图1给出了知识图谱的一个发展时间轴。
从这个时间轴中,我们可以看到知识图谱是起源于语义网络(semantic nets or semantic networks)。语义网络一种用互联的的节点和弧来表示知识的一个结构[Sowa, 1991]。语义网络中的节点可以代表一个概念(concept)、一个属性(attribute)、一个事件(event)或者一个实体(entity),而弧则用来表示节点之间的关系,弧的标签指明了关系的类型。语义网络中的语义主要体现在图中的边的含义。为了给这些边语义,研究人员提出了术语语言(terminological language),KL-One就是其中的一个代表,并最终提出了描述逻辑(description logic),描述逻辑是一阶谓词逻辑的一个子集,推理复杂度是可判定的(decidable)。W3C采用了以描述逻辑为逻辑基础的本体语言OWL(Ontology Web Language)作为定义Web术语的标准语言。W3C还推出了另外一种用于表示Web本体的语言RDF Schema(简称RDFS)。知识图谱的起源虽然是语义网络,但是它可以产生比较大的影响力,跟万维网发明者蒂姆·伯纳斯-李(TimBerners-Lee)有很大的关系,蒂姆·伯纳斯-李于2001年在科学杂志提出了一个新的概念叫语义网(the Semantic Web)[Berners-Lee, 2001],这个概念提出后受到了学术界和业界的广泛关注,被认为是下一代Web的实现目标。语义网这个概念比较专业的一个定义见
可以让我们知道知识图谱可以做什么,不可以做什么。比如说,知识图谱跟语义网络虽然都是用图来对知识进行表示,但是不能把知识图谱等价于语义网络,也就是说,知识图谱的出现,不是语义网络换了一个马甲重新出现乐鱼体育。同样,知识图谱也不是RDF,RDFS或者OWL本体。
可以让我们知道知识图谱跟属性图有什么本质的区别,也有什么关联。这样就可以回答知识图谱跟Neo4j数据库的区别和联系。
可以让我们知道知识图谱的目前到什么阶段了,有什么理论和应用工作可以做。比如说,知识图谱查询可以做什么,知识图谱抽取可以做什么等。
国内知识图谱发展如火如荼,取得了很多高水平学术成果以及很多有应用价值的产品,但是在知识图谱的理论研究方面,跟世界一流水平相比还是有一些距离,通过对知识图谱的表示方法进行探讨可以让我们看清楚自己的优势和不足,为知识图谱的发展做好布局。
下面用一个通过百科网页构建的知识图谱示例(见图2)来引出知识图谱的一个定义。从图2可以看出,一个知识图谱表现为一个有向标签图,即由点和边组成的一个图形,边是带有标签的。从知识表示的角度看(见[Davis, 1993]),知识图谱不仅仅是一个图,因为图谱的结点和边是要承载语义信息的。在图2中,有三类知识:
第一类是实体关系对,比如说resource/2019新型冠状病毒,引起,resource/2019新型冠状病毒感染肺炎,这里resource/2019新型冠状病毒和resource/2019新型冠状病毒感染肺炎是实体,它们是一个具体的东西,而“引起”则是一个关系;
第二类是实体类别,比如说resource/2019新型冠状病毒感染肺炎,属于,class/疾病,这里class/疾病是一个类,指的是疾病这样类别,这一条知识的意思就是2019新型冠状病毒感染肺炎是一种疾病;
第三类是概念上下位,比如说class/冠状病毒,子类,class/RNA病毒,指的是冠状病毒是一种RNA病毒。
前面提到,知识图谱不仅仅是一个图,即把知识图谱定义为一个图是不合适的。从知识表示的角度看,知识图谱是一种采用图模型(即由点和线组成的图形)来对人类知识进行表示的知识库或者知识的集合,并且符合某种语法和语义。知识图谱的图模型是一个有向图G=O,E,这里O是一个实体或者字面量(literal)的集合,一般有以下几种:
实例和概念统称实体。E是带标签的有向边组成的集合,每条边e的标签指的是这条边指代的关系或者属性,这里关系可以看成是实例的有序对组成的集合,比如说图1中的“治疗”;属性可以看成是实例和值的有序对组成的集合,比如说“身高”,“出生日期”。
我们把知识图谱中一条知识称为三元组,即o1, e, o2的格式,这里o1和o2是实体或者字面量,而e则是带标签的边。一个三元组可以等价于一条主谓宾的知识,即o1和o2分别对应主语和宾语,e对应谓语。比如说三元组resource/2019新型冠状病毒,引起,resource/2019新型冠状病毒感染肺炎等价于说2019新型冠状病毒引起2019新型冠状病毒感染肺炎这样一条主谓宾的知识。我们知道主谓宾是一个句子的主干,所以三元组可以有效地对一个句子的主干进行表示。
讲到这里,我们需要来说说知识图谱的语法和语义。前面提到了,图只是一个数据结构和图谱的载体,但是图谱的内涵是需要考虑语法和语义。知识图谱是有理论基础的,它是建立在语义网络和本体理论上的。一般认为,知识图谱是基于语义网的标准语言RDF(见w3.org/RDF/),RDFS(见w3.org/TR/rdf-schema/)和OWL(见w3.org/TR/owl2-overview/)。中文的介绍可以看CSDN的语义网简单综述帖子、知识图谱基础之RDF,RDFS与OWL帖子,或者读一下知识图谱:方法、实践与应用专著。很多使用知识图谱技术的公司都会采用RDF的标准查询语言SPARQL来对知识图谱进行查询,也会采用一些triple store,例如Allegrograph
知识图谱的表示是基于三元组的,但是现实生活中经常需要处理的知识可能会涉及到多元组。以下面这句线日,世界卫生组织(WHO)总干事谭德塞在日内瓦的全球研究与创新论坛上宣布,将新型冠状病毒所致的疾病正式命名为“COVID-19”,这句话如果要用知识图谱的三元组来表示是做不到的。之所以这么说,是因为这里出现了宾语从句,也就是说,主语是谭德塞,谓语是宣布,而宾语是“将新型冠状病毒所致的疾病正式命名为“COVID-19”“,宾语又可以有主谓宾结构,即主语为新型冠状病毒所致的疾病,谓语为命名为,宾语为“COVID-19”。另外,如何对时间2020年2月11日,地点日内瓦,会议全球研究与创新论坛这些信息进行表示?
如果仅仅是考虑宾语从句的问题,RDF提供了一个解决方案,即reification,又见元数据表示。