- 人工智能通識基礎
- 魏明強 宮麗娜 唐金輝 張道強 黃圣君
- 22905字
- 2025-08-07 15:25:26
第2章 知識表示學習
人類的智能活動,如語言理解、邏輯推理和決策制定,依賴于對知識的深刻理解和靈活應用。同樣,人工智能系統若要模擬人類的智能行為,必須具備從復雜數據中學習、組織和運用知識的能力。在人工智能領域,知識不僅是信息的集合,更是智能系統進行理解、推理和決策的基石。知識表示學習已逐漸成為提升智能系統能力的關鍵驅動力。
掌握知識表示學習,不僅能夠幫助我們深入理解人工智能的核心原理,還能為我們開發更加智能和可靠的應用提供堅實的理論基礎。基于這一認識,本章將首先探討知識表示的基本概念和方法,闡明如何將知識表示為計算機可處理的形式;接著深入分析知識表示學習的主要技術,包括一階謂詞邏輯表示法、產生式表示法、框架表示法、語義網絡表示法和知識圖譜表示法等;最后對不同的知識表示學習方法進行比較,展望其未來發展方向,并討論如何通過創新的學習方法進一步增強人工智能的智能化能力。
2.1 知識與知識表示基本概念
在探討知識表示學習之前,首先需要理解什么是“知識”及如何進行“知識表示”。知識不僅是信息和數據的簡單積累,還包含了對世界的理解、規律的總結及在特定情境下的應用能力。對于人工智能系統而言,知識是驅動其理解、推理和決策的核心,而知識表示則是將這些復雜的概念和關系以計算機能夠理解和處理的形式加以表達的過程。本節將圍繞知識與知識表示的基本概念展開。
2.1.1 知識的概念
在探討數據、信息、知識與智慧時,經常會遇到這樣的表述:“數據海量增長,信息卻顯得稀缺”“置身于信息的汪洋,卻因缺乏知識而迷失方向”。那么,數據、信息、知識及智慧的本質究竟是什么呢?
以醫學為例,數據具體化為患者的生理指標、病歷記錄或醫學圖像。這些數據經歷整理、分析和解釋后,轉換為關于患者健康狀態、疾病診斷路徑及治療方案的信息。醫生則憑借自身豐富的實踐經驗、專業知識與臨床技能,將這些信息轉換為個性化的治療方案,這便是知識在醫療實踐中的展現。更進一步,智慧則體現在醫生對復雜病例的綜合考量、治療策略的靈活應變以及對患者全方位的關懷,旨在達成最佳的治療效果。
據此,可以得出數據、信息、知識和智慧的概念。
●數據是對現實世界中客觀事物的符號表示,通常以文本、數字、圖形、圖像、聲音或視頻等形式存在,本身并沒有明確的意義或用途,僅為未經加工的素材。
●信息是數據經過處理與解讀后的產物,具有使用價值。通過對數據進行整理、分析和解釋,數據之間建立了聯系,從而形成有意義的結果。信息包含上下文語境,可以用于描述、解釋和預測。
●知識是通過對信息進行系統化訓練、提煉、研究、總結和分析后得出的結構化信息,是人們在長期的生活及社會實踐中、在科學研究及實驗中積累起來的對客觀世界的認識與經驗。
●智慧是知識的高級應用,表現為在特定情境下靈活運用知識解決問題的能力,以及對復雜問題的深刻洞察與創造性應對,旨在實現既定目標。
圖2-1直觀展示了這一遞進關系:數據通過組織與分析轉換為信息,信息再經過解釋與評價提煉為知識,而知識則通過理解與歸納升華為智慧。

