400字范文,内容丰富有趣,生活中的好帮手!
400字范文 > 【知识图谱】知识表示与知识建模

【知识图谱】知识表示与知识建模

时间:2020-02-24 20:46:49

相关推荐

【知识图谱】知识表示与知识建模

文章目录

一、早期知识表示简介1、概述2、知识分类3、早期知识表示方法(1)一阶谓词逻辑(First-Order Logic)(2)产生式规则(Production Rule)(3)框架(Framework)(4)语义网络(Semantic Network)二、基于语义网的知识表示框架1、语义网(Semantic Web)2、RDF(1)RDF概念(2)基本示例(3)RDF空白节点(Black Nodes)(4)RDF是数据类型,不是序列化格式(5)开放世界假设(6)分布式的定义与合并知识(7)变种:带标注RDF3、RDF Schema(RDFS)(1)概述(2)具体(3)基于RDFS的推理4、OWL和OWL2(1)OWL简述(2)OWL词汇(3)OWL25、SPARQL简介6、JSON-LD 、RDFa、 HTML5 MicroData等新型知识表示(1)JSON-LD(2)RDFa(3)HTML5 Microdata7、`RDF+SPARQL` vs. `ER+SQL`三、典型知识库项目的知识表示1、各种知识图谱项目2、知识表示:多元关系3、实用的知识表示四、基于本体工具的知识建模实践

一、早期知识表示简介

1、概述

人类心智区别于其它物种心智的重要特征:具有获取、表示和处理知识的能力。

知识表示是一种为了让计算机可以接受的用于描述知识的数据结构。它是机器通往智能的基础,使得机器可以像人一样运用知识。特别是常识知识才能实现真正类人的智能

知识的特点:相对正确性、不确定性、可表示性以及可利用性。

2、知识分类

按作用范围分类:常识性知识、领域性知识;按作用及表示分类:事实性知识、过程性知识、控制知识;按确定性分类:确定性知识、不确定性知识;按结构及表现形式分类:逻辑性知识、形象性知识;

3、早期知识表示方法

一阶谓词逻辑(First-Order Logic)产生式规则(Production Rule)——专家系统框架(Framework)语义网络(Semantic Network)——以网络的方式来描述概念之间的语义关系逻辑程序(Logic Programming)缺省逻辑(Default Logic)模态逻辑(Modal Logic)

(1)一阶谓词逻辑(First-Order Logic)

Horn逻辑:一阶谓词逻辑的子集

原子 Atom

p(t1,t2,...,tn)p(t_1,t_2,...,t_n)p(t1​,t2​,...,tn​)

其中,ppp是谓词,nnn是目,tit_iti​是项(变量或常量),eg:has_child(Helen, Jack)规则 Rules——由原子构建:

H:−B1,B2,...,Bm.H:-B_1,B_2,...,B_m.H:−B1​,B2​,...,Bm​.

H与B1,B2,...,BmH与B_1,B_2,...,B_mH与B1​,B2​,...,Bm​是原子,HHH是头部原子,B1,B2,...,BmB_1,B_2,...,B_mB1​,B2​,...,Bm​是体部原子,eg:has_child(X,Y):-has_son(X,Y)事实——没有体部且没有变量的规则:

F(v1,v2,...,vn):−haschild(Helen,Jack):−F(v_1,v_2,...,v_n):- \\has_child(Helen, Jack):-F(v1​,v2​,...,vn​):−hasc​hild(Helen,Jack):−

描述逻辑:一阶谓词逻辑的可判定子集。用于描述概念、属性,为术语知识库的构建提供便捷的表达形式。

(2)产生式规则(Production Rule)

早起的专家系统多数是基于产生式系统的。以IF-THEN的形式,即产生式规则表示出来的。

产生式模型

P→QorIFPTHENQCF=[0,1]P→Q \ \ \ or \\ \begin{aligned} IF\quad P\quad THEN\quad Q \quad CF = [0, 1]\end{aligned}P→QorIFPTHENQCF=[0,1]​

其中,PPP 是产生式的前提,QQQ 是一组结论或操作,CF(CertaintyFactor)CF (Certainty Factor)CF(CertaintyFactor) 为确定性因子,也称置信度。

特点

优点:自然型好,易于模块化管理、能有效表示知识、知识表示清晰等;缺点:效率不高、不能表达具有结构性的知识等。

