第二部分 知识表示

第3章 开放知识图谱

3.1 知识图谱简介

知识图谱是由节点和边组成的语义网络,如图3-1所示。节点可以是实体,如一个人、一本书等,也可以是抽象的概念,如人工智能等。边可以是实体的属性,如姓名、书名,也可以是实体之间的关系,如朋友、配偶。

知识图谱的早期理念来自Web之父Tim Berners Lee于1998年提出的Semantic Web,其最初理想是把基于文本链接的互联网转化成基于实体链接的语义网。语义网十余年的发展积累了大量语义知识库,如Freebase、DBpedia、Yago、WikiData等。谷歌在吸收语义网相关成果的基础上于2012年推出了基于知识图谱的搜索引擎产品。随后,知识图谱逐步在语义搜索、智能问答、辅助语言理解、辅助大数据分析等很多领域发挥出越来越重要的作用。

img

图3-1 知识图谱是由节点和边组成的语义网络

与传统专家系统主要依靠专家手工获取知识不同,现代知识图谱的显著特点是规模巨大,无法单一依靠人工和专家构建。传统的知识库,如由Douglas Lenat从1984年开始创建的常识知识库Cyc仅包含700万条事实描述(Assertion);Wordnet主要依靠语言学专家定义名词、动词、形容词和副词之间的语义关系,目前包含大约20万条语义关系;由著名人工智能专家Marvin Minsky从1999年起开始构建的常识知识库ConceptNet依靠互联网众包、专家创建和游戏三种方法,但早期ConceptNet数据规模在百万级别,最新的ConceptNet 5.0也仅包含2800万个资源描述框架(Resource Description Framework,RDF)三元组。现代知识图谱,如谷歌和百度的知识图谱,都已经包含超过千亿级别的RDF三元组;阿里巴巴于2017年8月份发布的仅包含核心商品数据的知识图谱也已经达到百亿级别;DBpedia已经包含约30亿个RDF三元组,多语种的大百科语义网络BabelNet包含19亿RDF三元组,Yago 3.0包含1.3亿个RDF三元组,Wikidata已经包含4265万条数据条目,RDF三元组也已经达到数十亿级别;截至目前,开放链接数据项目Linked Open Data 统计了其中有效的2973个数据集,总计包含大约1494亿个RDF三元组,知识图谱的规模化发展如图3-2所示。

img

图3-2 知识图谱的规模化发展

现代知识图谱对知识规模的要求源于“知识完备性”难题。冯·诺依曼曾估计单个个体大脑中的全量知识需要2.4×1020bits来存储。客观世界拥有不计其数的实体,人的主观世界更是包含有无法统计的概念,这些实体和概念之间又具有很多的复杂关系,导致大多数知识图谱都面临知识不完备的困境。在实际领域的应用场景中,知识不完备也是困扰大多数语义搜索、智能问答、知识辅助的决策分析系统的首要难题。