Knowledge Graph知识图谱—9. Knowledge Modeling

news2024/11/23 12:49:11

9. Knowledge Modeling & Ontology Engineering

How should the knowledge in a KG be modeled?
– Which classes of entities do we have?
– Which relations connect them?
– Which constraints hold for them?
→ these questions are defined in the ontology of the knowledge graph

How we have built ontologies so far
– Read the requirements
– Pick a starting point at random
– Start playing around in Protégé
– Trial and error driven

That was rather “Ontology Hacking” than “Ontology Engineering”

How to build ontologies?
Methodologies

How to build good ontologies?
– Best Practices
– Design Patterns
– Anti Patterns
– Top Level Ontologies

Methodologies
方法论(Methodology)是指研究、学科或领域内,用于解决问题、推进研究或实施工作的一套原则、规范、程序、技术和方法的体系。它是一种系统性的、有组织的方法体系,用于引导人们在特定领域或活动中进行系统、科学、可重复的工作。

9.1 The SECI Model

Two type of knowledge
Tacit Knowledge
intuitive, hard to formalize
e.g., riding a bike, playing improvised music
Explicit knowledge
formalized
e.g., kinematics, music theory
Tacit knowledge is created from explicit knowledge and vice versa. Knowledge creation is usually a cooperative process
Knowledge creation
SECI 模型,也被称为知识转换模型,它描述了组织内知识创造和转换的过程。SECI 代表社会化(Socialization)、外部化(Externalization)、结合(Combination)、内部化(Internalization)。
社会化(Socialization):
这种模式涉及通过直接互动和共同经验分享隐性知识。隐性知识是个人的、难以形式化的,比如技能、洞察力和直觉。社会化发生在个体相互作用、观察和相互学习的过程中。这个模式强调通过社交活动(如导师制度、学徒制度和共同经验)进行学习。
外部化(Externalization):
外部化是将隐性知识表达成明确概念的过程。它涉及将个体的隐性知识转化为可以被传达和理解的共享概念和模型。这种模式通常采用叙述、隐喻或类比的方式,将内隐的知识转化为明确、可传达的形式。
结合(Combination):
在结合模式中,明确知识被组合和组织。这涉及对明确知识的系统收集、分类和重组。结合的目标是通过以有意义的方式组织现有的明确知识来创造新的知识。这个模式通常通过创建数据库、手册或其他结构化的知识库来实现。
内部化(Internalization):
内部化是将明确知识体现为隐性知识的过程。在这个模式中,个体获得明确知识并通过将其应用和整合到个人隐性知识中来内部化。这涉及通过实践、操作和获得个人经验来学习。内部化通过将明确知识重新转化为个体的隐性知识来完成循环。

9.1.1 Grüninger & Fox’s Methodology

Grüninger & Fox’s Methodology 是一种用于本体建模的方法论,特别关注于描述和表示领域知识的形式化。
Grüninger & Fox’s Methodology

9.1.2 Grüninger & Fox’s Methodology

Grüninger & Fox’s Methodology
Step by step from less to more formal ontologies
Stepping back is allowed
Documentation is produced along the way
Glossary: Terms, descriptions, synonyms, antonyms
Taxonomy: Sub class relations
Ad hoc binary relations: a.k.a. ObjectProperties
Concept dictionary contains: terms, descriptions, relations, instances (optional)

9.1.3 OntoClean

Methodology
A collection of analysis methods and tests
– Does my class hierarchy make sense?
Rule1: Rigidity
OntoClean distinguishes rigid and non-rigid classes
If an entity belongs to a rigid class, this holds once and for all, i.e.: if the entity does not belong to that class anymore, it ceases to exist
This does not hold for non-rigid classes
Examples for rigid classes: Person, mountain, company
Examples for non-rigid classes: Student, stock company, town, Caterpillar and butterfly

OntoClean rule: Rigid classes must not be subclasses of non-rigid classes

OntoClean1
OntoClean2

Other typical rigidity problems
PhysicalObject > Animal
An entity may die and thus be no longer an animal. If we consider “living” as necessary for animals. The physical object (i.e., the body), however, still exists.

Rule2: Identity
Identity1

Let us look at some instances
– :1h a :Duration . :2h a :Duration . …
– :Mo10-11 a :Interval . :Mo11-12 a :Interval . …
Obviously, there are more instances of Interval
than there are instances of Duration [contradiction]

How do we know that two entities are the same?
Some classes have criteria for identity
• Immatriculation number of students
• Tax number for citizens and companies
• Country codes
• …

Identity2

Identity3

Identity4

Observation: The identity criteria are of the two classes are different

OntoClean rule: If p is a subclass of q, then p must not have any identity criteria that q does not have

Identity5

Identity6