(3)框架(Framework)

基本组成

示例

利用上述框架在知识库中匹配得到实例(对框架进行填充可得)。

(4)语义网络(Semantic Network)

基本形式:(节点1, 弧, 节点2)

节点:表示各种事物、概念、情况、属性、动作、状态等,每个节点可以带有若干属性,一般用框架或元组表示。此外节点还可以是一个语义子网络,形成一个多层次的嵌套结构。弧:表示各种语义联系,指明它所连接的节点间某种语义关系。节点和弧都必须带有标示,来方便区分不同对象以及对象间各种不同的语义联系。

特点

优点:结构性、联想性、自然性;缺点:非严格性、处理上的复杂性

示例:eg:“每个学生都读过一本书”

谓词逻辑表示:(∀s)学生(s)(∃b)书(b)[读过(s,b)](\forall s)学生(s)(\exists b)书(b)[读过(s,b)](∀s)学生(s)(∃b)书(b)[读过(s,b)]语义网络表示:本质:将逻辑运算和逻辑项都映射为图中的元素。

二、基于语义网的知识表示框架

1、语义网(Semantic Web)

知识图谱中最关键的技术:RDF、SPARQL

下图为W3C推荐的语义网标准栈,其中RDF和SPARQL为网络数据链接部分。与此同时,W3C还推出五星级标准,规定了RDF为标准数据格式,URI标准为事物命名等规范。

2、RDF

(1)RDF概念

RDF:Resource Description Framework(资源描述框架)

Resource:页面、图片、视频等任何具有URI标识符; URI://mypath//myresourceDescription:属性、特征和资源之间的关系;Framework:模型、语言和这些描述的语法。

在RDF中,知识总是以三元组(triple)模型形式出现的,即每一份知识可以被分解为如下形式:

(subject(主), predicate(谓), object(宾)),同时在RDF中资源和属性都可以被URI唯一标识。

(2)基本示例

示例1CCF ADL邀请王昊奋作为讲者,演讲主题是知识图谱。

RDF形式

(CCF ADL, speaker, Haofen)(CCF ADL, theme, KG)

图模型形式:(vertex, edge, vertex) 下面左图为利用URI表示的结果,右图为利用命名空间定义前缀的结果。

示例2:RDF中的属性值同时也可以是一个文字,如字符串/数值XML datatype类型。(它们不是一个Resource)。

左图:CCF ADL邀请王昊奋作为讲者,演讲主题是知识图谱。,此处知识图谱为字符串。右图:CCF ADL has one speaker Haofen and last 3 hours.,其中"3"后面为其类型约束,即整型。

(3)RDF空白节点(Black Nodes)

空白节点

RDF允许空白节点;一个资源可以是匿名的;即不被URI标识,并标识为_:xyz

egHaofen是某一次KG讲座的讲者(并不关心是什么讲座)

(4)RDF是数据类型,不是序列化格式

RDF序列化格式之间的关联:

RDF/XML格式:适合小数据的存储与交换

<rdf:RDFxmlns:ex-schema=/schema#><rdf:Description rdf:about="/ccf_adl"><ex-schema:speaker rdf:resource="/haofen"/><ex-schema:theme rdf:resource="/KG"/></rdf:Description></rdf:RDF>

N-Triples格式

</ccf_adl></schema#speaker></haofen>.</ccf_adl></schema#theme></KG>.

Turtle格式

@prefix ex:<>.@prefix ex-schema:</schema#>ex:ccf_adlex-schema:speaker ex:haofen;ex-schema:theme ex:KG.

(5)开放世界假设

RDF 是 开放世界假设

封闭世界假设:没有定义则认为不存在。开放世界假设:eg:(CCF ADL, speaker, Haofen)封闭世界假设==》CCF ADL讲座只有一位讲者;开放世界假设==》CCF ADL讲座至少有一位讲者;

(6)分布式的定义与合并知识

RDF允许分布式地定义知识

分布式定义的知识可以自动合并若分布式存储ex:haofen的URI不一致,如何融合??

(7)变种:带标注RDF

动机:如何扩展 RDF 用来表达更多信息

时间、不确定性、空间、信任等==》带标注 RDF(S) ==》知识库:YAGO2

YAGO2:采用 annotated RDF 表示的知识库

