一、知识学习

声明:知识学习中本文主体按照浙江大学陈华钧教授的《知识图谱》公开课讲义进行介绍,并个别地方加入了自己的注释和思考,希望大家尊重陈华钧教授的知识产权,在使用时加上出处。感谢陈华钧教授。

(一)B站 《浙大知识图谱完整版》——2

学识时间:2023年4月13日08:56:51

2、知识图谱的表示

2.1 什么是知识表示

人类的自然语言, 以及创作的绘画和音乐、 数学语言、 物理模型、 化学公式等都是人类知识的表示形式和传承方式。 具有获取、 表示和处理知识 的能力是人类心智区别于其它物种心智的最本质特征, 也是人脑智能的最本质特征。
什么是知识的表达(Representation)?
◆ 简单而言,知识表示( KR)就是用易于计算机处理的方式来描述人脑的知识的方法。
◆ KR不是数据格式、不等同于数据结构、也不是编程语言,对于人工智能而言,数据与知识的区别在于KR支持推理。


知识表达(KR)就是:Computational Model of Reality,现实的计算模型
(1)知识的符号表示
 一阶谓词逻辑 (First-Order Logic)
 语义网络 (Semantic Net)
 产生式规则 (Production Rule)
 框架系统 (Framework)
 描述逻辑( Description Logic)
 逻辑程序 (Logic Programming)

从符号表示到向量表示

(2)知识的向量表示


小结:

  • The essence of intelligence is reasoning, a good starting point for understanding reasoning is formal logic.
    智能的精华是怎样实现推理 , 推理的关键是形式化逻辑。
  • Learning will only be solved once we know what needs to be learned, The idea that almost everything is learned is absurd.
    “ 学习” 需要我们清楚的知道要学习的是什么, 那些认为任何东西都可以学习出来的想法是愚蠢的。
  • There are no pixels or symbol strings in the head. All we have in our heads is big activity vectors that cause more big activity vectors.
    大脑中并没有像素和符号字符串的存储, 而是一些巨大的活跃向量之间相互发生的作用。

2.2人工智能历史发展长河中的知识表示


