国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

專家視圖與本體視圖的語義映射方法?

2020-11-03 12:26:08陳德彥
軟件學(xué)報(bào) 2020年9期
關(guān)鍵詞:知識(shí)庫視圖實(shí)例

陳德彥 , 趙 宏 , 張 霞

1(東北大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,遼寧 沈陽 110819)

2(計(jì)算機(jī)軟件國家工程研究中心(東北大學(xué)),遼寧 沈陽 110179)

3(沈陽東軟智能醫(yī)療科技研究院有限公司,遼寧 沈陽 110179)

4(東軟集團(tuán)股份有限公司,遼寧 沈陽 110179)

本體(ontology)是共享概念模型的明確的形式化的規(guī)范說明[1],其提供了一種結(jié)構(gòu)化地表示領(lǐng)域知識(shí)的形式化方法,并提供了推理能力,構(gòu)造本體可以實(shí)現(xiàn)某種程度的知識(shí)共享和重用.由于本體具有的強(qiáng)大的知識(shí)表示和推理能力,已經(jīng)在很多領(lǐng)域得到了廣泛的應(yīng)用,例如語義Web[2]、知識(shí)工程、自然語言處理、信息獲取、信息集成、生物醫(yī)學(xué)等領(lǐng)域,用于領(lǐng)域問題求解、異構(gòu)信息源之間的交互、輔助組織中人與人之間的溝通等.基于本體的信息建模主要借助于一個(gè)互補(bǔ)的語言集合,該集合包含3 種語言[3]:資源描述框架(resource description framework,簡稱RDF)[4]、RDF 詞匯定義(RDF schema,簡稱RDFS)語言[5]、Web 本體語言(Web ontology language,簡稱OWL)[6].由于直接使用這些本體描述語言來進(jìn)行本體建模很不方便,也難以掌握,于是出現(xiàn)了一些圖形化的本體編輯工具,例如Protégé[7],OntoEdit[8],KAON[9]等.這些本體編輯工具很好地簡化了領(lǐng)域知識(shí)的形式化描述過程,但卻并不能很好地幫助指導(dǎo)如何建模領(lǐng)域知識(shí)庫,而這正是本體工程[10]所要研究和解決的核心問題.與軟件工程、面向?qū)ο笤O(shè)計(jì)和知識(shí)工程類似,本體工程研究本體構(gòu)建的方法學(xué),涉及本體構(gòu)建的過程、采用何種工具和語言、以何種順序使用這些工具和語言、如何應(yīng)用這些工具和語言、質(zhì)量控制和資源管理等.針對(duì)不同學(xué)科領(lǐng)域、工程問題或應(yīng)用場景,目前有多種本體構(gòu)建方法,例如面向?qū)ο蟮谋倔w建模方法[11,12]、基于層次的本體建模方法[13,14]、面向具體學(xué)科領(lǐng)域或工程問題的本體建模方法[15,16]等.但是目前尚沒有一種標(biāo)準(zhǔn)的、適用于所有學(xué)科領(lǐng)域或應(yīng)用場景的本體建模方法,實(shí)際上也不可能存在建模本體的唯一的正確的方法,最好的解決方案總是依賴于具體的應(yīng)用,對(duì)本體質(zhì)量的評(píng)價(jià)也唯一取決于使用它的應(yīng)用.因?yàn)闃?gòu)建本體本身并不是一個(gè)最終目標(biāo),而是為了應(yīng)用的需求而提供一套數(shù)據(jù)集和它們之間的結(jié)構(gòu),而且本體開發(fā)總是一個(gè)迭代和不斷精化的過程[17].無論采用何種方法進(jìn)行本體開發(fā),一般應(yīng)遵循 Gruber 提出的 5 條原則[18]:清晰性(clarity)、一致性(coherence)、可擴(kuò)展性(extendibility)、編碼偏好程度最小(minimal encoding bias)、本體約定最小(minimal ontological commitment).

現(xiàn)有的本體建模方法都只是對(duì)建模過程從不同的方法學(xué)、學(xué)科領(lǐng)域或工程問題的角度提出了一些簡單的指導(dǎo)原則和基本步驟,而在進(jìn)行實(shí)際的領(lǐng)域語義知識(shí)庫建設(shè)時(shí),會(huì)面臨大量更加具體的共性問題或者特定問題,使得知識(shí)工程師仍然無從下手.目前公認(rèn)領(lǐng)域本體的開發(fā)需要領(lǐng)域?qū)<业膮⑴c,并由知識(shí)工程師將領(lǐng)域?qū)<姨峁┑念I(lǐng)域知識(shí)建模并形式化為可被計(jì)算機(jī)處理和共享利用的領(lǐng)域本體知識(shí).于是,從專家角度看到的知識(shí)視圖(簡稱專家視圖,即領(lǐng)域知識(shí)模型)和從知識(shí)工程師角度看到的本體知識(shí)視圖(簡稱本體視圖,即本體知識(shí)模型)可能是不同的.專家并不理解也不關(guān)心基于本體的知識(shí)建模和形式化方法,而只關(guān)心知識(shí)對(duì)人的易理解性和易使用性.知識(shí)工程師建立本體知識(shí)視圖時(shí)更多考慮的是本體描述語言的描述能力、Gruber 提出的5 條原則、領(lǐng)域應(yīng)用需求的可滿足性、知識(shí)服務(wù)實(shí)現(xiàn)的合理性和方便性等.由于領(lǐng)域知識(shí)本身的復(fù)雜性和這兩種視圖表示方法和目的的不同,專家視圖和本體視圖幾乎不可能是一樣的,也即需要建立專家視圖和本體視圖之間的正確語義映射,才能真正實(shí)現(xiàn)領(lǐng)域知識(shí)的存儲(chǔ)、共享、集成和復(fù)用.基于大量實(shí)踐發(fā)現(xiàn):這個(gè)映射過程存在大量需要解決的關(guān)鍵問題,而其中一些關(guān)鍵問題是在建模面向不同學(xué)科領(lǐng)域或工程問題的不同類型本體時(shí)面臨的共性問題,例如:

1) 在專家視圖中,一詞多義的現(xiàn)象很普遍,資源對(duì)象的語義一方面通過采用某種語言描述的資源名稱的含義來表達(dá),另一方面,通過資源對(duì)象應(yīng)用的領(lǐng)域上下文來豐富或限定其語義.以健康醫(yī)療領(lǐng)域?yàn)槔?術(shù)語“疾病”有時(shí)指一個(gè)概念,代表所有疾病的集合,有時(shí)指一個(gè)屬性,代表某個(gè)疾病誘因關(guān)聯(lián)的疾病;“泌尿道感染”可能代表一種疾病,也可能是另一種疾病的誘因、風(fēng)險(xiǎn)因素或表現(xiàn)癥狀;“糖尿病”通常指一個(gè)疾病實(shí)例,但“糖尿病”還可以細(xì)分為“1 型糖尿病”、“2 型糖尿病”、“妊娠糖尿病”等,這時(shí)“糖尿病”又表示一些實(shí)例的集合,即代表一種疾病類型等.而在本體視圖中,某個(gè)資源對(duì)象一旦建立,其ID就是唯一的,當(dāng)然可以明確聲明其與另一個(gè)資源對(duì)象在語義上是等價(jià)的或者完全不同的;

2) 在任何領(lǐng)域的知識(shí)描述中,都會(huì)涉及到對(duì)資源的某些量化指標(biāo)的描述,例如人的身高、體重、血糖、血壓等.這些指標(biāo)實(shí)際上是一個(gè)結(jié)構(gòu)化的值,由數(shù)值和對(duì)應(yīng)的單位構(gòu)成,因?yàn)樵诓煌恼Z境下(例如在不同國家),對(duì)相同指標(biāo)的描述其默認(rèn)指稱單位可能并不一樣,即同一個(gè)屬性存在不同方面的值.另外,在任何領(lǐng)域都存在一些模糊和不確定的知識(shí),例如醫(yī)生對(duì)患者疾病的診斷或風(fēng)險(xiǎn)評(píng)估就是一種可能性的判斷,不但要表達(dá)患者與疾病的關(guān)系,還要描述這種關(guān)系的可能性大小或者風(fēng)險(xiǎn)等級(jí).這些結(jié)構(gòu)化值和不確定關(guān)系的描述都涉及到多元(n-ary)關(guān)系,而本體只能描述二元(binary)關(guān)系;

3) 訪問授權(quán)的語義映射.領(lǐng)域本體庫提供領(lǐng)域中共同認(rèn)可的知識(shí),一般不涉及安全或隱私問題[19];領(lǐng)域?qū)嵗龜?shù)據(jù)提供關(guān)于個(gè)體的知識(shí),可能存在顯式的關(guān)于個(gè)體的敏感或隱私信息.基于領(lǐng)域本體庫和領(lǐng)域?qū)嵗龜?shù)據(jù)的語義推理,可能揭示隱含的關(guān)于個(gè)體的敏感或隱私信息.針對(duì)領(lǐng)域中涉及安全、敏感或用戶隱私相關(guān)的內(nèi)容,領(lǐng)域安全專家、信息擁有者(例如醫(yī)院或患者)或信息來源者(例如患者)都可能提出訪問授權(quán)的需求,需要基于領(lǐng)域語義知識(shí)庫建立此訪問授權(quán)的語義映射.

以上列舉的部分語義映射的共性問題,在目前基于本體的知識(shí)建模方法、建模工具、知識(shí)獲取、知識(shí)復(fù)用的研究中并未進(jìn)行深入探討,這阻礙了本體在各個(gè)領(lǐng)域中的廣泛應(yīng)用.為此,本文就以上列舉的3 類語義映射的共性問題從5 個(gè)方面展開了深入研究,提出了相應(yīng)的解決方法,總結(jié)了10 條本體建模約定.最后,對(duì)這5 類語義映射方法進(jìn)行了應(yīng)用驗(yàn)證和評(píng)價(jià).

本文第1 節(jié)給出相關(guān)定義.第2 節(jié)針對(duì)上述的3 類語義映射的共性問題從5 個(gè)方面進(jìn)行深入探討,提出相應(yīng)的解決方法.第3 節(jié)采用本文提出的語義映射方法構(gòu)建一個(gè)完整的應(yīng)用案例.第4 節(jié)對(duì)本文的方法進(jìn)行評(píng)價(jià).第5 節(jié)介紹相關(guān)研究工作及其存在的不足.最后一節(jié)對(duì)本文進(jìn)行總結(jié),并提出進(jìn)一步的工作.

1 相關(guān)定義

定義1(領(lǐng)域?qū)<抑R(shí)(domain expert knowledge)或領(lǐng)域?qū)<乙晥D(domain expert view)).區(qū)別于領(lǐng)域大數(shù)據(jù)中蘊(yùn)含的碎片化的或者隱含的領(lǐng)域知識(shí),領(lǐng)域?qū)<抑R(shí)是指領(lǐng)域?qū)<艺淼南到y(tǒng)化的、顯式的領(lǐng)域?qū)I(yè)知識(shí)以及專家積累的領(lǐng)域經(jīng)驗(yàn)知識(shí),領(lǐng)域?qū)<抑R(shí)的形態(tài)可以是圖、表、文字等多種形式.領(lǐng)域?qū)<抑R(shí)主要是給人閱讀的,而不是計(jì)算機(jī)可處理的,需要由知識(shí)工程師將其映射為領(lǐng)域語義知識(shí)庫中的知識(shí),以實(shí)現(xiàn)領(lǐng)域知識(shí)的共享、集成和復(fù)用.記領(lǐng)域?qū)<乙晥D為EKBdomain,其定義如下:

其中,eki表示其中一位領(lǐng)域?qū)<宜暙I(xiàn)的領(lǐng)域知識(shí).

定義 2(領(lǐng)域本體定義(domain ontology schema)).領(lǐng)域本體定義[3]通過捕捉領(lǐng)域中共同認(rèn)可的概念(concept)、概念屬性、概念分類關(guān)系、概念間存在的語義關(guān)聯(lián)關(guān)系及相關(guān)約束來描述領(lǐng)域知識(shí).記Odomain表示領(lǐng)域本體,其定義如下:

其中,

·C表示概念(concept)集,概念又稱為類(class),用于表達(dá)具有某類相似特征的個(gè)體(individual)的集合,個(gè)體又稱為實(shí)例(instance).例如,概念“人(person)”代表所有個(gè)體人的集合;

·A表示所有概念的屬性(attribute)集,概念的屬性又稱為數(shù)據(jù)類型屬性(data type property),它描述概念所包含的實(shí)例本身的特征,例如人的姓名、性別、出生日期、身高、體重等;

·R表示語義關(guān)系(semantic relation)集,語義關(guān)系又稱為對(duì)象屬性(object property),包含分類關(guān)系(taxonomic relation)和非分類關(guān)系(non-taxonomic relation),即R=Rvtax∪Rhntax:

?Rvtax表示概念、屬性或語義關(guān)系的縱向分類關(guān)系,例如,概念“人”可以進(jìn)一步劃分為“男人”和“女人”兩個(gè)子概念;

