分类目录:《知识图谱从入门到应用》总目录
相关文章:
· 知识图谱的知识表示:基础知识
· 知识图谱的知识表示:符号表示方法
· 知识图谱的知识表示:向量表示方法


在前面的文章中已经多次提到,知识图谱采用图的方式描述和表达知识,相比于简单图,能建模更加复杂的事物关系,但比起形式化逻辑,又免于复杂的逻辑约束,使得知识的获取过程变得更加容易。但在知识图谱的实际实践中,不同的应用场景会对知识的建模采用不同表达能力的图表示方法。例如有些应用场景仅采用最简单的无向图,通常适合于对建模要求不高,偏于数据挖掘类的应用场景。知识图谱表示应用最多的是有向标记图(Directed Labelled Graph)。最常用的两种有向标记图模型,一种叫属性图(Property Graph),另外一种是RDF图模型,如下图所示:

但有向标记图的表达能力依然是有限的,在很多专业领域,如医学本体构建等,需要更为复杂的关系语义的表示,例如描述对称关系、自反关系、传递关系等,这就需要用到OWL等本体描述语言。本文重点介绍知识图谱领域三种最常用的知识表示方法——属性图、RDF图模型和OWL本体语言。

属性图

属性图是图数据库Neo4J实现的图结构表示模型,在工业界有广泛应用。属性图的优点是表达方式非常灵活,例如,它允许为边增加属性,非常便于表示多元关系。属性图的存储充分利用图的结构进行优化,因而在查询计算方面具有较大优势,关于这一点将在知识图谱的存储文章中做更加具体的介绍。属性图的缺点是缺乏工业标准规范的支持,由于不关注更深层的语义表达,也不支持符号逻辑推理。在属性图的术语中,属性图是由顶点(Vertex)、边(Edge)、标签(Label)、关系类型和属性(Property)组成的有向图。顶点也称为节点(Node),边也称为关系(Relationship)。在属性图中,节点和关系边是最重要的表达要素。节点上包含属性,属性可以以任何键值形式存在。关系边连接节点,每条关系边都有拥有一个方向、一个标签、一个开始节点和一个结束节点。关系边的方向的标签使得属性图具有语义化特征。和节点一样,关系边也可以有属性,即边属性,可以通过在关系边上增加属性给图算法提供有关边的元信息,如创建时间等。此外还可以通过边属性为边增加权重和特性等其他额外语义。

RDF图模型

RDF是国际万维网联盟W3C推动的面向Web的语义数据标准,所以RDF本身的定位首先是数据交换标准规范,而非存储模型。RDF的基本组成单元是三元组,即(s,p,o),例如,可以用一条三元组来描述<浙江大学, 位于, 杭州>。一条三元组代表关于客观世界的逻辑描述或客观事实。多个三元组头尾相互连接,就形成了一个RDF图。本质上,RDF图也是一个有向标记图。RDF还提供了基础的表达构件用于定义类、属性等Schema层的术语。例如,domainrange用于定义某个关系的头尾节点类型,subClassOfsubPropertyOf用于定义类及属性之间的层次关系等。有了RDFS,已经可以实现最简单的符号推理。如下图所示,如果将谷歌定义为一家人工智能公司,同时也知道人工智能公司是高科技公司,就可以推理得出谷歌也是一家高科技公司。这类简单的推理已经可以减轻数据维护的负担,因为很多查询结果可以通过推理间接得出,而不用对所有结果进行全量存储。

OWL本体语言

RDF+RDFS的表达能力是非常有限的。在实际应用中,需要定义更为复杂的概念,刻画更为复杂的概念关系。这就需要用到OWL等本体表达语言。本体(Ontology)原来是一个哲学术语,后来被人工智能的研究人员作为知识表示研究的对象引入计算机领域。本体最常用的逻辑表达语言即描述逻辑(Description Logic)。系统性介绍描述逻辑的内容超出了本书的范围,接下来主要结合国际万维网联盟推动的OWL本体语言标准来介绍相关的基本知识。OWL首先可以被看作RDF Schema的扩展。OWL在RDF的基础上增加了更多的语义表达构件:

  • 通过多个类组合定义更加复杂的类
  • 刻画关系的一对多、多对一、多对多等关系基数(Cardinality)约束
  • 定义常用的全称量词和存在量词
  • 定义互反关系、传递关系、自反关系、函数关系等更加复杂的关系语义等

