[NLP] 语义网络与知识图谱入门(二)

语义网络与知识图谱入门(二)

OWL

本体声明

owl用owl:Ontology来声明一个本体。rdf:about属性为本体提供一个名称或引用。根据标准,当rdf:about属性的值为""时,本体的名称是owl: Ontology元素的基准URI。

<owl:Ontology rdf:about="">
    <rdfs:comment>An example OWL ontology</rdfs:comment>
    <owl:priorVersion rdf:resource="http://www.w3.org/TR/2003/PR-owl-guide-20031215/wine"/>
   <owl:imports rdf:resource="http://www.w3.org/TR/2004/REC-owl-guide-20040210/food"/>
    <rdfs:label>Wine Ontology</rdfs:label>
</owl:Ontology>

rdfs:comment 提供了显然必须的为本体添加注解的能力。
owl:priorVersion 是一个为用于本体的版本控制系统提供相关信息(hook)的标准标签。
owl:imports 提供了一种嵌入机制,接受一个用rdf:resource属性标识的参数。导入另一个本体将把那个本体中的全部声引入到当前本体中.

rdfs:label对本体进行自然语言标注。

基本元素

类的定义

OWL中的所有个体都是类owl:Thing的成员。

 <owl:Class rdf:ID="PotableLiquid">
   <rdfs:subClassOf rdf:resource="#ConsumableThing" />
 </owl:Class>

上例中PotableLiquid被定义为ConsumableThing的子类。