?Rhntax表示橫向的非分類關(guān)系,例如人的個(gè)體間存在的好友關(guān)系、父子關(guān)系、兄弟關(guān)系等;

·X表示公理集,公理(axiom)用于定義概念、屬性和關(guān)系之上的約束,比如限定概念某個(gè)屬性的數(shù)量(基數(shù)約束)或者在某個(gè)屬性之上的取值(值約束)、限定屬性和關(guān)系的定義域(domain)和值域類型(range)等,例如:人的出生日期只有一個(gè),但不同人可以具有相同的出生日期,人在生物學(xué)意義上的父親和母親都是唯一的;出生日期屬性的定義域類型為人,值域類型為日期類型等;

·I表示實(shí)例數(shù)據(jù)集,用于描述領(lǐng)域中共同認(rèn)可的常識(shí)知識(shí),例如內(nèi)分泌和代謝類疾病包含糖尿病、甲亢等.領(lǐng)域本體定義類似于面向?qū)ο笾械念惖亩x,領(lǐng)域本體定義中一般不包含實(shí)例數(shù)據(jù),除非用于表達(dá)一般性的領(lǐng)域常識(shí)知識(shí),但僅包含實(shí)例數(shù)據(jù)的RDF 描述片段不能稱之為本體定義[3].

定義3(領(lǐng)域本體庫(domain ontology base)).領(lǐng)域本體庫由一個(gè)或者多個(gè)領(lǐng)域子本體構(gòu)成,它們分別用于描述領(lǐng)域中某個(gè)方面的知識(shí).記OBdomain表示領(lǐng)域本體庫,其定義如下:

通常,一個(gè)本體不可能定義關(guān)于某個(gè)領(lǐng)域的全部知識(shí),它可能只定義該領(lǐng)域中某一個(gè)方面的知識(shí).Oi表示領(lǐng)域本體庫中的某個(gè)子本體,領(lǐng)域本體庫的子本體劃分和組織方式依賴于領(lǐng)域知識(shí)體系的構(gòu)成、領(lǐng)域語義知識(shí)庫服務(wù)的應(yīng)用需求和采用的領(lǐng)域語義知識(shí)庫建模方法.

定義4(領(lǐng)域?qū)嵗龜?shù)據(jù)(domain instance data)).領(lǐng)域?qū)嵗龜?shù)據(jù)[3]為基于領(lǐng)域本體庫中的定義來描述的領(lǐng)域中的常識(shí)知識(shí)或個(gè)體的知識(shí).例如,基于醫(yī)療健康本體庫描述某個(gè)人的基本信息和健康狀態(tài).領(lǐng)域常識(shí)知識(shí)為領(lǐng)域中公認(rèn)的知識(shí),通常位于領(lǐng)域語義知識(shí)庫中.領(lǐng)域中具體環(huán)境或個(gè)體的知識(shí),通常作為基于領(lǐng)域語義知識(shí)庫的知識(shí)服務(wù)的輸入,以獲得問題解.記Idomain表示領(lǐng)域?qū)嵗龜?shù)據(jù),其定義如下:

其中,

· (s,p,o)表示描述實(shí)例數(shù)據(jù)的陳述或稱為三元組(triple);

·s為某個(gè)實(shí)例對(duì)象;

·I表示實(shí)例對(duì)象集;

·p表示用于描述實(shí)例對(duì)象的屬性或者語義關(guān)系;

·A和R分別表示描述I中實(shí)例對(duì)象所用到的屬性集和語義關(guān)系集;

·o表示屬性或語義關(guān)系的取值,或者為實(shí)例對(duì)象,或者為字面值(literals)[4,10];

·V表示字面值的集合.

定義5(領(lǐng)域?qū)嵗龓?domain instance base)).領(lǐng)域?qū)嵗龓煊梢粋€(gè)或多個(gè)領(lǐng)域?qū)嵗龜?shù)據(jù)片段組成,它們分別用于描述領(lǐng)域中不同方面的常識(shí)知識(shí)或不同個(gè)體的知識(shí),當(dāng)然也有可能描述某個(gè)個(gè)體不同方面的知識(shí),例如描述某個(gè)人的健康狀況、研究興趣、個(gè)人愛好等.記IBdomain表示領(lǐng)域?qū)嵗龓?其定義如下:

定義6(領(lǐng)域語義規(guī)則集(domain semantic rule set)).領(lǐng)域語義規(guī)則同時(shí)服務(wù)于領(lǐng)域本體的定義和領(lǐng)域?qū)嵗龜?shù)據(jù)的描述,一方面用于描述領(lǐng)域中領(lǐng)域?qū)<宜@得的啟發(fā)式經(jīng)驗(yàn)知識(shí),另一方面用于補(bǔ)充本體描述語言的語義描述能力.記Fdomain表示領(lǐng)域語義規(guī)則集,其定義如下:

其中,ri表示其中一條語義規(guī)則.語義規(guī)則是典型的條件語句:if-then 子句,只有當(dāng)特定陳述(statement)集合為真時(shí),才會(huì)添加新的知識(shí).語義Web 層次結(jié)構(gòu)[2,3]提供了多種知識(shí)表示形式,包括從RDF 到最新版本的OWL 等多種格式,每一層都對(duì)表達(dá)能力進(jìn)行了進(jìn)一步的擴(kuò)展,并且允許用戶根據(jù)語義程序具體所需的語義量來采用相應(yīng)的表示方式.但本體描述語言在表達(dá)能力和靈活性方面仍然存在一些不足,語義規(guī)則用于擴(kuò)展本體描述語言的描述能力以及靈活性.W3C 建議的語義規(guī)則描述語言為語義Web 規(guī)則語言(semantic Web rule language,簡稱SWRL)[20].

定義7(領(lǐng)域語義知識(shí)庫(domain semantic knowledge base)或本體視圖(domain ontology view)).領(lǐng)域本體庫、領(lǐng)域?qū)嵗龜?shù)據(jù)和領(lǐng)域語義規(guī)則集一起構(gòu)成了領(lǐng)域語義知識(shí)庫.

記SKBdomain表示領(lǐng)域語義知識(shí)庫,其定義如下:

本體定義的結(jié)束,便是知識(shí)庫構(gòu)建的開始[17].基于領(lǐng)域本體庫中的本體定義和語義規(guī)則來描述具體的實(shí)例,形成實(shí)例數(shù)據(jù)和語義規(guī)則集,以領(lǐng)域本體庫作為領(lǐng)域背景知識(shí),以實(shí)例數(shù)據(jù)和語義規(guī)則集作為具體的知識(shí),它們一起形成了面向特定應(yīng)用需求的語義知識(shí)庫.例如,基于醫(yī)療健康領(lǐng)域本體庫構(gòu)建面向慢性病患者的健康風(fēng)險(xiǎn)評(píng)估、疾病自我診斷、疾病輔助診斷、疾病干預(yù)方案(藥物、運(yùn)動(dòng)、飲食、心理、睡眠等)、遠(yuǎn)程監(jiān)護(hù)服務(wù)、健康知識(shí)問答服務(wù)、健康教育/咨詢服務(wù)等需求的語義知識(shí)庫.

W3C 推薦的針對(duì)語義知識(shí)庫的語義層(即RDF 層)查詢標(biāo)準(zhǔn)語言為SPARQL[21],這種查詢語言不僅理解RDF 的語法,而且理解RDF 的數(shù)據(jù)模型和RDF 詞匯的語義,幾乎所有的RDF 查詢工具都提供了對(duì)SPARQL 查詢語義的支持[10,19].

2 語義映射方法

以本體視圖來建模領(lǐng)域知識(shí),目的是為了實(shí)現(xiàn)領(lǐng)域知識(shí)的存儲(chǔ)、共享、集成和復(fù)用.為此,需要基于共同認(rèn)可的標(biāo)準(zhǔn)或規(guī)范來對(duì)本體視圖進(jìn)行形式化描述,以實(shí)現(xiàn)計(jì)算機(jī)可準(zhǔn)確理解其語義并可做出正確的推理.本文對(duì)本體視圖的描述完全遵循W3C 推薦的本體描述語言規(guī)范(RDF,RDFS,OWL 等),使用這些標(biāo)準(zhǔn)本體描述語言提供的語義組件來描述領(lǐng)域?qū)<抑R(shí).

本節(jié)針對(duì)專家視圖與本體視圖的語義映射中的5 個(gè)通用問題進(jìn)行了深入探討,給出了相應(yīng)的解決方案,總結(jié)了10 條約定,并分別通過實(shí)例對(duì)映射方法進(jìn)行了詳細(xì)說明.

2.1 資源名的語義映射

針對(duì)引言中提到的一詞多義的語義映射問題有很多類型,本節(jié)探討專家視圖中的資源在本體視圖中的命名規(guī)則,以及在本體視圖中屬性的定義位置.

第2.2 節(jié)和第2.3 節(jié)分別探討了另外兩類問題及其語義映射解決方案.

如圖1(a)所示的專家視圖,如果進(jìn)行直接的語義映射,將存在如下3 個(gè)問題.

1) 在圖1(a)中,專家同時(shí)定義了“疾病”概念和“疾病”屬性、“癥狀”概念和“癥狀”屬性,這對(duì)于人類理解并沒有問題.但在本體視圖中,概念和屬性對(duì)應(yīng)的語義類型分別為owl:Class 和rdfs:Property,其定義和語義約束是完全不同的,無法將同一個(gè)ID 表示的資源同時(shí)聲明為類和屬性;

2) 在圖1(a)中,“疾病”屬性對(duì)應(yīng)的定義域類型分別有“人”“風(fēng)險(xiǎn)因素”“醫(yī)學(xué)實(shí)驗(yàn)”和“疾病誘因”,“癥狀”屬性對(duì)應(yīng)的定義域類型有“人”和“疾病”,即分別通過屬性“疾病”“癥狀”建立了多個(gè)概念之間的語義關(guān)系.同樣,這對(duì)于人類理解并不會(huì)產(chǎn)生歧義;但如果在本體視圖中分別建立對(duì)應(yīng)的對(duì)象屬性“med:diseases”和“med:symptoms”來描述這些概念之間的語義關(guān)系,或者不聲明屬性的定義域,或者將屬性的定義域同樣聲明為多種類型,這都將引起語義推理結(jié)果的歧義.例如,基于推理結(jié)果認(rèn)為概念“人”“風(fēng)險(xiǎn)因素”“醫(yī)學(xué)實(shí)驗(yàn)”和“疾病誘因”在語義上是等價(jià)的,因?yàn)樗鼈兊膶?shí)例都可以作為屬性“med:diseases”的主語.對(duì)于癥狀屬性,存在同樣的問題;

3) 從本體工程的角度,同一個(gè)專家視圖可能被映射為一個(gè)或者多個(gè)本體視圖.在本體視圖中,由于屬性具有方向,屬性定義域和值域聲明中對(duì)應(yīng)的概念的定義可能位于不同的Odomain中,屬性連接的兩個(gè)實(shí)例的定義也可能位于不同的Idomain中.這種情況下,屬性定義的位置約定就很關(guān)鍵,否則可能導(dǎo)致屬性的冗余定義(有可能不同位置定義的屬性其語義約束并不完全一致),進(jìn)而導(dǎo)致知識(shí)的冗余定義,同時(shí)可能會(huì)引起語義理解和語義推理上的歧義.例如在圖1(b)中,疾病、癥狀等概念的定義位于Omedicine本體中,概念“人”的定義位于Opeople本體中,那么在定義人與疾病或者人與癥狀之間的語義關(guān)系時(shí),需要決定該語義關(guān)系應(yīng)該定義在哪個(gè)本體中.如果分別定義,可能會(huì)導(dǎo)致屬性冗余定義,除非明確聲明它們是等價(jià)的(通過owl:equivalentProperty)或者互逆的(通過owl:inverseOf),否則可能會(huì)引起語義理解和語義推理上的歧義.

在SKBdomain中,除了字面值(數(shù)值、布爾值、字符串等)和規(guī)則以外的所有對(duì)象都被稱為資源(resource).資源是我們想要討論或記錄的對(duì)象或事物[10],這些資源可以是物理存在并可通過網(wǎng)絡(luò)訪問的資源,例如網(wǎng)頁、網(wǎng)絡(luò)圖片、Web 服務(wù)等;或是物理存在但不可通過網(wǎng)絡(luò)訪問的資源,例如人、公司、圖書館中的書籍等;或是物理不存在的抽象概念,例如本體、語義Web 等.RDF 將資源定義為任何可被URI(uniform resource identifier)引用(URI references,簡稱URIrefs)標(biāo)識(shí)的事物[4].URI 引用是一個(gè)在尾部附加了可選的片段識(shí)別符(fragment identifier)的URI.例如,在這個(gè)URI 引用“http://www.example.org/index.html#section2”中,符號(hào)#前面的部分為URI,#后面的部分為片段標(biāo)識(shí)符.URI 引用可以包含 Unicode 字符,這就允許在 URI 引用中使用多種語言.因此,使用URIrefs,RDF 實(shí)際上可以描述任何事物,并陳述這些事物之間的關(guān)系.在領(lǐng)域語義知識(shí)庫中,除了不使用URI 引用格式表示的字面值以外,其余對(duì)象都為資源,包括概念、屬性、語義關(guān)系和實(shí)例對(duì)象.