在这里举例介绍几种典型的OWL表达构件。例如可以使用等价性声明表达构件owl:equivalentClassowl:equivalentPropertyowl:sameIndividualAs来分别声明两个类、两个属性或两个个体的等价关系。再比如可以声明传递关系,如<exp:ancestor rdf:type owl:TransitiveProperty>声明了ancestor是一个传递关系,当知识库中存在<exp:小明exp:ancestor exp:小林><exp:小林exp:ancestor exp:小志>两条知识时,就可以推理得出<exp:小明exp:ancestor exp:小志>。类似地,也可以声明互反关系,如<exp:ancestor owl:inverseOf exp:descendant>声ancestordescendant是互反的,当知道<exp:小明exp:ancestor exp:小林>,就可以马上在知识库中新增一条<exp:小林exp:descendant exp:小明>的新知识。

还可以声明某个关系必须满足函数约束,例如声明<exp:hasMother rdf:type owl:FunctionalProperty>,这样exp:hasMother就是一个具有函数性的属性,因为每个人只有一个母亲。这将作为约束作用到整个知识库,不允许知识库中出现一个人同时有两个母亲。还可以声明属性的全称限定,例如,owl:allValuesFrom声明exp:hasMother在主语属于exp:Person类的时候,宾语的取值只能来自exp:Women类。同样地,可以声明属性的存在限定,通过owl:someValuesFrom声明exp:publishedIn在主语属于exp:SemanticWebPaper类的时候,宾语的取值部分来自exp:AAAI类。

OWL拥有众多的表达构件,本文不对它们做完整的介绍。OWL实际上有很多语言家族,不同的语言家族代表不同的表达构件的组合。不同的组合对应不同的推理计算复杂度以及它们所适用的场景。如下图所示,OWL-QL表示查询语言的意思,专为基于大规模的查询设计的子语言;OWL 2 RL在扩展RDFS表达能力的同时,保持了较低的复杂度;OWL 2 EL专为概念术语描述、推理而设计,在生物医疗领域广泛应用,如临床医疗术语本体SNOMED CT等。在后面的文章还将结合推理能力对表达语言进行介绍。

综上,属性图是工业界最常见的图谱建模方法,属性图数据库充分利用图结构特点做了性能优化,实用度高,但不支持符号推理。RDF是W3C推动的语义数据交换标准与规范,有更严格的语义逻辑基础,支持推理,并兼容更复杂的本体表示语言OWL。在三元组无法满足语义表示需要时,OWL作为一种完备的本体语言,提供了更多可供选用的语义表达构件。描述逻辑可以为知识图谱的表示与建模提供理论基础。描述逻辑之于知识图谱,好比关系代数之于关系数据库。

参考文献:
[1] 陈华钧.知识图谱导论[M].电子工业出版社, 2021
[2] 邵浩, 张凯, 李方圆, 张云柯, 戴锡强. 从零构建知识图谱[M].机械工业出版社, 2021