2.2.1 一阶谓词逻辑
(1)描述逻辑

  • 描述逻辑是一阶谓词逻辑的可判定子集,主要用于描述本体概念和属性 ,对于本体知识库的构建提供了便捷的表达形式,是与知识图谱最密切相关的知识表示方法之一。

  • 核心表达要素:
    ◆ 概念Concepts:解释为一个领域的子集
    例如:学生,已婚者: {x| Student(x) }, {x| Married(x) }
    ◆ 关系Relations:解释为指该领域上的二元关系
    例如:示例:朋友,爱人: {<x,y> | friend(x,y) } , {<x,y> | loves(x,y) }
    ◆ 个体Individuals:一个领域内的实例
    例如:小明,小红: {Ming, Hong}

  • 描述逻辑的知识库O:=<T, A>, T即Tbox, A即Abox
    ◆ TBox包含内涵知识,描述概念的一般性质
     定义: 引入概念以及关系的名称,例如: Mother, Person, has_child
     包含:声明包含关系的公理,例如: Mother ⊑ ∃ has_child.Person
    ◆ ABox包含外延知识 (又称断言知识),描述论域中的特定个体。
     概念断言:表示一个对象是否属于某个概念,例如: Mother(Helen),
     关系断言:表示两个对象是否满足一定的关系,例如: has_child(Helen, Jack)
    (2)Horn Logic

  • Horn Logic是一阶谓词逻辑的子集,主要特点是表达形式简单,复杂度低。著名的Prolog语言就是基于Horn逻辑设计实现的。

  • 核心表达要素:
    ◆ 原子Atoms
    p(t1, t2 …, tn), p 是谓词, ti 是项(变量或者常量),例子: has_child(X, Y)
    ◆ 规则Rules
    由原子构建: H:– B1, B2, …, Bm.
    H称为Head; B1, B2, …, Bm称为Body,例子: has_child(X, Y) :- has_son(X, Y)
    ◆ 事实Facts:
    没有体部且没有变量的规则,例子: has_son(Helen, Jack) :-
    (3)一阶谓词逻辑优缺点比较

  • 优点:
     接近自然语言,容易被接受,且易于表示精确知识
     有严格的形式定义和推理规则,易于精确实现

  • 缺点:
     无法表示不确定性知识,难以表示启发性知识及元知识
     组合爆炸,经常出现事实、规则等的组合爆炸,导致效率低,推理复杂度通常较高
     是以人的逻辑为主导的表示方式,可能并不适合机器,机器可能有自己的逻辑表示。
    2.2.2 产生式系统
    (1)定义

  • 产生式系统是一种更广泛意义的规则系统,专家系统多数是基于产生式系统:
    Feigenbaum研制的化学分子结构专家系统DENDRAL
    Shortliffe研制的的诊断感染性疾病的专家系统MYCIN

  • 产生式系统的核心表达形式:
    IF P THEN Q CF = [0, 1], 其中P是产生式的前提, Q是一组结论或操作, CF(Certainty Factor)为确定性因子,也称置信度。
    (2)优缺点

  • 优点:
     自然性:产生式系统采用人类常用的因果关系知识表示形式,既直观、自然,又便于进行推理。
     模块性:产生式规则形式相同,易于模块化管理。
     有效性:能表示确定性知识、不确定性知识、启发性知识、过程性知识等。
     清晰性:产生式有固定的格式,既便于规则设计,又易于对规则库中的知识进行一致性、完整性检测

  • 缺点:
     效率不高:产生式系统求解问题的过程是一个反复进行“匹配—冲突消解—执行”的过程。而规则库一般都比较大,匹配又十分费时,因此其工作效率不高。
     在求解复杂问题时容易引起组合爆炸。
     不能表达结构性知识:产生式系统对具有结构关系的知识无能为力,它不能把具有结构关系的事物间的区别与联系表示出来
    2.2.3 框架系统
    (1)定义

  • 框架理论的基本思想:认为人们对现实世界中事物的认识都是以一种类似于框架的结构存储在记忆中。当面临一个新事物时,就从记忆中找出一个合适的框架,并根据实际情况对其细节加以修改、补充,从而形成对当前事物的认识。框架系统在很多NLP任务如Dialogue系统中都有广泛的应用。

  • 基本表达要素:
    ◆框架:是一种描述对象 (事物、事件或概念等)属性的数据结构。
    ◆一个框架由若干个“槽” (Slot)结构组成,每个槽又可分为若干个 “侧面”。
     一个槽:用于描述所论对象某一方面的属性;
     一个侧面:用于描述相应属性的一个方面。
     槽和侧面所具有的属性值分别称为槽值和侧面值

    (2)优缺点

  • 优点
     对于知识的描述完整和全面;
     基于框架的知识库质量高;
     框架允许数值计算

  • 缺点
     框架构建成本高,质量要求高;
     框架的表达形式不灵活,很难同其它形式的数据集相互关联使用
    2.2.4语义网络
    1968年J.R.Quillian在其博士论文中最先提出语义网络,把它作为人类联想记忆的一个显式心理学模型,并在他设计的可教式语言理解器TLC (TeachableLanguage Comprehenden)中用作知识表示方法。

    (1)WordNet
    WordNet是最著名的词典知识库,主要用于词义消歧。 WordNet由普林斯顿大学认识科学实验室从1985年开始开发。
    WordNet主要定义了名词、动词、形容词和副词之间的语义关系。例如名词之间的上下位关系(如:“猫科动物”是“猫”的上位词),动词之间的蕴含关系(如:“打鼾”蕴含着“睡眠”)等。
    WordNet3.0已经包含超过15万个词和20万个语义关系。

    (2)优缺点

  • 优点
     结构性:语义网络是一种结构化的知识表示方法,它能把事物的属性以及事物间的各种语义联想显式地表示出来。
     联想性:最初是作为人类联想记忆模型提出来的。
     自然性:直观地把事物的属性及其语义联系表示出来,便于理解,自然语言与语义网络的转换比较容易实现,故语义网络表示法在自然语言理解系统中应用最为广泛

  • 缺点
     非严格性:语义网络没有公认的形式表示体系。一个给定的语义网络所表达的含义完全依赖于处理程序如何对它进行解释。
     通过推理网络而实现的推理不能保证其正确性。支持全称量词和存在量词的语义网络在逻辑上是不充分的,不能保证不存在二义性。
     处理上的复杂性:语义网络表示知识的手段多种多样,灵活性高,但由于表示形式不一致使得处理复杂性高,对知识的检索相对复杂