语法形式:(s,p,o):λ(s, p, o):\lambda(s,p,o):λ λ\lambdaλ 是一个标志eg:(特朗普,就职,总统):1月

3、RDF Schema(RDFS)

(1)概述

RDFS在RDF基础上提供了一个术语、概念等的定义方式,以及哪些属性可以应用到哪些对象上。换句话说,RDFS为RDF模型提供了一个基本的类型系统。

示例:三元组表示用户自定义的元数据Author是Dublin Core的元数据Creator的子类。

</Author><rdfs: subClassOf > <http://purlorg/dc/elements/1.0/Creator>.

作用:RDFS通过这样的方式来描述不同词汇集的元数据之间的关系,为网络上统一格式的元数据交换提供便利。

(2)具体

RDF定义了如下几种词汇:

Class、subClass、type、Property、subPropertyOf、Domain、Range

示例

图中,data层是对schema层的实例化,是由数据驱动的。

(3)基于RDFS的推理

基于data层schema层可进行推理,如上下位的推理(如subClass),类别的判断等。

示例

4、OWL和OWL2

RDF是有一定的表达缺陷,RDF不能表达复杂类。

(1)OWL简述

OWL Web Ontology Language包含三个子语言:OWL Lite、OWL DL、WOL Full

(2)OWL词汇

等价性

exp是命名空间的别称。

传递性

exp:ancestor是一个传递关系exp:小明 exp:ancestor exp:小林; exp:小林 exp:ancestor exp:小志

那么根据上述声明,有exp:小明 exp:ancestor exp:小志

属性相反

exp:ancestorexp:descendant是互反关系

eg:exp:小明 exp:ancestor exp:小林,那么有exp:小林 exp:descendant exp:小明

属性函数性

exp:hasMother是一个具有函数性的属性(只有一个);因为每个人只有一个母亲。

属性对称性

exp:小明 exp:friend exp:小林,那么有exp:小林 exp:friend exp:小明

属性的局部约束:全称限定

exp:hasMother在主语属于exp:Person类的时候,宾语的取值只能来自exp:Women这个类。

属性的局部约束:存在限定

exp:publishedIn在主语属于exp:SemanticWebPaper类的时候,宾语的取值部分来自exp:AAAI这个类。上面的三元组相当于:关于语义网的论文部分发表在AAAI上。

属性的局部约束:基数限定

exp:hasMother在主语属于exp:Person类的时候,宾语的取值只能有一个;“1”的数据类型被声明为xsd:integer;这是基数约束,本质上属于属性的局部约束。

声明相交的类

_tmp是临时资源;它是rdfs:Collection类型,是一个容器;它的两个成员是exp:Person,exp:HasChildren;上述三元组说明exp:Mother是exp:Person,exp:HasChildren这两个类的交集。

OWL其他词汇

(3)OWL2

OWL2 定义了一些 OWL 的子语言,通过限制语法使用,使得这些子语句能够更方便地实现,以及服务于不同的应用。

OWL2的三大子语言:

OWL2 RL、OWL2 QL、OWL2 EL,家族树如下:

5、SPARQL简介

SPARQL 是 RDF的查询语言(i.e.基于RDF数据模型),可以针对不同的数据集撰写复杂的连接,它支持主流的图数据库。

SPARQL查询的基本构成

变量,RDF中的资源,以?或者$来表示;三元组模板 (triple pattern), 在WHERE子句中列示关联的三元组模板;之所以称之为模板,因为三元组中允许变量;SELECT子句中指示要查询的目标变量。

# prefix declarations:for abbreviating URIsPREFIX foo: </resources/>...# dataset defintion, stating what RDF graph(s) are being queriedFROM ...# result clause:identifying what information to return from the querySELECT ...# query pattern:WHERE {...}# query modifiers:slicing, ordering, and otherwise rearranging query resultsORDER BY ...

示例1:查询学生姓名、选修课程,以及他们的年龄;若有年龄,则年龄必须大于25岁。

涉及 OPTIONAL关键字、FILTER关键字

## 命名空间声明PREFIX exp: /SELECT ?module ?name ?ageWHERE {?student exp:studies ?module .?student foaf:name ?name .OPTIONAL {?student exp:age ?age .FILTER (?age > 25)}}

示例2:查询选修课程CS328或CS909的学生姓名以及邮箱,涉及 UNION关键字。