知识图谱从入门到应用——知识图谱的知识表示:符号表示方法相关推荐

  1. 知识图谱从入门到应用——知识图谱的获取与构建:知识工程与知识获取

    分类目录:<知识图谱从入门到应用>总目录 知识工程发展历史 在前面的文章中,曾介绍过早期的人工智能有一个流派称为符号主义.符号主义认为智能的本质就是符号的操作和运算.符号主义在后来几大流派 ...

  2. 知识图谱从入门到应用——知识图谱的应用

    分类目录:<知识图谱从入门到应用>总目录 相关文章: · 知识图谱的基础知识 · 知识图谱的发展 · 知识图谱的应用 · 知识图谱的技术结构 知识图谱支持语义搜索 知识图谱源于互联网,所以 ...

  3. 知识图谱从入门到应用——知识图谱推理:基于表示学习的知识图谱推理-[嵌入学习]

    分类目录:<知识图谱从入门到应用>总目录 前面多次提到过,基于符号逻辑的演绎推理的主要缺点是对知识表示的逻辑结构要求比较高,不论是本体推理还是规则推理,都要求人工定义公理和规则才能完成推理 ...

  4. 知识图谱从入门到应用——知识图谱的技术结构

    分类目录:<知识图谱从入门到应用>总目录 相关文章: · 知识图谱的基础知识 · 知识图谱的发展 · 知识图谱的应用 · 知识图谱的技术结构 知识图谱是交叉技术领域 知识图谱是典型的交叉技 ...

  5. 知识图谱从入门到应用——知识图谱的发展

    分类目录:<知识图谱从入门到应用>总目录 相关文章: · 知识图谱的基础知识 · 知识图谱的发展 · 知识图谱的应用 · 知识图谱的技术结构 1945年,美国首任总统科学顾问Vanneva ...

  6. 知识图谱从入门到应用——知识图谱的基础知识

    分类目录:<知识图谱从入门到应用>总目录 相关文章: · 知识图谱的基础知识 · 知识图谱的发展 · 知识图谱的应用 · 知识图谱的技术结构 知识图谱是有学识的人工智能 早期的人工智能有很 ...

  7. python基础一入门必备知识-Python数据分析入门必备基础知识

    今天,老师要带大家解数据分析的定义.核心思路.应用领域以及开发流程,向大家全方位展示数据分析入门必备基础知识,全都是干货哦!虽然看完本文,不能让大家立马变身为一名数据分析师,但是能让大家对数据分析有一 ...

  8. python基础一入门必备知识-Python快速入门指南基础知识详细说明

    随着人工智能大火,我们身边几乎处处充满着AL的气息,就连停车,都是机器人值班了. 可是很多人都不知道人工智能是由什么开发的,各种相关联的框架都是以Python作为主要语言开发出来的. Python本身 ...

  9. c语言需要硬件知识,运维入门基础硬件知识

    硬件基础知识 l硬件知识设备 l服务器组成部分 l组成部分详细说明 cpu 核数 l企业中存储数据方案 #运维人员核心职责 1.保证数据不丢失! 2.服务器7*24小时运行! 3.提升用户访问感受!访 ...

最新文章

  1. 【跃迁之路】【448天】刻意练习系列207(2018.04.29)
  2. html怎么使图片无法另存为,如何禁止图片另存为?禁止网页另存为到本地的方法...
  3. 【C++grammar】析构、友元、拷贝构造函数、深浅拷贝
  4. c++函数返回值是一个引用
  5. 中仪股份管道机器人_中仪股份携带管道机器人再次出发美国,携手2018年WEFTEC欢度国庆...
  6. java 生产者消费者_Java多线程:线程间通信—生产者消费者模型
  7. 老项目换unicorn的大致步骤
  8. JavaJDBC:连接池
  9. 16进制与字符串相互转换(C语言)
  10. 子之错父之过什么意思_子不教,父之过。教不严,师之惰。是什么意思?
  11. 正则表达式(以校验qq是否合法等为例)
  12. IPS与IDS部署场景
  13. 解决Ubuntu20.04插入英伟达计算卡后无法开机问题-Ubuntu双显卡切换
  14. java连接twitter登录,android中接入twitter进行第三方登录
  15. input输入框限制(座机,手机号码)
  16. axios请求发送两次请求_vue使用axios发送请求,都会发送两次请求
  17. CVE-2020-15778 漏洞修复方案
  18. xilinx_Recovery/Removal
  19. 免疫20年大发现-Nature Reviews Immunology
  20. 红黑树的创建、插入节点

热门文章

  1. java zlib 解压_在javascript中解压缩gzip和zlib字符串
  2. SpringBoot中使用Freemarker邮件模板生成邮件
  3. 在硅谷新加坡技术布道之后,蚂蚁金服ATEC大会即将造访伦敦
  4. 构建 cloudreve 捐赠版docker 镜像
  5. windows如何以管理员身份运行cmd
  6. 解压到计算机硬盘,硬盘的速度会影响我们压缩和解压缩文件的速度吗?
  7. 计算机常用的加密方法,摩斯密码以及十种常用加密方法.pdf
  8. switch语句练习
  9. Zemax光学设计(五)——双胶合透镜
  10. Python实现最大熵模型