且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《中国人工智能学会通讯》——7.21 什么是知识图谱

更新时间:2022-10-02 12:34:24

7.21 什么是知识图谱

“知识图谱”(Knowledge Graph)是最近几年才出现的一个相对新的概念,用来指代大规模的,用来储存人类知识的数据集。知识图谱的创建可以依靠人工或者是半自动方法,例如 Freebase、YAGO 和 DBPedia;也可以是完全自动的,例如OpenIE [1] 和 NELL [2] 。为了方便计算机使用,知识图谱通常被存储成半结构化图的形式。图 1 展示了在 Freebase 中的一个子图。图中,每个结点代表一个实体(Entity);边则将实体与它的的属性或者其他相关实体相连;属性或者与其他的实体的关系,则由边的类型表示。比如说在图1里, “Directed_By”这条边表示电影“The Brothers Grimn”是由“Terry Gilliam”导演执导的。这两个结点也都带有各种属性,例如别名 (Alias)、分类 (Category)和文本描述 (Textual Descriptions)。《中国人工智能学会通讯》——7.21 什么是知识图谱
这种图结构一般被存储成通用的,主语 - 动词 -宾语,RDF 三元组。每个 RDF 三元组对应一条边。边的起点是某个实体。边上存储的关系类型可以是由专家定义的,例如在 Freebase 和 DBPedia 中;也可以是自动抽取的,例如在 NELL 和 OpenIE 中。边的结尾可以是一个相关实体,也可以是某种属性。

与传统的控制词表(Controlled Vocabulary)相比较,知识图谱能够更好地表示知识。控制词表一般是由少数专家编纂的。虽然这样会非常精准,但规模也很小。而知识图谱可以被自动构建,规模就能非常大。比如说,医学上的 MeSH 控制词表包括约 27 000 个医学名词,而 Freebase 里面有5 800 万的实体。同时,传统的控制词表一般是基于分类树(Ontology)的树状结构;而知识图谱一般是一张图,通常也会包含更多类别的语义信息。