在本體視圖中,資源ID 采用URIrefs 進(jìn)行標(biāo)識(shí),只需要保證其唯一性即可,這個(gè)ID 對(duì)于語義推理來說沒有任何語義貢獻(xiàn),因?yàn)橥评硎腔诒倔w描述語言中定義的語義組件的語義(即本體推理)和定義的語義規(guī)則的語義(即規(guī)則推理)來進(jìn)行的.由于在SKBdomain中,OBdomain中的對(duì)象規(guī)模相比IBdomain中的對(duì)象規(guī)模少很多,幾乎不是一個(gè)數(shù)量級(jí)的,比如一個(gè)疾病概念下的疾病實(shí)例可能有幾萬種.所以一般情況下,可以對(duì)OBdomain中的資源對(duì)象取一個(gè)不重復(fù)的、有意義的人類可識(shí)別ID.由于實(shí)例的規(guī)模非常大,對(duì)于IBdomain中實(shí)例的ID,要取一個(gè)不重復(fù)的、有意義的名稱比較困難,所以可以根據(jù)領(lǐng)域特定上下文或應(yīng)用需求采用某種約定的編碼規(guī)則,例如,健康醫(yī)療領(lǐng)域中的疾病診斷的ICD-10 編碼[22]、臨床操作的ICD-9-CM 編碼[22]等;或者取一個(gè)不重復(fù)的隨機(jī)數(shù),例如Freebase[23]知識(shí)庫中的對(duì)象ID 采用MID(a machine identifier)進(jìn)行標(biāo)識(shí),例如ns:m.0c58k 表示“糖尿病”實(shí)例的ID,ns 表示Freebase 的默認(rèn)名稱空間.對(duì)于實(shí)例的人類可識(shí)別名稱和描述,可以通過本體描述語言提供的標(biāo)注屬性(比如rdfs:label,rdfs:comment)去體現(xiàn).

約定1.在OBdomain中,概念和屬性ID 的命名規(guī)則如下.

· 概念:namespace:domain.concept;

· 屬性:namespace:domain.concept.property.

其中,

· namespace 表示領(lǐng)域的名稱空間(例如med 表示medicine 領(lǐng)域的名稱空間);

· domain 表示領(lǐng)域ID,名稱空間內(nèi)唯一;

· domain.concept 表示以領(lǐng)域ID 為前綴的概念I(lǐng)D,名稱空間內(nèi)唯一;

· domain.concept.property 表示以概念I(lǐng)D 為前綴的屬性ID,名稱空間內(nèi)唯一.

這種命名規(guī)則約定,對(duì)于機(jī)器處理和人類理解都是有價(jià)值的.語義描述的原則是,盡可能清晰明確地描述所有對(duì)象的語義(包括語義約束)及與其他對(duì)象的語義關(guān)系(包括語義約束).圖1(b)為基于約定1 對(duì)這些概念間的語義關(guān)系的定義,明確給出了屬性的定義域和值域限定,無論對(duì)于計(jì)算機(jī)推理還是人類理解都不會(huì)存在歧義.rdf,rdfs,owl分別為本體描述語言RDF,RDFS 和OWL 提供的語義組件定義的名稱空間前綴,med和pp分別為本體Omedicine和本體Opeople的名稱空間前綴,在本體模型的形式化描述中進(jìn)行聲明.

針對(duì)以上的問題3),這里做出如下的本體建模約定.

約定2.如果屬性的定義域所對(duì)應(yīng)的概念定義在某個(gè)Odomain中,那么也將該屬性定義在此Odomain中.

約定2 的含義是:無論是數(shù)據(jù)類型屬性還是對(duì)象屬性,根據(jù)其定義域所對(duì)應(yīng)的概念所在的本體來確定該屬性定義所在的本體.這樣做的理由是:屬性用于描述概念所代表的實(shí)例集合中的實(shí)例的特征或者這些實(shí)例指向其他概念代表的實(shí)例集合中的實(shí)例的語義關(guān)聯(lián),所以屬性的定義理應(yīng)與其服務(wù)的概念的定義綁定在一起.如圖1(b)所示:將描述概念“人”的疾病和癥狀的屬性定義在Opeople本體中,將描述Omedicine本體中概念的屬性定義也定義在Omedicine本體中.

某些情況下,可能需要通過導(dǎo)入其他本體中的概念,并對(duì)其屬性進(jìn)行擴(kuò)展,使得屬性定義和其定義域聲明中的概念的定義位于不同的本體中.但通常情況下,在定義某個(gè)新的概念時(shí),往往都會(huì)同時(shí)定義此概念的一些屬性.此時(shí),應(yīng)盡可能將概念和描述此概念的屬性(以此概念為定義域的屬性)定義在一起,以避免屬性的冗余定義.

2.2 同一實(shí)例具有多種類型或角色

健康醫(yī)療領(lǐng)域的專家可能構(gòu)建如圖2(a)所示的專家視圖,在多個(gè)概念的實(shí)例定義中同時(shí)包含了糖尿病、泌尿道感染等實(shí)例.而在本體視圖中,每個(gè)實(shí)例對(duì)象的ID 必須是唯一的,但多個(gè)ID 不同的實(shí)例對(duì)象,在語義上可以是等價(jià)的.在本體視圖中,某個(gè)實(shí)例對(duì)象也可以具有多種類型,或者屬于由多種類型通過復(fù)雜類[6]構(gòu)造方法構(gòu)造的復(fù)雜類.

約定3.在專家視圖中,基于不同的語義類型定義了多個(gè)相同的實(shí)例時(shí),在對(duì)應(yīng)的本體視圖中可以定義一個(gè)唯一的實(shí)例,并聲明其具有多種語義類型.在進(jìn)行語義理解或語義推理時(shí),實(shí)例對(duì)象在具體語境下的語義類型由連接該實(shí)例的屬性的定義域或值域的類型來確定.

例如,圖2(a)所示的專家視圖對(duì)應(yīng)的本體視圖如圖2(b)所示,其中,白色橢圓表示類和屬性,灰色橢圓表示實(shí)例.下同.

下面為采用Turtle[3]語法描述的Omedicine本體的一個(gè)片段.

1.med:medicine.disease.risk_factors rdf:type owl:ObjectProperty;

2.rdfs:domain med:medicine.disease;

3.rdfs:range med:medicine.risk_factor;

4.owl:inverseOf med:medicine.risk_factor.diseases.

5.med:medicine.symptom.symptom_of rdf:type owl:ObjectProperty;

6.rdfs:domain med:medicine.symptom;

7.rdfs:range med:medicine.disease;

8.owl:inverseOf med:medicine.symptom.symptom_of.

9.med:m.07x16 rdfs:label “泌尿道感染”@zh;

10.rdfs:label “Urinary tract infection”@en;

11.rdf:type med:medicine.disease,

12.med:medicine.disease_cause,

13.med:medicine.risk_factor,

14.med:medicine.symptom.

15.med:m.0c58k rdfs:label “糖尿病”@zh;

16.rdfs:label “Diabetes mellitus”@en;

17.rdf:type med:medicine.disease,

18.med:medicine.disease_cause,

19.med:medicine.risk_factor,

20.med:medicine.symptom.

21.med:m.07x16med:medicine.disease.risk_factors med:m.0c58k.

22.med:m.07x16 med:medicine.symptom.symptom_of med:m.0c58k.

第1 行~第4 行為對(duì)屬性med:medicine.disease.risk_factors 的定義的一個(gè)片段;第5 行~第8 行為對(duì)屬性med:medicine.symptom.symptom_of 的定義的一個(gè)片段;第9 行~第14 行是對(duì)實(shí)例med:m.07×16 的聲明,該實(shí)例被聲明為了多種類型;第15 行~第20 行是對(duì)實(shí)例med:m.0c58k 的聲明,該實(shí)例也被聲明為了多種類型;第21 行、第22 行是對(duì)實(shí)例med:m.07×16 和med:m.0c58k 之間語義關(guān)系的聲明.基于屬性med:medicine.disease.risk_factors的定義和第21 行中的實(shí)例語義關(guān)系聲明,可以推理出在第21 行中的實(shí)例med:m.07×16 的類型為med:medicine.disease,實(shí)例med:m.0c58k 的類型為med:medicine.risk_factor;而基于屬性med:medicine.symptom.symptom_of的定義和第22 行中的實(shí)例語義關(guān)系聲明,可以推理出在第22 行中的實(shí)例med:m.07×16 的類型為med:medicine.symptom,實(shí)例med:m.0c58k 的類型為med:medicine.disease.

在執(zhí)行SPARQL 檢索時(shí),語義也是很清晰的.例如,在以上Omedicine的本體片段中,實(shí)例med:m.0c58k 被同時(shí)聲明為了4 種類型:med:medicine.disease,med:medicine.disease_cause,med:medicine.risk_factor 和med:medicine.symptom.當(dāng)分別檢索這4 種類型的實(shí)例時(shí)都會(huì)包含med:m.0c58k,這也符合醫(yī)學(xué)上的解釋:在醫(yī)學(xué)上,糖尿病是一種疾病,同時(shí)也是其他疾病的誘因、風(fēng)險(xiǎn)因素和表現(xiàn)癥狀.在基于圖模式執(zhí)行復(fù)雜語義關(guān)聯(lián)的檢索時(shí),基于實(shí)例的類型聲明和屬性的定義域和值域限定,可以檢索出正確的結(jié)果.如果語義關(guān)系中的實(shí)例類型不符合屬性的定義域和值域限定,在本體構(gòu)建過程中可以通過語義一致性檢查進(jìn)行正確識(shí)別,從而進(jìn)行修正.例如Protégé 就提供了本體創(chuàng)建過程中的語法和基于推理的語義一致性檢查機(jī)制.

在圖2(a)所示的情況中,類似“泌尿道感染”、“糖尿病”這樣屬于多種類型的實(shí)例可能并不是很多,大部分病因可能只是一種病因,而不是一種疾病;同樣,大部分癥狀可能只是代表一種癥狀,而不屬于疾病.而有些情況下,幾乎所有實(shí)例都可以映射到多種類型下的某種子類型,如圖3(a)所示的專家視圖.在圖3(a)中,運(yùn)動(dòng)項(xiàng)目從不同角度進(jìn)行分類,而羽毛球(單打)、羽毛球(雙打)實(shí)例可以映射到每種分類方法中的某個(gè)子類中.在此專家視圖中,雖然將運(yùn)動(dòng)項(xiàng)目按不同科目類型、不同強(qiáng)度、不同能量代謝類型和不同運(yùn)動(dòng)益處進(jìn)行分類,但它們都屬于運(yùn)動(dòng)項(xiàng)目的子類,對(duì)于描述運(yùn)動(dòng)項(xiàng)目的屬性和語義關(guān)系,也并不需要按子類的不同進(jìn)行區(qū)分.而在圖2(a)所示的專家視圖中,疾病、癥狀、病因和風(fēng)險(xiǎn)因素是完全獨(dú)立的一級(jí)概念,它們?cè)谡Z義上也是完全不同的.

約定4.在專家視圖中,所有實(shí)例都?xì)w屬于同一祖先類下的不同子類時(shí),在對(duì)應(yīng)的本體視圖中,可以將這些子類建模為類型實(shí)例,實(shí)例對(duì)象通過分類屬性連接這些類型實(shí)例.

基于約定4,對(duì)于圖3(a)所示的專家視圖,可以建立如圖3(b)所示的本體視圖.在如圖3(b)所示的本體視圖中,針對(duì)運(yùn)動(dòng)項(xiàng)目實(shí)例,只建立了一個(gè)運(yùn)動(dòng)項(xiàng)目一級(jí)分類,并將所有運(yùn)動(dòng)項(xiàng)目建模為其實(shí)例;而將專家視圖中的不同特化(specialization)分類建模為類型實(shí)例,同時(shí)增加多個(gè)對(duì)應(yīng)的分類屬性來連接運(yùn)動(dòng)項(xiàng)目實(shí)例和這些類型實(shí)例.

2.3 同一資源既是類型又是實(shí)例

在所有領(lǐng)域的知識(shí)中都會(huì)存在這樣的情況,即某個(gè)資源自身既表示實(shí)例又可以作為分類代表更多實(shí)例對(duì)象的集合.例如在健康醫(yī)療領(lǐng)域,糖尿病和高血壓都屬于典型、多發(fā)的慢性疾病,大多數(shù)時(shí)候都表示疾病實(shí)例,但糖尿病還可以進(jìn)一步細(xì)分為1 型糖尿病、2 型糖尿病、妊娠糖尿病、糖尿病前期、糖尿病性神經(jīng)病等多種疾病,如圖4(a)所示的專家視圖.

參考ICD-10 可以知道,1 型糖尿病還可以進(jìn)一步細(xì)分為脆弱型糖尿病、幼年型糖尿病、趨酮癥性糖尿病等疾病.同樣,高血壓等疾病也可以做進(jìn)一步的細(xì)分.

