本体论介绍 (2)

发布时间 2023-10-31 08:33:36作者: JasonHao

本文内容预告

本体论定义,一些常见的关于本体论的术语汇总,一些真实本体论的例子。

本体论的定义

知识图谱领域学术论文中,对本体论 (Ontology) 的定义有很多,这里只介绍其中一种: 本体论是对某个专业领域内的所共识的概念和它们之间关系的显示的和正式的细化定义 (Specialization)。本体通常包含类 (Class),属性 (Property),关系 (Relationship),和实例 (Instance)。它提供一个领域知识的正式表示,包含对领域实体的分类,建立对于领域结构化信息的共识,实现对领域知识重用和管理。

直观的理解就是,本体论是一个对领域内抽象概念 (或者类) 以及他们之间的关系的正式表示。做个不准确的类比,它像一个共用的数据库模式 (Schema),大家都按这个结构来存储数据,它扮演了知识图谱数据的模式。下面给一个简单的肺癌病人本体论:

其中红色节点是类:"病人","肺癌病人","医生","生物标记";红色节点之间的边是关系:"会诊","子类" (一个定义分类的特殊关系),"检测";蓝色节点是一个实例:"EGFR变异",他是一种"生物标记" (用类或者 type 指定类别);红色跟绿色节点之间边是属性:"病号","年龄","性别","吸烟习惯"。绿色节点定义了属性的数据类型。

上面是一个本体论的简单例子,通常构造领域的本体论是一件复杂的工作,你需要对领域内所有的概念,术语,它们之间的关系,属性有完整的认识,这通常是领域内专家的能力。此外,在构建过程中,通常会有一些纠结:比如我应该把某个术语被建模成“类”还是“属性”?我要不要继续划分更多子类?某个关系是二元还是多元?想详细了解构建本体论的过程可以参考这篇文章 https://protege.stanford.edu/publications/ontology_development/ontology101.pdf 。好在本体论可以不断地被迭代构建,因为知识图谱是一个 semi-structured 的数据结构,不要求提前定义好数据的所有类型和关系,可以根据应用需求不断去更新本体论。

本体论相关术语汇总

  • 类 (Class):一个用于表达抽象类别的术语,与它同用的术语还有 Concept (概念), Type (类别), Category (分类,相对比较少用)。比如:“病人”,“生物标记”。
  • 实例 (Instance):一个具体的类的个例,与它同用的术语还有 Individual (个体), Entity (实体)。比如:“EGFR变异” 这个具体的生物标记。
  • 关系 (Relation):两个实体之间或者类之间的连接。比如 "会诊",“检测”,“子类”。有时也叫 Property,特指对象属性 (Object Property)。还时候叫 角色(Role)。
  • 属性 (Property):用于描述概念或者实例的特征,与它同用的还有 Attribute (非正式,更常见于数据库)。这里特指数据类型属性 (Datatype Property),它是 Property 的一种。 Note: 我刚开始学习的时候一直混淆关系和属性。其实都是 Property, 前者是 Object Property, 后者是 Datatype Property。当只讲 Property 时,你就当做两者的并集就好。
  • Property 的域 (Domain):指 Property (关系或者属性) 来源的实体类型。它指定了什么类型的实例能有某个 Property。比如:“会诊”的域是 “医生”,“性别”的域是 “病人”。
  • Property 的值域 (Range):指 Property 指向的实体或者数据类型。它指定了什么类型能作为某个属性的值。比如:“检查” 的值域是 “生物标记”,“年龄” 的值域是整型 (integer)。
  • 分类法 (Taxonomy):类之间的分类关系,比如 "肺癌病人" 是 “病人” 的子类。

一些真实本体论

  • https://obofoundry.org/ 一个生物医学方向的本体论的集合
  • http://geneontology.org/docs/ontology-documentation/ 基因本体论
  • https://cso.kmi.open.ac.uk/home 计算机科学的本体论。下面是查询 “Ontology” 的结果:

关注不走丢,欢迎反馈、点赞、加星

参考

  1. Scientific Data Management & Knowledge Graph, by Maria-Esther Vidal
  2. Noy, Natalya F., and Deborah L. McGuinness. "Ontology development 101: A guide to creating your first ontology." (2001).
  3. Hitzler, Pascal. "A review of the semantic web field." Communications of the ACM 64.2 (2021): 76-83.
  4. http://ai.stanford.edu/blog/introduction-to-knowledge-graphs/