圖2-1 數據、信息、知識與智慧
2.1.2 知識的特性
明確知識的概念后,本小節探討其特性,以深入理解知識在人工智能中的作用。通常,知識具有相對正確性、不確定性、可表示性與可利用性等特點。
1.相對正確性
知識的相對正確性是指知識必須在特定條件和特定環境下才是正確的。這意味著,知識的正確性往往依賴于特定的條件和環境。以“1+1=2”為例,這一數學真理在十進制體系中無疑是正確的,但若在不同的進制系統(如二進制)中進行運算,則可能不再適用。在人工智能領域,為了提高計算效率,通常會根據具體問題的需求對知識規則進行精簡和定制。在這種情況下,知識的正確性只需滿足問題解決的要求即可。以一個小型動物園為例,假設動物的種類有限且明確,當判斷動物是否具備飛行能力時,“如果該動物會飛,那么它就是信天翁”這一規則在特定的動物集合內是正確的,因為它準確反映了集合內唯一具備飛行能力的動物特征。這便是知識相對正確性的實際應用表現。
2.不確定性
知識的不確定性是指知識并不總是有“真”與“假”這兩種狀態,而是在“真”與“假”之間還存在許多中間狀態,伴隨著不同程度的可信度(置信度)。這種不確定性的根源可以歸結為以下方面。
●隨機性引起的不確定性:某些知識建立在隨機事件的基礎之上,這些事件的結果并不固定,因此所形成的知識自然帶有不確定性。例如,“頭痛且流鼻涕可能是感冒的癥狀”這一表述,其中的“可能”實際上反映了“頭痛且流鼻涕”與“患了感冒”之間的一種不確定的因果關系,具有“頭痛且流鼻涕”的人不一定都“患了感冒”。因此它是一條具有不確定性的知識。
●模糊性引起的不確定性:在自然界和人類社會中,對于許多現象和概念,由于其本質的模糊性,使得界定它們變得困難且不夠明確。這種模糊性往往導致我們在描述這些現象時無法做到精確,進而引發不確定性。例如,使用“高”與“不高”這樣的形容詞描述人的身高時并沒有明確的邊界,某個特定的身高既可能被認為“高”,也可能被認為“不高”,這取決于語境或標準。因此,這種模糊性使得相關的知識和結論無法給出絕對的確定性。
●經驗引起的不確定性:許多知識來源于專家的長期實踐和經驗積累,這些經驗雖然有效且實用,但往往難以精確量化和表述。專家能夠依靠豐富的經驗解決復雜問題,然而要將這些經驗轉換為明確、精確的規則或系統化的知識卻并非易事。此外,經驗本身往往伴隨著不精確性和模糊性,這進一步導致知識的不確定性。因此,在專家系統中,大部分知識都具有不確定性這一特點,如“老馬識途”。
●不完全性引起的不確定性:人類對客觀世界的認識是通過感性經驗的逐步積累,逐漸升華為理性認識,進而形成知識。因此,知識本身有一個不斷完善和深化的過程。在這一過程中,可能由于客觀事物展現得不夠充分,導致人們對它的認識不夠全面;或者盡管事物已經展露出許多特征,但人們尚未把握其本質,從而導致認識的不準確。換句話說,人們對一些事物尚未完全清楚明了,因此無法確定其本質。
3.可表示性與可利用性
知識的可表示性是指知識可以用適當形式表示出來,這些形式包括但不限于語言、文字記載、圖形描繪乃至復雜的神經網絡模型等。這一過程確保了知識能夠被有效地存儲于各種媒介之中,如書籍、數據庫、數字平臺乃至人工智能系統中,同時也促進了知識的廣泛傳播與交流。
知識的可利用性是指知識可以被利用。在日常生活中,人們無時無刻不在運用自己的知識儲備來應對挑戰、做出決策,這充分展示了知識的可利用性。從簡單的算術運算到復雜的科學研究,從日常生活的瑣事處理到國家戰略的規劃實施,都離不開對知識的有效利用。
2.1.3 知識表示
在人類世界,知識以豐富多樣的形式存在。然而,當我們試圖將這些寶貴的知識傳授給機器,讓它們也能理解、學習和應用時,就面臨一個重大挑戰:機器并不能直接理解人們習慣的知識表示方式。為了跨越這一鴻溝,讓機器能夠“讀懂”并利用人類的知識,需要一種轉換機制,即知識表示。
知識表示研究在機器中如何用最合適的形式對知識進行描述,將人類知識形式化或格式化,以便在機器中存儲和使用知識。知識表示,就是將人類知識進行形式化或格式化的過程。它像一座橋梁,連接了人類思維與機器智能,使得機器能夠像人類一樣理解世界、解決問題并創造新知。知識表示可看成一組事物的約定,以把人類知識表示成機器能處理的數據結構。知識表示是一種數據結構與控制結構的統一體,既考慮知識的存儲又考慮知識的使用。
由于對人類大腦中知識形成和知識結構的機制還沒有全部研究清楚,因此沒有通用的知識表示形式。目前,研究人員根據具體問題及所屬領域的特性,開發了多樣化的知識表示策略。針對同一問題,可能存在多種不同的表示方式,而每種方式在解決問題的效率與難度上往往有所差異。選擇一個合適的知識表示方法,有利于知識的存儲和運用,使問題求解變得容易。在建立一個具體的智能系統時,究竟采用哪種表示模式,目前還沒有統一的標準,也不存在一個萬能的知識表示模式。
知識表示作為人工智能領域的核心概念,大體上可以劃分為三大類別:符號主義、經驗主義及連接主義。符號主義以邏輯和符號系統為基礎,通過謂詞邏輯構建嚴密的推理體系,利用產生式系統模擬人類的決策過程,以及采用框架系統來組織和表達復雜的知識結構。經驗主義通常側重于從經驗數據中提取和表示知識,可能涉及狀態描述、特征提取等多種方式。連接主義則通過構建語義網絡或知識圖譜等結構,模擬人腦神經元之間的連接模式,利用語義網絡來捕捉概念間的語義關系,知識圖譜則進一步將實體、屬性及關系組織成圖狀結構,以更直觀和全面的方式表示及推理知識。
2.2~2.6節將深入探討幾種常用的知識表示學習方法,這些方法各具特色,適用于不同的應用場景和需求。通過了解和實踐這些知識表示技術,讀者可以更好地理解機器如何“思考”。
2.2 一階謂詞邏輯表示法
命題邏輯和謂詞邏輯是最早應用于人工智能的兩種邏輯。命題邏輯是最基本的邏輯系統,它處理的基本單元是命題,而謂詞邏輯則擴展了命題邏輯,能處理命題內部的個體、屬性和關系。它們在知識形式化表示方面,特別是在邏輯推理和自動證明方面發揮著重要作用,在人工智能的發展歷史中占據著重要地位。
一階謂詞邏輯是謂詞邏輯的一種特定形式,是最常用的邏輯系統,它允許量化的對象是個體,而不是函數或謂詞。換句話說,在一階邏輯中,量詞只能作用于個體,而不能作用于謂詞或函數。它是一種基于數理邏輯的表示方法,其中,數理邏輯可分為一階經典邏輯與非一階經典邏輯。一階經典邏輯是指一階經典命題邏輯和一階經典謂詞邏輯。非一階經典邏輯是指除經典邏輯以外的那些邏輯,如二階邏輯、多值邏輯、模糊邏輯等。
2.2.1 命題與命題邏輯
命題與命題邏輯,作為邏輯學的兩大基石,不僅在數學、哲學中占據重要位置,更在人工智能的發展歷程中扮演著至關重要的角色。它們提供了一種形式化的語言,用于精確地表示和推理知識,是構建智能系統不可或缺的工具。
1.命題
在探討命題與命題邏輯時,首先需要明確命題的基本概念。命題(Proposition)是一個非真即假的陳述句。判斷一個句子是否為命題,首先應該判斷它是否為陳述句,再判斷它是否有唯一的真值。沒有真假意義的語句(如感嘆句、疑問句等)不是命題。命題是具有真假意義的語句。命題代表人們進行思維時的一種判斷,或者是肯定,或者是否定。若命題的意義為真,則稱它的真值為真,記作T(True),如3<5。若命題的意義為假,則稱它的真值為假,記作F(False),如太陽從西邊升起。
一個命題可在一種條件下為真,在另一種條件下為假。如1+1=10,在二進制情況下是真值為T的命題,但在十進制情況下則是真值為F的命題。同樣,對于命題“今天是晴天”,也要根據當天的實際情況來決定其真值。
2.命題邏輯
命題邏輯是研究命題及命題之間關系的符號邏輯系統。在命題邏輯中,命題通常用大寫的英文字母表示,例如,可用英文字母P表示“西安是個古老的城市”這個命題。英文字母表示的命題既可以是一個特定的命題,稱為命題常量,也可以是一個抽象的命題,稱為命題變元。對于命題變元而言,只有把確定的命題代入后,它才可能有明確的真值。
“命題邏輯”是“謂詞邏輯”的基礎。在現實世界中,在特定情況下具有明確的“真”或“假”含義的陳述,在邏輯上稱為“命題”。例如:A.天在下雨;B.天晴;C.日照的天氣很宜人;D.我們在辛苦于遠程研修中。這些表達單一意義的命題稱為“原子命題”。
簡單陳述句表達的命題稱為簡單命題或原子命題。引入否定、合取、析取、條件、雙條件等聯結詞,可以將原子命題構成復合命題。可以定義命題的推理規則和蘊含式,從而進行簡單的邏輯證明。這些內容和謂詞邏輯類似,讀者可以參看有關書籍。
命題邏輯表示法有較大的局限性,它無法把所描述事物的結構及邏輯特征反映出來,也不能把不同事物間的共同特征表述出來。例如,對于“老李是小李的父親”這一命題,若用英文字母P表示,則無論如何也看不出老李與小李的父子關系。又如對于“李白是詩人”和“杜甫也是詩人”這兩個命題,用命題邏輯表示時,也無法把兩者的共同特征(都是詩人)形式化地表示出來。由于這些原因,在命題邏輯的基礎上發展起了謂詞邏輯。
2.2.2 謂詞
在邏輯推理中,面對需要深入剖析事物間的復雜關系及共同特征等挑戰時,命題邏輯顯得力不從心。為了更精準地描述世界,揭示事物間的內在聯系,邏輯學家巧妙地在命題邏輯的基礎上引入了謂詞邏輯。謂詞邏輯是基于命題邏輯中謂詞分析的一種邏輯,是在命題邏輯的基礎上進一步發展而來的,可以將命題邏輯視為謂詞邏輯的一種特殊形式。
一個謂詞可分為個體和謂詞名。個體表示某個獨立存在的事物或者某個抽象的概念。個體表示對象、概念或者事物,通常用小寫的英文字母表示。謂詞名用于刻畫個體的性質、狀態,或者個體間的關系。謂詞名是由使用者根據需要人為定義的,一般用具有相應意義的英文單詞表示,或者用大寫的英文字母表示,也可以用其他符號甚至中文表示。
謂詞的一般形式為
P(x1,x2,···,xn)
式中,P稱為謂詞名,x1,x2,···,xn為個體,謂詞中的個體數目稱為謂詞的元數。若x只有一個,則P(x)稱為一元謂詞,而P(x1,x2)稱為二元謂詞。
在謂詞中,個體可以為常量、變量或函數,如Greater(x,5)、Greater(sin(x),5)。若謂詞中的個體都為常量、變量或函數,則稱它為一階謂詞;如果個體本身是謂詞,則稱為二階謂詞;以此類推。例如“SMITH作為一個工程師為IBM工作”這個命題,可表示為二階謂詞Works(Engineer(SMITH),IBM),因為其中的個體Engineer(SMITH)是一個一階謂詞。本章主要介紹一階謂詞。
2.2.3 謂詞邏輯
在表達復雜語境時,如“有的人喜歡梅花,有的人喜歡菊花,還有的人既喜歡梅花又喜歡菊花”,基礎謂詞邏輯結構難以表達。為了更精確地描述這種復雜情況,通常可以借助命題邏輯或謂詞邏輯中的聯結詞與量詞,將簡單的命題組合成復合命題。具體而言,“有的人喜歡梅花”可以表示為
(?x)Like(x,flower1)
“有的人喜歡菊花”則為
(?x)Like(x,flower2)
而“還有的人既喜歡梅花又喜歡菊花”則表達為
(?x)(Like(x,flower1)∧Like(x,flower2))
將這三者通過邏輯或“∨”連接起來,就構成了能夠全面反映上述復雜語境的復合命題:
(?x)Like(x,flower1)∨(?x)Like(x,flower2)∨(?x)(Like(x,flower1)∧Like(x,flower2))
無論是命題邏輯還是謂詞邏輯,均可用聯結詞與量詞把一些簡單命題連接起來構成一個復合命題,以表示一個比較復雜的含義。
1.謂詞邏輯的聯結詞
簡單命題可通過“聯結詞”構成“復合命題”。聯結詞有5種,它們的優先級別依序為?、∨、∧、→、?。
1)?,“否定”或者“非”。它表示否定位于它后面的命題。?P為真,當且僅當P為假。
例如,小明不在1號房間內,表示為
?INROOM(XiaoMing,R1)
2)∨,“析取”或者“或”。它表示連接的兩個命題具有“或”關系。復合命題“A∨B”表示“A或B”。A∨B為假,當且僅當A、B同時為假。
例如,小明打籃球或踢足球,表示為
Plays(XiaoMing,Basketball)∨Plays(XiaoMing,Football)
3)∧,“合取”或者“與”。它表示連接的兩個命題具有“與”關系。復合命題“A∧B”表示“A與B”。A∧B為真,當且僅當A、B同時為真。
例如,我喜歡足球與籃球,表示為
Like(I,Basketball)∧Like(I,Football)
4)→,“蘊含”或者“條件”。“A→B”表示“A蘊含B”,即表示“如果A則B”。其中,A稱為條件的前件,B稱為條件的后件。A→B為假,當且僅當A為真,B為假。
5)?,“等價”或者“雙條件”。“A?B”表示“A當且僅當B”。A?B為真,當且僅當A、B同時為真或A、B同時為假。
以上聯結詞的真值由表2-1給出。
表2-1 謂詞邏輯聯結詞的真值表