針對(duì)以上情形,盡管OWL 提供了這樣的表達(dá)能力,但我們需要在表達(dá)能力和推理能力上做出平衡.OWL 提供了3 種表達(dá)能力遞增的子語言O(shè)WL Lite、OWL DL 和OWL Full,以分別用于特定的實(shí)現(xiàn)者和用戶團(tuán)體[3,6].OWL Lite 僅提供用于描述分類關(guān)系和簡單約束的語義組件.OWL DL(description logic)包括了OWL 語言的所有成分,但有一定的限制,如類型的分離,即一個(gè)類不能同時(shí)是一個(gè)個(gè)體或?qū)傩?一個(gè)屬性不能同時(shí)是一個(gè)個(gè)體或類.采用OWL DL 語義組件描述的本體能夠確保語義推理計(jì)算的完全性(computational completeness)和可判定性(decidability).OWL Full 具有最強(qiáng)的表達(dá)能力和完全自由的RDF 語法,例如,在OWL Full 中,一個(gè)類本身可以作為一個(gè)個(gè)體,并允許一個(gè)本體增加預(yù)定義的(RDF,OWL)詞匯的含義.但由此帶來的問題是,沒有推理系統(tǒng)能夠支持對(duì)OWL Full 所有成分的完全推理.

為了平衡表達(dá)能力和推理能力,這里選擇OWL DL 作為本體視圖的描述語言.同時(shí),為了支撐這里的領(lǐng)域知識(shí)描述需求,即某個(gè)資源自身既表示實(shí)例又可以作為分類代表更多實(shí)例對(duì)象的集合,這里提出了約定5 的領(lǐng)域知識(shí)建模方法.

約定5.在專家視圖中,對(duì)于自身既表示實(shí)例又可以作為分類代表更多實(shí)例對(duì)象的集合的資源對(duì)象,在對(duì)應(yīng)的本體視圖中,將其所在分支的父類、子類及實(shí)例對(duì)象都建模為最近公共父類的實(shí)例,并通過對(duì)象屬性表達(dá)實(shí)例間的分類關(guān)系.

基于約定5,對(duì)于圖4(a)所示的專家視圖,可以建立如圖4(b)所示的本體視圖.本體視圖將專家視圖中疾病的所有子類及實(shí)例都建模為疾病類的實(shí)例,并通過對(duì)象屬性med:medicine.disease.parent_disease 表達(dá)實(shí)例的父類(實(shí)例),通過對(duì)象屬性med:medicine.disease.includes_diseases 表達(dá)實(shí)例作為類型包含的實(shí)例集合.這里,對(duì)象屬性med:medicine.disease.parent_disease 和med:medicine.disease.includes_diseases 都是傳遞(transitive)屬性,具有類型owl:TransitiveProperty[3].如果屬性p為傳遞屬性,那么如果存在陳述(ApB)和(BpC),則意味著存在陳述(Ap C).

除了這里的情況以外,在本體視圖中,將一個(gè)資源表示為一個(gè)概念(即類)還是一個(gè)實(shí)例,或者將資源建模為實(shí)例還是某個(gè)數(shù)據(jù)類型屬性的值,這依賴于具體的領(lǐng)域范圍和該本體潛在的應(yīng)用需求.

如果具有超類(superclass)沒有的附加屬性,或者具有不同于超類的約束,或者參與了與超類不同的語義關(guān)聯(lián),這時(shí)可以建模新的子類而不是超類的實(shí)例[17];如果資源具有很多屬性特征,或者與其他資源存在語義關(guān)聯(lián),那么應(yīng)該將資源建模為實(shí)例而不是作為某個(gè)數(shù)據(jù)類型屬性的值.

2.4 多元關(guān)系的語義映射

在任何領(lǐng)域的知識(shí)描述中,都會(huì)涉及到對(duì)資源的某些量化指標(biāo)的描述,例如人的身高、體重、體溫、心跳次數(shù)等.在不同的國家和地區(qū),對(duì)相同指標(biāo)的默認(rèn)指稱單位并不完全一樣,例如在中國,衡量人的身高、體重一般使用米(m)和公斤(kg),而在英國,計(jì)量人的身高、體重的單位分別為英寸(inch)和磅(pounds).一些領(lǐng)域?qū)<以诮nI(lǐng)域知識(shí)時(shí),會(huì)假定領(lǐng)域知識(shí)的使用區(qū)域或使用者,確信使用此領(lǐng)域知識(shí)的使用者會(huì)正確推斷出默認(rèn)的計(jì)量單位,從而在表示領(lǐng)域知識(shí)時(shí)常常省略計(jì)量單位,如圖5(a)所示.但在將專家視圖映射為本體視圖并應(yīng)用到語義Web 中時(shí),這種假定是不成立的,所以必須對(duì)計(jì)量單位或類似的信息進(jìn)行明確表述.

另外,在任何領(lǐng)域的知識(shí)描述中都存在一些模糊和不確定的知識(shí),例如醫(yī)生對(duì)患者疾病的診斷就是一種可能性的判斷,這種可能性的判斷依賴患者主訴的癥狀、體征、檢查、化驗(yàn)、醫(yī)生經(jīng)驗(yàn)等.醫(yī)生在給出診斷結(jié)果時(shí),并不能給出這種可能性的大小.健康醫(yī)療大數(shù)據(jù)的出現(xiàn),一些基于數(shù)據(jù)挖掘、機(jī)器學(xué)習(xí)等方法構(gòu)造的針對(duì)單病種或者專病的疾病輔助診斷模型,不但可以提供比單個(gè)醫(yī)生(基于大數(shù)據(jù)的疾病輔助診斷模型綜合了更多醫(yī)生的經(jīng)驗(yàn)知識(shí))更高的疾病檢出率,而且還能提供鑒別診斷,給出數(shù)值化的患病可能性參考值.本文不探討各種模糊性和不確定知識(shí)的建模方法,而是給出這種數(shù)值化關(guān)系的語義描述方法.

在本體視圖中,為了描述張三的身高及度量單位,可以在描述身高的屬性的ID 中附上度量單位,比如pp:people.person.height(m),或者在屬性的標(biāo)注屬性(rdfs:label,rdfs:comment 等)中注明使用的計(jì)量單位,或者將身高屬性的值表示為字符串,在字符串中同時(shí)表達(dá)身高的數(shù)值和單位,例如“1.75m”.對(duì)于描述張三與疾病診斷關(guān)系的概率值也可以采用類似的方法.這些描述方式對(duì)人是可理解的,但卻不是機(jī)器可處理的;而且對(duì)于不同的度量單位和關(guān)系權(quán)重(例如描述張三患某種疾病的風(fēng)險(xiǎn)等級(jí)),需要分別處理,可擴(kuò)展性差.

描述身高的數(shù)值和單位組成了一個(gè)結(jié)構(gòu)(structure),要描述張三和這個(gè)結(jié)構(gòu)的關(guān)系,就要涉及到處理一個(gè)N元(n-ary)關(guān)系[24].在這里N為3,分別是張三、身高數(shù)值和身高單位.要描述張三與診斷關(guān)系的概率值,需要一個(gè)附加的屬性用于描述這個(gè)關(guān)系的概率,同樣構(gòu)成了一個(gè)N元關(guān)系.而RDF 只能表示二元(binary)關(guān)系,為此作出如下的建模約定:

約定6.對(duì)于專家視圖中明確描述或隱含的結(jié)構(gòu)化值,在本體視圖中引入N元關(guān)系來進(jìn)行明確表示;使用空節(jié)點(diǎn)(blank nodes)[4,10]或有名資源(具有URIrefs)表示N元關(guān)系:對(duì)于每一個(gè)N元關(guān)系,將其切分為一元(作為這個(gè)N元關(guān)系的主體,比如張三)和N-1 元(比如身高值和計(jì)量單位),并創(chuàng)建一個(gè)空節(jié)點(diǎn)或有名資源及其相關(guān)屬性來進(jìn)行連接(即描述).如果N-1 元中仍然存在多元關(guān)系,可采用相同的方法進(jìn)行切分和描述.

如圖5(b)所示,分別建立了描述人和描述度量單位的本體Opeople和Omeasurement_unit,這兩個(gè)本體定義中的資源ID 對(duì)應(yīng)的名稱空間前綴分別為pp和mm.然后定義了一個(gè)Izhangsan(名稱空間為ps),基于Opeople,Omeasurement_unit和Odomain來描述個(gè)體張三.圖中創(chuàng)建了3 個(gè)空節(jié)點(diǎn),分別用于描述張三的身高、體重和診斷結(jié)果.這里并沒有為空節(jié)點(diǎn)分配URIrefs,但表達(dá)了它應(yīng)該表達(dá)的含義即提供了圖中各個(gè)部分之間必需的連通作用.這個(gè)空節(jié)點(diǎn)本身可能從來不會(huì)被從這個(gè)RDF 圖的外部引用,因此可能不需要通用的標(biāo)識(shí)符.如果需要被從外部引用,則可以創(chuàng)建有名資源來代替這里的空節(jié)點(diǎn).但在把RDF 圖序列化成三元組形式的時(shí)候,需要空節(jié)點(diǎn)標(biāo)識(shí)符來表示和區(qū)分圖中的空節(jié)點(diǎn).因此,在三元組表示法中,使用“_:name”形式的空節(jié)點(diǎn)標(biāo)識(shí)符來表示空節(jié)點(diǎn)[4],例如圖 5(b)中的_:height10338,_:weight10245 和_:disease12227.在使用工具程序(例如Apache Jena[25])創(chuàng)建空節(jié)點(diǎn)時(shí),可以指定空節(jié)點(diǎn)標(biāo)識(shí)符,也可以由程序自動(dòng)生成.

與URIref 和字面值不同,空節(jié)點(diǎn)標(biāo)識(shí)符并不被認(rèn)為是RDF 圖的一個(gè)實(shí)際組成部分(因?yàn)閳D中的空節(jié)點(diǎn)可以沒有空節(jié)點(diǎn)標(biāo)識(shí)符).另外,因?yàn)榭展?jié)點(diǎn)標(biāo)識(shí)符表示的是空節(jié)點(diǎn)而非弧,所以在一個(gè)圖的三元組表達(dá)式中:空節(jié)點(diǎn)標(biāo)識(shí)符只能出現(xiàn)在三元組主體和客體的位置上,而不能出現(xiàn)在謂詞的位置上[4].

結(jié)構(gòu)化值中包含兩個(gè)或者多個(gè)元素,有時(shí)領(lǐng)域?qū)<铱赡芟霃?qiáng)調(diào)某個(gè)元素的重要性,例如前面討論領(lǐng)域?qū)<以诿枋瞿承┝炕笜?biāo)時(shí)通常省略其單位,因?yàn)轭I(lǐng)域?qū)<艺J(rèn)為指標(biāo)的值更重要,單位在某個(gè)語境中很容易達(dá)成共識(shí).這種重要性更多的是一種主觀認(rèn)識(shí),在領(lǐng)域?qū)<业闹R(shí)中可能不會(huì)特意強(qiáng)調(diào),更多地是一種習(xí)慣認(rèn)識(shí).例如,在描述張三的身高和體重的結(jié)構(gòu)化值中,身高和體重的數(shù)值對(duì)結(jié)構(gòu)化值的貢獻(xiàn)最大,而身高和體重的記錄單位用于修飾身高和體重的數(shù)值.在其他類型的結(jié)構(gòu)化值中,可能也存在這樣的情況.

約定7.識(shí)別專家視圖中明確描述或隱含的結(jié)構(gòu)化值的主值(main value)[5],在本體視圖中使用RDF 提供的預(yù)定義的屬性rdf:value 來描述結(jié)構(gòu)化值中的主值.

盡管rdf:value 本身沒有含義,但RDF 鼓勵(lì)這樣使用.如圖5(b)所示,圖中屬性pp:people.diagnosis.value 為屬性rdf:value 的子屬性,以表明診斷結(jié)果的重要性.

2.5 訪問授權(quán)的語義映射

針對(duì)領(lǐng)域中涉及安全、敏感或用戶隱私相關(guān)的內(nèi)容,領(lǐng)域安全專家、信息擁有者(例如醫(yī)院或患者)或信息來源者(例如患者)都可能提出訪問授權(quán)的需求.如何基于領(lǐng)域語義知識(shí)庫建立此訪問授權(quán)的語義映射,是本節(jié)要討論的主題.

所有領(lǐng)域(尤其是醫(yī)療健康、金融等領(lǐng)域)都會(huì)涉及到與安全、敏感或用戶隱私相關(guān)的內(nèi)容[19,26].信息共享與隱私保護(hù)的目標(biāo)是共享數(shù)據(jù),同時(shí)保護(hù)個(gè)人身份信息,并確保信息的使用與信息收集的目的相一致.隱私保護(hù)的核心是隱私控制,即信息的擁有者是否有權(quán)完全控制個(gè)人信息(全部或部分)的收集、訪問和共享,并可以要求停止對(duì)個(gè)人信息的處理.隨著信息化程度的不斷提高,越來越多的組織和個(gè)人開始擔(dān)心安全和隱私問題,安全和隱私也成為信息化時(shí)代需要首先解決的關(guān)鍵問題[19].

