什么是计算机科学中的“本体论”

article/2025/9/6 15:41:28

最近看用户画像,里面提到了本体论。故把知乎一个回答放于此地。

一、本体的概念

本体的概念有两层意思,一层是哲学层面的意思,一层是引申到信息科学中的语义层面的意思。
举个最通俗的例子来解释一下这两层意思,我们就拿苹果来举例。关于苹果的描述可以有很多,这里取三个

  1. 苹果
  2. apple
  3. (苹果的图片)

 


也就是说,中文的“苹果”,英文的“apple”和“苹果的图片”都可以让人知道是在表示苹果这样东西。那么在哲学层面,苹果这样东西就是亚里士多德口中的“实体”,巴门尼德口中的“存在”,和本体论中所说的“本体”。而“苹果”,“apple”和“苹果的图片”就统统是描述这个“本体”的符号。
因此通过上面这个例子我们就可以体会到,“本体”这个概念在哲学层面上是形而上的,是只可意会不可言传的,因为所有的描述都成为了“本体”的外在符号,我们世界上的所有图像、语言、我们看到的、听到的、感受到的,都成为符号到本体的某种映射。

 

那说完了哲学层面的意思,我们再看看信息科学中“本体”的意思,也就是题主问的语义web中“本体”的意思。
既然我们都已经理解了哲学层面上所有的符号到本体存在映射,那么语义层面就很好理解了,我们的主要目的就是要建立这样一种映射,举个简单的例子,我们就是希望把
{“THU”,"Tsinghua", "Tsinghua University","清华","清华大学"}
这个符号集都映射到“清华大学”这个“本体”上来。再深一层,我们建立了本体的集合,就可以去发掘本体之间深层的关系,有可能是“属性-本体”的关系,有可能是“子类-本体”的关系,也有可能是“本体-本体”的对立或者是近似关系。描述语义层面的本体关系的语言就是RDF和OWL等。

再深一层的话,在建立好本体之间的关系之后能干什么呢?我们就可以进行语义层面上的推理了啊,推理的结果可以映射回语言层面形成新的组合。举个例子:

  1. 我们把各民族表示苹果的语言都映射到“苹果”这个本体上,这是第一步本体映射;
  2. 苹果这个“本体”可以跟“名词主体”建立隶属关系,这是第二步建立本体之间的逻辑关系;
  3. “名词主体”可以跟在“动词主体”之后,形成动宾结构,我们在这个动宾结构之上,经过反映射,就可以实现各语种之间的翻译,这是逻辑推理和实际应用。

 

其实不仅限于语义Web,很多机器学习、自然语言处理和人工智能的方法都在做本体映射和推理,只是表现的形式不同罢了,所以也建议IT狗们能读一读“本体论”,“认识论”的书籍,说不定能有更深的认识。

二、常见的本体构成要素包括:

    个体(实例):基础的或者说“底层的”对象。
    类:集合(sets)、概念、对象类型或者说事物的种类。
    属性:对象(和类)所可能具有的属性、特征、特性、特点和参数。
    关系:类与个体之间的彼此关联所可能具有的方式。
    函数术语:在声明语句当中,可用来代替具体术语的特定关系所构成的复杂结构。
    约束(限制):采取形式化方式所声明的,关于接受某项断言作为输入而必须成立的情况的描述。
    规则:用于描述可以依据特定形式的某项断言所能够得出的逻辑推论的,if-then(前因-后果)式语句形式的声明。
    公理:采取特定逻辑形式的断言(包括规则在内)所共同构成的就是其本体在相应应用领域当中所描述的整个理论。这种定义有别于产生式语法和形式逻辑当中所说的“公理”。在这些学科当中,公理之中仅仅包括那些被断言为先验知识的声明。就这里的用法而言,“公理”之中还包括依据公理型声明所推导得出的理论。

    事件 (哲学):属性或关系的变化。
 


http://chatgpt.dhexx.cn/article/8w1El7I1.shtml

相关文章

本体建模学习笔记

目录 1. 语义网 & 语义网络 1.1 链接数据与知识图谱 的区别 1.2 本体构建的两种方式 1.3 知识图谱数据的来源 0. RDF、OWL 与RDFS 0.1 RDF序列化 0.2 关系 / 属性 0.3 RDFS词汇 0.4 本体映射词汇(Ontology Mapping) 2. Protege实现本体建模…

知识元与知识本体

元数据(Metadata)就是“关于数据的数据”,是对数据进行组织和处理的基础。元数据法就是对信息单元及其集合进行规范描述从而形成元数据,并依其将分布式的信息资源整合成有机信息体系的基准、方法和工具。主题词表:也称叙词表。它是…

本体语言 OWL

万维网本体语言OWL2 文章目录 万维网本体语言OWL2一、引言二、本体语言的需求三、OWL2和RDF/RDFS的兼容性3.1 OWL2 Full:基于RDF的语义3.2 OWL2 DL:直接语义 四、OWL语言五、OWL2 概要六、实验 OWL的构造七、总结 一、引言 通俗的讲,RDF被限…

本体概述

目录1.定义2.本体的目标和作用3.本体构成要素4.领域本体与上层本体5.本体语言6. 构造Ontology 的规则 7.本体在信息检索的应用 1.定义 – 1991/Neches 等:给出构成相关领域词汇的基本术语和关系,以及利用这些术语和关系构成的规定这些词汇外延的规则…