2.謂詞邏輯的量詞
量詞表示個體與個體域之間的包含關系,謂詞邏輯中有兩個量詞,即全稱量詞(Universal Quantifier)和存在量詞(Existential Quantifier)。
全稱量詞?x:表示該量詞要求個體域中“所有的個體x”或“每一個個體x”都要遵從所約定的謂詞關系。
例如,“所有的風扇都是白色的”表示為
(?x)[FAN(x)→COLOR(x,WHITE)]
存在量詞?x:表示該量詞要求存在于個體域中的“某些個體x”或“某個個體x”要遵從所約定的謂詞關系。
例如,“有個風扇是黑色的”表示為
(?x)[FAN(x)→COLOR(x,BLACK)]
全稱量詞和存在量詞出現在同一個命題中時,量詞的次序將影響命題的意思。例如,
(?x)(?y)(Employee(x)→Manager(y,x))
表示“每個雇員都有一個經理”。而
(?y)(?x)(Employee(x)→Manager(y,x))
表示“有一個人是所有雇員的經理”。
又如(?x)(?y)LOVE(x,y)表示“每個人都有喜歡的人”。
而(?y)(?x)LOVE(x,y)表示“有的人大家都喜歡他”。
2.2.4 謂詞公式
事實上,謂詞公式是指由謂詞符號、常量符號、變量符號、函數符號以及括號、逗號等按一定語法規則組成的字符串的表達式。謂詞公式是通過一系列規則構建的,這些規則確保了公式的合法性和邏輯性。具體構造規則如下:
①單個謂詞是謂詞公式,稱為原子謂詞公式。
②若A是謂詞公式,則?A也是謂詞公式。
③若A、B都是謂詞公式,則A∧B,A∨B,A→B,A?B也都是謂詞公式。
④若A是謂詞公式,則(?x)A、(?x)A也都是謂詞公式。
⑤有限步應用①~④生成的公式也是謂詞公式。
在探討邏輯系統時,我們區分了命題邏輯與謂詞邏輯,兩者在解釋公式及確定真值的方式上存在顯著差異。
在命題邏輯中,對命題公式中各個命題變元的一次真值指派稱為命題公式的一個解釋。一旦命題確定后,根據聯結詞(如與、或、非)的定義,就可以通過邏輯運算計算出整個公式的真值(T或F)。例如,考慮命題A“這個整數是偶數”和B“這個整數是奇數”,我們可以構造公式C=A∨B,表示“這個整數要么是偶數要么是奇數”。在這個例子中,無論A和B的具體真值如何,C的真值始終為真(T),因為至少有一個命題(A或B)會成立。這種直接通過命題真值指派來求解公式真值的方法,是命題邏輯的核心特點。
與命題邏輯不同,在謂詞邏輯中,由于引入了個體變元和函數,其公式的復雜性和解釋方式都有所不同。這里不能簡單地通過真值指派來直接解釋公式,而是需要先明確個體變元和函數在特定個體域中的具體取值,再針對這些取值為謂詞指派真值。由于個體域和個體取值的多樣性,一個謂詞公式往往有多個可能的解釋,每個解釋都伴隨著一個特定的真值。以公式(?x)(P(x)→Q(x))為例,它表示“對于所有的x,如果x具有屬性P,則x也具有屬性Q”。在此,P(x)可能表示“x是學生”,Q(x)可能表示“x通過了考試”。為了解釋這個公式,我們首先設定個體域(如某班級的學生),然后針對每個個體(如Alice和Bob等)分別判斷P(x)和Q(x)的真值。如果對于個體域中的某個元素,如Bob,P為真而Q為假(Bob是學生,但沒通過考試),違反了“如果是學生,就通過了考試”的假設,則整個公式在該解釋下為假。
2.2.5 謂詞公式的性質
介紹了謂詞公式的構造規則之后,本小節通過展示謂詞公式所具備的一些基本性質來使讀者進一步深入理解其邏輯特性和應用潛力。這些性質揭示了謂詞公式之間的邏輯關系,為后續的邏輯推理和證明提供了重要依據。
1.謂詞公式的永真性、永假性
如果謂詞公式P對個體域D上的任何一個解釋都取得真值T,則稱P在D上是永真的;如果P在每個非空個體域上均永真,則稱P永真。同樣地,有以下定義:如果謂詞公式P對個體域D上的任何一個解釋都取得真值F,則稱P在D上是永假的;如果P在每個非空個體域上均永假,則稱P永假。比如,“對于任意的實數x,它的正弦值均小于5”,可以表示為Greater(sin(x),5),這個謂詞公式對于實數域上的任何一個值都取得真值,則Greater(sin(x),5)在實數上是永真的。
2.謂詞公式的永真蘊含
對于謂詞公式P與Q,如果P→Q永真,則稱公式P永真蘊含Q,記作P?Q,且稱Q為P的邏輯結論,P為Q的前提。
下面列出一些主要永真蘊含式。
(1)假言推理
P,P→Q?Q
即由P為真及P→Q為真,可推出Q為真。
(2)拒取式推理
?Q,P→Q??P
即由Q為假及P→Q為真,可推出P為假。
例如,P是“按下按鈕”,P→Q為“如果按下按鈕,則燈會亮”這一規則,且這一規則是正確的,已知Q為假(即燈沒有亮),則可以推出P為假(即按鈕沒有被按下)。
(3)假言三段論
P→Q,Q→R?P→R
即由P→Q,Q→R為真,可推出P→R為真。
例如,P→Q是“如果下雨,則地面會濕”,假設Q→R是“如果地面濕,則人們會穿雨靴”。已知P→Q和Q→R都為真,則可以推出P→R為真(即如果下雨,則人們會穿雨靴)。
(4)全稱固化
(?x)P(x)?P(y)
其中,y是個體域中的任一個體,利用此永真蘊含式可消去公式中的全稱量詞。
例如,假設(?x)P(x)是“所有的貓都是哺乳動物”,y是個體域中的一個特定個體,比如“湯姆”,則可以推出P(y)為真,即“湯姆是哺乳動物”。
(5)存在固化
(?x)P(x)?P(y)
其中,y是個體域中某一個可使P(y)為真的個體。利用此永真蘊含式可消去公式中的存在量詞。
例如,(?x)P(x)是“存在至少一只棕色的老鼠”,假設已經找到了這樣的一只老鼠,并稱之為“杰瑞”,則可以(在已知上下文中)說P(y)為真,其中y代表“杰瑞”,即“杰瑞是棕色的老鼠”。
3.謂詞公式的可滿足性、不可滿足性
對于一個給定的謂詞公式P,如果存在至少一個解釋,使得在該解釋下P的真值為真(T),則稱謂詞公式P是可滿足的。相反地,如果對于所有的解釋,謂詞公式P的真值均為假(F),則稱P是不可滿足的。
以謂詞公式(?x)(Like(x,icecream))為例,其中x代表某個人,個體域是所有人,這個公式表示,存在至少一個人x使得(Likes(x,icecream))為真。現在,假設我們考慮的實際個體域是你周圍的人群,已知Lisa是這個群體中的一員,且她喜歡冰淇淋,即(Like(Lisa,icecream))為真。那么,該公式在此解釋下為真,因為至少存在一個人(Lisa)喜歡冰淇淋。由于我們能夠找到一個使公式為真的解釋,因此這個謂詞公式是可滿足的。
相反地,考慮另一個謂詞公式(?x)(hasWings(x)∧isHuman(x)),其中,hasWings(x)表示x有翅膀,isHuman(x)表示x是人類。這個公式要求個體域中的每一個x(假設個體域為人類)都必須同時擁有翅膀且是人類。然而,在現實中,人類是不可能有翅膀的。因此,無論如何解釋這個公式,都無法找到一個使hasWings(x)和isHuman(x)同時為真的x。所以,這個公式在所有可能的解釋下都為假,因此它是不可滿足的。
4.謂詞公式的等價性
設P與Q是兩個謂詞公式,D是它們共同的個體域,若對D上的任何一個解釋,P與Q都有相同的真值,則稱公式P和Q在D上是等價的。如果D是任意個體域,則稱P和Q是等價的,記為P?Q。等價就是雙向的永真蘊含。
下面給出一些主要的等價公式。
(1)交換律
P∨Q?Q∨P
P∧Q?Q∧P
(2)結合律
(P∨Q)∨R?P∨(Q∨R)
(P∧Q)∧R?P∧(Q∧R)
(3)分配律
P∨(Q∧R)?(P∨Q)∧(P∨R)
P∧(Q∨R)?(P∧Q)∨(P∧R)
(4)德·摩根律(De.Morgen’s Law)
?(P∨Q)??P∧?Q
?(P∧Q)??P∨?Q
例如,“P:今天下雨,Q:今天刮風”,P∨Q表示“今天下雨或者今天刮風”,?(P∨Q)表示“今天既不下雨也不刮風”,因此?(P∨Q)等價于?P∧?Q。?(P∧Q)表示“今天不是既下雨又刮風”,?P∨?Q表示“今天不下雨或者今天不刮風”,因此?(P∧Q)等價于?P∨?Q。
(5)雙重否定律(對合律)
?(?P)?P
(6)吸收律
P∨(P∧Q)?P
P∧(P∨Q)?P
(7)補余律(否定律)
P∨?P?T
P∧?P?F
(8)聯結詞化歸律
P→Q??P∨Q
例如,“如果是學生(P),那么他需要考試(Q)”,等價于“他不是學生或者他參加了考試”。
(9)逆否律
P→Q??Q→?P
例如,“若現在在下雨,則我穿雨衣”,等價于“若我不穿雨衣,則現在不下雨”。
(10)量詞轉換律(否定移過量詞)
?(?x)P?(?x)(?P)
?(?x)P?(?x)(?P)
例如,P表示“參加這次活動”,“這個班所有的同學都參加這次活動”的否定命題,等價于“存在一個同學,他沒有參加活動”。同理,“這個班有同學參加這次活動”的否定命題,等價于“所有的同學都沒有參加這次活動”。
(11)量詞分配律(約束量詞移進)
(?x)(P∧Q)?(?x)P∧(?x)Q
(?x)(P∨Q)?(?x)P∨(?x)Q
2.2.6 一階謂詞邏輯表示法的特點
一階謂詞邏輯是謂詞邏輯的一種特定形式,是常用的邏輯系統,具有強大的表達能力,能夠表達復雜的命題。它通過引入個體變量、謂詞、量詞和邏輯聯結詞,提供了比命題邏輯更豐富的表達能力。下面介紹一階謂詞邏輯表示法的優點和局限性。
1.一階謂詞邏輯表示法的優點
●接近自然語言:一階謂詞邏輯是一種形式化語言,它通過謂詞、變量、量詞和邏輯聯結詞來表示知識。由于其表達方式接近日常使用的自然語言,因而能夠相對容易地被理解和用于知識的表述。
●表達精確的知識:一階謂詞邏輯是一種二值邏輯,它的真值只有兩種,即真或假。這意味著它適用于表達精確的知識,不涉及模糊性或不確定性。此外,使用一階謂詞邏輯進行演繹推理時,可以確保推導出的結論也是精確的,因此它非常適合處理明確且可確定的推理問題。
●易于實現和管理:一階謂詞邏輯表示的知識可以相對容易地轉換為計算機可處理的內部形式。這使得知識可以通過計算機進行存儲、檢索和修改。此外,還可以將知識分成不同的模塊,便于管理和維護,從而提升系統的可擴展性和靈活性。
2.一階謂詞邏輯表示法的局限性
●不能處理不確定性的知識:一階謂詞邏輯只能處理精確的知識,無法處理不確定或模糊的知識。然而,人類的知識常常是不確定的,許多情況下只能用概率或程度來描述。這種局限性限制了一階謂詞邏輯在表示知識時的范圍和適用性,特別是在需要處理模糊性、不確定性或概率推理的場景中,它顯得不足。
●效率低:在使用一階謂詞邏輯表示知識時,推理是基于形式邏輯的,專注于謂詞公式的形式結構和真值,而不考慮其背后的語義和實際含義。這種形式化的推理方式可能導致推理過程變得冗長,并且容易忽略某些重要的背景信息或隱含知識,從而降低系統的效率和智能性。
總之,盡管一階謂詞邏輯表示法存在一些局限性,如無法處理不確定性和組合爆炸等問題,但它仍然是一種重要且廣泛應用的知識表示方法。由于其具有嚴謹的語法、推理規則,以及強大的表達能力,因此許多專家系統都采用一階謂詞邏輯來表達和推理知識。例如,格林等人開發的用于求解化學問題的QA3系統、菲克斯等人開發的機器人行動規劃系統STRIPS,以及菲爾曼等人開發的機器證明系統FOL,都使用了一階謂詞邏輯來構建有效的推理框架。
2.3 產生式表示法
一階謂詞邏輯在表達不確定性和模糊性知識上的局限性,催生了產生式表示法。產生式表示法又稱為產生式規則表示法,通過引入概率、模糊邏輯以及靈活的規則系統,彌補了傳統一階謂詞邏輯在處理不確定性和模糊性方面的不足。它允許在不確定或模糊的條件下進行推理,使得系統能夠處理更多樣化的場景,并在復雜環境中表現出更強的適應性。接下來,將深入討論產生式表示法的定義、基本形式及其優點和局限性。
2.3.1 產生式表示法的定義
“產生式”是由美國數學家波斯特于1943年最早提出的,并把產生式作為計算手段。他根據串代替規則提出了一種被稱為波斯特機的計算機模型。模型中的每條規則都稱為一個產生式。
產生式表示法是一種基于規則的知識表示和推理方法,已經成了人工智能中應用最多的一種知識表示模式,尤其是在專家系統方面。許多成功的專家系統都采用產生式表示法。相比于一階謂詞邏輯的二值(真/假)推理,產生式表示法通過引入概率或可信度,允許系統在不確定的條件下進行推理,進而處理不確定性的問題。
通常,產生式表示法通過一系列的IF-THEN規則來表示知識和推理規則,這些規則可用于模擬人類專家的決策過程。例如,規則可以為
IF天空多云THEN可能會下雨
在這種情況下,產生式表示法可以引入不確定性因素,如通過賦予規則權重或概率來表示某種結果的可能性。比如,上述規則可以擴展為
IF天空多云THEN可能會下雨(概率為70%)
同時,產生式表示法還可以與模糊邏輯結合,處理模糊性問題。模糊邏輯允許我們對模糊概念進行推理,而不是僅限于精確的二值判斷。例如,描述“高溫”時,可以用模糊集合來表示不同程度的“高溫”,而不是簡單的“是”或“否”。例如,在模糊邏輯下,規則可以變成:
IF溫度高THEN可能需要空調(溫度高的程度為0.8,意味著需要空調的可能性為80%)
通過結合模糊邏輯,產生式表示法在處理諸如“高”“低”這種模糊概念時可以表現得更加靈活,避免了一階謂詞邏輯無法處理模糊信息的局限。
因此,產生式表示法以其獨特的優勢能夠便捷地描述事實、規則,并靈活處理這些元素中的不確定性度量,展現了強大的適應性和實用性。在此之后,幾經修改與充實,該方法被用到多個領域中。1972年,紐厄爾和西蒙在研究人類知識模型中開發了基于規則的產生式系統,使其成為人工智能領域內應用最為廣泛的知識表示模型之一。
2.3.2 產生式表示法的基本形式
產生式通常用于表達事實、規則以及它們的不確定性度量,適合于表示事實性知識和規則性知識。在探討產生式表示法的基本形式之前,首先介紹“確定性”的含義。確定性在這里指的是知識或規則在給定條件下無歧義、無模糊性的明確性。例如,“人在18歲后成年”是一個確定性的規則,因為在指定條件下(年齡到達18歲時)總成立(成年),沒有例外。基于此,產生式表示法的基本形式可分為以下幾類。
1.確定性規則知識的產生式表示
確定性規則知識的產生式表示的基本形式為
IF P THEN Q
或者
P→Q
其中,P是產生式的前提,用于指出該產生式是否有可用的條件;Q是一組結論或操作,用于指出當前提P所指示的條件滿足時,應該得出的結論或應該執行的操作。整個產生式的含義是,如果前提P被滿足,則可得到結論Q或執行Q所規定的操作。例如:
r4:IF動物會飛AND會下蛋THEN該動物是鳥
這是一個產生式。其中,r4是該產生式的編號;“動物會飛AND會下蛋”是前提P;“該動物是鳥”是結論Q。
2.不確定性規則知識的產生式表示
不確定性規則知識的產生式表示的基本形式為
IFPTHENQ(置信度)
或者
P→Q(置信度)
例如,在專家系統MYCIN中有這樣一條產生式:
IF本微生物的染色結果是革蘭氏陰性,本微生物的形狀呈桿狀,病人是中間宿主THEN該微生物是綠桿菌(置信度為0.6)
它表示當前提示中列出的各個條件都得到滿足時,結論“該微生物是綠桿菌”可以相信的程度為0.6。這里,用0.6指出了知識的強度。
3.確定性事實性知識的產生式表示
確定性事實性知識的產生式一般用三元組表示為
(對象,屬性,值)
或者
(關系,對象1,對象2)
例如,老李的年齡是40歲,表示為(Li,Age,40)。老李和老王是朋友,表示為(Friend,Li,Wang)。
4.不確定性事實性知識的產生式表示
不確定性事實性知識的產生式一般用四元組表示為
(對象,屬性,值,置信度)
或者
(關系,對象1,對象2,置信度)
例如,老李的年齡很可能是40歲,表示為(Li,Age,40,0.8)。老李和老王不大可能是朋友,表示為(Friend,Li,Wang,0.1)。
2.3.3 產生式表示法的優點和局限性
產生式表示法是一種廣泛應用于人工智能和專家系統中的知識表示方法,具有以下優點和局限性。
1.產生式表示法的優點
●自然性:產生式表示法用“如果,則”的形式表示知識,這是人們常用的一種表達因果關系的知識表示形式,既直觀、自然,又便于進行推理。正是這一原因,才使得產生式表示法成為人工智能中最重要且應用最多的一種知識表示模式。
●模塊性:產生式是規則庫中最基本的知識單元,它們與推理機構相對獨立,而且每條規則都具有相同的形式,這就便于對其進行模塊化處理,為知識的增、刪、改帶來了方便,為規則庫的建立和擴展提供了可管理性。
●清晰性:產生式有固定的格式,每一條產生式規則都由前提與結論(操作)這兩部分組成,而且每一部分所含的知識量都比較少,這就既易于對規則進行設計,又易于對規則庫中知識的一致性及完整性進行檢測。
2.產生式表示法的局限性
●效率不高:在產生式表示法求解問題的過程中,首先要用產生式的前提部分與綜合數據庫中的已知事實進行匹配,從規則庫中選出可用的規則,這一過程可能產生多個匹配結果,需要采取策略進行沖突消解。鑒于規則庫一般都比較龐大,而匹配是十分費時的工作,因此工作效率是不高的。另外,在求解復雜問題時容易引起組合爆炸。
●不能表達具有結構性的知識:產生式適合于表達具有因果關系的過程性知識,但對具有結構關系的知識卻無能為力,它不能把具有結構關系的事物間的區別與聯系表示出來。框架表示法可以解決這方面的問題。因此,產生式表示法除了可以獨立作為一種知識表示模式外,還經常與其他表示法結合起來表示特定領域的知識。
基于此,產生式表示法適合于表示具有下列特點的領域知識:
1)由許多相對獨立的知識元組成的領域知識,彼此間關系不密切,不存在結構關系。例如化學反應方面的知識。
2)具有經驗性及不確定性的知識,而且相關領域中對這些知識沒有嚴格、統一的理論。例如醫療診斷、故障診斷等方面的知識。
3)領域問題的求解過程可被表示為一系列相對獨立的操作,而且每個操作都可被表示為一條或多條產生式規則。
也就是說,產生式表示法在處理明確的邏輯推理方面表現出色,但它對不確定性、模糊性或概率推理的支持有限。在處理不確定問題時,產生式表示法通常需要結合其他方法(如模糊邏輯或概率推理)來增強處理能力。
2.4 框架表示法
框架表示法是由人工智能研究者馬文·明斯基(Marvin Minsky)于1975年提出的一種結構化的知識表示方法,用于在計算機系統中表示復雜的結構化知識。框架理論認為,人們對現實世界中各種事物的認識可以以一種類似于框架的結構存儲在記憶中,當面臨一種新事物時,就從記憶中找出一個合適的框架并根據實際情況對其細節加以修改、補充,從而形成對當前事物的認識。
例如,一個人走進一個教室之后就能依據以往對“教室”的認識,想象到這個教室一定有四面墻,有門、窗,有天花板和地板,有課桌、凳子、講臺、黑板等。盡管他對這個教室的大小、門窗的個數、桌的數量、顏色等細節還不清楚,但對教室的基本結構是可以預見到的。因為他已經在記憶中建立了關于教室的框架。該框架不僅指出了相應事物的名稱(教室),而且還指出了事物各有關方面的屬性(如有四面墻,有課桌,有黑板)。通過對該框架的查找,人們就很容易得到教室的各個特征。在他進入教室后,經觀察得到了教室的大小、門窗的個數、桌的數量、顏色等細節,把它們填入教室框架中,就得到了教室框架的一個具體事例。
產生式表示法中的知識單位是規則,這種知識單位過小,難于處理復雜問題,而且產生式表示法的知識庫與推理是相互分離的。框架表示法是一種適應性強,概括性高,結構化良好,推理方式靈活,又能把陳述性知識與過程性知識相結合的知識表示方法。接下來,將向讀者詳細介紹框架的定義與組成、框架網絡,以及其優點和局限性。
2.4.1 框架的定義與組成
框架是一種描述固定情況的數據結構,一般可以把框架看成由節點和關系組成的網絡。框架的最高層次是固定的,并且它描述對于假定情況總是正確的事物,在框架的較低層次上有許多終端,稱為槽(Slot)。在槽中填入具體值,就可以得到一個描述具體事務的框架,每一個槽都可以有一些附加說明,稱為側面(Facet),其作用是指出槽的取值范圍和求值方法等。一個框架可以包含各種信息:描述事物的信息、如何使用框架的信息、關于下一步將發生什么情況的期望及如果期望的事件沒有發生應該怎么辦的信息等,這些信息包含在框架的各個槽或側面中。
框架是一種描述所討論對象(事物、事件、概念等)屬性和行為的數據結構,其一般形式如圖2-2所示。每個框架都有一個框架名,唯一標識一個框架。一個框架由若干個槽構成,每個槽都有槽名,一個槽用于說明框架某一方面的屬性,屬性的值即為槽值。一個槽有可能劃分為若干個側面,具有相應的側面名,一個槽可能含有若干細分屬性,一個側面用來說明其中的一個屬性,屬性的值即為側面值。無論是框架、槽或側面,都可以為其附加一些說明性的信息,比如一些約束條件,可以指出什么樣的值才能填入槽和側面中去。約束條件用來約束、限制槽值和側面值的填寫。一般不單獨列出,而是包含在值的填寫約束中。
對于一個框架,當人們把觀察或認識到的具體細節填入后,就得到了該框架的一個具體實例,框架的這種具體實例被稱為實例框架。以下是框架表示知識的舉例。
例2.1 若要描述某高校的“人工智能與交叉應用”這一概念,那么可以考察其具有的幾個屬性,如課程類別、課程性質(學分、學時、開課學期、考核方式)、授課方式、授課教師(姓名、性別、年齡、職稱、學院)、授課對象(年級、人數、專業)等。其中,“課程類別”“課程性質”“授課方式”“授課教師”和“授課對象”為“人工智能與交叉應用”的槽,“課程類別”和“授課方式”沒有側面,“課程性質”有4個側面,“授課教師”有5個側面,“授課對象”有3個側面。如果給各個槽和側面賦以具體的值,就可以得到“人工智能與交叉應用”這一概念的一個實例框架。