領(lǐng)域?qū)<以诮nI(lǐng)域知識(shí)的時(shí)候,關(guān)心的是盡可能全面、詳盡、準(zhǔn)確、一致地表達(dá)領(lǐng)域中的知識(shí);但在提供知識(shí)服務(wù)時(shí),領(lǐng)域安全專家必須要考慮領(lǐng)域知識(shí)中顯式存在的涉及安全、敏感或用戶隱私相關(guān)的內(nèi)容的管理和控制問題,或者可能由推理、授權(quán)傳播、數(shù)據(jù)集成、數(shù)據(jù)挖掘等過程導(dǎo)致的隱含的安全、敏感或隱私信息泄露問題[19].領(lǐng)域本體定義提供領(lǐng)域中共同認(rèn)可的知識(shí),一般不涉及安全和隱私問題;而領(lǐng)域?qū)嵗龜?shù)據(jù)描述領(lǐng)域中個(gè)體(比如人、組織等)的知識(shí),會(huì)涉及到與個(gè)體相關(guān)的安全、敏感或隱私問題;但領(lǐng)域本體定義為個(gè)體的描述提供語義支持,并為個(gè)體知識(shí)的推理提供背景知識(shí).本體描述語言提供的語義描述組件可能為基于推理和數(shù)據(jù)集成的安全和隱私泄露提供支持.例如,電子郵件地址通常是唯一的,可以唯一標(biāo)識(shí)一個(gè)人,所以描述人的電子郵件屬性一般定義為owl:InverseFunctionalProperty 類型的,即一個(gè)人可以有多個(gè)電子郵件,但一個(gè)電子郵件地址可以唯一地確定一個(gè)人;一本書的ISBN 號(hào)是唯一的,所以書籍的ISBN 屬性通常定義為owl:FunctionalProperty類型的,即一本書可以唯一的確定一個(gè)ISBN 號(hào).在語義Web 上,可以通過郵件地址聚合關(guān)于某個(gè)人的很多信息,通過ISBN 號(hào)可以聚合關(guān)于一本書籍及其作者的很多信息,從而可能引發(fā)安全和隱私泄露問題.

語義Web 技術(shù)提供的知識(shí)表示和推理能力可以增強(qiáng)傳統(tǒng)的數(shù)據(jù)安全和隱私保護(hù)能力,并為語義Web 本身提供保駕護(hù)航.本體模型可以很好地建模領(lǐng)域知識(shí),同樣可以細(xì)粒度地捕捉領(lǐng)域安全和隱私保護(hù)需求.基于本體建模的領(lǐng)域知識(shí),為發(fā)現(xiàn)顯式的和隱含的安全和隱私保護(hù)需求提供了很好的支持.傳統(tǒng)的安全和隱私保護(hù)模型采用增量式的實(shí)現(xiàn)方法,沒有詳細(xì)的、一致的形式化模型,不適用于包含大量涉及安全和用戶隱私敏感信息的系統(tǒng),而本體正好提供了一種可擴(kuò)展的、靈活的、健壯的形式化模型.使用SWRL 作為安全策略規(guī)范,并基于領(lǐng)域語義知識(shí)庫中定義的資源和陳述,可以構(gòu)建基于語義的安全和隱私保護(hù)約束規(guī)則,一方面可以發(fā)現(xiàn)由推理引發(fā)的安全和隱私泄露問題,另一方面可以檢查在策略執(zhí)行上的一致性,避免授權(quán)沖突[19].

圖6 為一個(gè)本體庫定義的示例,包含Opeople和Omedicine的部分片段,其名稱空間前綴分別為pp和med.

圖中連接概念的屬性除了表達(dá)分類關(guān)系(rdfs:subClassOf)以外,僅用于聲明屬性的定義域和值域類型,例如屬性pp:people.person.diseases 的定義域?yàn)閜p:people.person,值域?yàn)閙ed:medicine.disease.本體定義中包含的一級(jí)概念有數(shù)字對(duì)象(電子病歷、醫(yī)療處方等)、人、疾病、癥狀;數(shù)字對(duì)象包含患者記錄和醫(yī)療處方兩個(gè)二級(jí)概念,人包括醫(yī)生、患者、顧問這3 個(gè)二級(jí)概念;人的主要屬性有身份ID、擁有的數(shù)字對(duì)象、患有疾病等.

圖7 為基于圖6 的本體定義構(gòu)建的實(shí)例數(shù)據(jù)示例,分別構(gòu)建了一個(gè)顧問、患者和疾病實(shí)例及它們之間的語義關(guān)系,描述了患者患有的疾病、擁有的患者記錄和身份ID.

為了實(shí)現(xiàn)患者和顧問之間的服務(wù)功能,領(lǐng)域安全專家或者患者需要授權(quán)顧問(訪問主體)對(duì)患者相關(guān)健康狀況(訪問客體)的訪問權(quán)限,例如允許顧問查看患者的診斷結(jié)論、電子病歷或某次影像診斷結(jié)果.從傳統(tǒng)的安全視角,訪問主體和訪問客體都是孤立的,它們通過訪問行為建立聯(lián)系.而在領(lǐng)域語義知識(shí)庫中,資源之間以及資源和字面值之間都可能存在某種語義關(guān)系.與患者相關(guān)的信息都和患者存在語義關(guān)聯(lián),患者和他/她的顧問之間也可能建立了顯式的顧問/會(huì)員關(guān)系.構(gòu)成領(lǐng)域語義知識(shí)庫的最小單位是三元組,對(duì)語義知識(shí)庫的訪問實(shí)際就是對(duì)某個(gè)或某些三元組的訪問,比如張三的診斷、張三的患者記錄等.為此,作出如下的約定.

約定8.基于SKBdomain提供語義知識(shí)服務(wù)時(shí),將三元組作為最小的訪問控制保護(hù)單元,即訪問客體.

領(lǐng)域安全專家或者患者可能為顧問做出如下的授權(quán).

1) 允許顧問李四訪問患者張三的診斷記錄;

2) 允許顧問李四訪問患者張三的患者記錄.

為基于領(lǐng)域語義知識(shí)庫建立此訪問授權(quán)的語義映射,作出如下的建模約定.

約定9.為基于SKBdomain的三元組建立訪問控制策略規(guī)則,采用RDF 陳述具體化(reification)[4,10]的方法建模和引用三元組.

一條陳述是由客體、謂詞和主體構(gòu)成的三元組,陳述的RDF 具體化用于表達(dá)關(guān)于該三元組的附加信息,例如三元組的創(chuàng)建時(shí)間、創(chuàng)建人等.RDF 具體化詞匯包括類型rdf:Statement、屬性rdf:subject,rdf:predicate 和rdf:object.RDF 具體化詞匯被設(shè)計(jì)用于討論陳述本身,即rdf:Statement 的實(shí)例.圖8 所示建立了兩條陳述的具體化,med:triple0001a 和med:triple0001b 為陳述實(shí)例,通過具體化詞匯分別指向了兩條陳述.陳述實(shí)例的ID 可以是有名ID,也可以是無名的空節(jié)點(diǎn).但為了在訪問控制策略規(guī)則中引用此陳述實(shí)例,需要采用有名ID.

為建立授權(quán)和許可規(guī)則,作出如下的約定.

約定10.基于本體模型建立授權(quán)和許可訪問控制原語,使用SWRL 作為訪問控制策略規(guī)范,建立授權(quán)和許可規(guī)則.

基于本體模型建立如圖9 所示的訪問控制原語本體Oaccess_control,即連接人和陳述實(shí)例的授權(quán)和許可屬性.

ac為訪問控制本體的名稱空間前綴,授權(quán)原語有ac:authorizes 和ac:deny,許可原語有ac:permitted 和ac:prohibitted.建立授權(quán)和許可兩級(jí)訪問控制策略模型,分別對(duì)應(yīng)用戶級(jí)和系統(tǒng)級(jí)[19].在用戶級(jí),每個(gè)用戶可以就個(gè)人擁有的資源定制靈活的訪問授權(quán)策略規(guī)則.在系統(tǒng)級(jí)的策略規(guī)則治理整個(gè)系統(tǒng)的安全與隱私策略.由于某些受保護(hù)資源可能關(guān)聯(lián)多個(gè)授權(quán)方用戶(比如患者與醫(yī)生或者顧問之間的關(guān)系,如果要訪問此關(guān)系,需要患者和醫(yī)生或顧問的同時(shí)授權(quán)),所以需要通過聚合用戶級(jí)的授權(quán)來判斷是否對(duì)受保護(hù)的資源提供了合適的授權(quán),也即最終的許可需要通過系統(tǒng)級(jí)的策略規(guī)則來授權(quán).授權(quán)和許可同時(shí)支持肯定和否定,這樣可以簡化訪問控制策略規(guī)則的定義以及解決基于本體知識(shí)和規(guī)則推理的授權(quán)傳播問題;如果出現(xiàn)授權(quán)沖突,否定授權(quán)的優(yōu)先級(jí)高于肯定授權(quán).

3 應(yīng)用案例

糖尿病、高血壓等慢性病患者,除了按醫(yī)生指導(dǎo)進(jìn)行日常的用藥治療以外,合理的飲食、適量的運(yùn)動(dòng)作為生活方式,對(duì)控制血糖、血壓等指標(biāo)同樣非常重要.例如,經(jīng)常有規(guī)律的運(yùn)動(dòng)不僅可減少2 型糖尿病的發(fā)生率,還可降低血糖,提高胰島素敏感性,延緩其慢性并發(fā)癥的發(fā)生和發(fā)展.但并不是所有慢性病患者都適合做運(yùn)動(dòng),即使適合做運(yùn)動(dòng),還需要考慮適合做多大強(qiáng)度的運(yùn)動(dòng)、適合做什么類型的運(yùn)動(dòng)、適合什么時(shí)間做運(yùn)動(dòng)、每次運(yùn)動(dòng)的持續(xù)時(shí)間、運(yùn)動(dòng)的注意事項(xiàng)(比如可能需要考慮與藥物、飲食的配合,運(yùn)動(dòng)環(huán)境和裝備等)等.運(yùn)動(dòng)對(duì)糖尿病的防治效果是肯定的,但糖尿病患者運(yùn)動(dòng)也有風(fēng)險(xiǎn),安全有效的運(yùn)動(dòng)需要配合調(diào)節(jié)飲食和用藥[27].著名的Joslin 紀(jì)念章用“胰島素、運(yùn)動(dòng)和飲食三駕馬車”來表示成功地治療糖尿病的3 個(gè)主要方面[28].

本節(jié)采用本文提出的5 類語義映射方法構(gòu)建了一個(gè)健康醫(yī)療領(lǐng)域的語義知識(shí)庫,用于向慢性病患者推薦個(gè)性化的干預(yù)方案(飲食處方、運(yùn)動(dòng)處方等).當(dāng)然,這5 類映射方法并不受限于該特定的領(lǐng)域或應(yīng)用場景,而是針對(duì)幾乎在所有領(lǐng)域中都存在的共性問題的解決方案,所以適用于所有類似的應(yīng)用場景.

3.1 領(lǐng)域本體庫的構(gòu)建

為了支撐向慢性病患者推送個(gè)性化的干預(yù)方案應(yīng)用的問題求解需求,這里基于本文提出的語義映射方法約定來將專家知識(shí)映射為基于本體和語義Web 規(guī)則語言描述的領(lǐng)域知識(shí).領(lǐng)域?qū)<抑R(shí)EKBhealthcare來源于以下幾個(gè)途徑.

· 醫(yī)療健康領(lǐng)域的標(biāo)準(zhǔn)術(shù)語集,例如ICD-10,ICD-9-CM,Snomed CT[29],Mesh[30],UMLS[31]等;

· 公開知識(shí)庫,例如OpenGallen[32],Freebase,OBO[33],OBI[34]等;

· 公開項(xiàng)目,例如K4CARE[35],PIPS[36]等;

· 論文文獻(xiàn)[36-39]和專業(yè)著作[27,28];

· 網(wǎng)絡(luò)資料;

· 專家貢獻(xiàn)等.

例舉的多個(gè)標(biāo)準(zhǔn)術(shù)語集中,主要都是一些概念分類體系,而沒有實(shí)例以及實(shí)例之間的語義關(guān)系.由于不同標(biāo)準(zhǔn)術(shù)語集誕生的背景和應(yīng)用場景的不同,它們中的一些概念分支存在重疊,但又不完全一樣,例如,關(guān)于疾病、癥狀、運(yùn)動(dòng)設(shè)施等的分類體系有部分重疊.而且部分概念同時(shí)出現(xiàn)在多個(gè)分支,但表達(dá)的語義不一樣.為此,由醫(yī)學(xué)專家針對(duì)本文的應(yīng)用場景對(duì)其進(jìn)行了整合.

在列舉的幾個(gè)公開知識(shí)庫中,除了Freebase 以外的幾個(gè)知識(shí)庫仍然以概念分類體系為主,而Freebase 正好相反,只有一級(jí)概念,以實(shí)例關(guān)系為主,實(shí)例關(guān)系主要用于表達(dá)領(lǐng)域常識(shí)知識(shí),例如某個(gè)疾病的主要表現(xiàn)癥狀、誘因、風(fēng)險(xiǎn)因素等.同時(shí),Freebase 知識(shí)庫中還包含了度量單位、位置領(lǐng)域的知識(shí).

