潘國清
(無錫廣播電視大學(xué)信息與藝術(shù)系,江蘇 無錫 214021)
淺析本體開發(fā)方法
潘國清
(無錫廣播電視大學(xué)信息與藝術(shù)系,江蘇 無錫 214021)
本體的開發(fā)是迭代過程,包括定義并按層次編排本體中的類、定義槽及其許用值,向?qū)嵗牟厶钊胫?。通過定義填入特定槽值信息和附加槽約束的類的實例個體,可以創(chuàng)建知識庫。
本體;開發(fā);迭代;類;槽
近年來,本體(ontology)的開發(fā)已從人工智能實驗室走到了領(lǐng)域?qū)<业陌割^。本體在Web上已非常流行,許多學(xué)科都有專門針對本領(lǐng)域開發(fā)的標(biāo)準(zhǔn)本體,領(lǐng)域?qū)<矣盟鼈児蚕砗妥⑨岊I(lǐng)域內(nèi)的信息。通用的本體也已出現(xiàn)。
本體是清晰地、形式化描述論域中知識以及知識間聯(lián)系的方法學(xué),它用類(Classes)描述論域中的概念(Concepts),用槽(Slots)描述每個概念的屬性和特征,用側(cè)面(Facets)描述對槽的約束。本體和一組類實例個體一起構(gòu)成知識庫。類是絕大多數(shù)本體的研究焦點,它描述了論域中的概念,可以用它的子類(subclass)來描述比超類(superclass)中更具體的概念。槽描述類和實例的屬性。
1.1 在人員或軟件Agent間共享對結(jié)構(gòu)化信息的理解。這是開發(fā)本體的最常見目的(Musen 1992;Gruber 1993)之一。例如,多個不同Web網(wǎng)站包含法律信息或提供法律商業(yè)服務(wù),如果這些網(wǎng)站都使用和發(fā)布相同的本領(lǐng)域基礎(chǔ)本體(underlying ontology),那么軟件Agent就可以從這些不同站點分解或聚合信息,然后用這些信息回答用戶的提問,或是作為其他應(yīng)用程序的輸入數(shù)據(jù)。
1.2 復(fù)用論域知識。這是支持當(dāng)前本體研究這一熱點的力量之一。例如,許多不同論域的模型需要表示“長度”這一概念,包括長度的單位、長度的測量方法等。如果某研究小組詳盡地開發(fā)出了這一本體,其他人就能在他們自己的論域內(nèi)簡單地復(fù)用這一本體。通過整合已有的用于描述論域片的小本體,也可以建立一個大本體。
1.3 作論域假設(shè)。這便提供了一種方法——如果關(guān)于論域的知識有所改變,也能方便地改變當(dāng)初做出的假設(shè)。此前,程序設(shè)計語言不但使某些沒有專業(yè)編程技術(shù)的人難于發(fā)現(xiàn)和理解論域知識,而且難以改變他們做過的假設(shè)。要清晰地對論域知識進(jìn)行說明,因為這對那些必須了解論域中條目含義的用戶非常有幫助。
1.4 從操作知識中分離出論域知識。這是本體的另一常見用途。例如,可以開發(fā)一個“數(shù)控車床組成與特性”本體,用于管理數(shù)控車床的生產(chǎn)銷售。如果將其加入“數(shù)控銑床”本體,它將同樣適用于管理同一過程。
可用于指導(dǎo)本體開發(fā)的普適方法還有待探索,好的解決方法總是依賴于慮及的領(lǐng)域和不斷增加的期望。一般來說,本體的開發(fā)是迭代過程——先提出一個初步的本體雛形,然后不斷對其進(jìn)行修改和細(xì)化。開發(fā)者需要做各種模型分解工作,包括正向的和反向的。
做本體開發(fā)時要明白本體的用途是什么,考慮如何細(xì)化和泛化本體將指導(dǎo)我們接下來的建模開發(fā)過程。在多種可能的選擇中,要確定哪個更直觀、更靈活、更易于維護(hù)、更有助于任務(wù)的完成。本體是現(xiàn)實世界的模型,本體中的概念必須反映這個現(xiàn)實世界。定義出本體的雛形后,可以通過實踐應(yīng)用、與領(lǐng)域?qū)<医涣鞯冗^程對其進(jìn)行排錯和精化,最終獲得解決問題的方法。這一迭代設(shè)計實現(xiàn)過程將貫穿于本體的整個生命周期。
開發(fā)本體要從定義本體的論域和應(yīng)用范圍開始。事先要考慮幾個基本問題:本體覆蓋的論域是什么?本體的用途是什么?本體中的信息用于解答哪些問題?誰將使用和維護(hù)本體?在本體開發(fā)過程中,回答這些問題的人會不斷變化,但他們的回答有助于限定模型的應(yīng)用范圍。
確定本體應(yīng)用范圍的一種方法是列出一個基于某知識庫的本體必須能回答的問題清單——能力問詢(competencyquestions)列表,這些問題以后將起到試金石的作用??紤]一下本體中包含足夠的信息來回答這些問題嗎?那些答案需要特殊細(xì)節(jié)或是對特殊領(lǐng)域的描述嗎?能力問詢只是一個粗略的框架,不必面面俱到。要從該清單中判斷并篩選出一系列本體應(yīng)包含的信息。
如果系統(tǒng)要同其它已投入使用或已限定詞匯集的系統(tǒng)進(jìn)行交互,就需要復(fù)用已有的本體。許多本體都有可使用的電子版本,能導(dǎo)入所用的本體開發(fā)環(huán)境。本體的表現(xiàn)形式并不重要,因為許多知識表示系統(tǒng)支持本體的導(dǎo)入與導(dǎo)出。即使某個知識表示系統(tǒng)不能直接工作于特定本體之上,將本體從一種形式變遷為另一種形式亦非難事。
列出所有將用到的重要條目和相關(guān)條目,注意將討論哪些條目、需要向用戶解釋哪些條目、這些條目有什么屬性、如何評價它們等。列出所有重要條目時,不必顧慮它們在概念上、在相互關(guān)系上、在屬性上會有重復(fù),也不必深究它們究竟是類還是槽。
接下來的兩個步驟——開發(fā)類層次(class hierarchy)和定義概念的屬性(即槽)——是相當(dāng)糾雜的,很難決定它們的實施順序。一般的做法是,先定義極少的含層次關(guān)系的類,然后描述它們的屬性,然后再重復(fù)上述定義類的步驟,不斷重復(fù)。在本體設(shè)計開發(fā)過程中,這兩步也是最重要的。
有一些可用于開發(fā)類和類的層次關(guān)系的方法 (Uschold and Gruninger 1996):
(1)自頂向下法:先定義論域中最一般的概念,再通過創(chuàng)建子類特殊化這些概念。
(2)自底向上泛化法:先定義最特殊的類,即類層次樹的葉結(jié)點。然后將這些類歸入上層更普通的超類。
(3)綜合法:這是將自頂向下法和自底向上法進(jìn)行綜合。先定義一些顯見的類,再分別向下層進(jìn)行細(xì)化和向上層進(jìn)行泛化。
很難說這三種方法哪一種更好,采用哪種方法依賴于對論域的個人視點。如果開發(fā)者能夠系統(tǒng)的自上而下總攬全局,自頂向下的開發(fā)方法無疑是最好的。綜合法對許多開發(fā)者而言是最簡單的,因為“處在中間(in the middle)”的概念在論域中最易于描述。
無論采用哪種方法,總是從定義類開始。選出那些描述對象獨立存在情況的條目,而不要選描述對象自身的條目,這些條目將成為本體的類,同時也將成為類層次中的錨(anchors)。通過詢問“假如對象成為一個類的實例,則它將必然的成為其他類的實例嗎?”的辦法來分層次組織類。
孤立的類無法提供足夠的信息來回答“能力問詢列表”中的問題,一旦定義好某些類,必須描述出這些概念的內(nèi)部結(jié)構(gòu)。從創(chuàng)建好的條目列表中選出類,余下的大多數(shù)條目可能成為這些類的屬性。對所列出的每個屬性,要確定它描述的類,這些屬性將成為依附于類的槽。
通常有以下幾類對象的屬性能成為本體中槽:“內(nèi)涵(intrinsic)”屬性、“表象(extrinsic)”屬性、“構(gòu)件(parts)”屬性、與其它個體的“聯(lián)系”屬性(類之間或其他個體成員之間是有聯(lián)系的)。所有子類都可以繼承父類的槽。槽應(yīng)該依附于最一般的類,使它可以有那些屬性。
槽可以用不同的“側(cè)面”用來描述值的類型、進(jìn)行賦值、確定槽許用值數(shù)量(勢,cardinality)或確定其他槽的值可具有的性質(zhì)。有幾類常見的側(cè)面:槽的“勢”、槽值的類型、槽的論域和范圍等。
最后一步是為具有層次結(jié)構(gòu)的類創(chuàng)建獨立實例。創(chuàng)建類的獨立實例需要選擇類、創(chuàng)建類的獨立實例和向槽中填入值。文獻(xiàn)[4][5]研究了在遠(yuǎn)程教育教學(xué)資源開發(fā)中,采用RDF/XML技術(shù)對知識表示作描述,完成具有推送功能的學(xué)習(xí)資源制作。隨著相關(guān)研究的深入,預(yù)計今后將出現(xiàn)適合本體開發(fā)的通用方法,那樣就能用知識工程方法指導(dǎo)本體開發(fā)了。
[1]ht t p://prot ege.st anf ord.edu/publ i cat i ons/ont ol ogy_devel opm ent/ont ol ogy 101-noy-m cgui nness.ht m l[EB/OL].
[2]M usen,M.A.(1992).Di m ensi ons ofknowl edge shari ng and reuse[J].Com put ersand Bi om edi calResearch 25:435-467.
[3]Uschol d,M.and Gruni nger,M.(1996).Ont ol ogi es:Pri nci pl es,M et hods and Appl i cat i ons.Knowl edgeEngi neeri ngRevi ew 11(2).
[4]潘國清,鄭亞虹.遠(yuǎn)程教育工作本位學(xué)習(xí)模式研究[J].中國遠(yuǎn)程教育.2011.12.
[5]潘國清.一種基于移動Agent技術(shù)的教學(xué)資源建設(shè)方法[J].中國教育信息化(高教職教).2010.7.
Discussing About Development Approach of Ontology
PANGou-qing
(Department ofInformation&Art,Wuxi Radio&Television University,Wuxi,214021 Jiangsu)
It is an iterative approach in development of ontology,which includes:defining classes in the ontology and?arranging them in a taxonomic hierarchy,?defining slots and describing allowed values for these slots,filling in the values for slots for instances.We can create a knowledge base by definingindividual instances ofthese classes fillingin specific slot value information and additional slot restrictions.
ontology;development;iteration;class;slot
B016
[文章編號]1671-5004(2012) 01-0010-02
2012-2-22
本文系全國教育信息技術(shù)研究“十二五”規(guī)劃課題《網(wǎng)絡(luò)環(huán)境下教育測量與自動評價研究》(116240825);江蘇省現(xiàn)代教育技術(shù)規(guī)劃課題《泛在環(huán)境下智能評價系統(tǒng)研究》(2011R19155)階段成果。
潘國清(1976-),男,江蘇淮安人,無錫廣播電視大學(xué)信息分藝術(shù)系副教授,兼任江蘇電大高教所研究員,研究方向:遠(yuǎn)距離教育理論與技術(shù)。