Rule3: Unity
For some classes, entities can be decomposed into instances of the same class. We call them “anti unity classes
Examples:
An amount of water into two amounts of water
A group into two sub groups

Other classes only have “whole” instances → “unity classes”, e.g., people, cities
For “whole” individuals, there is always a functional relation unambiguosly relating a part to the whole
Examples:请添加图片描述

relating a body part to a person
relating a district to a city

Unity1

Unity2

Unity3

OntoClean rule: Unity classes may only have unity classes as their subclasses. Anti unity classes may only have anti unity classes as their subclasses
In our example:
– OrganicMatter is an anti unity class
– Animal is a unity class

Unity4

Summarizing OntoClean
A number of tests that can be carried out on ontologies
– Rigidity, Identity, Unity
– Reveal possible mismodeling issues
– Avoid nonsensical reasoning consequences

9.2 Ontology Design Patterns

Origin of the term “design pattern”
Architecture
– Recurring problems
– Standard solutions with certain degrees of freedom

Example
– Problem: rain falls into the building
– Solution: roof
• Degrees of freedom: shed roof, saddle roof, hip roof…

Types of Ontology Design Patterns

  • Presentation Patterns, e.g., naming conventions
  • Logical Patterns: Domain independent, Always specific to a language (e.g., OWL DL)
  • Content Patterns: Domain dependent and Language independent
  • Transformation Patterns (e.g., how to transform an ontology from one language to the other)

9.2.1 Presentation Patterns

Presentation Patterns

9.2.2 Logical Patterns

Logical Patterns

9.2.3 Content Pattern

Content Pattern

9.2.4 Anti-Patterns

Things that should not be done. But are often done and cause some problems.
Possible causes
– Not thought about each and every consequence
– Little/wrong understanding of RDF/OWL principles

Rampant Classism
Anti Pattern: Rampant Classism1
Anti Pattern: Rampant Classism2

How to distinguish classes and instances?
For every class, there must be (one or more) instance(s)
– What should be instances of Goethe?
– Are there any sentences like “X is a Goethe”?
Sub class relations must make sense
– Pattern: “Every X is a Y”
– “Every Goethe is a Writer”?
No, so Goethe is not a sub class of writer.

Exclusivity
Exclusivity1

Exclusivit2

What is happening here?
Ontology was built exclusively for a domain, e.g., cities. Breaks if used in another context (here: countries)

Semantic Web Principles
AAA (Anybody can say Anything about Anything) i.e., statements should work in different contexts

Another example:
Every person is married to at most one other person

Exclusivity3

9.3 Classification of Ontologies

Classification of Ontologies

9.3.1 Top Level Ontologies

Top Level Ontologies (Very general)

  • Domain independent
  • Task independent
    Goal
  • Reuse
  • Semantic clarity
  • Modeling guidance (i.e., avoid bad modeling)
  • Interoperability

Aristotle’s Ontological Square
One of the oldest top level ontologies
Aristotle's Ontological Square

Basic Categories for Top Level Ontologies
Abstract vs. concrete entities
Abstract entities do neither have a temporal nor a spatial dimension, eg. Numbers, Units of measure
Concrete entities do at least have a temporal dimension,i.e., a time span at which they exist (spatial is optional), e.g. Things (books, tables, …), Events (lectures, tournaments, …)

3D vs. 4D view
3D view: Things extend in space. At every point in time, they are completely present

4D view: Things extend in time and space. At a given point in time, they can also be partially present

Actual vs. possible entities
Actualism: only existing entities are included in an ontology
Possibilism: all possible entities are included in an ontology

Co-location
Can multiple entities exist in the same place?
This should be easy…
– 3D view: no
– 4D view: yes, but not at the same time
…but it is not that trivial

Example: a statue and the amount of clay from which it was made
Do statues even exist?
– Or is there only clay in the shape of a statue?
– …and if both exist, should they belong to the same category?

– Another example: a hole in a piece of Swiss cheese
Do holes even exist? Or are there only perforated objects?

John Sowa’s Top Level Ontology
An “older” top level ontology (1990s)
Three distinctions form twelve basic categories

Physical vs. Abstract
Physical: Things that exist in time (and potentially in space)
Abstract: Things that do not

Continuant vs. Occurent
Continuant: Things that exist as a whole at each point in time
Occurent: Things that partially exist at each point in time (a lecture)

Independent vs. Relative vs. Mediating
Independent: Things that can exist on their own
Relative: Things that require other things to exist
Mediating: “Third” things that relate two others

John Sowa's Top Level Ontology1

John Sowa's Top Level Ontology2

DOLCE
Descriptive Ontology for Linguistic and Cognitive Engineering
One of the most well known top level ontologies

