知识表示的方法(1)——产生式表示法
知識表示(knowledge representation)就是將人類知識形式化或者模型化。
知識表示的目的是能夠讓計算機存儲和運用人類的知識。已有知識表示方法大都是在進行某項具體研究時提出來的,有一定的針對性和局限性,目前已經提出了許多知識表示方法。
常用的有:產生式表示法、框架表示法、狀態空間表示法
產生式表示法
產生式表示法又稱為產生式規則(production rule)表示法。“產生式”這一術語是由美國數學家波斯特(E.Post)在1943年首先提出來的,如今已被應用于多領域,成為人工智能中應用最多的一種知識表示方法。
一、產生式
產生式通常用于表示事實、規則以及它們的不確定性度量,適合于表示事實性知識和規則性知識。
1、確定性規則的產生式表示
確定性規則的產生式表示的基本形式是:
或者
其中,P是產生式的前提,用于指出該產生式是否可用的條件;Q是一組結論或操作,用于指出當前提P所指示的條件滿足時,應該得出的結論或應該執行的操作。整個產生式的含義是:如果前提P被滿足,則結論Q成立或執行Q所規定的操作。
例如:
就是一個產生式。其中,r4是該產生式的編號;“動物會飛AND會下蛋”是前提P;“該動物是鳥”是結論Q。
2、不確定性規則的產生式表示
不確定性規則的產生式表示的基本形式是:
或者:
例如,在專家系統MYCIN中有這樣一條產生式:
它表示當前提中列出的各個條件都得到滿足時,結論“該生物是綠膿桿菌”可以相信的程度為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),這里用置信度0.1表示可能性比較小。
產生式又稱為規則或產生式規則;產生式的“前提”有時又稱為“條件”“前提條件”“前件”“左部”等;其“結論”部分有時稱為“后件”或“右部”等。
二、產生式系統
把一組產生式放在一起,讓它們互相配合、協同作用,一個產生式生成的結論可以供給另一個產生式作為已知事實使用,以求得問題的解,這樣的系統稱為產生式系統。
一般來說,一個產生式系統由規則庫、綜合數據庫、控制系統(推理機)三部分組成。它們之間的關系如下圖所示。
1、規則庫
用于描述相應領域內知識的產生式集合稱為規則庫。
顯然,規則庫是產生式系統求解問題的基礎。因此,需要對規則庫中的知識進行合理的組織和管理,檢測并排除冗余及矛盾的知識,保持知識的一致性。采用合理的結構形式,可使推理避免訪問那些與求解當前問題無關的知識,從而提高求解問題的效率。
2、綜合數據庫
綜合數據庫又稱為事實庫、上下文、黑板等,用于存放問題的初始狀態,原始證據、推理中得到的中間結論及最終結論等信息。當規則庫中某條產生式的前提可與綜合數據庫的某些已知事實匹配時,該產生式就被激活,并把它推出的結論放入綜合數據庫中作為后面推理的已知事實。顯然,綜合數據庫的內容是不斷變化的。
3、推理機
推理機由一組程序組成,除了推理算法,還控制整個產生式系統的運行,實現對問題的求解。粗略地說,推理機要做以下幾項工作:
1)推理
按一定的策略從規則庫中選擇與綜合數據庫中的已知事實進行匹配。所謂匹配是指把規則的前提條件與綜合數據庫中的已知事實進行比較,如果兩者一致或者近似一致且滿足預先規定的條件,則稱匹配成功,相應的規則可被使用;否則稱為匹配不成功。
2)沖突消解
如果匹配成功的規則可能不止一條,稱為“發生了沖突”。此時,推理機必須調用相應的解決沖突的策略進行消解,以便從匹配成功的規則中選出一條執行。
3)執行規則
如果某一規則的右部是一個或多個結論,則把這些結論加入綜合數據庫中:如果規則的右部是一個或多個操作,則執行這些操作。對于不確定性知識,在執行每一條規則時還要按一定的算法計算結論的不確定性程度。
4)檢查推理終止條件
檢查綜合數據庫中是否包含了最終結論,決定是否停止系統運行。
三、產生式系統的特點
產生式適合于表達具有因果關系的過程性知識,是一種非結構化的知識表示方法。產生式表示法既可表示確定性知識,又可表示不確定性知識;即可表示啟發式知識,又可表示過程性知識。目前,已建造成功的專家系統大部分用產生式來表達其過程性知識。
用產生式表示具有結構關系的知識很困難,因為它不能把具有結構關系的事物間的區別與聯系表示出來。
四、總結
產生式通常用于表示事實、規則以及它們的不確定性度量。
產生式不僅可以表示確定性規則,還可以表示各種操作、規則、變換、算子、函數等;不僅可以表示確定性知識,而且還可以表示不確定性知識。
一個產生式系統由規則庫、綜合數據庫、推理機三部分組成。產生式系統求解問題的過程是一個不斷地從規則庫中選擇可用規則與綜合數據庫中的已知事實進行匹配的過程,規則的每一次成功匹配都使綜合數據庫增加了新內容,并朝著問題的解決方向前進了一步。這一過程稱為推理,是專家系統中的核心內容。
總結
以上是生活随笔為你收集整理的知识表示的方法(1)——产生式表示法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux dbm数据库,linux d
- 下一篇: R语言做复杂金融产品的几何布朗运动的模拟