圖2-2 框架的一般形式
框架名:<人工智能與交叉應用>
課程類別:學位課
課程性質:學分:2
學時:40
開課學期:秋季學期前十周
考核方式:閉卷考試
授課方式:線上授課
授課教師:姓名:張三
性別:女
年齡:30
職稱:副教授
學院:人工智能學院
授課對象:年級:一年級本科生
人數:120
專業:計算機科學與技術
2.4.2 框架網絡
一般來說,單個框架只能表示簡單對象的知識。在實際應用時,當對象比較復雜時,往往需要把多個相互聯系的框架組織起來進行表示。框架是知識的基本單位,把一組有關的框架連接起來便可形成一個框架網絡(框架系統)。在一個用框架表示知識的系統中一般含有多個框架,一個框架一般含有多個不同的槽、不同的側面,分別用不同的框架名、槽名和側面名表示,呈現框架之間的橫向聯系。
由于框架中的槽值或側面值可以是另一個框架的名字,因此通過一個框架可以找到一個框架。與此同時,下層框架還可以繼承上層框架的屬性及值,避免了重復描述,節約了時間和空間的開銷,在此框架之間建立起了縱向聯系。用框架名作為槽值時所建立起來的框架間是橫向聯系,用“繼承”槽建立起來的框架間是縱向聯系,像這樣具有橫向聯系及縱向聯系的一組框架稱為框架網絡。例如,圖2-3所示為自然災害框架,將一則地震消息用框架表示:“某年某月某日,某地發生××級地震,造成傷亡人數”。“地震框架”是“自然災害框架”的子框架。