SELECT ?student ?emailWHERE {?student foaf:mbox ?email .{?student exp:studies CS328}UNION {?student exp:studies CS909}}

注意:此处邮箱为必返回项,若没有邮箱值,则不返回该记录,注意与OPTIONAL区别。

示例3:查询选修课CS909的学生姓名以及邮箱和住址,涉及 FROM关键字,引入其他本体或可访问的知识库。

SELECT ?student ?email ?homeFROM <http://www2.warwick.ac.uk/rdf/student>WHERE {?student exp:studies CS909 .OPTIONAL {?student foaf:mbox ?email .?student foaf:homepage ?home .}}

SPARQL查询语言与SQL很相似,定义了OPTIONALFILTERUNIONFROM等关键字,同时它支持嵌套查询,基于规则的查询.

6、JSON-LD 、RDFa、 HTML5 MicroData等新型知识表示

(1)JSON-LD

JSON-LD(JavaScript Object Notation for Linked Data),是一种基于JSON表示和传输互联数据 (Linked Data)的方法。

JSON-LD描述了如何通过JSON表示有向图,以及如何在一个文档中混合表示互联数据及非互联数据。JSON-LD的语法和JSON兼容。

示例

一个JSON文本

// 表示一个人,具有名字、主页、照片{"name": "Manu Sporny", "homepage": "/", "image": "/images/manu.PNG"}

对应的JSON-LD文件:通过引入规范的术语表示,eg:统一化表示"name","homepage"和"image"的URI,使得数据交换和机器理解成为基础。

{"/name": "Manu Sporny", "/url": {"@id":"/" }, "/image": {"@id":"/images/manu.PNG" }}

(2)RDFa

RDFa(Resource Description Framework in attributes)是网页标记语言,它扩充了XHTML的几个属性,网页制作者可以利用这些属性在网页中添加可供机器读取的资源,与RDF的对应关系使得RDFa可以将RDF的三元组嵌入在XHTML文档中,它也使得符合标准的使用端可以从RDFa文件中提取出这些RDF三元组来。

RDFa工作原理

通过引入命名空间的方法在已有的标签中加入RDFa相应的属性来使得支持RDFa技术的浏览器或者搜索引擎可以解析到,从而达到优化的目的。

<div xmlns:dc="/dc/elements/1.1/" about="/books/wikinomics"><span property="dc:title">Wikinomics</span><span property="dc:creator">Mr right</span><span property="dc:date">-09-02</span></div>

分析:上面的代码示例中用到了RDFa属性中的about属性property属性,这段代码示例说明了一篇文章,然后描述了和这篇文章相关的信息,比如说标题,创建者和创建日期,而这些属性就可以使得支持RDFa的机器识别。

(3)HTML5 Microdata

Microdata微数据,是在网页标记标记语言嵌入机器可读的属性数据;微数据使用可以来自自定义词汇表、带作用域的键/值对给DOM做标记;用户可以自定义微数据词汇表,在自己的网页中嵌入自定义的属性;微数据是给那些已经在页面上可见的数据施加额外的语义。当HTML的词汇不够用时,使用微数据可以取得较好的效果。

示例:便于浏览器从网页上提取微数据实体、属性以及属性值。

7、RDF+SPARQLvs.ER+SQL

RDF:关系显示定义(语义存在于数据中)——数据变更较为方便(图增加边更为方便),易于推理。

ER:关系隐式声明(语义存在于人脑中)——数据变更时,需要添加新表并修改原来的SQL语句。

数据的智能性

ER+SQL:Dumb Data->Smart Application CodeRDF+SPARQL:Smart Data->Uniform Inference Engine

三、典型知识库项目的知识表示

1、各种知识图谱项目

2、知识表示:多元关系

3、实用的知识表示

实用的知识表示的特点

接近人的自然语言:好的KG是同时为机器和人设计的;够用的表达能力:够用就好,不必苛求逻辑完备;易于扩展:能够非常方便的增加新的类、实体和关系。

现状:RDF/OWL只是众多知识表示框架的一种,不少商业化的KG并未采用该框架,物理存储也是直接采用关系数据库实现,但基本表达要素都可在RDF/OWL中找到对应。

四、基于本体工具的知识建模实践

基于Protege本体工具的知识建模实践

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。