人工智能 第6章 知識表示_第1頁
人工智能 第6章 知識表示_第2頁
人工智能 第6章 知識表示_第3頁
人工智能 第6章 知識表示_第4頁
人工智能 第6章 知識表示_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第第6章章 知識表示知識表示 第第6章章 知識表示知識表示 6.1 知識及其表示知識及其表示 6.2 框框 架架6.3 語義網絡語義網絡6.4 面向對象知識表示面向對象知識表示第第6章章 知識表示知識表示 6.1 知識及其表示知識及其表示 6.1.1 知識的概念 究竟什么是知識呢?我們認為: 知識就是人們對客觀事物(包括自然的和人造的)及其規(guī)律的認識,知識還包括利用客觀規(guī)律解決實際問題的方法和策略。 對客觀事物及其規(guī)律的認識,包括對事物的現象、本質、屬性、狀態(tài)、關系、聯系和運動等的認識,即對客觀事物的原理的認識。 利用客觀規(guī)律解決實際問題的方法和策略,包括解決問題的步驟、操作、規(guī)則、過程、技術

2、、技巧等具體的微觀性方法;也包括諸如戰(zhàn)術、戰(zhàn)略、計謀、策略等宏觀性方法。 所以,就內容而言,知識可分為(客觀)原理性知識和(主觀)方法性知識兩大類。 就形式而言,知識可分為顯式的和隱式的。 第第6章章 知識表示知識表示 6.1.2 知識表示 面向計算機的知識描述或表達形式和方法。 面向人的知識表示可以是語言、文字、數字、符號、公式、圖表、圖形、圖像等多種形式。這些表示形式是人所能接受、理解和處理的形式。但面向人的這些知識表示形式,目前還不能完全直接用于計算機,因此就需要研究適于計算機的知識表示模式。 具體來講,就是要用某種約定的(外部)形式結構來描述知識,而且這種形式結構還要能夠轉換為機器的內

3、部形式,使得計算機能方便地存儲、處理和利用。第第6章章 知識表示知識表示 6.1.3 知識表示的語言實現 上面談的知識表示僅指知識的邏輯結構或形式。要把這些外部的邏輯形式轉化為機器的內部形式,還需要程序語言支持。 原則上講,一般的通用程序設計語言都可實現上述的大部分表示方法。但使用專用的面向某一知識表示的語言更為方便和有效。因此,幾乎每一種知識表示方法都有其相應的專用實現語言。 例如,支持謂詞邏輯的語言有PROLOG和LISP,專門支持產生式的語言有OPS5,專門支持框架的語言有FRL,支持面向對象表示的語言有Smalltalk、C+和Java等,支持神經網絡表示的語言有AXON.第第6章章

4、知識表示知識表示 6.2 框框 架架 6.2.1 框架的概念 框架是一種結構模式,其一般形式是: | | | 其中槽值和側面值可以是數值、字符串、布爾值,也可以是一個動作或過程,甚至還可以是另一個框架的名字。 第第6章章 知識表示知識表示 例6.1 一個描述“教師”的框架:框架名:類屬:工作:范圍:(教學,科研;缺省:教學)性別:(男,女)學歷:(中師,高師)類型:(,) 可以看出,這個框架的名字為“教師”,它含有5個槽,槽名分別是“類屬”、“工作”、“性別”、“學歷”和“類型”。這些槽名的右面就是其值,如“”、“男”、“女”、“高師”、“中師”等等。其中“”又是一個框架名,“范圍”、“缺省”

5、就是側面名,其后是側面值,如:“教學”、“科研”等。 用括的槽值也是框架名。第第6章章 知識表示知識表示 例6.2 一個描述“大學教師”的框架:框架名:類屬:學歷:(學士,碩士,博士)專業(yè):職稱:(助教,講師,副教授,教授)外語:語種:范圍:(英,法,日,俄,德,) 缺省:英水平:(優(yōu),良,中,差)缺省:良描述一個具體教師的框架:框架名:類屬:姓名:李明性別:男年齡:25學歷:博士職稱:助教專業(yè):計算機應用外語:英水平:良部門:計算機系軟件教研室工作:參加工作時間:1995年8月工齡:當前年份-參加工作年份工資: 可以看出,兩個框架之間存在一種層次關系。一般稱前者為上位框架(或父框架),后者為