圖2-3 自然災害框架
2.4.3 框架表示法的優點及局限性
框架表示法是一種結構化的知識表示方法,通過槽、默認值、繼承等機制有效表示復雜對象、概念及其屬性之間的關系。它適合處理結構化知識并支持推理,具體的優點和局限性如下。
1.框架表示法的優點
●結構性:框架表示法突出的優點是它善于表達結構性的知識,能夠把知識的內部結構關系及知識間的聯系表示出來。
●繼承性:框架表示法通過設定槽值為另一個框架的名稱,實現了框架間的聯系,進而建立起表示復雜知識的框架網絡。在框架網絡中,下層框架可以繼承上層框架的槽值,也可以進行補充和修改,這樣不僅減少了知識的冗余,而且較好地保證了知識的一致性。
●自然性:框架表示法體現了人們在觀察事物時的思維活動,當看到新事物時,通過從記憶中調用類似事物的框架,并對其中的某些細節進行修改、補充,就形成了對新事物的認識,這與人們的認識活動是一致的。
2.框架表示法的局限性
框架表示法的主要不足在于不擅長表達過程性的知識。相較于產生式表示法或其他能夠明確描述一系列操作或算法流程的方法,框架表示法更多地聚焦于表示事物的屬性、關系及其內部結構,而非這些事物如何動態變化或相互作用的過程。此外,框架表示法在某些情況下可能顯得較為呆板,其固定的結構和表示方式可能限制了其靈活性和易用性,特別是在需要處理復雜、多變的過程性知識時。
2.5 語義網絡表示法
語義網絡的概念是在1968年奎廉(Quillian)的博士論文《人類聯想的一個顯示心理學模型》中最先提出來的。他認為記憶是由概念間的聯系實現的,因此語義網絡也稱為聯想網絡。它是一種通過概念及其語義關系來表示知識的一種網絡圖。1970年,西蒙(Simmon)在他的自然語言理解系統中也采用了語義網絡表示法。目前,語義網絡表示法已經成為人工智能中應用較多的一種知識表示方法,尤其是在自然語言處理方面的應用。接下來,將向讀者詳細介紹語義網絡的概念、基本語義關系及其優點和局限性。
2.5.1 語義網絡的概念
語義網絡最初作為表達長期記憶結構的心理學模型被提出,后用于知識表達。語義網絡是知識表示中最重要的方法之一,是一種表達能力強而且靈活的知識表示方法。語義網絡是通過概念及語義關系來表達知識的一種網絡圖。從圖論的觀點看,它是一個帶標識的有向圖。語義網絡基本網元與語義網絡結構如圖2-4所示。
1)有向圖的節點表示各種事物、概念、情況、屬性、動作、狀態等,如圖2-4中的節點A、節點B。
2)將節點與節點連接起來的線稱為弧。弧表示各種語義關系,指明它所連接的節點間的某種語義關系,如圖2-4a中的節點A與節點B之間的弧R。
3)節點和弧必須帶有標識,以便區分各個不同對象以及對象之間各種不同的關系。在圖2-4中,不同的弧用不同的標識表示。
從結構上看,語義網絡一般是由一些基本的語義單元構成的,這些最基本的語義單元可用三元組表示為(節點1、弧、節點2),稱為基本網元,如圖2-4a所示。把多個基本網元用相應的語義關聯在一起時,就得到一個語義網絡,如圖2-4b所示。