Particulars, universals, and quantities
Universals (think: categories): can have instances
– “City”, “University”
Particulars (think: individuals): cannot have instances
– “Mannheim”, “Mannheim University”
Qualities: describe an instance
– e.g., color of a book, height of a person
– Are neither particulars nor universals
– Cannot exist without an instance

A top level ontology of particulars
For both actual and possible entities (possibilistic view)

4D: Some entities may have a temporal dimension

Co-location
Is allowed
restriction: not two entities of the same kind at the same spatial and temporal location
Not: two statues But: a statue and an amount of clay

Top Hierarchy of DOLCE
Top Hierarchy of DOLCE

Endurants vs. Perdurants
Endurants exist in time
Think: things like people, books, … May also be non-physical: organizations, pieces of information
Are always fully present at each point in time during their existence

Perdurants “happen” in time
Think: events and processes
Only exist partially at each point in time during their existence, i.e., previous and future parts of the perdurant may not (yet|anymore) exist at a given point in time

Qualities are attached to endurants and perdurants

Abstracts: numbers, units of measure, etc.

Endurants take part in perdurants
– Actively (Reader and reading)
– Passively (Book and reading)
– DOLCE defines various types of participation

Endurants only consist of endurants, perdurants only consist of perdurants
– Books consist of pages, cover, …
– Reading consists of perceiving, turning pages, …

Endurants in DOLCE
Endurants in DOLCE1

Endurants in DOLCE2

Distinguishing Endurants
Amount of Matter vs. Phyiscal Object
Amount of Matter is “mereologically invariant”, i.e., a part of an AoM is still an AoM
• A part of “some water” is still “some water”
• But a part of a cup is (likely) not a cup
– cf. unity/anti unity in OntoClean

Features
Cannot exist without a physical endurant, e.g., holes, fringes

Perdurants in DOLCE
Perdurants in DOLCE

Distinguishing Perdurants
Distinguishing Perdurants1
Distinguishing Perdurants2

Qualities
Basic distinction
Quality is a property of an entity
Quality space is the set of possible values of the quality

Qualities need entities
In general, all particulars can have qualities. Qualities only exist as long as the entity exists

Qualities

9.3.2 Other Top Level Ontologies

SUMO: Suggested Upper Merged Ontology
– Around 1,000 classes
– Strong formalization in KIF (Knowledge Interchange Format)
Cyc: stems from EnCyClopedia
– Own language (CycL)
– Top Level and deep general ontology
– ~250,000 classes
– OpenCyc: discontinued, but still available
PROTO: PROTo ONtology
– General top level+ upper level, different domain extensions
– ~300 classes, ~100 relations
Comparison

Example: Usage of DOLCE for DBpedia1

Example: Usage of DOLCE for DBpedia2

Wrap-Up

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1305009.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【智能家居】九、停车场车牌识别功能点(回调、解耦)

一、翔云 人工智能开放平台(车牌识别) 二、cJSON 库 三、实现代码 四、回调函数 五、人脸识别和车牌识别获取数据的区别 六、异步网络请求和同步网络请求的区别 七、解耦 一、翔云 人工智能开放平台(车牌识别) 翔云 人工智能开放…

vxe-table 右键菜单+权限控制(v3)

1.menu-config 是用于配置右键菜单的属性。通过 menu-config 属性,定义右键菜单的内容、显示方式和样式。 通过 menu-config 属性配置了右键菜单,其中的 options 属性定义了右键菜单的选项。用户在表格中右键点击时,将会弹出包含这些选项的自…

数据库系统原理与实践 笔记 #12

文章目录 数据库系统原理与实践 笔记 #12事务管理和并发控制与恢复(续)并发控制SQL-92中的并发级别基于锁的协议基于锁的协议的隐患锁的授予封锁协议两阶段封锁协议多粒度粒度层次的例子意向锁类型相容性矩阵多粒度封锁模式基于时间戳的协议基于时间戳协议的正确性基于有效性检…

mysql:用SHOW CREATE TABLE tbl_name查看创建表的SQL语句

https://dev.mysql.com/doc/refman/8.2/en/show-create-table.html 可以用SHOW CREATE TABLE tbl_name查看创建表的SQL语句。 例如,SHOW CREATE TABLE test_table;表示查询创建test_table表的SQL语句:

关于电动机智能综合保护器在煤矿内的应用分析-安科瑞 蒋静

摘要 :介绍了矿用电动机智能综合保护器系统的总体结构,采用直接将交流信号整流、滤波、调理、采样的方式变为微控制器能够识别的直流信号,通过对微控制器采集到的直流信号编程判断来实现对电动机的相关保护控制、故障显示与报警以及与上位机的…

Jmeter性能测试:ForEach控制器的用法解析(含视频讲解)

引言 最近我在进行JMeter性能测试时遇到了一些问题,特别是在使用ForEach控制器时感到有点棘手。 但是经过不断地摸索和实践,终于成功地掌握了这个神奇的工具,提高了我的测试效率。因此,今天我想和大家分享我的经验,让…