一个类的定义由两部分组成:引入或引用一个名称,以及一个限制列表。被直接包含在类定义中的各个表达式进一步限制了该类的实例,该类的实例属于所有这些限制的交集。(这里描述的是成为某个类的必要条件,关于描述成为某个类的充分必要条件,请参见owl:equivalentClass部分。

个体的定义

类的成员就是类的个体。

先定义类。

<owl:Class rdf:ID="Grape">
 </owl:Class>

在定义本体

 <owl:Class rdf:ID="WineGrape">
   <rdfs:subClassOf rdf:resource="&food;Grape" />
 </owl:Class>

然后就可以定义个体了

<WineGrape rdf:ID="CabernetSauvignonGrape" />

这里WineGrape为类名,rdf:ID为个体名。

定义属性

一个属性是一个二元关系。有两种类型的属性:

  1. 数据类型属性(datatype properties),类实例与RDF文字或XML Schema数据类型间的关系。
  2. 对象属性(object properties),两个类的实例间的关系。
<owl:ObjectProperty rdf:ID="madeFromGrape">
   <rdfs:domain rdf:resource="#Wine"/>
   <rdfs:range rdf:resource="#WineGrape"/>
 </owl:ObjectProperty>
 <owl:ObjectProperty rdf:ID="course">
   <rdfs:domain rdf:resource="#Meal" />
   <rdfs:range rdf:resource="#MealCourse" />
 </owl:ObjectProperty>

上面例子可以看出,定义域为Wine,值域为WineGrape,也就是说,属性描述可以将两个类相关联,使得属性取值的key在Wine中,value在WineGrape中。

实体如何拥有定义的属性呢?

<owl:Thing rdf:ID="LindemansBin65Chardonnay">
   <madeFromGrape rdf:resource="#ChardonnayGrape" />
 </owl:Thing>

上面这个例子可以看出,LindemansBin65Chardonnay拥有属性madeFromGrape。并且可以根据其定义域知道他一定是葡萄酒。

例如,我们可以通过定义一个locateIn属性来将事物和他所在的地区相关联。

<owl:ObjectProperty rdf:ID="locatedIn">
   <rdfs:domain rdf:resource="http://www.w3.org/2002/07/owl#Thing" />
   <rdfs:range rdf:resource="#Region" />
 </owl:ObjectProperty>

数据类型属性定义

<owl:Class rdf:ID="VintageYear" />
?<owl:DatatypeProperty?rdf:ID="yearValue">?
? ? ?<rdfs:domain rdf:resource="#VintageYear" />?
? ? ?<rdfs:range rdf:resource="&xsd;positiveInteger"/>?
</owl:DatatypeProperty>?

数据类型的属性定义更像是类的属性,而对象的属性更像是实例的属性。

属性限制

可以使用owl:Restriction来对属性的值域进行进一步的限制。

<owl:Class rdf:ID="Wine">?
? ? ? <rdfs:subClassOf rdf:resource="&food;PotableLiquid" />
? ? ? <rdfs:subClassOf>?
? ? ? ? ? ?<owl:Restriction>
? ? ? ? ? ? ? ? <owl:onProperty?rdf:resource="#hasMaker" />
? ? ? ? ? ? ? ? <owl:allValuesFrom?rdf:resource="#Winery" />
? ? ? ? ? ? </owl:Restriction>?
? ? ?</rdfs:subClassOf>
</owl:Class>

上面例子使用了owl:Restriction来对Wine类进行限制owl:onProperty表明对哪个属性进行限制,而owl:allValuesForm则表明限制的取值范围。所以上面的例子可以解释为,所有Wine实例的hasMaker属性值必须为Winery的实例。

数量限制:

<owl:Class rdf:ID="Vintage">
? ?<rdfs:subClassOf>
? ? ? <owl:Restriction>
? ? ? ? ?<owl:onProperty rdf:resource="#hasVintageYear"/>
? ? ? ? ?<owl:cardinality?rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>
? ? ?</owl:Restriction>
? ?</rdfs:subClassOf>
</owl:Class>

使用owl:cardinality可以限制实例属性的取值数量,这里onProperty表明对hasVintageYear属性限制,owl:cardinality则限制了该属性取值为1。

其他限制还有:

owl:maxCardinality 限制数值上界

owl:minCardinality 限制数值下界

owl:hasValue 限制属性值的实例必须有hasValue的资源

<owl:Class rdf:ID="Burgundy">
? ?<rdfs:subClassOf>
? ? ? <owl:Restriction>
? ? ? <owl:onProperty rdf:resource="#hasSugar" />
? ? ? <owl:hasValue?rdf:resource="#Dry" />
? ? ?</owl:Restriction>
?</rdfs:subClassOf>
</owl:Class>

这个例子中,只有实例的hasSugar属性有Dry的资源,该实例才为Burgundy为的实例。

本体映射

表明两个类等价等价。equivalentClass两个类等价。

<owl:Class rdf:ID="TexasThings">
? ? ?<owl:equivalentClass>
? ? ? ? ? ?<owl:Restriction>
? ? ? ? ? ? ? ? ? ?<owl:onProperty rdf:resource="#locatedIn" />
? ? ? ? ? ? ? ? ? ?<owl:someValuesFrom rdf:resource="#TexasRegion" />?
? ? ? ? ? ?</owl:Restriction>
? ? ? </owl:equivalentClass>
</owl:Class>

上例表明,TexasThings类等价于一个无名类,而这个无名类加了locatedIn限制。

原文地址:https://www.cnblogs.com/aoru45/p/11483870.html

时间: 2024-10-11 07:38:00

[NLP] 语义网络与知识图谱入门(二)的相关文章

[期末复习]《语义网与知识图谱》期末复习(一)

上海大学<语义网与知识图谱>期末复习(一) 前言 这个课..不太喜欢.但是不能挂呀!平常的话感觉很难听得进去,因为没有任何先导课,直接上这个确实有点难受,那个老师感觉得到他想表达很多东西,但是有些东西确实表达不够明确,每节课听得都迷迷糊糊,毕竟是一个前沿的东西,如果不是一线战斗的老师,估计很多概念都很难讲清楚吧. 以上均胡扯,万一我有哪天真的用上了呢?(见鬼了). 下面复习主要集中在可能的考点复习上,均个人感觉哪里可能出题等等. 之前总结过rdf/rdfs.turtle和owl语法,所以这里前

[期末复习]《语义网与知识图谱》期末复习(二)

<语义网与知识图谱>期末复习(二) 这次老师发了个最终版的pdf帮助我们复习,那我就重来. 基本 语义web的组成:语义web信息的开放标准.从web描述信息中进一步获取语义的方法. 本体:本体是一种形式化的,对共享概念体系的明确而又详细的说明.提供一种共享词表.核心是分类体系. RDF使用有向图作为数据类型. RDF-Literals 即文本或者说是字符串,在rdf图种用方框表示. RDF表示 一个三元组包含 主语:URIs和空节点 谓语:URIs(通常被成为属性) 宾语:URIs.空节点或

利用关系抽取构建知识图谱的一次尝试

关系抽取 ??信息抽取(Information Extraction, IE)旨在从大规模非结构或半结构的自然语言文本中抽取结构化信息.关系抽取(Relation Extraction, RE)是其中的重要子任务之一,主要目的是从文本中识别实体并抽取实体之间的语义关系,是自然语言处理(NLP)中的一项基本任务.比如,我们可以从下面的一段话中, 鸿海集团董事长郭台铭25日表示,阿里巴巴集团董事局主席马云提的新零售.新制造中的「新制造」,是他给加上的.网易科技报导,郭台铭在2018深圳IT领袖峰会谈

搜索引擎和知识图谱那些事 (上).基础篇

这是一篇基础性文章,主要介绍搜索引擎和知识图谱的一些原理.发展经历和应用等知识.希望文章对你有所帮助~如果有错误或不足之处,还请海涵.(参考资料见后) 一. 搜索引擎 (一).搜索引擎的四个时代 根据张俊林大神的<这就是搜索引擎>这本书中描述(推荐大家阅读),搜索引擎从采取的技术划分为4个时代: 1.史前时代:分类目录的一代 这个时代成为"导航时代",Yahoo和国内hao123是这个时代的代表.通过人工搜集整理,把属于各个类别的高质量网站或网页分类,用户通过分级目录来查找

知识图谱相关会议之观后感分享与学习总结

2015年6月27日,清华大学FIT楼多功能报告厅,中国中文信息学会青年工委系列学术活动--知识图谱研究青年学者研讨会. 由于我毕设是与知识图谱.实体消歧.实体对齐.知识集成相关的,所以去听了这个报告:同时报告中采用手写笔记,所以没有相应的PPT和原图(遗憾),很多图是我自己画的找的,可能存在遗漏或表述不清的地方,请海涵~很多算法还在学习研究中,最后希望文章对大家有所帮助吧!感谢那些分享的牛人,知识版权归他们所有. 目录: 一.面向知识图谱的信息抽取技术 二.常识知识在结构化知识库构建中的应用

一文详解达观数据知识图谱技术与应用——技术直播回顾

讲师 | 桂洪冠来源 | AI科技大本营在线公开课 本文根据达观数据桂洪冠在"达观杯"文本智能处理挑战赛期间的技术直播分享整理而成,内容略有删减. ▌一.知识图谱的概述 我们先直观的来看一下什么是知识图谱,下面有一张图,从这张图里可以看到,这个图里圆圈是节点,节点之间有一些带箭头的边来连成,这个节点实际上相当于知识图谱里的实体或者概念,边连线表示实体之间的关系. 知识图谱本质上是一种大型的语义网络,它旨在描述客观世界的概念实体事件以及及其之间的关系.以实体概念为节点,以关系为边,提供一

这是一份通俗易懂的知识图谱技术与应用指南

从一开始的Google搜索,到现在的聊天机器人.大数据风控.证券投资.智能医疗.自适应教育.推荐系统,无一不跟知识图谱相关.它在技术领域的热度也在逐年上升. 本文以通俗易懂的方式来讲解知识图谱相关的知识.尤其对从零开始搭建知识图谱过程当中需要经历的步骤以及每个阶段需要考虑的问题都给予了比较详细的解释. 对于读者,我们不要求有任何AI相关的背景知识. 目录: 概论 什么是知识图谱 知识图谱的表示 知识抽取 知识图谱的存储 金融知识图谱的搭建 定义具体的业务问题 数据收集 & 预处理 知识图谱的设计

ERNIE:知识图谱结合BERT才是「有文化」的语言模型

自然语言表征模型最近受到非常多的关注,很多研究者将其视为 NLP 最重要的研究方向之一.例如在大规模语料库上预训练的 BERT,它可以从纯文本中很好地捕捉丰富的语义模式,经过微调后可以持续改善不同 NLP 任务的性能.因此,我们获取 BERT 隐藏层表征后,可用于提升自己任务的性能. 但是,已有的预训练语言模型很少考虑知识信息,具体而言即知识图谱(knowledge graphs,KG),知识图谱能够提供丰富的结构化知识事实,以便进行更好的知识理解.简而言之,预训练语言模型只知道语言相关的「合理

知识图谱基础之RDF,RDFS与OWL

https://blog.csdn.net/u011801161/article/details/78833958 https://blog.csdn.net/baidu_15113429/article/details/82144731 RDF:单纯的三元组,没有本体概念,如果构建一个公司的知识图谱,公司的董事和中层以及普通员工都是员工,你在查找员工的时候,就需要把董事以及各个职位的人都查找出来. RDFS:会添加本体,例如员工下面有董事以及中层和普通员工,这样就能直接通过抽象的员工而不用访问