圖2-4 語義網絡基本網元與語義網絡結構
2.5.2 語義網絡的基本語義關系
語義聯系的類型多種多樣,覆蓋了豐富廣泛的內容。下面列舉了一些常見且被廣泛接受的基本語義聯系類型。
●類屬關系:類屬關系是指具有共同屬性的不同事物間的分類關系、成員關系或實例關系,它體現的是“具體與抽象”“個體與集體”的層次分類。類屬關系具有繼承性,處在具體層的節點可以繼承抽象層節點的所有屬性。
AMO(A-Member-Of):表示某個事物是另一個事物的成員,例如,“張三是一名學生”的語義網絡表示如圖2-5所示。
ISA(Is-A):表示某個事物是另一個事物的實例,例如,“洪水是一種自然災害”的語義網絡表示如圖2-6所示。

圖2-5 “張三是一名學生”的語義網絡表示

圖2-6 “洪水是一種自然災害”的語義網絡表示
AKO(A-Kind-Of):表示某個事物是另一個事物的一種類型,例如,“貓是一種動物”的語義網絡表示如圖2-7所示。
洪水是一種自然災害,而不是一個類,所以不是AKO。自然災害是一個抽象類,而不是一個實體類,所以不是AMO。
●包含關系:也稱為聚集關系,指具有組織或結構特征的“部分與整體”之間的關系。有向弧上的標識為Part-of。包含關系與類屬關系最主要的區別就是,包含關系一般不具有屬性的繼承性。
Part-of:表示一個事物是另一個事物的一部分。例如,“輪胎是汽車的一部分”的語義網絡表示如圖2-8所示。

圖2-7 “貓是一種動物”的語義網絡表示

圖2-8 “輪胎是汽車的一部分”的語義網絡表示
●屬性關系:指事物和其屬性之間的關系。
Have:表示一個節點擁有另一個節點表示的實物,例如,“鳥有翅膀”的語義網絡表示如圖2-9所示。
Can:表示屬性和事物之間的能力或技能關系,例如,“汽車能跑”的語義網絡表示如圖2-10所示。

