上海大學《語義網與知識圖譜》期末復習(一)
\(\color{red}{本文已無用。新復習指南已出:}\)鏈接
前言
這個課。。不太喜歡。但是不能掛呀!平常的話感覺很難聽得進去,因為沒有任何先導課,直接上這個確實有點難受,那個老師感覺得到他想表達很多東西,但是有些東西確實表達不夠明確,每節課聽得都迷迷糊糊,畢竟是一個前沿的東西,如果不是一線戰斗的老師,估計很多概念都很難講清楚吧。
以上均胡扯,萬一我有哪天真的用上了呢?(見鬼了)。
下面復習主要集中在可能的考點復習上,均個人感覺哪里可能出題等等。
之前總結過rdf/rdfs、turtle和owl語法,所以這里前面復習會寫的比較簡單
之前總結的鏈接:
語義網概述
本體:本體是一種形式化的,對於共享概念體系的明確而又詳細的說明。提供一種共享詞表...。本體是對客觀世界的一種分類描述。記住這個分類。
其實我們還是不知道他這個定義表達的是啥意思,我個人理解就是,本體這個東西就是一種描述方法,來描述事物之間的關系,這種關系可以是抽象關系,比如類和實例之間的關系,也可以是屬性關系等等。
記一下:實現予以技術最重要的是有合適的知識表示語言。
記一下:本體的核心通常是分類體系。
RDF
RDF是一種資源描述型語言。由主語、謂語和賓語描述。
RDF對象之間的關系是圖,而不是樹。
RDF的要素:URI、文字、空節點。
URI就是資源的地址,文字指的是字符串類型的資源,空節點這個也很好理解。
Turtle
URI一定要放在<>中,並且每個句子要用.結束。
可以用@prefix來表示前綴,比如先定義好
@prefix book: <http://a.com>.
那么下次用的時候可以直接用book表示<http://a.com>這個URI了。
turtle語法比較簡單,在rdf中的語法就不再總結了,后面關於owl的語法還會提到的。
XML
常用xml來描述RDF語法,turtle只是寫起來容易,但是用的時候用xml還是比較多的。
舉一個例子
<rdf:Description rdf:about="http://a.com">
<ex:publishedBy>
<rdf:Description rdf:about="http://b.com">
</rdf:Description>
</ex:publishedBy>
</rdf:Description>
這個例子是一個不完整的xml下rdf的語法,description表明這是一個節點,而rdf:about描述的就是節點的uri,內部包含的東西就是指向的下一節點以及有向邊。
上面這個例子還有一種利用rdf:resource的簡要寫法。
<rdf:Description rdf:about="http://a.com">
<ex:publishedBy rdf:resource="http://b.com">
</ex:publishedBy>
</rdf:Description>
效果是一樣的。
上面的兩個例子是不完整的,因為沒有加上命名空間,實際上xml里面是需要有命名空間的。
<rdf:RDF xmlns:rdf="http:xx.com" xmlns:ex="http://xxx.com">
<rdf:Description rdf:about="http://a.com">
<ex:publishedBy rdf:resource="http://b.com">
</ex:publishedBy>
</rdf:Description>
</rdf:RDF>
這里在外面包圍了一圈rdf:RDF,並且說明了xml namespace 分別為rdf和ex,並指定了uri。
還有就是有些地方要區分語法差別,rdf:resource是rdf description代表的節點的簡化版本,有時候也會用到rdf:id,這里的rdf:id="aa"其實等價與rdf:about="http://xx.com#aa"這樣一個uri。
PPT上有一個我認為比較重要的例子:
@prefix ex:<http://exmaple.org> .
ex:GreenTea ex:hasIngredient "1 kg water",
"2 kg tea".
這種表達結構性不是很好,很明顯我們認為數量應該和具體的water、tea分開對吧。
所以做了這樣的修改
@prefix ex:<http://example.org> .
ex:GreenTea ex:Ingredient "water"; ex:amount:1;
ex:Ingredient "tea"; ex:amount:2.
這樣改了之后也不妥,因為數量和water、tea分開了,上面的例子表達就成了綠茶的原料是水,綠茶的數量是1,其實是有歧義的。為了解決這種歧義關系,我們引出了空節點。
引入空節點之后咋表達呢?
@prefix ex:<http://example.org> .
ex:GreenTea ex:Ingredient (
[
ex:name "water";
ex:amount:1
],
[
ex:name "tea";
ex:amount:2
]
).
還用了list語法。嗯。
畫圖的時候空節點不需要給uri,形狀和普通uri一樣是橢圓,文本的化要用方框。
在xml語法中,用rdf:parseType="Resource"來指定一個空節點
還剩下容器語法。我覺得不會考吧(turtle的可能會考,但是很簡單)。
RDFS
基礎語法
RDFS就是RDF加個Schema,具體來說就說多了面向對象的特點,就好比C和C++的升級,RDFS就是這樣一個身份。
rdf:type 描述一個實例和類的關系,前者屬於后者.eg book:uri rdf:type ex:TextBook.
rdfs:subClassOf,描述一個類與另一個類的包含關系,eg ex:TextBook rdfs:subClassOf ex:Book.
所有的類都subClassO一個基類,即rdf:Class,然后還有很多預定義的類,比如rdfs:Resource和rdfs:Property等。
屬性約束
可以約束一個屬性的定義域和值域。
ex:hasAge rdfs:range xsd:nonNegativeInteger.
這里通過限定hasAge屬性的值域為非負,xsd:nonNegativeInteger為rdfs中預定義的數據約束類型。
語義
邏輯語義
邏輯程序語義包含:模型論和證明論。
語義是通過信息之間的交互產生的結果得到的,比如一個節點包含另一個節點,包含就是兩個節點之間的交互,這個交互產生的結果就是一個包含關系,這也就是語義。而我們無法從一句話的表面得到他的語義,這是因為一句話的表面這個東西是沒辦法計算的,就是不能用數學形式表達,所以沒辦法表達我們定義的語義(由數學定義的語義)。
模型論語義
就是定義一個模型,由模型的數學結果來表達一種意思。比如我定義了一個模型f,f(1) = 1,f(2) = 2,我這里可以用這個函數的結果值來表達一種語義,比如說是數量等等,反正就是數學定義好的一種表達。我是這么簡單理解的。
模型論語義提供的解釋就是一種映射關系,其中這個映射關系是人定義的,一旦你定義好這種映射關系,那么這個解釋就定了。ppt上一大坨東西不知道在干嘛。
OWL
OWL的位置是在rdfs上面,也就說是又一層升級。
我覺得進步的地方就是描述的類與類之間可以合並呀,可以互斥呀,或者實例之間、屬性之間這種關系,這樣做是可以把多個類合並起來,也是一大進步。
命名空間啥的就不說了,定義類變成了owl:Class,而基類是owl:Thing。
類和個體的實例:
類定義
<owl:Class rdf:ID="A">
<owl:Class rdf:ID="B">
<rdfs:subClassOf rdf:resource="#A">
</rdfs:subClassOf>
</owl:Class>
</owl:Class>
實例定義
<B rdf:ID="b">
</B>
可以看到,可以直接拿類名去實例化對象啦!
其實我之前寫過OWL的博客,就不繼續寫了,之前寫的還是蠻詳細的感覺,所以直接看之前的博客復習就OK。
描述邏輯
描述邏輯:是基於對象的知識表示的形式化,也叫概念表示語言或術語邏輯。
一階謂詞邏輯
就是is關系,famale(Mary),在這種邏輯下Mary是女性,表達的就是is關系。
然后就可以用離散數學里的推理來搞一些若非p則q之類的東西了。
顯然一階邏輯的這種is關系有有真值的,所以我們才能夠利用真值來推理,這種邏輯是比較簡單的邏輯,只能描述is關系,所以,我們需要更加復雜的描述關系來描述更復雜的關系。
描述邏輯的基本概念
個體:也就是實例,用常量描述,可以是rdf資源。
類:沒錯,就是我們理解的類。
屬性:沒錯,就是我們理解的屬性。
描述邏輯系統包括四個基本的組成部分:表示概念和關系的構造集、Abox術語集、Tbox斷言集、Tbox和Abox上的推理機制。
描述邏輯的語法:
首先肯定包含了一階邏輯,所以is那套是可以的。像這種is關系的術語集合稱為Abox術語集。
與之對應的呢,還有一個Tbox術語集,用來表達包含關系。
SROIQ
原文:
The extension of ALC with transitive roles is traditionally denoted by the letter S. Some other letters used in DL names hint at a particular constructor, such as inverse roles I, nominals O, qualified number restrictions Q.The letter R most commonly refers to the presence of role inclusions, local reflexivity Self
S:傳遞關系
R:自反關系
I:可逆關系
O:集合關系封閉
Q:表示集合有基數限制
描述邏輯系統包括四個基本的組成部分:表示概念和關系的構造集、Abox術語集、Tbox斷言集、Tbox和Abox上的推理機制。