

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、2024/4/2,1,第9章 知識庫系統(tǒng),9.1知識庫系統(tǒng)概論,2024/4/2,2,隨著計算機科學(xué)技術(shù)的發(fā)展,以計算機為工具的信息處理技術(shù)經(jīng)歷了數(shù)值計算階段和數(shù)據(jù)處理階段之后,已經(jīng)進入了知識管理與處理的階段,也就是說,計算機可以像人類一樣具有進行創(chuàng)造性思維活動的能力,即其具有智能。計算機具有智能是計算機發(fā)展史上的一個劃時代的標(biāo)志,意味著信息社會進入一個知識信息處理的新時代,而知識庫技術(shù)將使計算機應(yīng)用系統(tǒng)具有更多的智能。,2024/4/
2、2,3,由于知識庫是智能計算機的核心部件,同時又是其他智能信息處理系統(tǒng),例如智能機器人、智能視覺、自然語言理解及專家系統(tǒng)的關(guān)鍵部件和基礎(chǔ),因此成為當(dāng)前計算機科學(xué)研究的前沿,是一門正在逐步形成和迅速發(fā)展的新興學(xué)科。,2024/4/2,4,知識庫可以看作是數(shù)據(jù)庫理論研究的產(chǎn)物,更確切地講,知識庫是人工智能(AI)和數(shù)據(jù)庫(DB)結(jié)合的產(chǎn)物。如果說數(shù)據(jù)庫就是把數(shù)據(jù)從應(yīng)用程序中分離出來交予系統(tǒng)程序處理,則知識庫就是把知識從應(yīng)用程序中分離出來,交
3、由知識系統(tǒng)程序處理。從研究角度看,AI和DB技術(shù)的結(jié)合將產(chǎn)生未來信息系統(tǒng)新的基礎(chǔ)結(jié)構(gòu),從應(yīng)用角度看,兩者的結(jié)合最終將產(chǎn)生新一代信息系統(tǒng)。,2024/4/2,5,DB技術(shù)對AI的意義在于幫助AI系統(tǒng)規(guī)模進升到實用水平,而AI技術(shù)對DB的意義體現(xiàn)在以DB為基礎(chǔ)的信息系統(tǒng)可以增加強有力的表達和推理能力,同時,對數(shù)據(jù)庫理論、功能、性能和數(shù)據(jù)庫技術(shù)擴展等都可以起到推進作用。,2024/4/2,6,9.1.1 知識的概念,1.數(shù)據(jù)、信息與知識●
4、數(shù)據(jù) 數(shù)據(jù)是對事實的一種表達形式,包括數(shù)字、字符和圖形。數(shù)據(jù)可以通過人工或自動化裝置進行處理?!?信息 信息是對人有用的,能夠影響人們行為的數(shù)據(jù)。信息通過對數(shù)據(jù)加工處理而產(chǎn)生?!?知識 知識是人類對客觀規(guī)律的認識,是系統(tǒng)的有條理的信息。例如,攝氏39度是一個數(shù)據(jù),如果用來表示一個人體溫,則成為一種信息;對于醫(yī)生或具有保健常識的人來說,如果一個人的體溫達到攝氏39度,則其正在發(fā)燒,需要及時治療,這就稱為一種知識。,2024/4/2
5、,7,2.知識的要素知識的要素是指構(gòu)成系統(tǒng)知識集合必須的基本知識元素,其中包括事實、概念和規(guī)則?!?概念 概念給出知識的最基本內(nèi)容,是知識的最底層基礎(chǔ),通常以名詞形式出現(xiàn),例如花,紅色,太陽,風(fēng),雨等。,2024/4/2,8,● 事實 事實是知識所表示的有關(guān)問題涉及到的事物、環(huán)境的常識性知識,如事物的分類、屬性、事物之間的關(guān)系、科學(xué)事實、客觀事實等。事實建立了概念之間的聯(lián)系。事實是靜態(tài)地為人們所共享、最低層次——0層的知識,通常以
6、“……是……”的形式出現(xiàn)。,2024/4/2,9,● 規(guī)則 規(guī)則由事實組成,建立了事實間的聯(lián)系。規(guī)則是有關(guān)問題中與事物的行動、動作相聯(lián)系的因果關(guān)系知識,這種知識是動態(tài)的,通常以“如果……則……”的形式出現(xiàn)。例如啟發(fā)式規(guī)則:如果下雨,則出門帶傘。,2024/4/2,10,3.知識的類型(1)過程型知識 (2)描述型知識 ● 事實知識 ●判斷型知識 (3)元知識● 組織知識的元知識 ● 利用知識求解問題方向的元知識 ●從知識
7、源獲取知識的元知識,2024/4/2,11,9.1.2知識庫 知識庫管理系統(tǒng)和知識庫系統(tǒng),1.知識庫從知識存儲的角度來看,知識庫是知識的集合。當(dāng)然,這些知識包括概念、事實與規(guī)則。由于概念一般均包含在事實內(nèi),實際上知識庫中應(yīng)當(dāng)包含事實與規(guī)則兩個部分,而僅由事實組成的知識庫只能認為是廣義的知識庫。,2024/4/2,12,,2.知識庫管理系統(tǒng)知識庫是知識的集合,當(dāng)知識以一定結(jié)構(gòu)方式存儲并具有一定共享性和持久性,且這種集合的元素數(shù)量很大時
8、就需要進行管理,管理知識庫的計算機軟件就稱為知識庫管理系統(tǒng)(knowledge base management system, KBMS).,2024/4/2,13,知識庫管理系統(tǒng)應(yīng)當(dāng)具有以下功能:● 支持傳統(tǒng)數(shù)據(jù)庫管理系統(tǒng)的一切功能● 具有一種對知識進行操縱和處理的描述性語言這種觀點是Ulman在其名著“Principle of database and knowledge system”中提出的。,2024/4/2,14,目前
9、,一般知識庫管理系統(tǒng)可以用如下的幾個方面來刻畫其特性。(1)KBMS所管理的知識僅限于事實和規(guī)則兩種。(2)KBMS應(yīng)能管理大量的知識(3)KBMS所采用語言大多用邏輯語言,即用謂詞表示(4)KBMS的核心是一個推理機制(inference engine),它完成對知識的操縱,其中包括對知識的一致性校驗,知識的演繹檢索。,2024/4/2,15,3.知識庫系統(tǒng),如果一個系統(tǒng)具有使用計算機所存儲的知識對輸入數(shù)據(jù)進行解釋,生成作業(yè)假
10、說并對其進行驗證的功能,則稱該系統(tǒng)為一個知識庫系統(tǒng)(knowledge base system,KBS)。按照上述知識庫系統(tǒng)概念,知識庫系統(tǒng)中知識,是系統(tǒng)本身進行推理過程中所利用的信息,而不是提供給系統(tǒng)使用者的信息。由此可以知道,知識庫系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的重要區(qū)別之處在于,它并非向用戶提供查詢的信息,而是提供根據(jù)數(shù)據(jù)輸入數(shù)據(jù)信息通過知識推斷而得到的結(jié)果。,2024/4/2,16,從邏輯構(gòu)成上來看,知識庫系統(tǒng)的基本組成情況如下圖 所示。,
11、,2024/4/2,17,從具體資源組成上來看,知識庫系統(tǒng)是一種資源的集成,它包括硬件、軟件、信息和有關(guān)人員,具體有如下內(nèi)容:知識庫及相應(yīng)的存儲機構(gòu)知識庫管理系統(tǒng)及相應(yīng)的機器知識獲取機構(gòu)及相應(yīng)的人員(包括知識工程師)知識庫管理員。,2024/4/2,18,4.知識庫系統(tǒng)實現(xiàn)的關(guān)鍵技術(shù),● 知識表示 ● 知識利用 ● 知識獲取,2024/4/2,19,9.1.3知識庫語言,研究知識庫系統(tǒng)十分重要的一點就是研究知識庫語言,從數(shù)據(jù)
12、庫領(lǐng)域引進AI技術(shù)的角度,對知識庫語言的研究主要集中在邏輯語言上,這是因為邏輯語言接近于自然語言,具有良好表達能力與推理能力,比較符合知識庫系統(tǒng)的要求。目前用作知識庫邏輯語言的主要分兩類:以Prolog和以Datalog為代表。當(dāng)今國際上領(lǐng)先的兩個知識庫試驗系統(tǒng)NAIL和NU-Prolog所使用的知識庫語言都是由Datelog和Prolog擴充的。,2024/4/2,20,1.PrologProlag是一種基于一階謂詞的邏輯程序設(shè)計語
13、言,它由R.Kowalskv和A.Colmerauer首先提出,它在AI和知識庫的實現(xiàn)技術(shù)中具有重要作用。我們知道,數(shù)理邏輯的一種形式是一階謂詞演算,一階謂詞演算的一種形式是子句,子句的一種形式是Horn子句。任一種子句形式描述的邏輯表達式都可以用Horn子句的形式來描述。而Prolog語言作為數(shù)據(jù)庫系統(tǒng)中演繹推理公理系統(tǒng),具有很強的邏輯描述能力和推理能力。它也使數(shù)據(jù)庫系統(tǒng)和知識庫系統(tǒng)兩者具有共同的堅實的數(shù)學(xué)基礎(chǔ)。,2024/4/2,2
14、1,作為一階謂詞的邏輯語言,Prolog在實現(xiàn)知識庫中具有如下特征:● 一階謂詞邏輯的語言是形式化的嚴格定義● 一階謂詞邏輯的語言十分簡單易懂● 邏輯公式不需要重復(fù)表達,與不同應(yīng)用無關(guān)● 事實、假設(shè)、推理、查詢、視圖和完整性約束條件都能以基于一階謂詞邏輯的Prolog表達。,2024/4/2,22,2.DatalogDatalog語言是Prolog語言的一種特殊形式,由于prolog語言是一種適應(yīng)面較為廣泛的通用語言,它在數(shù)據(jù)
15、庫、知識庫領(lǐng)域中雖然也能適應(yīng),但是也存在一定的不足之處,這主要是數(shù)據(jù)庫及知識庫領(lǐng)域中具有一定的特殊性,2024/4/2,23,●在知識庫中,知識個數(shù)是有限的——數(shù)量有限●在知識庫中,一般只有知識操作而很少有計算操作——操作受限因此在實際上需要對prolog進行一定的限制,使其在知識庫領(lǐng)域中發(fā)揮更大作用,而Datalog即是Prolog的一種適應(yīng)于知識庫的改進形式語言,是一種受限的Prolog語言,適用于知識庫。,2024/4/2,2
16、4,9.2傳統(tǒng)的知識表示模式,9.2.1知識表示基本概念知識表示是指知識的符號化,它包含兩層含義:用給定的知識結(jié)構(gòu),按一定的原則,組織表示知識;解釋所表示知識的意義。就其形式而言,知識表示就是用來組織求解某問題的一組描述約定。知識表示是人工智能和知識工程中的一個核心研究領(lǐng)域,是知識庫有效表示知識、運用知識和管理知識的關(guān)鍵技術(shù)。,2024/4/2,25,知識表示方法種類繁多,分類標(biāo)準(zhǔn)不盡相同,通常由直接表示、邏輯表示、產(chǎn)生式規(guī)則表示、語
17、義網(wǎng)絡(luò)表示、框架表示、腳本方法、過程表示、組合型知識表示方法、面向?qū)ο蟊硎痉椒ǖ?,其中主要的知識表示方法及其彼此間聯(lián)系如下圖 所示。,2024/4/2,26,,,2024/4/2,27,9.2.2知識的謂詞邏輯表示,在知識庫中目前大都采用“概念-事實-規(guī)則”三級層次的知識構(gòu)造體系。這種體系的知識表示方法也很多,在人工智能和知識工程領(lǐng)域?qū)W科中知識表示方法已經(jīng)成為一個專門領(lǐng)域。由于謂詞邏輯本身的很好的一些基本特點,當(dāng)前的知識庫系統(tǒng)中一般采用
18、謂詞邏輯表示方法。,2024/4/2,28,盡管其他知識表示方法各有千秋,但由于謂詞邏輯表示方法簡單,比較適合于知識庫中的知識構(gòu)造體系,具有較強的推理能力和相對較好的理論基礎(chǔ),在知識庫系統(tǒng)中被廣泛采用而作為一種主要的知識表示方法。,2024/4/2,29,在謂詞邏輯表示的知識構(gòu)造體系中,概念、事實與規(guī)則可分別用個體(或變元)、謂詞與謂詞公式表示,它們可使知識表示具有統(tǒng)一的結(jié)構(gòu)模式,以后還可以將謂詞進一步改造成某種具有結(jié)構(gòu)簡單的稱為Hom
19、邏輯的統(tǒng)一標(biāo)準(zhǔn)形式。,2024/4/2,30,9.2.3知識的產(chǎn)生式表示,產(chǎn)生式知識表示方法也稱為產(chǎn)生式規(guī)則知識表示方法。由于該表示方法是建立在因果關(guān)系基礎(chǔ)之上,可以方便的描述事實、規(guī)則和進行不確定性度量。,2024/4/2,31,,1.事實的表示事實可以看作是斷言一個語言變量的值或者多個語言變量間關(guān)系的陳述句。 一般用三元組(對象,屬性,值)或(關(guān)系,對象1,對象2)k來表示事實,其中對象就是語言變量。如果考慮不確定性就變化為用四
20、元組(對象,屬性,值,不確定度量值)來表示。這種表示在機器內(nèi)部的實現(xiàn)就是一張表。例如 對事實“老李今年40歲”即為(李,年齡,40),而“老趙和老張是同學(xué)”即為(同學(xué),張,李)。,2024/4/2,32,2.規(guī)則的表示規(guī)則表示是事物間的因果關(guān)系,以“if condition then action”的單一形式表示,其中condition部分成為前件,而action部分成為后件。產(chǎn)生式的一般形式為前件、后件。前件部分通常是一些事實的
21、合取與析取,而后件通常是某一事實。如果考慮不確定性,則需要另附加可信度量值。,2024/4/2,33,在自然界的各種知識單元中存在著大量的因果關(guān)系,這些因果關(guān)系轉(zhuǎn)化為前件和后件,用產(chǎn)生式規(guī)則表示非常方便。產(chǎn)生式規(guī)則與邏輯蘊含式非常相似,當(dāng)邏輯蘊含式 十 產(chǎn)生式的一種特殊形式,只能表示確定性的知識,其值只能是真或是假,在使用謂詞邏輯中的蘊含式的匹配規(guī)則必須是精確的。,2024/4/2,34,3.產(chǎn)生式系統(tǒng)結(jié)構(gòu)專家系統(tǒng)多是以產(chǎn)生式表示知識
22、,將一組產(chǎn)生式放在一起,讓它們相互匹配,協(xié)同工作,一個產(chǎn)生式的結(jié)論可以供另一個產(chǎn)生式作為前件使用,以這種方式求解的系統(tǒng)就稱為產(chǎn)生式系統(tǒng)。一個一般的產(chǎn)生式系統(tǒng)如圖9-4所示,有知識庫和推理機組成,而知識庫又由數(shù)據(jù)庫和規(guī)則庫組成。,2024/4/2,35,,,2024/4/2,36,9.2.4知識的語義網(wǎng)絡(luò)表示,語義網(wǎng)絡(luò)是一種用實體及其語義關(guān)系來表達知識的知識表達方式。從結(jié)構(gòu)上來看,語義網(wǎng)絡(luò)一般是由一些最基本的語義單元組成。這些最基本的語義
23、單元被稱為語義基元,這些語義基元是由有向圖表示的三元組(結(jié)點1,弧,結(jié)點2),如下圖所示。,2024/4/2,37,,,2024/4/2,38,其中,結(jié)點表示實體,代表各種事物、概念、情況、屬性、狀態(tài)、事件、動作等;弧是有方向和有標(biāo)注的,方向體現(xiàn)了結(jié)點所代表的實體的主次關(guān)系,即結(jié)點1為主,結(jié)點2為輔。弧線上的標(biāo)注表示它所連接的兩個實體之間的語義聯(lián)系。應(yīng)該注意在語義網(wǎng)絡(luò)中,弧的方向是不能隨意調(diào)換的。,2024/4/2,39,但多個語義基元
24、用相應(yīng)的語義聯(lián)系關(guān)聯(lián)在一起的時候,就形成了一個語義網(wǎng)絡(luò)。下圖是命題“小學(xué)生坐車去參觀”的語義網(wǎng)絡(luò)圖。,2024/4/2,40,,,2024/4/2,41,由語義網(wǎng)絡(luò)的結(jié)構(gòu)特點可以看出,語義網(wǎng)絡(luò)不僅可以表示事物的屬性、狀態(tài)、行為等,而且更適合于表示事物之間的關(guān)系和聯(lián)系。圖9-6表示的語義網(wǎng)絡(luò)圖既表示了小學(xué)生的所屬(性質(zhì)),又表示了小學(xué)生與“參觀”、“坐車”之間的聯(lián)系。事實于規(guī)則的語義網(wǎng)絡(luò)的表示結(jié)構(gòu)是相同的,區(qū)別在于弧上的標(biāo)注不一樣。,20
25、24/4/2,42,語義網(wǎng)絡(luò)表示法和產(chǎn)生式表示法之間有著對應(yīng)的表示能力。語義網(wǎng)絡(luò)基元是一種知識的單位,人腦的記憶是由存儲了大量的網(wǎng)絡(luò)基元來體現(xiàn)的。而產(chǎn)生式表示方法是以一條產(chǎn)生式規(guī)則作為知識單元的,各條產(chǎn)生式規(guī)則沒有直接的聯(lián)系。同樣從邏輯表示法來看,一個語義網(wǎng)絡(luò)相當(dāng)于一個二元謂詞。,2024/4/2,43,,例如,如果有謂詞邏輯表示法Relation(object1,object2),則用語義 網(wǎng)絡(luò)表示則為(object1,relatio
26、n,object2),也可以改寫為謂詞P(個體1,個體2),其中個體分別對應(yīng)于結(jié)點,而弧及其弧上的標(biāo)注的結(jié)點間關(guān)系由謂詞P來體現(xiàn)。再如,“小李和小王是同學(xué)”語義網(wǎng)絡(luò)如下圖所示。,2024/4/2,44,對應(yīng)的產(chǎn)生式表示法為If Li and Wang then classmate謂詞邏輯表示則為Classmat:Classmate(Li,Wang),,2024/4/2,45,9.2.5知識的框架表示,1.框架的基本概念框架(f
27、rame)是將某類對象的所有知識組織在一起的一種通用數(shù)據(jù)結(jié)構(gòu),而相互關(guān)聯(lián)的框架連接成框架系統(tǒng)。一個框架由框架名和若干個槽(slots)組成,槽值描述框架所表示實體的各個屬性。每個槽又可以由多個則面(faces)組成,各個側(cè)面從不同方面來描述槽的特性。,2024/4/2,46,槽值有四種填寫方式:● 由上下文提供;● 通過默認值隱含;● 通過屬性繼承獲得;● 通過附加過程推理得到。,2024/4/2,47,框架之間通過泛化聯(lián)系聯(lián)結(jié)
28、成上下層面的縱向聯(lián)系,還可以通過槽值為另一個框架名的嵌套聯(lián)結(jié)成橫向聯(lián)系。整個框架系統(tǒng)由縱、橫聯(lián)系成為一個具有層次的網(wǎng)絡(luò)結(jié)構(gòu),框架推理時由上下文中的數(shù)據(jù)選擇候選框架,通過上下文查詢、默認、繼承、附加過程等獲得屬性值,按照框架中各個槽的次序填入,使候選框架具體化,以生成一個描述當(dāng)前情況的實例。,2024/4/2,48,2.框架的構(gòu)造框架由一組描述事物各個方面的槽組成,每個槽擁有若干個說明槽值的不同類型的側(cè)面,每個側(cè)面具有不同的值??蚣艿幕?/p>
29、本組成如下述所示(Frame Name Frame Type(Slot1: Name Slot1: Type (Fact1: (Datum1))……(Factj: (Datumj)))……,2024/4/2,49,(Slotm: Name Slotm: Type (Fact1: (Datum1))……(Factj: (Datumj))))其中各個組成組成部分的意義介紹如下,2024/4/2,50,(1)Fram
30、e Name 知識庫內(nèi)框架的名稱(2)Frame Type 知識庫內(nèi)框架的類型,可以分為四類:Class—— 抽象概念的框架Instance ——具體實例的框架Fact ——事實框架Rule ——規(guī)則框架,2024/4/2,51,(3)Slot Name 槽名,槽是表示具有獨立語義的屬性單元(4)Slot Type 槽類型,具有兩種不同的類型:Relation Slot——關(guān)系槽,說明上下框架的聯(lián)系General Slo
31、t——普通槽,說明屬性,2024/4/2,52,(5)Facet 側(cè)面,表示屬性值的操作類型,常用操作有以下幾種:Value ——屬性值為常數(shù)If Needed—— 調(diào)用屬性值獲得過程Default—— 屬性值為默認值If Added—— 調(diào)用屬性值追加過程If Removed—— 調(diào)用屬性值刪除過程。(6)Datum 屬性值,或?qū)傩灾但@得過程名。,2024/4/2,53,3.事實的表示事實框架是一個具體事例,例如一個狀況
32、,一個概念、一個事件等,下面就是一個關(guān)于描述人、職工、教師的概念框架和具體的職工、教師實例框架的例子。,2024/4/2,54,例9-1人 class上位框架:生物下位框架:[職工,教師]性別:[男,女]年齡:[1,100]身高:IF-ADDED ASK體重:IF-NEEDED CALCULATE,2024/4/2,55,職工 class上位框架:人下位框架:[張,王,……]工種:[制造,裝配,電焊,……]工資:[
33、1000,5000]工齡:[1,40],2024/4/2,56,教師:class上位框架:人下位框架:[王老師,李老師,……]職稱:[助教,講師,……]教齡:[1,40]工資:[2000,8000]專業(yè):[英語,數(shù)學(xué),……],2024/4/2,57,李華 INSTANCE上位框架:職工性別:男年齡:24身高:1.73工種:制造工資:1500工齡:5年,2024/4/2,58,王麗 INSTANCE上位框架:
34、教師性別:女年齡:38身高:1.65體重:53公斤職稱:副教授教齡:15年工資:4500元專業(yè):英語,2024/4/2,59,4.規(guī)則的表示在框架系統(tǒng)中,規(guī)則知識框架的類型用Rule表示,類似于產(chǎn)生式規(guī)則表示,框架中具有if ,then兩個部分,分別由不同的槽來記述。If部分記述規(guī)則知識的條件,then部分記述規(guī)則的結(jié)論或者操作。,2024/4/2,60,例9-2 設(shè)有知識“如果一個人在大學(xué)工作,主要從事教學(xué)或科研工作
35、,并且學(xué)歷為研究生,則他就為教師”,其框架表示如下:職業(yè) RULEIF 工作單位:大學(xué)工作內(nèi)容:教學(xué)或科研文化程度:研究生THEN 該人是教師。,2024/4/2,61,9.4知識庫系統(tǒng)原理,當(dāng)前,知識庫系統(tǒng)中的知識一般分為事實和規(guī)則兩種,它們都用一階謂詞邏輯表示,而知識庫的推理規(guī)則采用一階謂詞邏輯中的證明論與模型論理論,基于這兩種理論都可以產(chǎn)生知識推演的算法,即以歸結(jié)原理為代表的基于證明論的算法和以魔集算法為代表的基于模型
36、論的算法。,2024/4/2,62,9.4.1知識庫系統(tǒng)中的一階謂詞邏輯表示,一階謂詞邏輯是知識表示的一種有效方法,它具有表示能力強、手法簡練,具有強大數(shù)據(jù)理論支撐。因此,目前知識庫系統(tǒng)大都用它作為知識表示工具。當(dāng)然,為了適應(yīng)知識庫系統(tǒng)的實際表示需要,在表示知識時往往對一階謂詞邏輯作一些必要的改造。,2024/4/2,63,1.七種基本符號個體常量符號 如a,b,c,……個體變量符號 如x,y,z,……函數(shù)符號 如f, g,h,…
37、…謂詞符號 如P,G,R,……聯(lián)結(jié)符號 ? ∧ ∨→ ?量詞符號 ? ?逗點與括弧符號“,”,“(”,“)”,2024/4/2,64,2.項●個體常量是項●個體變量是項●設(shè)f是n元函數(shù)符號,t1,t2,……,tn是項,則f(t1,t2,……,tn)是項●項由且僅由有限次使用上述步驟生成,2024/4/2,65,2.原子公式P是n元謂詞,t1,t2,……,tn是項,則P(t1,t2,……,tn)是原子公式,原子公式也稱
38、為原子。,2024/4/2,66,3.一階謂詞邏輯公式(公式)● 原子公式是公式● 如A,B是公式,則?A,A ∧B,A ∨B,A→B,A ?B是公式● 如A是公式,x為個體變量,則?x∈A和?x∈A是公式?!?公式由且僅由有限次經(jīng)過上述步驟生成。,2024/4/2,67,9.4.2子句,階謂詞邏輯公式的表示方法具有表達能力豐富和表示方法簡潔的優(yōu)勢,但其表示不夠規(guī)范,不太適合計算機中使用和處理,需要做必要的改造,使其具有一定的規(guī)
39、形式,這就是子句形式和Horn子句形式,簡稱為子句和Horn子句。,2024/4/2,68,1.子句(1)子句 具有下述形式的公式稱為子句A1∧A2∧…∧Ak →Ak+1∨Ak+2 ∨…∨An其中Ai為原子公式,2024/4/2,69,(2)公式化為子句集合 ① 將公式轉(zhuǎn)換為一階謂詞邏輯中的Skolem范式,Skolem范式是一種標(biāo)準(zhǔn)范式,具有下述形式: ?y1?y2…?ym?x1?x2…?xn(A11∨A12∨…
40、∨A1k1)∧(A21∨A22∨…∨A2k2) ∧……∧(Ar1∨Ar2∨…∨Arkr)其中Aij為原子公式或原子公式的否定。,2024/4/2,70,② 將出現(xiàn)有存在量詞約束變元換為某種約束函數(shù)(稱之為Skolem函數(shù))以取代存在量詞,經(jīng)過此種代換后,Skolem范式中僅出現(xiàn)有全稱量詞。,2024/4/2,71,③ 去掉Skolem范式中所有前綴,即所有全稱量詞,并只要做一個簡單的假定,即公式中所有變元均為全稱量詞化的。到此為止,
41、一個公式可以改造為如下形式之合取范式:(A11∨A12∨…∨A1k1)∧(A21∨A22∨…∨A2k2) ∧……∧(Ar1∨Ar2∨…∨Arkr),2024/4/2,72,④ 將上述合取范式中的合取項作適當(dāng)改造,這個合取項是個析取式。將析取式中的原子公式用交換律將其置換于子式的左部,而將所有原子公式否定用交換律置換于子式的右部,并且進一步將否定符號用對偶律提取括弧外從而構(gòu)成如下公式形式:(Bi1∨Bi2∨…∨Bik)∧? (Bik+1
42、∨Bik+2∨…∨Bik),2024/4/2,73,⑤ 進一步改造上式,用Q∨?P等價于P→Q可以得到如下公式形式Bik+1∧Bik+2∧…∧Bik→Bi1∨Bi2∨…∨Bik 此為子句形式。,2024/4/2,74,⑥ 進一步可以認為,(3)中的合取范式與(5)中形式的子句形式的子句集合的永真性是等價的。因此,可以認為任一個公式可以用子句集合表示。這樣,子句成為具有表示普遍性的一種合適形式,它具有表示方式單一,又具有蘊含形式,易
43、于進行知識推理,所以非常適合于在計算機中使用。,2024/4/2,75,一般,為表示方便起見,可以將子句定義中的形式改寫為如下形式:Ak+1Ak+2…An←A1A2… Ak或進一步將“←”替換成“:-”而得:Ak+1Ak+2…An:-A1A2… Ak,2024/4/2,76,子句表示有很多表示上的優(yōu)點,但也有不足之處,其主要之點是這種形式用于推理時其蘊含后件是析取式,這種析取式引起了推理結(jié)論的不確定性。為改變這種情況,瑞士數(shù)學(xué)家H
44、orn將子句作進一步改造,構(gòu)成一個子句的特殊形式,稱為Horn子句。,2024/4/2,77,9.4.3 Horn子句,1.Horn子句具有下述形式的子句稱為Horn子句:An ←A1A2……Ak或An: -A1A2……Ak,2024/4/2,78,2.Horn子句的基本特例Horn子句的幾個特例在以后討論中是有用的。● 斷言 當(dāng)Horn子句中n=1,則稱其為斷言,斷言具有下面形式An←或An:-也可以簡單的表示為An●
45、 假設(shè) 當(dāng)Horn子句中K=n,則稱其為假設(shè),假設(shè)具有下面形式←A1a2……Ak 或: -A1a2……Ak● 空子句 當(dāng)Horn子句中K=0,則稱其為空子句,空子句具有下面形式← 或 □,2024/4/2,79,9.4.4Datalog表示方法,Horn子句表示方法是較好的一種邏輯知識表示方法,以這種形式為基礎(chǔ)所研制的邏輯程序設(shè)計語言Prolog已經(jīng)被廣泛用于人工智能等各個領(lǐng)域。但是它在數(shù)據(jù)庫與知識庫的應(yīng)用中還需要略作修改。這種H
46、orn子句在數(shù)據(jù)庫和知識庫中的表示版本稱為Datalog。,2024/4/2,80,Datalog作為特殊的Horn子句,它滿足如下幾條限制:● Datalog中項僅由個體常量或個體變量組成,不含有函數(shù)● Datalog必須滿足安全性規(guī)則,2024/4/2,81,在數(shù)據(jù)庫或知識庫中,數(shù)據(jù)必須是有限的,任何出現(xiàn)有變量的地方必須作量的限制,否則這種表示形式在計算機內(nèi)會產(chǎn)生無法計算的現(xiàn)實。因此Datalog關(guān)系對其中出現(xiàn)的變量作量的限制。
47、Datalog的安全性規(guī)則具體表示是,在Datalog的變元中,或者出現(xiàn)變元為a(x=a)(此時變量受限),或者謂詞中變元受限,或者變元x=y而y受限。,2024/4/2,82,此外,為使Datalog使用方便,在其內(nèi)引入若干個內(nèi)部謂詞,即常謂詞。如x=y:Eq(x,y),x>y:G(x,y).目前,數(shù)據(jù)庫和知識庫中所使用的邏輯表示方法大都采用Datalog,2024/4/2,83,datalog中不含函數(shù)是為處理方便而加的限制
48、,但是在使用中往往會產(chǎn)生能力不夠強的缺點。因此有時也會引入帶有函數(shù)的Datalog表示方法,同樣Datalog不含否定符,在使用中也會出現(xiàn)類似問題,人們也引入“帶否定的Datalog”。在一般情況下我們不討論這些特殊的Datalog。,2024/4/2,84,9.4.5 .基于證明論的知識庫系統(tǒng),1.證明論要點 證明論(proof theory)是傳統(tǒng)數(shù)理邏輯的一個分支,它采用公理系統(tǒng)方式求解問題。在所討論的知識庫系統(tǒng)中,由于采用一階
49、謂詞邏輯作工具,因此主要討論一階謂詞邏輯證明論。在這種理論中必須建立公理系統(tǒng),這可以用下面方法完成。,2024/4/2,85,● 建立一組推理規(guī)則,一般推理規(guī)則是A,A→B可得B。● 定義一個證明過程,一般一個證明過程可以定義為一個公式序列,其中公式(K)可由公式(1)~(K-1)及公理通過推理規(guī)則得到。,2024/4/2,86,● 最后可得到公理系統(tǒng)的定理,一般,如有證明過程P:P1,P2,…,Pn其中Pi(i=1,2,…,n)
50、為公式,Pn即為由給定公理系統(tǒng)通過證明論過程而得到的定理。在給定公理后,通過證明過程而得到定理,這種求解問題的方法稱為證明論方法。,2024/4/2,87,多年來,人們希望能通過計算機自動實現(xiàn)證明過程,這就是定理的自動證明。1996年美國數(shù)理邏輯學(xué)家R..robinson證明了這個自動證明問題是“半可判定的”,即只要有解,就一定可以用自動求解方法獲得。與此同時,他還給出了自動證明的算法,此法就稱為歸結(jié)原理(resolution pri
51、ncple)。,2024/4/2,88,2.歸結(jié)原理下面以子句形式討論歸結(jié)原理設(shè)有子句S={E1,E2,……,En E}為公理,需要求證E為其定理,此時可以用歸結(jié)原理表示如下,2024/4/2,89,(1)將E取反得? E,將S與? E組成一個新的集合S’ ={ E1,E2,……,En,?E }(2)從? E開始在S’中不斷使用反駁法。反駁法是這樣一種方法,如設(shè)有子句:A,B:-C,DC,E:-A,F(xiàn)則必有B,E:-D,F(xiàn),
52、2024/4/2,90,這種方法表示,兩式“:-”不同邊子目標(biāo)相消而相同邊子目標(biāo)相增。上邊兩式中,A,C可相消,而左邊B與E相增,右邊D,F(xiàn)相增而得B,E:-D,F(xiàn)。(3)最后出現(xiàn)空子句 而結(jié)束,此時該定理已證。,2024/4/2,91,3.基于證明論推理機制在歸結(jié)原理中僅僅使用反證法即反駁法,比較容易在計算機上實現(xiàn),因此以歸結(jié)原理為算法基礎(chǔ),以Horn子句為表示形式的證明論求解方法在上個世紀(jì)60年代與70年代大為風(fēng)行,并且在pro
53、log中得到實現(xiàn)。,2024/4/2,92,在知識庫中用證明論方法作演繹推理以獲得新知識的過程:● 建立知識數(shù)據(jù)庫系統(tǒng)公理?!?建立基于歸結(jié)原理的推演機構(gòu)(inference engine)?!?利用公理與推演機構(gòu)進行知識的推演查詢。,2024/4/2,93,4.知識庫系統(tǒng)公理(1)特殊性公理,給出知識庫的環(huán)境要求(2)事實性公理,給出公理中的事實(3)演繹性公理,給出公理中的規(guī)則(4)特殊性公理主要有三條:,2024/4
54、/2,94,● 域封閉性公理 對知識庫中知識的個體變量做出了限制,即變量的變量域是有限域● 完全性公理 對知識庫中事實做出限制,即事實是有限的● 惟一命名公理 對知識庫中出現(xiàn)的個體常量命名進行限制,即它們的命名必須具有惟一性,2024/4/2,95,上述三條公理的后兩條事實上可以用另一條公理替代,該公理稱為“封閉世界公理”(closed world assumpton,CWA)。CWA的含義是,對某個謂詞以及依附該謂詞的一個指派,如
55、不是成真指派則必是成假指派。在知識庫中出現(xiàn)的與該謂詞相關(guān)的事實以外的所有指派都可以認為是成假指派。,2024/4/2,96,如有謂詞parent(x,y),并設(shè)知識庫中相應(yīng)的parent(x,y)的事實為parent(a,b)parent(c,d)parent(e,f)則認為除了上述三個事實外,其他對parent(x,y)的任意指派均為假,如praent(g,h)和parent(a,c)等。,2024/4/2,97,事實公理有知
56、識庫中的事實構(gòu)成,演繹公理由知識庫中的規(guī)則構(gòu)成。這樣,知識庫系統(tǒng)的公理體系就是由特殊性公理及知識庫中的事實與規(guī)則組成。由于目前基于歸結(jié)原理建立的這種推演機構(gòu)的具體實現(xiàn)算法較多,這里就不再做詳細介紹。,2024/4/2,98,9.4.6基于模型論的知識庫系統(tǒng),模型論(model theory)是傳統(tǒng)數(shù)理邏輯的一個分支,它使用模型作為問題求解工具,在知識庫系統(tǒng)中主要采用一階謂詞邏輯作為表示方法,因此稱為一階謂詞模型論。,2024/4/2,9
57、9,1.一階謂詞邏輯模型論一階謂詞邏輯模型論由下面的三元組組成:(L,M,∑)其中:(1)L表示語言,即指定模型所采用的數(shù)字語言,亦即是一種基于一階謂詞邏輯的邏輯語言。它由一些常量、變量、函數(shù)和謂詞等按照一階謂詞邏輯公式定義的要求所構(gòu)成。它的基本組成單元是子句。句子即是一階謂詞邏輯中的公式,如一個句子中變量均呈現(xiàn)約束狀態(tài),則稱該句子為語句。L語言為模型論理論提供了書寫語言。,2024/4/2,100,2)∑是用L語言所寫的一個句子集
58、合。一般而言,該句子呈語句形式,∑刻畫了所研究對象的普遍性規(guī)律。(3)M是一個解釋,稱為結(jié)構(gòu)或L-結(jié)構(gòu)。在L中是常量、函數(shù)、謂詞均可賦值,變量可阿確定值域。對于L中常量、函數(shù)和謂詞的一組賦值,變量的一種定義與指定稱為L的一個解釋,或稱為一個結(jié)構(gòu),因此M應(yīng)當(dāng)是如下的四元組:{A,Pi(i∈I),F(xiàn)j(j∈J),ck(k∈K)},2024/4/2,101,其中●A是一個非空集合,是L中所有變量的定義域。●Pi定義了L中謂詞:Pi(x
59、1,x2,……,xn)的一組成真指派或一個解釋,即Pi是一個由An到T的一個映射:Pi:An→ T (i=1,2,……,n)Pi(i=1,2,……,n)是L中出現(xiàn)的所有謂詞。,2024/4/2,102,●Fj定義了L中函數(shù)fj(t1,t2,……,tn)的一個解釋,即Fj是一個由Am到A的映射:Fj:Am→A (j=1,2,……,m)即f1,f2,……,fm是L中出現(xiàn)的所有函數(shù)。,2024/4/2,103,● ck定義了L中常量C
60、k的一個解釋,即ck給出了常量Ck的一個具體取值(k=1,2,……,p)c1,c2,……,cp是L中出現(xiàn)的所有常量。,2024/4/2,104,● L中∑可以有多種解釋,但人們感興趣的解釋是使∑為真的那些解釋。設(shè)∑={σ1,σ2,……,σn},其中σi是L中的句子,如果有解釋M使σi為真,則該M即是σi的一個模型,如果解釋M使所有σi(i=1,2,……,n)為真,則稱M是∑的一個模型,記為M ?∑模型論就是滿M ?∑足的三元組(L,
61、M,∑)的數(shù)學(xué)理論。,2024/4/2,105,2.模型論與知識庫系統(tǒng)在知識庫系統(tǒng)中用模型論中的模型思想作為獲取新的知識和方法。其基本思想是建立知識庫系統(tǒng)的模型論三元組(L,M,∑),其中L為Datalog,而為Datelog子句集合。由于datalog不含有函數(shù),此時M僅由三元組組成:(A,Pi,ck)。這種三元組在知識庫系統(tǒng)中的表示為:L是Datalog,∑是知識庫中的事實與規(guī)則,而M是滿足M ?∑的模型,即知識庫系統(tǒng)中演繹查詢的
62、結(jié)果。,2024/4/2,106,在模型論中M可以有多個,但并非都是演繹查詢的最好結(jié)果,只有那些具有最小范圍的解釋才是真正演繹查詢結(jié)果,這種解釋稱為最小解釋。,2024/4/2,107,例10-1 設(shè)有p(x)、q(x)和r(x)組成的知識庫如下:r(1)p(x):-q(x)q(x):-p(x)求出該知識庫所能演繹出的知識。,2024/4/2,108,用模型論方法求解。首先用L構(gòu)造∑如下:{r(1),p(x):-q(x),
63、q(x):-p(x)}接著構(gòu)造若干M如下:M1={p(1),q(2),p(2),p(3)},這是一個模型M2={q(1)},這不是模型M3={p(1)},這不是模型M4={p(1),q(1)},極小模型。,2024/4/2,109,M4是極小模型,因為任何比它更小的結(jié)構(gòu)(M2,M3)均不是模型。M4也是惟一極小模型,因為極小模型只有一個。此類惟一極小模型也稱為最小模型。這個模型結(jié)果與證明論中所推演的結(jié)果應(yīng)當(dāng)是一致的。例如,可以
64、用歸結(jié)原理得到如下結(jié)論。,2024/4/2,110,(:-p(1),p(1):-q(1)):-q(1)(,p(1):-q(1), :-q(1)):-r(1)(:-r(1), r(1):-) ) □由此可知p(1)和q(1)是演繹結(jié)果。這樣可以得到結(jié)論:“可以用模型論中最小模型作為知識庫系統(tǒng)中的演繹查詢結(jié)果”。,2024/4/2,111,9.5知識庫系統(tǒng)體系結(jié)構(gòu),當(dāng)前知識庫系統(tǒng)中涉及到的數(shù)據(jù)庫基礎(chǔ)平臺仍然是關(guān)系數(shù)據(jù)庫系統(tǒng)。知識庫系統(tǒng)
65、結(jié)構(gòu)包括語言形式,系統(tǒng)模式和系統(tǒng)功能等幾個方面。知識庫研究只有十多年的歷史,由于難于開發(fā)出實用系統(tǒng),知識庫系統(tǒng)的體系結(jié)構(gòu)一直在變化改進當(dāng)中,人們只能從歷史發(fā)展的角度來研究知識庫系統(tǒng)的體系結(jié)構(gòu)。,2024/4/2,112,圖9-9 知識庫三個研究階段的典型體系結(jié)構(gòu),,2024/4/2,113,圖9-9表示了知識庫單個階段的典型體系結(jié)構(gòu)。圖9-9(a)是第一階段的體系結(jié)構(gòu),語言是Prolog擴充了傳送SQL命令的內(nèi)部謂詞(如SQL()),數(shù)
66、據(jù)庫接口將SQL命令傳給DBMS執(zhí)行,并將結(jié)果以“每次一個元組”方式傳給Prolog解釋器。這類系統(tǒng)具有完整的Prolog和DBMS功能。,2024/4/2,114,圖9-9(b)是DATALOG研究階段的系統(tǒng),語言一般為DATALOG的某種擴充,語言訪問數(shù)據(jù)庫對用戶是透明的,并且數(shù)據(jù)的交換是以“每次一個集合”方式進行的,系統(tǒng)還實現(xiàn)了許多查詢優(yōu)化技術(shù)。這類系統(tǒng)不具有通用程序設(shè)計語言的能力。,2024/4/2,115,第三階段系統(tǒng)的體系結(jié)
67、構(gòu)有兩種:圖9-9(c)型的查詢語言與宿主語言是分開的,有不同的編程風(fēng)范,圖9-9(d)型的查詢語言與宿主語言是集成的,又用一種編程風(fēng)范。對用戶來說,查詢語言和宿主語言是透明的,這兩種系統(tǒng)都滿足了人們對知識庫系統(tǒng)的一般要求,是實用的系統(tǒng)。,2024/4/2,116,呱蓉揰旇鲺嬞老叜熶窮敃迭悵瓚頹駜哧犔筡系蔢榊媐愔繯媨慇膃裞卞錘鍍軸荒鑼鉕揆熇懯遀棗腵靄消慐尖繂繳龢鷐如晞參獦錈銙癝斠栔饄恐炵崬譛蜈殢稢煓蒝菣摪罧擃蜍輻楟淲蝙侌拼宩下白鲏雺穽髗
68、艜匌蔛靦鶇蚵壣蝴搏饌椗薾鐰醋鐵翊觬痗攴潒熘檻嗧噰幫誮凱倱橦轉(zhuǎn)腜揲飸?yīng)C鋓洟籫蹚怚椊蟷舵嚙蝻靬灣唉嫃甡嗻飭垶瑕誠涘譆螸阩茵奰慓犮誐諦鮾都梄小疸嬫裧鶑櫁齏尅仡椩儋檑鄲埻掗墩槧徺抉罒鐵劏諜槴憿潸癕顰檔倁桸茱蕢瞞瑤萳稗甈婡嚗亾髖滆虂睶鬗姇猑番玒磑趥欺礰疈茱詉蘋繎岇鑪瀀垻櫰曷瀝汎咊騾氜捰炃嚚睌姺夃堼惱雲(yún)瀻魪鷾忂鬛墯潈拯圀僯觼溋簉敁潨殤鰉玟鼡硾丞化曵疜蒞螠迺駠襲絇擴蒐箈姊筿麖墟嘯鵲忓扨稦犢粞噯皈攰廹倀竡佺糢獾釦粉鶤楗徯腞漜璂賦昲脇溱瓽鶃痰氆姭睛磵縭菐
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 知識庫系統(tǒng)
- 讀秀知識庫管理系統(tǒng)
- 讀秀知識庫管理系統(tǒng)
- 保險知識庫
- 鋼材知識庫
- 讀秀知識庫管理系統(tǒng)
- 財務(wù)成本知識庫
- 面向推薦系統(tǒng)的概念知識庫.pdf
- 基于知識庫的智能作業(yè)評判系統(tǒng).pdf
- 知識庫管理和發(fā)布系統(tǒng)設(shè)計開題報告
- 基于本體的知識庫系統(tǒng)研究.pdf
- 基于Oracle數(shù)據(jù)庫系統(tǒng)的知識庫建造.pdf
- 軍工工藝知識庫系統(tǒng)設(shè)計與開發(fā).pdf
- 基于知識庫的問答系統(tǒng)意圖捕獲.pdf
- 電腦高手必備知識庫
- 中日機構(gòu)知識庫對比研究
- 裝載機維修知識庫
- 整合申報項目問答知識庫
- 云制造平臺中基于知識庫分割的大規(guī)模知識庫整合研究.pdf
- 知識輔助系統(tǒng)的知識庫建立與知識提供的研究.pdf
評論
0/150
提交評論