圖2-9 “鳥有翅膀”的語義網絡表示

圖2-10 “汽車能跑”的語義網絡表示
●時間關系:指不同事件在其發生時間方面的先后關系,節點間不具備屬性繼承性。
Before:表示一個事件在另一個事件之前發生,例如,“唐朝在宋朝之前”的語義網絡表示如圖2-11所示。
After:表示一個事件在另一個事件之后發生,例如,“宋朝在唐朝之后”的語義網絡表示如圖2-12所示。

圖2-11 “唐朝在宋朝之前”的語義網絡表示

圖2-12 “宋朝在唐朝之后”的語義網絡表示
●位置關系:指不同事物位置方面的關系,節點的屬性不具有繼承性。
Located-on:含義為“在上”,表示某一物體在另一個物體之上,例如,“書在桌子上”的語義網絡表示如圖2-13所示。
Located-at:含義為“在”,表示某一物體在某一位置,例如,“南航位于南京”的語義網絡表示如圖2-14所示。
Located-under:含義為“在下”,表示某一物體在另一個物體之下。
Located-inside:含義為“在內”,表示某一物體在另一個物體之內。
Located-outside:含義為“在外”,表示某一物體在另一個物體之外。

圖2-13 “書在桌子上”的語義網絡表示

圖2-14 “南航位于南京”的語義網絡表示
●相近關系:指不同事物在形狀、內容方面相似或接近。
Similar-to:表示一個事物與另一個事物相似,例如,“狗似狼”的語義網絡表示如圖2-15所示。
Near-to:表示一個事物與另一個事物接近,例如,“辦公樓接近江邊”的語義網絡表示如圖2-16所示。

圖2-15 “狗似狼”的語義網絡表示

圖2-16 “辦公樓接近江邊”的語義網絡表示
●因果關系:指由某一事物的發生而導致另一事物的發生,適于表示規則性知識。
If-then:表示兩個節點之間的因果關系,含義是“如果······那么······”,例如,“如果天晴,小明騎自行車上班”的語義網絡表示如圖2-17所示。
●組成關系:它表示“構成”聯系,是一種一對多的聯系,被它聯系的節點間不具有屬性繼承性。
Composed-of:表示某一事物由其他一些事物構成,例如“整數由正整數、負整數及零組成”的語義網絡表示如圖2-18所示。

圖2-17 “如果天晴,小明騎自行車上班”的語義網絡表示

圖2-18 “整數由正整數、負整數及零組成”的語義網絡表示
2.5.3 語義網絡表示法的優點及局限性
語義網絡表示法采用網絡表示法比較合適的領域,大多數是根據非常復雜的分類進行推理的領域,以及需要表示事件狀況、性質及動作之間關系的領域。具體的優點及局限性如下。
1.語義網絡表示法的優點
●結構性:語義網絡表示法能把事物的屬性以及事物間的各種語義聯系顯式地表示出來,用其他表示方法能表達的知識幾乎都可以用語義網絡表示出來。
●聯想性:語義網絡本來是作為人類聯想記憶模型提出來的,它著重強調事物間的語義聯系,體現了人類的聯想思維過程。
●自然性:語義網絡實際上是一個帶有標識的有向圖,可直觀地把事物的屬性及事物間的語義聯系表示出來,便于理解自然語言,并且自然語言與語義網絡之間的轉換也比較容易實現。
2.語義網絡表示法的局限性
●非嚴格性:與謂詞邏輯相比,語義網絡沒有公認的形式表示體系。一個給定的語義網絡所表達的含義完全依賴于處理程序如何對它進行解釋。在推理過程中,有時不能區分事物的“類”與“個體”,因此通過推理網絡而實現的推理不能保證其正確性。另外,目前采用的表示量詞的網絡表示方法在邏輯上都是不充分的,不能保證不存在二義性。
●處理復雜:語義網絡表示知識的手段是多種多樣的,這雖為其表示帶來了靈活性,但同時也由于表示形式的不一致使得對它的處理增加了復雜性。由于節點之間的聯系可以是線性的,也可以是非線性的,甚至可以是遞歸的,因而對相應知識的檢索就相對復雜一些,要求對網絡的搜索有強有力的組織原則。
2.6 知識圖譜表示法
知識圖譜的概念最早由谷歌在2012年5月17日提出,其將知識圖譜定義為用于增強搜索引擎功能的輔助知識庫。知識圖譜的提出源于對傳統搜索引擎所提供的字符串匹配結果的局限性的認識。它強調了對于結構化的知識和語義關聯的理解,目的是更好地理解和呈現人類知識。隨著人工智能的發展,知識圖譜被廣泛應用于智能搜索、智能問答、個性化推薦等領域。谷歌、百度和搜狗等搜索引擎公司也紛紛構建了自己的知識圖譜,分別稱為知識圖譜、知心和知立方,以改進搜索質量。那么,在知識圖譜中以什么樣的形式對現實世界中的知識進行表示與存儲呢?本節將深入介紹知識圖譜中的知識表示。
2.6.1 知識圖譜的定義
知識圖譜是一種基于圖形結構的知識表示方式,用于組織和表示實體、屬性、實體之間的關系。它以實體-屬性-關系的三元組形式記錄知識,以便計算機可以理解和推理。
知識圖譜以結構化的形式描述客觀世界中概念、實體間的復雜關系,將互聯網的信息表達成更接近人類認知世界的形式,提供了一種更好地組織、管理和理解互聯網海量信息的能力。它把復雜的知識領域通過數據挖掘、信息處理、知識計量和圖形繪制顯示出來,揭示知識領域的動態發展規律。知識圖譜的三要素為:實體、關系與屬性。通過實體、屬性和關系的組合,知識圖譜可以描述和表示豐富的知識。
實體(Entity):知識圖譜中的實體是指現實世界中的事物或概念,如人物、地點、事件、產品等。每個實體都有一個唯一的標識符,通常用于表示其在知識圖譜中的身份。圖2-19所示為知識圖譜示例。“唐人街探案3”“哪吒之魔童鬧海”等為實體。
關系(Relation):關系定義了實體之間的連接方式或語義關聯,描述了實體之間的某種關系或聯系,如圖2-19中的“上映時間”“片長”等。
屬性(Attribute):屬性是與實體相關聯的描述性信息或特征,用于更詳細地描述實體的特性,如圖2-19中的“2025年”“144分鐘”等。

圖2-19 知識圖譜示例
2.6.2 知識圖譜的表示
知識圖譜通常以圖的形式表示,其中,節點代表實體或概念,邊代表實體之間的關系。通過圖的形式,可以直觀地展示實體之間的關聯關系,以及實體的屬性信息。三元組是知識圖譜的一種通用表示方式。三元組的基本形式主要分為以下兩種。
1)(實體1-關系-實體2):哪吒之魔童鬧海-導演-餃子是一個(實體1-關系-實體2)的三元組樣例。
2)(實體-屬性-屬性值):陳思誠是一個實體,出生年份是一種屬性,1978年是屬性值。(陳思誠-出生年份-1978年)構成一個(實體-屬性-屬性值)的三元組樣例。
這種表示方式使計算機能夠理解實體之間的語義關系,并進行推理和搜索。
通過將實體、屬性和關系組合起來,知識圖譜可以形成一個復雜的圖形結構。圖中的節點和邊可以通過唯一的標識符來引用和檢索,從而使得知識圖譜具備高效的存儲和查詢能力。
2.6.3 知識圖譜的架構
知識圖譜的架構可以分為邏輯架構與技術架構。
1.邏輯架構
在邏輯上,通常將知識圖譜劃分為兩個層次:數據層和模式層。
數據層主要由一系列的事實組成,而知識將以事實為單位進行存儲,如哪吒之魔童鬧海-導演-餃子;餃子-性別-男。
模式層構建在數據層之上,是知識圖譜的核心,存儲經過提煉的知識,本體是結構化知識庫的概念模板,通過本體庫而形成的知識庫不僅層次結構較強,并且冗余程度較小,如實體1-關系-實體2,實體-屬性-屬性值。
2.技術架構
在技術上,構建知識圖譜的過程涉及以下幾個關鍵步驟。
知識抽取:從各種類型的數據源中提取出實體、屬性及實體間的相互關系,在此基礎上形成本體化的知識表達。
知識融合:在獲得新知識之后,需要對其進行整合,以消除矛盾和歧義,比如某些實體可能有多種表達方式,某個特定稱謂也許對應于多個不同的實體等。
知識加工:對于經過融合的新知識,需要經過質量評估(部分需要人工參與甄別),才能將合格的部分加入知識庫中,以確保知識庫的質量。
知識圖譜的整體架構如圖2-20所示,其中,虛線框內的部分為知識圖譜的構建過程,同時也是知識圖譜更新的過程。