小结

  • 知识表示与推理在人工智能的发展历史上一直居于核心位置。
  • 传统的知识表示方法主要以符号表示为主,与知识图谱有关的典型方法有:描述逻辑、 Horn Logic、产生式规则、框架系统、语义网络等等。
  • 这些方法各有优缺点,但都有一个共同的缺点是知识的获取过程主要依靠专家和人工,越复杂的知识表示框架知识获取过程越困难。

2.3知识图谱的符号表示方法

2.3.1 基于图的知识表示与建模
知识图谱比纯粹的图更有表现力,但是有没有形式逻辑那样复杂。


(1)属性图

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

(2)RDF: Triple-based Assertion model
RDF是国际万维网联盟W3C推动的面向Web的语义数据标准
An RDF triple (S,P,O) encodes a statement—a simple logical expression, or claim about the world。
一个RDF三元组是对状态的编码,包括简单的逻辑表达的编码或者对世界声明的编码。

(3)RDFS: Simple Vocabulary and Schema简单术语和架构
Defines small vocabulary for RDF:
Class, subClassOf, type, Property, subPropertyOf, Domain, Range

2.3.2 基于RDFS的简单推理

(1)OWL: Web Ontologies
本体的哲学概念
Ontology is the philosophical study of the nature of being, becoming, existence or reality, as well as the basic
categories of being and their relations.
本体是自然本质、形成、存在或现实以及本质及其关系的分类的哲学研究。
本体在计算机科学和人工智能的概念
Ontology in Computer Science and Artificial Intelligence
An ontology is a description (like a formal specification of a program) of the concepts and relationships that can formally exist for an agent or a community of agents.
本体就像一个正式规范的程序那样,是能够正式的为代理或代理的社区而存在的概念和关系的描述。
Web Ontologies
Ontologies based on web standards such as RDFS/OWL. OWL is based on Description Logic, a very very long history of research in Artificial Intelligence
OWL的表达构件

  • 等价声明:
exp:运动员 owl:equivalentClass exp:体育选手
exp:获得 owl:equivalentProperty exp:取得
exp:运动员A owl:sameIndividualAs exp:小明
  • 声明属性的传递性
exp:ancestor rdf:type owl:TransitiveProperty
exp:小明 exp:ancestor exp:小林;
exp:小林 exp:ancestor exp:小志
推理得出: exp:小明 exp:ancestor exp:小志
  • 声明两个属性互反
exp:ancestor owl:inverseOf exp:descendant
exp:小明 exp:ancestor exp:小林
推理得出: exp:小林 exp:descendant exp:小明
  • 声明属性的函数性
exp:hasMother rdf:type owl:FunctionalProperty
exp:hasMother 是一个具有函数性的属性,因为每个
人只有一个母亲,作为约束作用到知识库
  • 声明属性的对称性
exp:friend rdf:type owl:SymmetricProperty
exp:小明 exp:friend exp:小林
推理得出: exp:小林 exp:friend exp:小明
  • 声明属性的局部约束:全称限定
exp:Person owl:allValuesFrom exp:Women
exp:Person owl:onProperty exp:hasMother
exp:hasMother在主语属于exp:Person类的时候,宾语
的取值只能来自exp:Women这个类。
  • 声明属性的局部约束:存在限定