6、下位框架(或子框架)。當然,上位和下位是相對而言的。第第6章章 知識表示知識表示 6.2.2 框架的表達能力 由框架的形式可以看出,框架適合表達結構性的知識。所以,概念、對象等知識最適于用框架表示。其實,框架的槽就是對象的屬性或狀態(tài),槽值就是屬性值或狀態(tài)值。 框架還可以表示行為(動作),所以,有些過程性事件或情節(jié)也可用框架網絡來表示。第第6章章 知識表示知識表示 例6.4 關于房間的框架:框架名:墻數x1: 缺省:x1=4 條件:x10窗數x2: 缺省:x2=2 條件:x20門數x3: 缺省:x3=1 條件:x30前墻:(墻框架(w1,d1)后墻:(墻框架(w2,d2)左墻:(墻框架(w3,d

7、3)右墻:(墻框架(w4,d4)天花板:地板:門:窗:條件:w1+w2+w3+w4=x2d1+d2+d3+d4=x3類型:(,)第第6章章 知識表示知識表示 例6.5 機器人糾紛問題的框架描述。 圖61 機器人糾紛問題 框架名: 打人 -1動作:打動作發(fā)出者:羅賓動作接受者:蘇西后果:(打人- 2,哭泣- 1)框架名: 打人 -2動作:打動作發(fā)出者:蘇西動作接受者:羅賓后果:(打人- 1,哭泣- 2)框架名: 哭 -1動作:哭動作發(fā)出者:蘇西后果:(得意,懊悔 )框架名: 哭 -2動作:哭動作發(fā)出者:羅賓后果:心里平衡第第6章章 知識表示知識表示 產生式規(guī)則也可用框架表示。 例: 產生式 如果

8、頭痛且發(fā)燒,則患感冒。 用框架表示可為: 框架名: 前提:條件1:頭痛 條件2:發(fā)燒 結論:患感冒第第6章章 知識表示知識表示 6.2.3 基于框架的推理 基于框架的推理方法是繼承:子框架可以擁有其父框架的槽及其槽值。 實現繼承的操作有匹配、搜索和填槽。 匹配:問題框架同知識庫中的框架模式匹配。所謂問題框架,就是要求解某個問題時,先把問題用一個框架表示出來,然后與知識庫中的已有框架進行匹配。如果匹配成功,就可獲得有關信息。 搜索就是沿著框架間的縱向和橫向聯系,在框架網絡中進行查找。搜索的目的是為了獲得有關信息。 第第6章章 知識表示知識表示 6.2.4 框架的程序語言實現 PROLOG可方便地

9、實現框架。用PROLOG實現框架表示,一般采用含結構或表的謂詞來實現。因為框架實際上就是樹,而PROLOG的結構也是樹.表的元素個數和層數都不限定,可動態(tài)變化,因此,更適于表示一般的框架。例如,前面的“教師”框架用PROLOG可表示如下: frame(name(教師), kind_of(), work(scope(教學,科研),default(教學), sex(男,女), reco_of_f_s(中師,高師), type(“”,“”,“”). 第第6章章 知識表示知識表示 框架的通用表示形式參考:其中的subtreelist是遞歸定義的。按此定義所有框架都取統(tǒng)一的表示形式。 domains n

10、ame=name(string) body=body(subtreelist) subtreelist=subtree* subtree=st(string,subtreelist)database frame(name,body)clauses frame(name(“教師”), body(st(“類屬”,st(“”,), st(“工作”,st(“范圍”,st(“教學”,), st(科研,),st(缺省,st(教學,), st(性別,st(男,),st(女,), st(學歷,st(中師,),st(高師,), st(類型,st(,),st(,), st() 第第6章章 知識表示知識表示 6.3

11、 語義網絡語義網絡 6.3.1 語義網絡的概念 語義網絡是由節(jié)點和邊(也稱有向弧)組成的一種有向圖。其中節(jié)點表示事物、對象、概念、行為、性質、狀態(tài)等;有向邊表示節(jié)點之間的某種聯系或關系。例如圖是一個語義網絡。其中,邊上的標記是邊的語義。圖62 蘋果的語義網絡 第第6章章 知識表示知識表示 語義網絡的概念最先由Quillian提出來的(1968年,博士論文):把語義網絡作為人類聯想記憶的一個顯式心理模型。所以,語義網絡也稱聯想網絡。語義網絡可以劃分為五個級別:執(zhí)行級、邏輯級、認識論級、概念級和語言學級。七種類型: (1)命題語義網(包括分塊聯想網絡); (2)數據語義網:以數據為中心的語義網絡;

12、 (3)語言語義網:用于自然語言的分析和理解; (4)結構語義網:描述客觀事物的結構,常見于模式識別和機器學習等領域; (5)分類語義網:描述抽象概念及其層次; (6)推理語義網:是一種命題網,但它已在某種程度上規(guī)范化,更適于推理; (7)框架語義網:與框架相結合的第第6章章 知識表示知識表示 6.3.2 語義網絡的表達能力 語義網絡不僅可以表示事物的屬性、狀態(tài)、行為等,而且更適合于表示事物之間的關系和聯系。而表示一個事物的層次、狀態(tài)、行為的語義網絡,也可以看作是該事物與其屬性、狀態(tài)或行為的一種關系。 抽象地說,語義網絡可表示事物之間的關系。因此,關系(或聯系)型的知識和能化為關系型的知識都可

13、以用語義網絡來表示。 智能系統(tǒng)專家思維專家知識困難問題專家系統(tǒng)是一種能解決具有能模擬第第6章章 知識表示知識表示 1.實例關系 實例關系表示類與其實例(個體)之間的關系。這是最常見的一種語義關系。例如,“小華是一個大學生”就可表示為圖64。其中,關系“是一個”一般標識為“is-a”,或ISA。小華大學生ISA第第6章章 知識表示知識表示 2.分類(或從屬、泛化)關系 分類關系是指事物間的類屬關系,圖65就是一個描述分類關系的語義網絡。其中下層概念節(jié)點除了可繼承、細化、補充上層概念節(jié)點的屬性外,還出現了變異的情況:鳥是鴕鳥的上層概念節(jié)點,其屬性是“有羽毛”、“會飛”,但鴕鳥的屬性只是繼承了“有羽

14、毛”這一屬性,而把鳥的“會飛”變異為“不會飛”。其中,關系“是一種”一般標識為“a kind of”或AKO。第第6章章 知識表示知識表示 3.組裝關系 如果下層概念是上層概念的一個方面或者一部分,則稱它們的關系是組裝關系。例如圖66所示的語義網絡就是一種聚集關系。其中,關系“一部分”一般標識為“a part of”。桌子桌腿桌面一部分a part of第第6章章 知識表示知識表示 4.屬性關系 屬性關系表示對象的屬性及其屬性值。如圖表示simon是一個人,男性,40歲,職業(yè)是教師。 PersonsumonISA男40教師sexageprofession第第6章章 知識表示知識表示 張三計算機

15、學會是成員5.集合與成員關系 意思是“是的成員”,它表示成員(或元素)與集合之間的關系。例如,“張三是計算機學會會員” 。其中,關系“是成員”一般標識為“a-member-of”。 第第6章章 知識表示知識表示 第第6章章 知識表示知識表示 6.邏輯關系 如果一個概念可由另一個概念推出,兩個概念間存在因果關系,則稱它們之間是邏輯關系。圖69所示的語義網絡就是一個邏輯關系。 雨天外出ANDOR帶雨披帶雨傘則第第6章章 知識表示知識表示 7.方位關系 在描述一個事物時,經常需要指出它發(fā)生的時間、位置,或者指出它的組成、形狀等等,此時可用相應的方位關系語義網絡表示。例如事實: 張宏是石油學院的一名助

16、教; 石油學院位于西安市電子二路; 張宏今年25歲。 電子2路石油學院張宏助教西安市區(qū)25歲位于工作在職務屬于年齡第第6章章 知識表示知識表示 8.所屬關系 所屬關系表示“具有”的意思。例如“狗有尾巴”圖611 表示所屬關系的語義網絡 狗尾巴have第第6章章 知識表示知識表示 語義網絡中的語義關系是多種多樣的,一般根據實際關系定義。如常見的還有before、after、at等表示時間次序關系和located-on、located-under等表示位置關系。進一步,還可對帶有全稱量詞和存在量詞的謂詞公式的語義加以表示。 語義網絡實際上是一種復合的二元關系圖。網絡中的一條邊就是一個二元關系,而整

17、個網絡可以看作是由這些二元關系拼接而成。第第6章章 知識表示知識表示 還可以從語句角度來考察語義網。 例如,對于如下的語句(或事件): 小王送給小李一本書。 用語義網絡可表示如圖,其中S代表整個語句。這種表示被稱為是自然語言語句的深層結構表示。 送書小王小李書giverrecipientSobject第第6章章 知識表示知識表示 語義網絡表示用謂詞公式表示的形式語言語句。例如: x(student(x)read(x,三國演義) 即“某個學生讀過三國演義”,其語義網絡表示為:studentISA三國演義readbookxread1ISAISAsubjectobject第第6章章 知識表示知識表示

18、 分塊語義網絡 studentISA三國演義readbookxread1ISAISAsubjectobjectRGSISAFA“每個學生都讀過三國演義”:其語義網絡表示為:) ,()(三國演義xreadxstudentx第第6章章 知識表示知識表示 6.3.3 基于語義網絡的推理 基于語義網絡的推理也是繼承。繼承也是通過匹配、搜索實現的。問題求解時,首先根據待求問題的要求構造一個網絡片斷,然后在知識庫中查找可與之匹配的語義網絡,當網絡片斷中的詢問部分與知識庫中的某網絡結構匹配時,則與詢問處匹配的事實,就是問題的解。 蘋果x富士 特點AKO 語義網絡片段 第第6章章 知識表示知識表示 6.3.4

19、 語義網絡的程序語言實現 由 于 語 義 網 絡 是 一 個 二 元 關 系 圖 , 所 以 用PROLOG可方便地實現語義網絡知識表示。 例如,圖61所示的語義網絡用PROLOG可表示如下: a_kind_of(蘋果,水果). taste(蘋果,甜). a_kind_of(富士,蘋果). intro_from(富士,日本). is_a(日本,亞洲國家). 第第6章章 知識表示知識表示 a-kind-of(秦冠,蘋果). produ-in(秦冠,陜西). is-located-at(陜西,中國西部). a-part-of(中國西部,中國). 也可以表示為 arc(a-kind-of,蘋果,水果

20、). arc(taste,蘋果,甜). arc(a-kind-of,富士,蘋果). arc(intro-from,富士,日本). arc(is-a,日本,亞洲國家). 第第6章章 知識表示知識表示 arc(a-kind-of,秦冠,蘋果). arc(produ-in,秦冠,陜西). arc(is-located-at,陜西,中國西部). arc(a-part-of,中國西部,中國). 也可以將一個網絡或網絡片段組織在一個事實中。例如: net1( a-kind-of(“蘋果”,“水果”),taste(“蘋果”,“甜”),a-kind-of(“秦冠”,“蘋果”),produ-in(秦冠,陜西).

21、 第第6章章 知識表示知識表示 6.4 面向對象知識表示面向對象知識表示 近年來,在知識表示領域則出現了面向對象的知識表示方法。 面向對象技術中的核心概念是對象和類。對象可以泛指一切事物,類則是一類對象的抽象模型。反之,一個對象是其所屬類的實例。通常,在面向對象的程序設計語言中,只給出類的定義,其對象由類生成。 類的定義中就說明了所轄對象的共同特征(屬性、狀態(tài)等)和行為。特征用變量表示,行為則是作用于這些特征和作用于對象的一組操作,如函數、過程等。這些操作一般稱為方法。這樣,一個類將其對象所具有的共同特征和操作組織在一起,統(tǒng)一進行定義,以供全體對象共享。即當給類中的特征變量賦予一組值時,則這組值連同類中的方法,就構成了一個具體的對象。第第6章章 知識表示知識表示 例 C+中一個雇員類和經理類的定義。 class Employee privite: char *Name; int Age; int Salary; public: Employee(char*name,int age,int salary); Employee(); void Change(int age,int salary); void Retire(); 第第6章章 知識表示知識表示 Em

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論