魏玉良 黃純 王佰玲
摘要:人物本體在眾多領(lǐng)域知識(shí)圖譜中具有重要的作用,但目前人物本體設(shè)計(jì)較為簡(jiǎn)單,難以通用。本文通過人物相關(guān)案例構(gòu)建小型的本體模型,分析其中存在的多元關(guān)系問題,結(jié)合多元關(guān)系的定義介紹多元關(guān)系的表示方法。對(duì)于在多元關(guān)系設(shè)計(jì)中存在不同設(shè)計(jì)方案,提出通過將本體模型部分映射為關(guān)系數(shù)據(jù)庫(kù),利用關(guān)系數(shù)據(jù)庫(kù)N泛式原則優(yōu)化多元關(guān)系設(shè)計(jì)。利用現(xiàn)有的本體模型基礎(chǔ)上設(shè)計(jì)領(lǐng)域本體模型,在兼顧領(lǐng)域問題的同時(shí)保證擴(kuò)展性和通用性,并基于Wikidata中的Human類設(shè)計(jì),給出了本文中的人物本體泛式,專門針對(duì)地理位置和時(shí)間本體進(jìn)行了優(yōu)化設(shè)計(jì)。
關(guān)鍵詞:本體模型;多元關(guān)系;領(lǐng)域圖譜;知識(shí)圖譜
0引言
知識(shí)是數(shù)據(jù)中有規(guī)律的信息和信息上下文的集合,知識(shí)的上下文表示信息之間的關(guān)系,知識(shí)具有經(jīng)驗(yàn)性。為了讓計(jì)算機(jī)可以存儲(chǔ)和計(jì)算知識(shí),上世紀(jì)五十年代學(xué)者提出的一種可以在計(jì)算機(jī)硬件中的存儲(chǔ)和表示知識(shí)形式一語(yǔ)義網(wǎng)絡(luò)(Semantic Network)。
語(yǔ)義網(wǎng)使用w3C制定的資源描述框架RDF(Resource Description Framework)作為知識(shí)表示的數(shù)據(jù)模型,在RDF中知識(shí)使用SPO二元組(Subject,Predicate,Object)的形式存儲(chǔ)。目前比較知名的開放RDF知識(shí)數(shù)據(jù)庫(kù)有DBpedia、Freebase等。RDF在發(fā)布之初定義了常用的Predlcate關(guān)系,通過固定的IRI表示,統(tǒng)一的IRI定義可以實(shí)現(xiàn)不同知識(shí)之間的共享。但RDF定義中可以表示的知識(shí)有限:RDF預(yù)定義的Predicate關(guān)系中沒有區(qū)分概念和實(shí)體,也無法定義概念的屬性和概念之間的關(guān)系,RDF僅能表示Subject和Object之間的關(guān)系,沒有泛化和抽象的表達(dá)能力。為了提高知識(shí)表達(dá)范圍,在RDF的基礎(chǔ)上提出了RDFS(Resource DescriptionFramework Schema),在知識(shí)數(shù)據(jù)存儲(chǔ)之前需要定義知識(shí)的概念和關(guān)系等,對(duì)知識(shí)概念和關(guān)系的定義成為本體模型(Ontology Model)。隨后在RDFS的基礎(chǔ)上,根據(jù)定義中的實(shí)際需求擴(kuò)展了OwL(webOntologyLanguage)本體語(yǔ)法以及隨后的OWL2,其中OwL相比于RDFS增加了數(shù)值屬性和對(duì)象屬性的不同定義。彌補(bǔ)了RDFS的定義中無法區(qū)分實(shí)體的屬性以及實(shí)體之間的關(guān)系問題。OWL2在OWL基礎(chǔ)上增加了角色鏈。雙關(guān)等特性定義,規(guī)范了表達(dá)技巧。目前OWL2已經(jīng)成為本體建模的推薦標(biāo)準(zhǔn),國(guó)際萬維網(wǎng)組織WWW(world Wildweb)負(fù)責(zé)本體描述語(yǔ)言的標(biāo)準(zhǔn)制定。
1 相關(guān)研究介紹
主流知識(shí)圖譜大致可以分為通用知識(shí)圖譜UKG和領(lǐng)域知識(shí)圖譜DKG。UKG是面向全領(lǐng)域信息構(gòu)建知識(shí)表示和關(guān)聯(lián)關(guān)系,強(qiáng)調(diào)的是廣度,而DKG是面向特定的垂直領(lǐng)域構(gòu)建知識(shí)關(guān)系,對(duì)于數(shù)據(jù)有更嚴(yán)格的前置數(shù)據(jù)模式和準(zhǔn)確度要求,強(qiáng)調(diào)的是深度。DKG在金融量化交易、學(xué)者信息搜索智能教育、歷史研究、生物醫(yī)學(xué)等垂直領(lǐng)域有廣泛的應(yīng)用。構(gòu)建UKG和DKG時(shí),兩者之間的主要區(qū)別在于UKG一般使用“自底向上”的方法構(gòu)建知識(shí)庫(kù),而DKG使用“自頂向下”的方法。UKG的“自底向上”方法體現(xiàn)在利用開放式關(guān)系抽?。∣pen Information Extraction,OIE),通過語(yǔ)法結(jié)構(gòu)分析文本中的實(shí)體和關(guān)系構(gòu)建二元組,構(gòu)建DKG的“自頂向下”方法需要在設(shè)計(jì)之初首先確定待解決的領(lǐng)域問題,通過本體建模的方法明確問題的范圍、包含的實(shí)體以及實(shí)體的屬性和關(guān)系,并且根據(jù)領(lǐng)域內(nèi)的規(guī)律構(gòu)建推理規(guī)則。DKG與UKG之間相輔相成,DKG可以從UKG中獲取通用性的知識(shí)。而DKG本身就是UKG在具體領(lǐng)域的豐富和延展。為了通用性,DKG在設(shè)計(jì)時(shí)需要考慮與UKG的兼容性。
近年來為了實(shí)現(xiàn)知識(shí)計(jì)算和共享,DKG的研究逐漸增多。文獻(xiàn)[11]中介紹了目前自動(dòng)構(gòu)建本體模型的主要方法,通過自動(dòng)識(shí)別實(shí)體,語(yǔ)法分析獲取實(shí)體之間概念上的層級(jí)關(guān)系,文中指出目前自動(dòng)構(gòu)建方法主要針對(duì)層次關(guān)系(is-a關(guān)系)的構(gòu)建,而對(duì)于應(yīng)用中的領(lǐng)域本體模型。大量非層次關(guān)系更為重要。因此自動(dòng)構(gòu)建的方法只能在領(lǐng)域?qū)嶓w和概念的發(fā)現(xiàn)過程中有所幫助。
從目前本體模型的研究可以發(fā)現(xiàn):
(1)自動(dòng)化構(gòu)建本體模型的方法主要應(yīng)用于UKG中的層級(jí)關(guān)系,在DKG中大量的非層級(jí)關(guān)系仍無有效地自動(dòng)化構(gòu)建方法,以領(lǐng)域?qū)<胰斯?gòu)建為主。
(2)DKG在各行各業(yè)中逐漸產(chǎn)生重要的作用,相比DKG指導(dǎo)工業(yè)應(yīng)用和生產(chǎn)的價(jià)值更高。
(3)目前沒有健全的DKG本體模型的構(gòu)建思路和方法。ODP的設(shè)計(jì)理念可以提高領(lǐng)域模型的設(shè)計(jì)規(guī)范,但仍處于工業(yè)探索階段,仍需要大量的領(lǐng)域?qū)<覙?gòu)建不同的DKG積累量變,逐步到質(zhì)變的過程。
(4)公開的ODP中關(guān)于人物、機(jī)構(gòu)、事件的ODP研究較少,目前定義最完善的人物本體是Wikidata的Human定義,多元關(guān)系定義依賴于傳統(tǒng)的百科詞典的詞條轉(zhuǎn)化,為了保證兼容性,定義冗余程度高,表意區(qū)分度不明顯。
本文主要研究人物本體應(yīng)該如何在滿足本體要求的情況下,精簡(jiǎn)概括地建模,并提出包含多元關(guān)系的人物、機(jī)構(gòu)、事件相關(guān)的ODP,供構(gòu)建領(lǐng)域知識(shí)圖譜中與人物相關(guān)的本體模型參考。
2 人物本體建模案例分析
本體模型案例:“HA在2010年7月從OB學(xué)校計(jì)算機(jī)專業(yè)研究生畢業(yè),HA的本科就讀于OB校信息安全專業(yè),2010年8月HA進(jìn)入OD公司工作,剛?cè)寺毦头浅S袩崆?。工作積極主動(dòng),在2012年12月的“年度公司綜合競(jìng)賽”中獲得第一名的成績(jī),很快在2013年4月升職為項(xiàng)目負(fù)責(zé)人,獨(dú)立帶領(lǐng)團(tuán)隊(duì)。2015年5月OD公司改組。HA離開OD公司進(jìn)入OE公司擔(dān)任大數(shù)據(jù)分析組項(xiàng)目負(fù)責(zé)人,并工作至今。HA的感情生活并不像事業(yè)那樣如意,2011年12月HA與HF結(jié)束三年的愛情長(zhǎng)跑步人婚姻,但是因?yàn)榉N種原因,在2014年4月協(xié)議離婚,在2015年進(jìn)入新公司后。遇到HG讓HA再一次激起了愛情的火花,2016年3月,HG與HA組成新的家庭,并在2017年10月喜得千金。
在例子中首先可以明確確定4個(gè)主要類別:Human人物類別、Organization機(jī)構(gòu)類別、Event事件類別、Position職位類別,在Human與Organization關(guān)系中,還存在Position的職位屬性,為了在知識(shí)庫(kù)中進(jìn)一步表示職位屬性,需要綜合考慮三個(gè)類別之間的關(guān)系。Postion屬于Organization的組成屬性,公司中一定會(huì)包含各種不同的職位從CEO、CTO到普通雇員、HR等。因此使用“hasPosition”屬性關(guān)聯(lián)Organization和Position。Human和Postion之間也可以通過類似“hasPosition”的方式關(guān)聯(lián)。但是這樣會(huì)產(chǎn)生歧義,如圖1所示。由于RDF表示的知識(shí)中是沒有時(shí)序性的,因此“ed。corn/human/1”通過“hasPosition"只能表示“ed。corn/human/1”曾經(jīng)擔(dān)任過“ed。com/pos/1”和“ed。com/pos/2”,但無法知道是在“ed。com/org/1”和“ed。com/org/2”公司中分別擔(dān)任哪些職務(wù)。Human和Postion之間的關(guān)聯(lián)需要第3個(gè)實(shí)體Organization才能確定,這種涉及到多個(gè)不同實(shí)體之間的關(guān)聯(lián)的關(guān)系屬性稱為多元關(guān)系(N-ary)。
OWL通過SPO二元組表示的知識(shí)只能表達(dá)二元關(guān)系,但在真實(shí)數(shù)據(jù)中存在大量的多元關(guān)系(N-ary Relation),一個(gè)具體的多元關(guān)系CRn被定義為一種特殊的本體類,通過定義CRn的類關(guān)系確定多元關(guān)系中共現(xiàn)的不同本體類。對(duì)應(yīng)前文中確定的Human、Organization、Position之間的關(guān)系,可以抽象為同一個(gè)Employee類表示多元關(guān)系,如圖2所示。Employee繼承自N-ary Relation表明是一個(gè)關(guān)系類,而不是對(duì)應(yīng)的實(shí)體類。
圖2的定義中雖然實(shí)現(xiàn)了3個(gè)之間多元關(guān)系。但是進(jìn)一步詳細(xì)分析會(huì)發(fā)現(xiàn)對(duì)于一個(gè)Employee關(guān)系,Human和Organization是固定的,而Position并不是唯一的,因一個(gè)人在一個(gè)公司可以擔(dān)任多個(gè)職位。當(dāng)增加時(shí)間屬性時(shí),問題會(huì)更加明顯。一個(gè)Employee關(guān)系包含人職時(shí)間和離職時(shí)間,而對(duì)Position也需要描述具體職位的當(dāng)選時(shí)間和離開時(shí)間。如果按照?qǐng)D2的定義。則需要在此基礎(chǔ)上增加4個(gè)時(shí)間屬性,如圖3所示。從例中得知,HA在OB公司從員工升職為項(xiàng)目負(fù)責(zé)人。因此需要?jiǎng)?chuàng)建2個(gè)Employee關(guān)系的實(shí)體,分別描述當(dāng)員工時(shí)的信息和擔(dān)任項(xiàng)目負(fù)責(zé)人時(shí)的信息,這2個(gè)實(shí)體中“workStartTime”和“workEndTime”重復(fù)出現(xiàn),屬于冗余的知識(shí)信息,在本體建模中需要避免冗余性的出現(xiàn)。
為了更好的解釋圖2和圖3中本體建模的問題,本文提出將本體模型部分映射到關(guān)系型數(shù)據(jù)庫(kù)表的方法,利用數(shù)據(jù)庫(kù)設(shè)計(jì)的3NT原則指出設(shè)計(jì)的不規(guī)范性,并將數(shù)據(jù)庫(kù)設(shè)計(jì)的泛式原則轉(zhuǎn)化為多元關(guān)系的定義準(zhǔn)則。本體模型映射到關(guān)系型數(shù)據(jù)庫(kù)的步驟如下。
(1)包含多元關(guān)系類的所有類分別轉(zhuǎn)化為一張表,以類名作為表名。
(2)所有類的數(shù)值屬性轉(zhuǎn)化為表的字段,表的鍵值對(duì)應(yīng)本體中屬于該類別的實(shí)體IRI。
(3)非多元關(guān)系類的關(guān)系屬性獨(dú)立生成一張關(guān)系表,表包含雙鍵值,分別對(duì)應(yīng)關(guān)系屬性的Domain和Range類的實(shí)體IRI:
(4)多元關(guān)系類表的鍵值是多元關(guān)系的關(guān)系屬性中所有Range對(duì)應(yīng)類的IRI。
通過轉(zhuǎn)化可以得到多元關(guān)系轉(zhuǎn)化的關(guān)系型數(shù)據(jù)庫(kù),ER圖如圖4(a)所示,多元關(guān)系表中的“workStartTime”和“workEndTime”屬性只依賴于Human和Organization鍵值,而不依賴于Position鍵值,違反數(shù)據(jù)庫(kù)定義中第二范式原則“非主屬性完全依賴于主關(guān)鍵字”,本例Employee表是多鍵值表,存在屬性依賴于部分主鍵,而不是整體鍵值,因此需要進(jìn)行修改。根據(jù)關(guān)系型數(shù)據(jù)庫(kù)的修改規(guī)范,將只依賴于部分主鍵的屬性獨(dú)立成表,創(chuàng)建新的鍵值,原表中使用新表的鍵值代替原來的部分主鍵,如圖4(b)所示。得到轉(zhuǎn)化的ER圖后,根據(jù)從關(guān)系型數(shù)據(jù)庫(kù)轉(zhuǎn)化到本體模型的算法,可以轉(zhuǎn)化為本體模型,再經(jīng)過修改增加相應(yīng)的屬性描述。
3 復(fù)用現(xiàn)有本體模型
人物摘要本體模式,是為了給具體的領(lǐng)域知識(shí)圖譜設(shè)計(jì)者提供基本概念的設(shè)計(jì)思路和復(fù)用泛式。本節(jié)介紹基于Wikidata的基礎(chǔ)概念,結(jié)合前文中介紹的多元關(guān)系設(shè)計(jì),給出本文中設(shè)計(jì)的人物摘要本體ODP,方便其它領(lǐng)域知識(shí)圖譜參考。圖5是本文中涉及的人物摘要本體模型。主要的實(shí)體類和關(guān)系類。涉及的對(duì)象包括表示人物的Human類,表示機(jī)構(gòu)的Organization類以及表示事件的Event類。為了領(lǐng)域知識(shí)圖譜可以直接兼容Wikidata中現(xiàn)有數(shù)據(jù),頂層繼承關(guān)系承襲自Wikidata的schema,ObJect、SubJect、Agent、Individual、TemporalEntity借鑒自Wikidata中的抽象概念,Subject表示具有獨(dú)特意識(shí)或獨(dú)特個(gè)人經(jīng)歷的人,或與其它實(shí)體存在關(guān)系的實(shí)體;Object描述與Subject相反的概念,表示物體不具有獨(dú)立意識(shí):Agent表示能夠執(zhí)行行動(dòng)的個(gè)人和可識(shí)別實(shí)體,可以在事件中擔(dān)任行為的發(fā)起方:Individual指人或特定物體:TemporalEntity表示可以在一段時(shí)間內(nèi)包含的內(nèi)容,或者狀態(tài)的變化。Wikidata中構(gòu)建了大量較為完善的抽象層概念,可以在此基礎(chǔ)上通過多繼承的方式豐富領(lǐng)域內(nèi)實(shí)體的概念,便于實(shí)現(xiàn)邏輯上的推理和定理的描述。核心實(shí)體類包括Organization、Human、Award、Event,分別表示機(jī)構(gòu)、人物、榮譽(yù)和事件,可以根據(jù)具體的領(lǐng)域問題方便增加社交網(wǎng)絡(luò)屬性信息,通過集成Relation類擴(kuò)展網(wǎng)絡(luò)中賬號(hào)之間的關(guān)系。圖中省略了地理位置和時(shí)間的定義,在存在基于時(shí)間和地理位置查詢索引時(shí),可以增加相關(guān)的實(shí)體設(shè)計(jì)。在通過擴(kuò)展實(shí)體時(shí),如果實(shí)體不具有主動(dòng)意識(shí),可以通過繼承ObJect類進(jìn)行定義,如增加作品實(shí)體的定義,可以適用于學(xué)者論文、明星作品等不同領(lǐng)域的知識(shí)表示。對(duì)于可以作為事件主動(dòng)者的實(shí)體。可以繼承自Agent類。新增多元關(guān)系時(shí),可以參考已有的多元關(guān)系。
4 結(jié)束語(yǔ)
本文中介紹了目前本體模型設(shè)計(jì)的基本語(yǔ)法結(jié)構(gòu)和設(shè)計(jì)思路。并給出了通過二元關(guān)系表示多元關(guān)系的方法,通過例子分析了不同情況中多元關(guān)系的設(shè)計(jì)思路。其次針對(duì)多元關(guān)系設(shè)計(jì)中可能存在的冗余問題,本文提出本體模型到ER圖的映射算法,通過數(shù)據(jù)庫(kù)設(shè)計(jì)N泛式的規(guī)則又換多元關(guān)系設(shè)計(jì)。最后以Wikidata為主要模板。給出了人物摘要本體ODP,便于在具體應(yīng)用中知識(shí)圖譜的設(shè)計(jì)參考。