优思学院|如何建立公司运营指标体系?如何推行六西格玛改进运营指标?

关键绩效指标 (KPI) 是测量您团队或组织朝重要商业目标进展表现如何的量化指标,组织会在多个层面使用 KPI,这视乎您想要追踪何指标而定,您可以设定全组织的、特定团队的、或甚至是个人 KPI。 良好的KPI能让公司管理者掌握组织的营运是否进度…

【(较大规模)作业车间调度JSP】通过OR-Tools的区间变量建模求解的效率对比实验

文章目录 问题描述Python调用OR-Tools建模求解(实验一)1. 声明问题的模型2. 创建区间变量3. 创建约束条件4. 求解模型5. 基于 plotly 展示甘特图 不同场景下的求解效率对比实验二:工件的工序数有差异实验三:消除工件的加工时长差异…

php实现个性化域名(短网址)和个性化登录模版的解决方案

在PHP中,个性化域名通常指的是根据用户或业务需求动态生成具有特定规律的子域名。实现个性化域名的方法主要依赖于服务器配置和路由规则。下面是一些基本的步骤和考虑因素,以帮助你了解如何个性化域名,并了解这样做的好处。 如何实现个性化域…

Cohort Analysis是什么

Cohort Analysis 什么是Cohort Analysis Cohort Analysis 可以翻译成 群体分析 或 分组分析,其实是一种通过细分来研究数据的方法。如下表就是一个从每日新增维度细分的 Cohort Analysis 表格。 第一列是分组的维度,下表以用户新增的日期作为细分的维…

Docker安装与使用

Docker 1.初识Docker Docker如何解决大型项目依赖关系复杂,不同组件依赖的兼容性问题? Docker允许开发中将应用、依赖、函数库、配置一起打包,形成可移植镜像Docker应用运行在容器中,使用沙箱机制,相互隔离 Docker…

“未来医疗揭秘:机器学习+多组学数据,开启生物医学新纪元“

在当今的数字化时代,科技正在不断地改变着我们的生活,同时也为医疗领域带来了巨大的变革。随着机器学习的快速发展,以及多组学数据在生物医学中的应用,我们正开启一个全新的医疗纪元。这个纪元以精准诊断、个性化治疗和高效康复为…

体验即营销,如何用体验家实现高效的线索细分?

什么是线索细分? 线索细分,指的是将收集而来的线索根据用户行为、特征等信息划分成若干个小组,从而方便市场、运营等部门开展更精细化的营销动作。 为什么要进行线索细分? 不同的客户为企业带来的价值不同。许多情况下&#xff0c…

智能无人零售:革新零售消费体验的未来

智能无人零售:革新零售消费体验的未来 在当今数字化时代,智能无人零售正以惊人的速度改变着我们的购物方式和消费体验。这一新兴领域的发展,为消费者带来了前所未有的便利和个性化选择。 智能无人零售是指利用先进的智能技术和自动化系统&…

(十六)Flask之蓝图

蓝图 Flask蓝图(Blueprint)是Flask框架中用于组织和管理路由、视图函数以及静态文件的一种机制。它提供了一种将应用程序拆分为更小、可重用组件的方式,使得项目结构更清晰,代码更易于维护。 使用Flask蓝图,可以将相…

git强制回滚,远程强制更新,git pull强制更新

注意:这里是强制回滚,回滚后,之后历史的就没有了,慎用。 本地强制回滚 强制回滚到上一个版本 git reset --hard HEAD^强制回滚上上个版本 git reset --hard HEAD^^git log查看版本 git log --prettyonelinegit log --prettyf…

系列十、SpringBoot + MyBatis + Redis实现分布式缓存(基于注解方式)

一、概述 上篇文章 系列九、SpringBoot MyBatis Redis实现分布式缓存 介绍了基于xml方式实现分布式缓存的效果,当前大家使用的技术栈基本是springboot各种框架的组合,而springboot显著的一个特点就是去xml配置,那么在无xml配置的情形下&…

Java实现选择排序及其动图演示

选择排序是一种简单直观的排序算法。它的基本思想是每次从未排序的元素中选出最小(或最大)的元素,然后将其放到已排序的序列的末尾。具体步骤如下: 首先,找到未排序序列中的最小(或最大)元素&a…

关于代码质量度量和分析的一些总结

最近团队做CMMI3认证,这期间涉及到了代码质量度量。花了点时间做了总结,分享给大家。 先看一张整体的图,然后逐个指标展开说明。 一、单元测试覆盖率 单元测试覆盖率(Coverage)是一个度量单元测试覆盖了多少代码的指标…

Ubuntu系统关闭防火墙的正确方式

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…