圖2-20 知識圖譜的整體架構
2.6.4 知識圖譜的典型應用
知識圖譜的真正魅力在于它的圖結構,這樣可以在知識圖譜上運行搜索、隨機游走、網絡流等大規模的圖算法,使得知識圖譜與圖論、概率圖等碰撞出火花。
1.智能搜索
知識圖譜通過將用戶的查詢轉換為語義化的查詢來改進搜索引擎的精度。知識圖譜的結構化形式使得搜索引擎可以更好地理解和推斷用戶的意圖,返回與查詢相關的實體、關系和屬性信息,提高搜索結果的準確性和相關性。以谷歌為代表的搜索引擎公司利用知識圖譜為查詢詞賦予豐富的語義信息,建立與現實世界實體的關系,從而幫助用戶更快找到所需的信息。谷歌知識圖譜從Freebase和維基百科等知識庫中獲取專業信息,通過分析大規模網頁內容抽取知識。現在,谷歌的這幅知識圖譜已經將5億個實體編織其中,建立了35億個屬性和相互關系,并還在不斷高速擴充。
2.知識問答
利用知識圖譜中的結構化知識,可以建立自然語言問答系統,幫助用戶進行自然語言交互。問答系統通過對知識圖譜的查詢來獲取知識庫中的信息并進行回答,目前搜索引擎已經支持對很多查詢直接返回精確答案,而非海量網頁。無論是理解用戶查詢意圖,還是探索新的搜索形式,都毫無例外地需要進行語義理解和知識推理,而這都需要大規模、結構化的知識圖譜的有力支持,知識圖譜成為各大互聯網公司的必爭之地。
3.推薦系統
知識圖譜將用戶與不同實體之間的聯系表示出來。這些聯系可以用于構建個性化推薦系統,提供更加符合用戶興趣和偏好的推薦結果。知識圖譜可以用于構建個性化推薦系統,通過分析用戶的興趣、偏好和行為,建立用戶與實體之間的關系,并根據這些關系推薦符合用戶興趣的內容、產品或服務。知識圖譜還可以幫助解決推薦系統中的冷啟動和數據稀疏等問題,提高推薦的準確性和覆蓋率。
未來,知識表示與知識圖譜將繼續發展和創新,特別是在語義理解和智能推理方面。基于知識圖譜的深度學習、推理、自然語言生成等技術將大幅提高人工智能的水平,為實現更高層次的智能化和人機交互提供更多的可能性。
2.7 知識表示方法的選擇
在人工智能領域,選擇合適的知識表示方法對于實現高效、準確的知識表示與推理至關重要。不同的表示方法各有其獨特的優勢與局限性,適用于不同的應用場景。表2-2所示為一階謂詞邏輯、產生式、框架、語義網絡和知識圖譜這5種主要知識表示法的優缺點及是否結構化。
表2-2 常用的知識表示法的優缺點及是否結構化

1)一階謂詞邏輯表示法以其自然性、明確性、嚴密性、靈活性和容易實現的特點,在知識表示和推理領域展現出顯著優勢。它接近自然語言,便于理解和接受,且能精確表達知識,確保推理結論的準確性。然而,該方法也存在局限性,主要在于無法有效表示不確定性和模糊性知識,限制了其應用范圍,同時在處理大量事實時可能遭遇組合爆炸問題,且推理過程較長,影響系統效率。
2)產生式表示法以其自然性、模塊性、有效性和清晰性在人工智能中占據重要地位,尤其擅長表達因果關系、啟發式及過程性知識。然而,其效率受限于龐大的規則庫匹配和沖突消解過程,且難以表達結構性知識。因此,它更適用于由獨立知識元組成、具有經驗性及不確定性、且求解過程可分解為獨立操作的領域,如化學反應、醫療診斷等。同時,為彌補不足,產生式表示法常與其他表示法結合使用,如框架表示法或語義網絡表示法,以更全面地表達特定領域知識。
3)框架表示法以其結構性和繼承性的特點,在表達具有內部結構關系和相互聯系的知識方面表現出色。它通過建立框架網絡,實現了復雜知識之間的關聯,允許下層框架繼承并擴展上層框架的屬性,從而減少了知識冗余,并確保了一致性。此外,框架表示法還貼近人們的認知過程,可通過調用和修改記憶中的框架來認識新事物,展現了其自然性。然而,框架表示法在表達過程性知識方面存在局限性,不擅長描述動態變化與交互過程,且其固定結構可能限制靈活性和易用性,特別是在處理復雜多變的過程性知識時。
4)語義網絡表示法以其結構性、聯想性和自然性為顯著特點,能夠直觀地展示事物的屬性及它們之間的復雜語義聯系,幾乎可以表達所有類型的知識,并便于與自然語言進行轉換。然而,語義網絡也存在非嚴格性和處理復雜性等缺點。由于缺乏公認的形式表示體系,因此其表達的含義可能因處理程序而異,導致推理正確性難以保證。同時,多樣化的表示形式雖然靈活,但也增加了處理的復雜度,尤其是在知識檢索和網絡搜索時,需要強有力的組織原則來應對潛在的遞歸和非線性聯系。
5)知識圖譜表示法以其嚴謹的結構化表示、強大的語義關聯性和直觀的可視化效果,成為知識表示與推理的重要工具。它能夠系統地組織復雜知識,清晰展示實體間的層次與關聯,幾乎覆蓋了所有領域的知識表示需求,并為智能問答、決策支持等應用提供了堅實基礎。然而,知識圖譜的構建與維護同樣面臨著嚴峻挑戰。一方面,其高度結構化要求精確的數據定義與整合,對數據源的質量和一致性有較高要求;另一方面,隨著圖譜規模的擴大、復雜性的增加,帶來了處理效率的難題,特別是在處理大規模數據查詢和推理時,需要高效的算法與強大的計算能力作為支撐。此外,知識圖譜的更新與維護亦不容忽視,需定期檢查和修正,以保持其時效性和準確性。
每種知識表示方法都有其獨特的優勢和局限性。在選擇合適的方法時,我們需要根據具體的應用場景、知識類型及系統需求進行綜合考量。同時,也應注意到不同方法之間的互補性,通過結合使用多種表示方法,以更全面地表達和理解領域知識。
2.8 小結
本章深入探討了知識及其在人工智能中的表示方法。知識是把有關的信息關聯在一起形成的關于客觀世界某種規律性認識的動態信息結構,主要由事實、規則和概念構成,并具備相對正確性、不確定性、可表示性與可利用性等特性。本章還介紹了5種常見的知識表示方式:一階謂詞邏輯表示法,具有自然、精確、嚴密的特點,但存在表示不確定知識時的組合爆炸和效率低的問題;產生式表示法,既能表示確定性知識,也能表示不確定性知識,具備自然性、模塊性等優點,但效率不高且難以表達結構性知識;框架表示法,通過框架和槽描述對象屬性,具有結構性、繼承性;語義網絡表示法,以網絡圖形式表達概念和關系,具有結構性、聯想性,但處理復雜且可能存在邏輯二義性;知識圖譜表示法,作為新興技術,以圖形式表示實體和關系,提供結構化和語義化的知識表示方式,是人工智能系統理解和應用知識的重要工具。
通過系統學習這些知識表示技術,讀者能夠全面理解知識在人工智能領域中的重要地位和作用。這些技術不僅為人工智能系統提供了豐富的知識表示手段,還促進了系統對知識的有效理解和應用。因此,本章為后續相關知識的學習奠定了堅實的基礎,有助于讀者更深入地探索人工智能的廣闊領域。