exp:SemanticWebPaper owl:someValuesFrom exp:AAAI
exp:SemanticWebPaper owl:onProperty exp:publishedIn
exp:publishedIn在主语属于exp:SemanticWebPaper类的时候,宾语的取值部分来自
exp:AAAI这个类。上面的三元组相当于:关于语义网的论文部分发表在AAAI上。
  • 声明属性的局部约束:基数限定
exp:Person owl:cardinality “1”^^xsd:integer
exp:Person owl:onProperty exp:hasMother
exp:hasMother在主语属于exp:Person类的时候,宾语的取值只能有一个; “1” 的数据
类型被声明为xsd:integer;
这是基数约束,本质上属于属性的局部约束
  • 声明相交的类
exp:Mother owl:intersectionOf _tmp
_tmp rdf:type rdfs:Collection
_tmp rdfs:member exp:Person
_tmp rdfs:member exp:HasChildren
_tmp是临时资源;它是rdfs:Collection类型,是一个容器;它的两个成员是
exp:Person, exp:HasChildren;上述三元组说明exp:Mother是exp:Person
exp:HasChildren这两个类的交集

(2)OWL语言家族
每一种子语言是前述语义表达构件的一类集合,并有相应的复杂度分析

小结:

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

2.4知识图谱的向量表示方法


2.4.1词的向量表示
** 词的分布式向量表示**

One-hot Encoding

词向量学习模型:

2.4.2 词嵌入 -> 知识图谱嵌入

知识图谱嵌入模型:TransE


知识图谱嵌入模型:DistMult

知识图谱嵌入模型: 推理问题

小结:

  • 知识表示是传统符号人工智能研究的核心, 知识表示的方法在早期语义网的发展过程主要用来为知识图谱的概念建模提供理论基础;
  • 现实的知识图谱项目由于规模化构建的需要, 常常降低表示的逻辑严格性,目前较为常见的知识图谱实践包括RDF图模型和属性图模型;
  • 尽管很多知识图谱并没有应用复杂的知识表示框架, Schema工程对于知识图谱的构建仍然是基础性和必要性的工作, 高质量的知识图谱构建通常从Schema设计开始
  • 在知识图谱的深度利用中, 如复杂语义的表达、 规则引擎的构建、 推理的实现, 会对更有丰富表达能力的知识表示方法有更多的需求。
  • 图模型是更加接近于人脑认知和自然语言的数据模型 ,RDF作为一种知识图谱表示框架的参考标准, 向上对接OWL等更丰富的语义表示和推理能力, 向下对接简化后的属性图数据库以及图计算引擎, 仍然是最值得重视的知识图谱表示框架。
  • 知识( 图谱) 的表示学习是符号表示与神经网络相结合比较自然且有前景的方向。 知识的向量表示有利于刻画那些隐含不明确的知识, 同时基于神经网络和表示学习实现的推理一定程度上可以解决传统符号推理所面临的鲁棒性不高不容易扩展等众多问题

更新时间:2023年4月18日17:03:34