在例舉的幾個(gè)公開項(xiàng)目中,K4CARE 項(xiàng)目中定義的CPO(case profile ontology)本體用于描述患者病情概況所需要的知識(shí),比如癥狀、體征、疾病、綜合征、社會(huì)問題等及其語義關(guān)系,其中,疾病僅僅涵蓋了一些慢性病.PIPS 項(xiàng)目中創(chuàng)建了疾病(doid.rdf)、臨床記錄(PIPSClinicalRecord.owl)、食物(PIPSFood.owl)、菜單(PIPSMenu.owl)、菜譜(PIPSRecipe.owl)、個(gè)人概況(PIPSPerson.owl)等本體,但主要是概念分類體系.

列舉的論文文獻(xiàn)和專業(yè)著作主要用于提供運(yùn)動(dòng)、飲食相關(guān)的專家知識(shí),也從網(wǎng)絡(luò)上收集了一些資料.

為此,基于本文提出的語義映射方法,由醫(yī)學(xué)專家參與,針對(duì)本文的應(yīng)用場景對(duì)幾個(gè)來源的概念體系進(jìn)行了整合,實(shí)例數(shù)據(jù)主要參考Freebase 知識(shí)庫(并保留了實(shí)例數(shù)據(jù)的MID)、K4CARE 項(xiàng)目和相關(guān)文獻(xiàn).除了Freebase知識(shí)源以外,其他標(biāo)準(zhǔn)術(shù)語集、知識(shí)庫和公開項(xiàng)目中的知識(shí)均為英文描述.Freebase 知識(shí)庫中的資源對(duì)象,其標(biāo)注屬性采用了20 多種語言分別進(jìn)行描述.Freebase 知識(shí)庫中的所有資源對(duì)象都具有英文描述,但只有約一半的資源對(duì)象具有中文描述.為此,在建立領(lǐng)域語義知識(shí)庫時(shí),對(duì)于參考的英文素材,在保留英文描述的同時(shí),還采用翻譯工具對(duì)其進(jìn)行了中文翻譯,并由醫(yī)學(xué)專家對(duì)其進(jìn)行了校對(duì).對(duì)于醫(yī)學(xué)專家補(bǔ)充的知識(shí),只有中文描述.

領(lǐng)域本體庫OBhealthcare的定義如下:

各個(gè)子本體說明如下.

1)Omedicine用于定義醫(yī)療健康領(lǐng)域的相關(guān)概念(例如疾病、癥狀、檢查、藥物、手術(shù)、解剖結(jié)構(gòu)、病因、醫(yī)療設(shè)備等)及其屬性(例如疾病概念包含的部分屬性有疾病表現(xiàn)的癥狀、疾病適用的藥物、疾病病因、疾病并發(fā)癥、疾病包含的子疾病、疾病歸屬的父疾病等);

2)Opeople用于定義與人相關(guān)的概念(例如人、人群、孩子、父母、兒子、女兒、父親、母親等)及其屬性(例如人的部分屬性有性別、出生日期、身高、體重、有身體殘疾、有身體損傷、感興趣/適合/不適合的運(yùn)動(dòng)、感興趣/適合/不適合的飲食等);

3)Ofood用于定義與食材、食譜相關(guān)的概念(例如食材、食譜、中醫(yī)功效、營養(yǎng)素、堅(jiān)果種子、奶、水產(chǎn)、水果、油脂、糖品、肉等)及其屬性(例如食材包含的營養(yǎng)素、食材功效、食材適宜攝入量、食材推薦攝入量、營養(yǎng)素計(jì)量單位、營養(yǎng)素參考值等);

4)Oexercise用于定義康復(fù)運(yùn)動(dòng)相關(guān)的概念(例如運(yùn)動(dòng)項(xiàng)目、運(yùn)動(dòng)設(shè)備、運(yùn)動(dòng)強(qiáng)度、能量代謝類型、運(yùn)動(dòng)益處等)及屬性(例如運(yùn)動(dòng)項(xiàng)目需要的運(yùn)動(dòng)設(shè)備、運(yùn)動(dòng)項(xiàng)目包含的子運(yùn)動(dòng)項(xiàng)目、運(yùn)動(dòng)項(xiàng)目歸屬的父運(yùn)動(dòng)項(xiàng)目、運(yùn)動(dòng)項(xiàng)目的能量代謝類型、運(yùn)動(dòng)項(xiàng)目的運(yùn)動(dòng)強(qiáng)度、運(yùn)動(dòng)項(xiàng)目的運(yùn)動(dòng)益處、運(yùn)動(dòng)項(xiàng)目的鍛煉部位、運(yùn)動(dòng)項(xiàng)目依賴的運(yùn)動(dòng)場地等);

5)Omeasurement_unit包含度量相關(guān)的概念(例如長度單位、質(zhì)量單位、時(shí)間單位、貨幣單位等)及其屬性(例如長度計(jì)量單位、長度計(jì)量單位的標(biāo)準(zhǔn)縮寫等);

6)Olocation包含地理位置、場所相關(guān)的概念(例如地址、郵編、洲、國家、省、市、縣、鎮(zhèn)、場所、部門等)及其屬性(例如編碼、名稱、包含關(guān)系、隸屬關(guān)系等).

領(lǐng)域本體庫OBhealthcare中的主要概念及其屬性關(guān)系如圖10 所示,其中,橢圓表示概念,帶箭頭的連線表示屬性,箭頭源端連接的概念表示該屬性的定義域,箭頭目的端連接的概念表示該屬性的值域.

在定義各個(gè)子本體時(shí)遵循的約定見表1.

Table 1 Conventions followed by the domain ontology library definitions表1 領(lǐng)域本體庫定義遵循的約定

對(duì)于表達(dá)一般性領(lǐng)域常識(shí)知識(shí)的實(shí)例數(shù)據(jù),這里直接定義在對(duì)應(yīng)的領(lǐng)域本體中了,例如疾病實(shí)例、癥狀實(shí)例、藥物實(shí)例、手術(shù)實(shí)例、解剖結(jié)構(gòu)實(shí)例等及這些實(shí)例間關(guān)系的定義都直接定義在本體Omedicine中了;不同類別的食材實(shí)例及其屬性的定義(例如包含的營養(yǎng)素、功效等)直接定義在本體Ofood中了;不同類別的運(yùn)動(dòng)實(shí)例及其屬性的定義(例如運(yùn)動(dòng)項(xiàng)目的強(qiáng)度、能量代謝類型、益處、技術(shù)結(jié)構(gòu)等)直接定義在本體Oexercise中了;度量單位實(shí)例及其屬性的定義直接定義在本體Omeasurement_unit中了;位置相關(guān)的實(shí)例及其屬性的定義直接定義在本體Olocation中了.在定義領(lǐng)域常識(shí)知識(shí)時(shí)遵循的約定見表2.

Table 2 Conventions followed by the domain commonsense knowledge definitions表2 領(lǐng)域常識(shí)知識(shí)定義遵循的約定

以Turtle RDF[40]表示的領(lǐng)域語義知識(shí)庫的文件(擴(kuò)展名為.ttl)大小約為1.8GB,知識(shí)庫中包含144 個(gè)概念、82 個(gè)數(shù)據(jù)類型屬性、166 個(gè)對(duì)象屬性、888 308 個(gè)實(shí)例和7 076 316 個(gè)三元組.

該知識(shí)庫的規(guī)模和內(nèi)容可以滿足臨床科研、臨床診療、健康管理中一些基本的知識(shí)服務(wù)需求,例如提供數(shù)據(jù)的共享與互操作服務(wù).在健康醫(yī)療領(lǐng)域中,同一種疾病、同一種癥狀等在不同醫(yī)療機(jī)構(gòu)可能有不同的描述方法,甚至在同一醫(yī)療機(jī)構(gòu)也存在許多不同的描述方法.這些不同描述方法與標(biāo)準(zhǔn)描述方法的歸一化是一項(xiàng)知識(shí)密集型、時(shí)間密集型的工作.但此項(xiàng)工作不解決,領(lǐng)域知識(shí)庫的作用便不能得到有效地發(fā)揮.為向領(lǐng)域應(yīng)用提供智能知識(shí)服務(wù),還需要結(jié)合特定領(lǐng)域的問題求解需求,補(bǔ)充問題求解知識(shí),知識(shí)的形態(tài)可以是語義Web 規(guī)則集(參見第3.3 節(jié))、算法、模型等.

3.2 領(lǐng)域?qū)嵗龓斓臉?gòu)建

為了對(duì)知識(shí)庫在問題求解上的可滿足性進(jìn)行驗(yàn)證,這里以推薦個(gè)性化運(yùn)動(dòng)處方場景為例,分別定義了3 個(gè)個(gè)體的實(shí)例數(shù)據(jù),即個(gè)體張三、李四、王二的實(shí)例數(shù)據(jù),包括他們的基本信息(性別、年齡、身高、體重)、健康狀況(患病情況、殘疾情況、損傷情況)、興趣愛好(運(yùn)動(dòng)、飲食等)、日常體力活動(dòng)水平、生活習(xí)慣、具有的運(yùn)動(dòng)條件(場地、設(shè)備、經(jīng)濟(jì)條件等).領(lǐng)域?qū)嵗龓霫Bhealthcare定義如下:

在定義個(gè)體實(shí)例數(shù)據(jù)時(shí)遵循的約定見表3.

Table 3 Conventions followed by the individual instance data definitions表3 個(gè)體實(shí)例數(shù)據(jù)定義遵循的約定

在使用Protégé 定義對(duì)象屬性的值域、實(shí)例間的語義關(guān)系和個(gè)體實(shí)例數(shù)據(jù)時(shí),需要引用或?qū)?owl:imports)關(guān)聯(lián)本體中的概念和實(shí)例,本體間的引用關(guān)系如圖11 所示.在基于專家知識(shí)構(gòu)建的運(yùn)動(dòng)推薦模型中,個(gè)體的這些實(shí)例數(shù)據(jù)的作用見表4.

Table 4 Roles of individual instance data in the exercise recommendation model表4 運(yùn)動(dòng)推薦模型中個(gè)體實(shí)例數(shù)據(jù)的作用

3.3 領(lǐng)域語義規(guī)則集的定義

任何基于知識(shí)的系統(tǒng),其知識(shí)庫至少由兩個(gè)基礎(chǔ)部分組成:靜態(tài)領(lǐng)域知識(shí)和動(dòng)態(tài)推理知識(shí)[1].靜態(tài)領(lǐng)域知識(shí)描述領(lǐng)域明確的靜態(tài)知識(shí);動(dòng)態(tài)推理知識(shí)又稱為問題求解知識(shí),問題求解知識(shí)從抽象層描述問題求解方法所需要的知識(shí),也就是關(guān)于如何滿足需求的知識(shí),它描述了要實(shí)現(xiàn)的目標(biāo)、實(shí)現(xiàn)這些目標(biāo)必要的行為、這些行為的激活順序以及執(zhí)行這些行為所需要的領(lǐng)域知識(shí).領(lǐng)域知識(shí)會(huì)影響問題求解知識(shí),而問題求解方法可以用于指導(dǎo)獲取靜態(tài)領(lǐng)域知識(shí).為此,本體視圖僅僅在語義上準(zhǔn)確反映專家視圖還不夠,還需要從滿足領(lǐng)域應(yīng)用問題求解的角度,調(diào)整本體視圖中包含的對(duì)象類型、數(shù)量及其組織方式的合理性,或者補(bǔ)充問題求解所需要的知識(shí).

基于表4 可以知道:為了問題求解的需要,即為了描述推薦模型(運(yùn)動(dòng)推薦模型、飲食推薦模型等),還需要基于SWRL 構(gòu)建動(dòng)態(tài)推理規(guī)則集Fhealthcare.例如在運(yùn)動(dòng)推薦模型中,基于個(gè)體的實(shí)例數(shù)據(jù)和推理規(guī)則,判斷患者是否適合做運(yùn)動(dòng);如果適合做運(yùn)動(dòng),是否需要做運(yùn)動(dòng)耐量實(shí)驗(yàn),適合多大強(qiáng)度的運(yùn)動(dòng);基于身體殘疾、損傷、日常體力活動(dòng)水平、興趣愛好、生活習(xí)慣、運(yùn)動(dòng)條件等因素判斷適合個(gè)體的最佳運(yùn)動(dòng)項(xiàng)目.

SWRL 規(guī)則有3 種不同的語法[3,20]:抽象語法(abstract syntax)、XML 具體語法(XML concrete syntax)以及RDF 具體語法,其中,XML 具體語法基于OWL XML 表示語法和RuleML XML 語法.但采用這幾種SWRL 語法對(duì)規(guī)則進(jìn)行序列化描述時(shí),語句非常冗長,人類不容易閱讀.于是,在規(guī)則表示中,經(jīng)常使用一種相對(duì)非正式的“人類可讀的”語法形式[20]:

一個(gè)SWRL 規(guī)則包含了一個(gè)前提(antecedent)部分和一個(gè)結(jié)論(consequent)部分,前提又稱為規(guī)則體(body),結(jié)論部分又稱為規(guī)則頭(head).規(guī)則體和規(guī)則頭可以只有一個(gè)原子公式(atomic formula),或者是多個(gè)原子公式的合取(conjunction),其表示形式如下:

一個(gè)SWRL 規(guī)則可以這樣理解:如果在前提中的所有原子是真實(shí)的,那么結(jié)果也必須是真實(shí)的.一個(gè)原子的表示形式為

p是謂詞符號(hào),arg1,arg2,…,argn是術(shù)語或表達(dá)式的參數(shù).在SWRL 中,謂詞符號(hào)包括OWL 類、屬性、數(shù)據(jù)類型或內(nèi)置原語(builtin primitives)等.參數(shù)可以是OWL 實(shí)例、數(shù)據(jù)值或者引用它們的變量.

另外,在本應(yīng)用場景中,將個(gè)體的年齡、患病情況、殘疾情況、損傷情況、經(jīng)濟(jì)條件等識(shí)別為個(gè)體的敏感和隱私數(shù)據(jù),為實(shí)現(xiàn)對(duì)這些數(shù)據(jù)的訪問控制,首先需要建立用于授權(quán)和許可規(guī)則的訪問控制原語本體Oaccess_control,參見圖9.然后將識(shí)別出的敏感和隱私保護(hù)內(nèi)容映射為領(lǐng)域?qū)嵗龓熘械娜M,如圖7 所示.然后在訪問控制本體中將這些受保護(hù)的三元組具體化為陳述對(duì)象,如圖8 所示.最后,基于訪問控制需求、陳述對(duì)象和訪問控制原語建立相應(yīng)的訪問控制策略規(guī)則Faccess_control,這個(gè)過程中遵循的約定見表5.

Table 5 Conventions followed by the definitions of the data security and privacy protection model表5 數(shù)據(jù)安全和隱私保護(hù)模型定義遵循的約定

最終形成的領(lǐng)域語義知識(shí)庫SKBhealthcare定義如下:

3.4 案例實(shí)現(xiàn)

Protégé 和Jena 都提供了對(duì)本體標(biāo)準(zhǔn)描述語言很好的支持,應(yīng)用中的本體視圖采用Protégé 4.3 進(jìn)行構(gòu)建,將每個(gè)本體和實(shí)例數(shù)據(jù)分別存儲(chǔ)到不同的文件中,并以Turtle 語法格式進(jìn)行表示,文件擴(kuò)展名為.ttl.

原型系統(tǒng)基于Jena 2.12.0 語義Web 編程框架實(shí)現(xiàn),使用Jena 提供的命令行工具tdbloader 將領(lǐng)域本體庫和實(shí)例庫加載到名為healthcare 的TDB[41]存儲(chǔ)中,TDB 版本為TDB 1.1.0.

Jena TDB 是一個(gè)高性能的RDF 專用存儲(chǔ).

使用Jena 通用規(guī)則引擎[42]提供的規(guī)則語法格式來描述領(lǐng)域規(guī)則集,并存儲(chǔ)到擴(kuò)展名為.rules 的規(guī)則文件中,運(yùn)動(dòng)處方推薦模型包含51 條規(guī)則,部分規(guī)則如下.

· 規(guī)則文件中,“@include 〈RDFS〉”表示導(dǎo)入規(guī)則推理所需要的RDFS 規(guī)則集;

· 每條規(guī)則中,“:”前為規(guī)則名,可選;“→”表示規(guī)則的方向,這里為前向規(guī)則(forward rule),方向的左邊表示規(guī)則體,即推理?xiàng)l件,右邊表示規(guī)則頭,即推理結(jié)論;

· 規(guī)則體和規(guī)則頭中的多個(gè)項(xiàng)(term)之間使用逗號(hào)分隔,每個(gè)項(xiàng)可以是一個(gè)三元組模式或者Jena 規(guī)則引擎的內(nèi)置原語,這里用斜粗體表示內(nèi)置原語,用于提供一些通用的計(jì)算功能;

· 三元組模式中包含變量(?person,?value等)、本體描述語言語義組件、SKBhealthcare中定義的語義組件.

Jena 通用規(guī)則引擎可用于實(shí)現(xiàn)RDFS,OWL 推理以及通用目的的推理,提供了正向鏈接推理、反向鏈接推理和混合執(zhí)行模式.本體推理、規(guī)則推理和應(yīng)用的執(zhí)行邏輯如圖12 所示.本體推理基于領(lǐng)域本體庫中的語義組件(即資源)進(jìn)行推理,例如基于類和屬性的分類關(guān)系、類和屬性的約束(例如復(fù)雜類構(gòu)造中的實(shí)例值約束、存在限定、完全限定;屬性的取值約束、基數(shù)約束、定義域和值域約束)[3,6,10]、屬性的特征(傳遞性、對(duì)稱性、非對(duì)稱性、自反性、非自反性、函數(shù)屬性、逆函數(shù)屬性)[3,6,10]等;規(guī)則推理基于語義知識(shí)庫和規(guī)則體中的條件模式進(jìn)行推理,如果滿足規(guī)則體的條件,那么得出規(guī)則頭的陳述結(jié)論,作為蘊(yùn)含的知識(shí)和領(lǐng)域本體庫、領(lǐng)域?qū)嵗龓熘械娘@式知識(shí)一起作為可查詢的領(lǐng)域語義知識(shí)庫.

基于領(lǐng)域本體庫和領(lǐng)域?qū)嵗龓熘卸x的顯式知識(shí)和基于本體推理與規(guī)則推理得到的蘊(yùn)含知識(shí),執(zhí)行SPARQL 查詢得到的張三的個(gè)性化運(yùn)動(dòng)處方推薦示例如圖13 所示.首先基于個(gè)體的實(shí)例數(shù)據(jù)和運(yùn)動(dòng)評(píng)估模型,判斷個(gè)體是否適合做運(yùn)動(dòng);如果適合做運(yùn)動(dòng),進(jìn)一步判斷是否需要做運(yùn)動(dòng)耐量實(shí)驗(yàn);然后,基于個(gè)體實(shí)例數(shù)據(jù)、評(píng)估結(jié)果和領(lǐng)域語義知識(shí)庫推薦個(gè)性化的運(yùn)動(dòng)處方,包括適合的運(yùn)動(dòng)項(xiàng)目、適合的運(yùn)動(dòng)強(qiáng)度、運(yùn)動(dòng)頻率、適合的運(yùn)動(dòng)進(jìn)行時(shí)間、適合的運(yùn)動(dòng)持續(xù)時(shí)間和運(yùn)動(dòng)注意事項(xiàng).

4 方法評(píng)價(jià)

目前,相關(guān)研究工作還沒有深入討論本文提出的語義映射問題,也沒有給出相應(yīng)的語義映射方法.本文的研究動(dòng)機(jī)和內(nèi)容完全是基于實(shí)踐中遇到的一部分問題,這些問題在相同領(lǐng)域的其他實(shí)踐中以及其他領(lǐng)域中也都會(huì)遇到,屬于共性問題.這些問題如果不解決,本體工程也得不到很好的實(shí)施和落地.

第3.1 節(jié)的應(yīng)用案例覆蓋了本文提出的5 類語義映射方法,當(dāng)然,針對(duì)其他應(yīng)用案例可能還會(huì)遇到其他需要解決的語義映射問題.基于本節(jié)提出的領(lǐng)域應(yīng)用需求和本文提出的語義映射方法建立了領(lǐng)域語義知識(shí)庫.基于領(lǐng)域應(yīng)用的問題求解需求補(bǔ)充了領(lǐng)域語義規(guī)則集.通過向規(guī)則引擎?zhèn)鬟f個(gè)體實(shí)例數(shù)據(jù)(已知條件,也是顯式知識(shí))、領(lǐng)域語義知識(shí)庫(顯式知識(shí))和領(lǐng)域語義規(guī)則集,獲得推理結(jié)果(隱式知識(shí)).最后,基于SPARQL 查詢以獲得個(gè)體的運(yùn)動(dòng)、飲食等干預(yù)方案.案例實(shí)現(xiàn)結(jié)果可以成功獲取個(gè)體的運(yùn)動(dòng)處方.從推薦結(jié)果上看,干預(yù)計(jì)劃完全符合個(gè)體的身體狀況和干預(yù)需求.當(dāng)然,推薦結(jié)果的好壞不僅僅是一個(gè)方法的問題,還涉及到領(lǐng)域語義知識(shí)庫的規(guī)模和質(zhì)量,尤其是面對(duì)具體應(yīng)用場景的問題求解知識(shí)的科學(xué)性和正確性.基于知識(shí)的智能決策支持系統(tǒng)依賴領(lǐng)域?qū)<液椭R(shí)工程師的密切配合,以及適當(dāng)?shù)姆椒?、手段和工具的支?

5 相關(guān)工作

目前,相關(guān)工作主要集中在以下幾個(gè)方面.

1) 為知識(shí)工程師或者領(lǐng)域?qū)<姨峁┓奖愕谋倔w編輯工具.

近年來,隨著本體的應(yīng)用范圍越來越廣泛,已經(jīng)出現(xiàn)了很多本體構(gòu)建工具,例如Protégé,OntoEdit,KAON 等,本體構(gòu)建工具為用戶提供了友好的圖形化操作界面,并通過集成語義推理引擎提供了本體構(gòu)建過程中的語義一致性檢查機(jī)制.借助這些工具,用戶不必了解本體描述語言的細(xì)節(jié),就可以方便地構(gòu)建本體.而且,通過本體構(gòu)建工具集成的語法和語義一致性檢查機(jī)制,避免了很多錯(cuò)誤的發(fā)生[43].

以上這些工具僅僅提供了本體的輔助編輯功能,可以方便本文討論的語義映射結(jié)果的創(chuàng)建和輸入,但并未提供具體的本體建模方法.或者說,在使用這些本體編輯工具之前,需要事先在紙面上或者頭腦中形成需要的本體模型,然后借助這些工具進(jìn)行方便地形式化.

2) 從本體工程或本體論的角度提出本體建模的一些方法學(xué).

文獻(xiàn)[44]介紹了用于創(chuàng)建企業(yè)本體的IDEF5 方法、骨架法以及用于創(chuàng)建領(lǐng)域本體的七步法以及TOVE,Methontology 等通用本體創(chuàng)建方法.這些本體建模方法只提供本體建模的基本步驟和指導(dǎo)方針.

本體與面向?qū)ο髮?duì)客觀世界的認(rèn)識(shí)方法有許多相似之處,可以借助面向?qū)ο蟮慕7椒▉斫1倔w.文獻(xiàn)[11]從UML 的靜態(tài)模型和動(dòng)態(tài)模型兩個(gè)方面研究了本體的面向?qū)ο蠼7椒?文獻(xiàn)[12]通過UML 的類圖來描述環(huán)境領(lǐng)域的本體模型,并提出了一種從UML 類圖各元素到本體OWL 描述各元素的轉(zhuǎn)換方法,詳細(xì)闡述了從本體模型到OWL 描述邏輯的轉(zhuǎn)換過程和轉(zhuǎn)換規(guī)則.

面向?qū)ο蟮谋倔w建模方法主要是通過類圖描述本體中的概念、屬性和關(guān)系,但是由于領(lǐng)域知識(shí)體系的復(fù)雜性,類圖這種簡單的結(jié)構(gòu)難以建模概念屬性繁多、關(guān)系錯(cuò)綜復(fù)雜的本體.因此,研究者們利用層次結(jié)構(gòu)中層次結(jié)構(gòu)清晰簡潔的特點(diǎn),通過層次建模方法對(duì)復(fù)雜本體進(jìn)行建模.文獻(xiàn)[13]提出了領(lǐng)域本體建模的4 層模型,通過領(lǐng)域?qū)?、分類層、類層和?shí)例層這4 個(gè)層次構(gòu)建領(lǐng)域本體.其中:領(lǐng)域?qū)颖硎绢I(lǐng)域本體的領(lǐng)域名稱,由領(lǐng)域?qū)<叶x的領(lǐng)域分類組成;分類層包括該領(lǐng)域的具體分類項(xiàng);類層由各應(yīng)用領(lǐng)域的類組成,每個(gè)類包括類名、屬性集合和操作集合;實(shí)例層由各應(yīng)用領(lǐng)域的實(shí)例組成,每個(gè)實(shí)例包括實(shí)例所屬類的名稱、屬性集合和操作集合.文獻(xiàn)[14]中提出了領(lǐng)域本體自頂向下建模的5 層模型,用于自適應(yīng)Web 系統(tǒng)的本體建模.5 層框架中包括數(shù)據(jù)層、概念層、用戶層、自適應(yīng)層和表示層,其中:數(shù)據(jù)層包括所有松散的Web 數(shù)據(jù)單元;概念層包括由數(shù)據(jù)層的數(shù)據(jù)單元抽象而來的概念與概念之間的關(guān)系;用戶層包括用戶訪問Web 的方式及行為的信息;自適應(yīng)層包括Web 中的自適應(yīng)規(guī)則和邏輯規(guī)則;表示層包括Web 系統(tǒng)內(nèi)容和結(jié)構(gòu)的信息.