本体 摘抄笔记

一、本体的一些介绍 (来源:https://blog.csdn.net/shendeguang/article/details/8241164) 1. 本体论语义学的特点: 本体论语义学与其他人工智能理论、自然语言加工系统相比有自己的一些鲜明特点。 其一,它强调对意义…

图构建:领域本体设计原则与动态本体

图构建:领域本体设计原则与动态本体 前文《思考总结:领域知识图谱平台构建与业务应用》中提到:“本体设计是图应用中的重中之重,一切的图展示、图计算、图分析、图挖掘、图模式匹配…的基础在图构建,而图构建的核心是…

常用本体建模工具

常用本体建模工具: Apollo、OntoStudio、TopBraid Composer、Semantic Turkey、Knoodl、Chimaera、OliEd、WebODE、Kmgen和DOME Protg Protg[1]是一款由斯坦福大学编写并维护的开源本体建模和编辑工具,其支持Web版本和PC版本,使用OWL语言…

本体(Ontology)

我是在撰写毕业论文中接触到知识表示方面的内容,有时需要理论与实践相结合,关于这方面的理论知识学习,除了网页资料、书籍、另外推荐一个网站:熊猫学术(https://sc.panda321.com/),可以查阅很多相关的学术论文&#xf…

知识图谱初步学习(一)——本体+Protege新手学习

文章目录 前言(本体详解)1.本体概念2.本体分类3.本体组成4.本体构建方法5.本体构建的原则6.本体应用 一、protege简介二、软件使用步骤1.安装2.使用3.案例 三、问题解决方案汇总 前言(本体详解) 在开始学习知识图谱的过程中&…

本体调研

1.1本体概念 本体是用于描述一个领域的术语集合,其组织结构是层次结构化的,可以作为一个知识库的骨架和基础。 本体不等同于个体,它是相应领域内公认的概念集合。 1.2 本体分类 依照领域依赖程度: (1)顶层本体&…

知识图谱初步学习(零)——本体是什么

知识图谱初步学习(零)——本体是什么 文章目录 知识图谱初步学习(零)——本体是什么前言一、 哲学层面理解二、 引申到语义层面理解三、学术层面四、其他层面- 术语- 语义网 五、本体与类、本源、实体、符号的区别六、用语义三角形…

本体(Ontology)概述

认识本体 本体(Ontology)的概念源自于哲学领域,在哲学中的定义为“对世界上客观事物的系统描述,即存在论”。哲学中的本体关心的是客观现实的抽象本质。而在计算机领域,本体可以在语义层次上描述知识,可以看…

区块链 Vs. 互联网,创新在哪里?

本文转载自共识未来公众号 引言:最近关于区块链革命的提法少了很多,我们很少再听到“区块链即将颠覆互联网”的提法,这似乎也寓意着区块链技术(加密技术)正在进入一个理性发展的阶段,如果按照Gartner的技术…

js提交form表单

【背景】 前段时间将边用边学javascript.pdf书看完了,其中之前最不熟悉的也是这次印象最深刻的就是提交form表单,所以在这里总结一下js提交form表单,以及表单中对应的一些扩展知识O(∩_∩)O~ 【概念】 表单在网页中主要负责数据采集功能;一个表单偶三个基本组成部分&am…

JavaScript笔记-点击button提交form表单

功能如下&#xff1a; 点击购买后&#xff0c;点击确定。 确定调用了一个js函数&#xff0c;提交form表达给后端 代码如下&#xff1a; <div class"modal-footer"><button type"button" class"btn text-white border bg-dark" data-b…

yeild函数

1、把函数变成一个生成器 2、起到延迟的作用&#xff0c;在需要的时候产生结果&#xff0c;节省资源 3、声明一个序列不同的是生成器在不使用的情况下&#xff0c;是不占内存的 def getNum(n):i 0while i < n:print(i)i 1getNum(5)def getNum(n):i 0while i < n:retu…

Python关键字------yeild

文章目录 yeild例子 在阅读python程序源码的时候&#xff0c;发现yeild关键字&#xff0c;产生了疑惑&#xff0c;看了很多博客感觉没有能够讲清楚的。 yeild yeild其实可以理解成return&#xff0c;不够有点区别的是return是不会执行下面的语句&#xff0c;而yeild在满足一定…

join(),sleep() 和 yeild() 方法的区别

目录 1、join() 方法&#xff1a;释放锁 2、sleep() 方法&#xff1a;不释放锁 3、yeild() 方法&#xff1a;不释放锁 1、join() 方法&#xff1a;释放锁 使用场景&#xff1a; 等待调用 join() 方法的线程结束之后&#xff0c;程序再继续执行&#xff0c;一般用于等待异步…

C#中关于Task.Yeild()的探究

在与同事讨论async/await内部实现的时候&#xff0c;突然想到Task.Yeild()这个函数&#xff0c;为什么呢&#xff0c;了解一点C#async/await内部机制的都知道&#xff0c;在await一个异步任务&#xff08;函数&#xff09;的时候&#xff0c;它会先判断该Task是否已经完成&…

python yeild next使用注意事项

关于得带的基本使用方法&#xff0c;可以往上查一下。这里主要记录下在编码中可能遇到的报错&#xff0c;和处理方式。 import timedef func3():for i in range(5):yield iwhile True:a next(func3())print(a)time.sleep(1) 如果使用上面这种取值方式&#xff0c;你会发现会…