知识图谱学习笔记——(二)知识图谱的表示相关推荐

  1. 知识图谱学习笔记-知识图谱介绍

    一.什么是知识图谱? 解释1:  知识图谱本质上是语义网络 (本体论是语义网落的重要因素) 解释2: 知识图谱也叫做多关系图,由多种类型的节点和多种类型的边组成 构建知识图谱系统中所涉及到的技术 数据 ...

  2. 知识图谱学习笔记之知识图谱中的知识分类

    知识图谱中的知识分类 事实知识 事实知识是关于某个特定实体的基本事实,如(山东富士苹果,产地,山东).事实知识是知识图谱中非常常见的知识类型.大部分的事实知识都是在描述实体的特定属性或关系,如&quo ...

  3. 知识图谱学习笔记03-知识图谱的作用

    语义搜索 知识图谱在语义搜索方面扮演着非常重要的角色.传统的文本搜索引擎基本上是基于关键词匹配的方式进行搜索,这种方式容易受到搜索词语的表述方式和不同语言之间的差异的影响,而无法深入理解用户的意图和查 ...

  4. 知识图谱学习笔记(1)

    知识图谱学习笔记第一部分,包含RDF介绍,以及Jena RDF API使用 知识图谱的基石:RDF RDF(Resource Description Framework),即资源描述框架,其本质是一个 ...

  5. 知识图谱学习(二):电商知识图谱

    知识图谱学习(二):电商知识图谱 --本文摘自机械工业出版社华章图书<阿里巴巴B2B电商算法实战>,参考文献请参见原书. 目录 知识图谱学习(二):电商知识图谱 前言 互联网创业潮 电商生 ...

  6. 得到app文稿导出_得到app学习笔记作为知识付费者,如何把所学内容快速输出?...

    原标题:得到app学习笔记作为知识付费者,如何把所学内容快速输出? 零.引子 昨天看到老公票圈更新了一条段子: 我就是那个伪勤奋者,在知识焦虑的胁迫下,这些年买了不知多少视频.微课.教程还有得到专栏. ...

  7. pythonsze_python学习笔记二 数据类型(基础篇)

    Python基础 对于Python,一切事物都是对象,对象基于类创建 不同类型的类可以创造出字符串,数字,列表这样的对象,比如"koka".24.['北京', '上海', '深圳' ...

  8. 深度强化学习笔记(二)——Q-learning学习与二维寻路demo实现

    深度强化学习笔记(二)--Q-learning学习与二维寻路demo实现 文章目录 深度强化学习笔记(二)--Q-learning学习与二维寻路demo实现 前言 理论 什么是Q-Learning 算 ...

  9. SEO学习笔记二:在搜索引擎竞价排名环境下,个人网站将何去何从?

    本文首发于「妙蛙种子前端」博客,欢迎关注- 早期的搜索引擎,大家都在一个相对公平的规则内玩耍:你的内容够好,网站体验更优秀,在搜索引擎中的排名一般都会比较高. 因为搜索引擎能便捷的为我们定位到精准的内 ...

  10. css中怎么加入立体模型,CSS学习笔记二:css 画立体图形

    继上一次学了如何去运用css画平面图形,这一次学如何去画正方体,从2D向着3D学习,虽然有点满,但总是一个过程,一点一点积累,然后记录起来. Transfrom3D 在这一次中运用到了一下几种属性: ...

最新文章

  1. 红帽linux7注册,redhat7.2 解决注册问题 yum
  2. java获取oracle表空间_Oracle 表空间使用情况查询与修改
  3. 161122、BOM 操作写法示例
  4. step7设置pcpg_STEP7 PC/PG设置的疑惑
  5. JavaScript - 理解面向对象编程
  6. 杭州·云栖 2050 大会日程(5.25-5.27)
  7. 单片机之硬件 软件仿真
  8. debian or ubuntu下 anjuta配置
  9. Python3,4行代码给图片加美颜,拍照再也不需要开美颜滤镜了。
  10. Filebeat自定义index和fields
  11. vim autoformat php,vim - 如何在VI中整理HTML文件的缩进?
  12. java快速生成数据库文档
  13. java多重背包代码实现
  14. 在线直播间和视频追帧【转载】
  15. 5-1 N个数求和 (20分)
  16. isee 处理图片的好工具
  17. 安装缺少的python包
  18. HDC.Cloud 华为开发者大会2021.04.24 学习记录
  19. IAR报错未定义的外部声明Error[e46]: Undefined external “XXXX“ referred in main
  20. 【UVM基础】uvm_info 宏介绍

热门文章

  1. 蓝牙芯片|伦茨科技-智能蓝牙BLE5.2芯片ST17H65
  2. GitHub转华为软件开发云详细教程
  3. Android热修复1
  4. 05,androidstudio小游戏
  5. 使用ATTO Disk Benchmarks测试闪迪cz880
  6. java marshal 序列化_求教Marshal类实现序列化出现的问题
  7. SHFileOperation()函数移动,复制,删除文件\文件夹
  8. android Okio
  9. 【宝可梦数据分析–数据相关性分析及可视化】
  10. java.lang.NoClassDefFoundError: org/apache/poi/xwpf/usermodel/IRunBody异常