除了以上較通用的一些方法學(xué)以外,還有一些針對(duì)具體問題域或領(lǐng)域的領(lǐng)域語義知識(shí)庫構(gòu)建的方法學(xué)研究.文獻(xiàn)[45]從本體論的角度出發(fā),探討了幾何學(xué)知識(shí)的獲取及表示方法,然而僅簡單描述了幾何學(xué)本體的結(jié)構(gòu),列舉了部分屬性和關(guān)系,識(shí)別了一些簡單的公理,并未清晰完整地給出幾何學(xué)知識(shí)中的每類對(duì)象的本體描述方法,也未針對(duì)幾何學(xué)本體知識(shí)在用于問題求解時(shí)可能需要補(bǔ)充的語義規(guī)則集進(jìn)行討論.文獻(xiàn)[46]提出了基于OWL 本體與Prolog 規(guī)則的平面幾何知識(shí)庫的構(gòu)建方法,用Protégé 和Prolog 構(gòu)建了一個(gè)基于本體和規(guī)則的平面幾何知識(shí)庫,但還都是一些簡單對(duì)象的語義映射.文獻(xiàn)[47]設(shè)計(jì)了一個(gè)本體制導(dǎo)的基于問題框架方法的需求建模過程,為需求分析員提供建模指導(dǎo)并規(guī)范其建模活動(dòng).

文獻(xiàn)[15,16]對(duì)幾種面向具體學(xué)科領(lǐng)域或工程問題的本體建模方法進(jìn)行了比較.以上本體建模方法或者只是提供基本的步驟和簡單的指導(dǎo)原則,或者基于面向?qū)ο蠛蛯哟位5乃枷胩峁┝俗R(shí)別領(lǐng)域中類、類屬性及類之間關(guān)系的方法,或者討論了本體在特定領(lǐng)域中的一些應(yīng)用,但僅僅構(gòu)建了一些簡單的類和實(shí)例對(duì)象.均未提及本文討論的深層次語義映射問題.

3) 如何從領(lǐng)域數(shù)據(jù)源中半自動(dòng)或自動(dòng)地構(gòu)建垂直領(lǐng)域語義知識(shí)庫或知識(shí)圖譜.

目前公認(rèn)領(lǐng)域本體的開發(fā)需要領(lǐng)域?qū)<业膮⑴c,但由于領(lǐng)域知識(shí)體系的復(fù)雜性,完全由人工構(gòu)建幾乎是不可能的,并且在時(shí)間上也是不可接受的.因此,如何利用知識(shí)獲取技術(shù)來降低本體構(gòu)建的開銷,已成為一個(gè)非?;钴S的研究方向,相關(guān)技術(shù)被稱為本體學(xué)習(xí)(ontology learning)技術(shù)[43,48-50].本體學(xué)習(xí),又稱為本體獲取(ontology acquisition),即采用自然語言處理、統(tǒng)計(jì)分析、機(jī)器學(xué)習(xí)等技術(shù)自動(dòng)或半自動(dòng)地從領(lǐng)域數(shù)據(jù)中獲取領(lǐng)域知識(shí),并基于本體進(jìn)行描述.領(lǐng)域數(shù)據(jù)的類型多種多樣,不同類型的數(shù)據(jù)可能需要采用不同的本體學(xué)習(xí)方法,可以按領(lǐng)域數(shù)據(jù)的結(jié)構(gòu)化程度將現(xiàn)有的本體學(xué)習(xí)技術(shù)大致分為基于結(jié)構(gòu)化數(shù)據(jù)的本體學(xué)習(xí)技術(shù)、基于半結(jié)構(gòu)化數(shù)據(jù)的本體學(xué)習(xí)技術(shù)和基于非結(jié)構(gòu)化數(shù)據(jù)的本體學(xué)習(xí)技術(shù).文獻(xiàn)[43]對(duì)現(xiàn)有的本體學(xué)習(xí)技術(shù)和學(xué)習(xí)工具進(jìn)行了調(diào)查.由于實(shí)現(xiàn)完全自動(dòng)的知識(shí)獲取技術(shù)還不現(xiàn)實(shí),整個(gè)本體學(xué)習(xí)過程還是在用戶指導(dǎo)下進(jìn)行的一個(gè)半自動(dòng)的過程.本體學(xué)習(xí)中的很多技術(shù)都依賴于對(duì)自然語言的處理,所以本體學(xué)習(xí)工具具有很強(qiáng)的語言特征,目前還沒有一個(gè)能夠很好地支持中文的本體學(xué)習(xí)工具.雖然目前已經(jīng)提出了很多本體學(xué)習(xí)方法,但大部分方法都不理想.目前的本體學(xué)習(xí)工具的功能都非常有限,它們都僅能處理某些類型的數(shù)據(jù)源,獲取某些本體學(xué)習(xí)對(duì)象,例如,將關(guān)系數(shù)據(jù)庫中的表映射為本體模型中的概念,將表字段映射為概念的屬性,將字段值映射為屬性值等.文獻(xiàn)[3]也探討了如何將基于XML 的Web 服務(wù)、關(guān)系數(shù)據(jù)庫以及其他類型數(shù)據(jù)源映射為RDF 模型,但也是提取一些簡單的對(duì)象和關(guān)系.

近年來,對(duì)知識(shí)圖譜技術(shù)[51,52]的研究越來越受到關(guān)注.知識(shí)圖譜是結(jié)構(gòu)化的語義知識(shí)庫,其描述方法同基于本體的知識(shí)表示模型.知識(shí)圖譜可以用于支撐語義搜索、智能問答、知識(shí)推理等智能化、精準(zhǔn)化的應(yīng)用.各個(gè)垂直領(lǐng)域存在大量結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化的數(shù)據(jù),如何發(fā)揮這些數(shù)據(jù)的價(jià)值,一種最可行的解決方法就是建立面向垂直領(lǐng)域的知識(shí)圖譜,用于支撐垂直領(lǐng)域的語義搜索、數(shù)據(jù)集成、數(shù)據(jù)分析等智能化的應(yīng)用.華東理工大學(xué)的阮彤教授就垂直領(lǐng)域的知識(shí)圖譜,面向圖書館、證券、醫(yī)療等行業(yè)做了部分探索[53-56],其研究工作聚焦在如何迭代式構(gòu)建領(lǐng)域本體(即領(lǐng)域本體Schema 定義)、如何從行業(yè)擁有的多種中文數(shù)據(jù)源(例如關(guān)系數(shù)據(jù)庫、文本、網(wǎng)頁等)中自動(dòng)或半自動(dòng)地抽取出結(jié)構(gòu)化的領(lǐng)域知識(shí)(即領(lǐng)域?qū)嵗龜?shù)據(jù)定義)、如何實(shí)現(xiàn)異源數(shù)據(jù)的融合(即本體映射)等.

本體學(xué)習(xí)中的領(lǐng)域數(shù)據(jù)源往往并不是專家整理后的知識(shí),而是一些面向業(yè)務(wù)過程的數(shù)據(jù)或者面向領(lǐng)域教育的素材.所以,現(xiàn)有的本體學(xué)習(xí)技術(shù)和工具還沒有深入探討本文提出的語義映射問題.

4) 通過本體集成和本體映射對(duì)現(xiàn)有的本體進(jìn)行復(fù)用.

由于本體具有的強(qiáng)大的知識(shí)表示和推理能力,已經(jīng)出現(xiàn)了很多基于本體構(gòu)建的領(lǐng)域語義知識(shí)庫.現(xiàn)有的本體構(gòu)建方法[15-17]都強(qiáng)調(diào)在基于本體構(gòu)建領(lǐng)域語義知識(shí)庫之前,考慮集成和復(fù)用已經(jīng)存在的領(lǐng)域本體庫.一方面,因?yàn)闃?gòu)建領(lǐng)域本體庫的目的本身是為了領(lǐng)域知識(shí)的共享、集成和復(fù)用,通過集成和復(fù)用已有的領(lǐng)域本體庫,既體現(xiàn)了這個(gè)目的的價(jià)值,也有利用所構(gòu)建的領(lǐng)域知識(shí)庫的共享、集成和復(fù)用;另一方面,通過集成和復(fù)用已有的領(lǐng)域本體庫,在此基礎(chǔ)上進(jìn)行修訂和擴(kuò)展,可以幫助快速構(gòu)建滿足領(lǐng)域應(yīng)用問題求解需求的新的領(lǐng)域本體庫,例如通過本體集成(ontology integration)[57]和本體映射(ontology mapping)[58]的方法來快速構(gòu)建所需要的領(lǐng)域本體知識(shí)庫.本體集成是指在建立一個(gè)新本體時(shí)重用其他現(xiàn)有的本體,大多數(shù)本體的創(chuàng)建都重用了已有的其他本體;本體集成通過本體擴(kuò)展(ontology extension)構(gòu)建新的本體.

本體映射又稱為本體對(duì)準(zhǔn)(ontology alignment)[3,59],本體映射是指通過對(duì)兩個(gè)本體進(jìn)行語義的聯(lián)系,實(shí)現(xiàn)將源本體的實(shí)體(即資源)映射到目標(biāo)本體實(shí)體上的過程;本體映射通過本體比較(ontology comparison)將兩個(gè)或多個(gè)本體歸并或合并為一個(gè)本體.本體集成和本體映射企圖復(fù)用已有的本體快速構(gòu)建新的領(lǐng)域本體,以滿足領(lǐng)域應(yīng)用的知識(shí)需求.本體集成過程會(huì)基于領(lǐng)域知識(shí)對(duì)復(fù)用的本體內(nèi)容進(jìn)行調(diào)整、修正和擴(kuò)展,本體映射過程也會(huì)參考領(lǐng)域知識(shí)實(shí)現(xiàn)資源間語義的對(duì)準(zhǔn)和修正,但現(xiàn)有的研究更多的強(qiáng)調(diào)對(duì)復(fù)用本體的處理,并未涉及本文的研究工作.

6 總結(jié)和進(jìn)一步的工作

本文從具體實(shí)踐中識(shí)別了5 類語義映射的共性問題,對(duì)其進(jìn)行了討論,提出了對(duì)應(yīng)的解決方案.然后,通過一個(gè)完整的應(yīng)用案例對(duì)這5 類語義映射方法進(jìn)行了驗(yàn)證,證明了其可用性.這5 類語義映射問題在所有領(lǐng)域中都存在,這里提出的語義映射方法也適用于各種類似的應(yīng)用場景.語義映射的結(jié)果最終會(huì)用于領(lǐng)域問題的求解,所以還需要根據(jù)具體應(yīng)用場景補(bǔ)充問題求解知識(shí).問題求解結(jié)果的好壞取決于很多因素,例如語義映射方法的正確性、領(lǐng)域語義知識(shí)庫的規(guī)模和質(zhì)量、面對(duì)具體應(yīng)用場景的問題求解知識(shí)的科學(xué)性和正確性等.

除了本文討論的幾個(gè)語義映射的通用問題以外,在不同領(lǐng)域的各種應(yīng)用場景中還存在很多其他需要解決的語義映射問題或建模方法問題,例如各個(gè)領(lǐng)域中都存在大量模糊的和不確定性的知識(shí),如何對(duì)這些知識(shí)進(jìn)行準(zhǔn)確的語義建模和語義推理,是一個(gè)值得研究的共性問題.對(duì)于此類問題,現(xiàn)有的研究主要分為兩類:從邏輯層面通過引入模糊邏輯對(duì)描述邏輯進(jìn)行擴(kuò)展,形成模糊描述邏輯;從本體描述語言層面對(duì)領(lǐng)域本體進(jìn)行模糊擴(kuò)展,形成模糊本體.但這兩類研究都存在很多不足,需要深入探討.

猜你喜歡
知識(shí)庫視圖實(shí)例
基于TRIZ與知識(shí)庫的創(chuàng)新模型構(gòu)建及在注塑機(jī)設(shè)計(jì)中的應(yīng)用
5.3 視圖與投影
視圖
Y—20重型運(yùn)輸機(jī)多視圖
SA2型76毫米車載高炮多視圖
高速公路信息系統(tǒng)維護(hù)知識(shí)庫的建立和應(yīng)用
基于Drupal發(fā)布學(xué)者知識(shí)庫關(guān)聯(lián)數(shù)據(jù)的研究
圖書館研究(2015年5期)2015-12-07 04:05:48
完形填空Ⅱ
完形填空Ⅰ
位置與方向測(cè)試題
扎鲁特旗| 芦溪县| 常熟市| 辽中县| 墨竹工卡县| 双牌县| 皮山县| 琼海市| 离岛区| 郯城县| 昭通市| 富蕴县| 江城| 三江| 临泽县| 黄浦区| 穆棱市| 乡城县| 潢川县| 汉川市| 泰顺县| 论坛| 班戈县| 芦山县| 普陀区| 南部县| 罗源县| 玉门市| 平陆县| 禹城市| 鸡泽县| 平果县| 桦川县| 惠东县| 锦屏县| 体育| 锡林浩特市| 日照市| 平舆县| 庄河市| 思茅市|