吳天吉,肖 奎,李 強
標簽系統(tǒng)是一種非常流行的Web 2.0 應用,主要用于幫助用戶標注網(wǎng)絡資源,分享網(wǎng)絡資源。人們可以通過標簽輕松實現(xiàn)資源的分類,每一個資源都附有幾個標簽,用以描述資源的特性等信息。用戶通過一個標簽就能搜索到一組相關的資源,但當前很多資源的描述標簽,僅僅是詞匯的列表,用戶在搜索過程中,從這些標簽得到的幫助有限。比如,Programmableweb 平臺上的標簽只是一些靜態(tài)的、固定的詞匯,用戶很難通過這幾個詞匯搜索到符合需要的信息。為改進搜索過程,提高搜索的準確率,搜索引擎需要理解用戶含義,了解和掌握用戶真正需要的信息。所以,人們需要一些智能搜索技術以改進資源搜索的過程,而本體技術能較好地解決這類問題。近年很多研究人員關注如何通過標簽來構建本體,但是利用單個網(wǎng)絡資源的標簽構建本體很困難,因為一般單個資源的描述標簽數(shù)量較少,無法構建本體。為此,研究人員通常利用一組資源的描述標簽構建本體。具有相同類別的標簽可以轉換為本體中的概念。構建的本體可用于標注Web 服務等資源,從而改進Web 服務的搜索過程。S2R2 平臺[1]描述了利用本體標注Web服務的過程原理與方法[2-4]。本文利用Web 服務描述標簽與維基百科的語義知識構建本體,用來標注Web 服務。圖1 描述Web 服務、本體與標簽之間的關系。
圖1 Web 服務、本體與標簽之間的關系
文章介紹語義與本體的相關研究,提出一種標簽篩選的方法,選擇構建本體的標簽,運用維基百科知識庫的體系結構構建本體,并通過實例展示簡單標簽本體的構建方法,最后對實驗結果進行驗證。
語義網(wǎng)研究社區(qū)長期研究與標簽相關的難題。研究人員關注如何發(fā)現(xiàn)標簽的特性,以及如何挖掘標簽潛在的語義。有些主要的知識庫可以為普通的標簽提供語義信息,比如維基百科、WordNet 與其它在線本體等等。這些知識庫都可以被研究人員用來豐富標簽的語義,但是每個知識庫都有各自的特點,提供的信息形式也各有不同。
維基百科為大量的實體與概念提供了條目。網(wǎng)絡用戶在這個平臺上編輯了許多知識信息,這些信息覆蓋的領域非常廣泛,對信息抽取應用程序具有很大的吸引力[5]。研究表明,維基技術可以很容易地用于本體開發(fā)過程[6]。而且維基百科條目的URIs 適用于本體概念的標識符(identifier)。雖然標簽用來對資源進行分類,但維基百科的分類方式與標簽相比可提供更好的語義信息。
WordNet 是一個由專業(yè)研究團體維護的知識庫,很多的研究工作都是基于這個知識庫[7]。WordNet 的開發(fā)研究團隊采用了一種新的方法,構建基于分眾分類標簽的本體。在此過程中,他們利用Word Net 的概念樹實現(xiàn)對delicious平臺的關鍵詞過濾。DBPedia 是一個由集體維護的知識庫,而且其內(nèi)容在持續(xù)演化更新[8]中。DBPedia 提出一種方法可以為一詞多義的標簽消除歧義,這種方法依賴于DBPedia 與維基百科的支持。每個標簽的每一次標注行為都可以關聯(lián)到許多DBPedia 條目,這些條目定義了該標簽所有可能的含義。在線本體也是這類研究工作常用的數(shù)據(jù)源,例如,Watson 有一種語法分析工具,該工具可以自動搜集、分析和檢索互聯(lián)網(wǎng)上可用的本體與語義數(shù)據(jù)。它為語義網(wǎng)用戶與應用程序訪問互聯(lián)網(wǎng)的大量知識信息提供了便利。
本文選擇維基百科幫助構建標簽本體。與其它知識庫系統(tǒng)不同,維基百科一直由普通用戶對其信息進行更新,能提供最新版本的數(shù)據(jù)信息。構建的本體的關系來自于Dublin Core,Dublin Core 是一種圖書關系元數(shù)據(jù)的國際標準,現(xiàn)在是本體論研究的一個標準測試集。
服務平臺一般有如下特點:每個服務都由幾個標簽描述;根據(jù)描述標簽,服務被劃分到不同的類別;標簽由服務創(chuàng)建者提供。從這些特點可以看出,這些標簽為服務搜索提供的幫助很有限。
利用標簽構建各個服務集合的本體,可使得服務搜索的過程變得更智能。本文創(chuàng)建的本體是指RDF 文檔。首先,從各個服務集合的標簽中篩選出核心標簽,每個服務集合都被視為一個獨立的領域。然后,把每個核心標簽與維基百科的條目關聯(lián)起來。因為每一個維基百科的概念條目都有獨立的URI,它們可以被用作RDF 文檔的實體。此方法只支持簡單的RDF文檔結構,忽略任何其它類似樹形結構的復雜結構。
由于每個服務都由幾個標簽描述,可能有些標簽與服務對應的領域沒有關聯(lián)。比如有的標簽是城市名稱,說明服務與具體城市有關;有的標簽是產(chǎn)品名稱,例如iphone,說明服務可能是iphone 專用的服務;有的標簽說明了平臺的名稱,例如服務調(diào)用Delicious 平臺的APIs 等。很明顯,這些標簽與服務所屬的領域都沒有直接的關系。
如果一個標簽被用來描述某個領域的多個服務,那么可以推斷此標簽很可能與領域相關。那些與服務領域相關的標簽需要被篩選出來,它們描述了領域的相關信息,被稱為領域的核心標簽。通過對特定領域內(nèi)所有標簽的使用頻率進行統(tǒng)計,可以篩選出該領域的核心標簽。
為了創(chuàng)建RDF 文檔,需將領域的核心標簽映射為RDF 文檔的元素。一般而言,RDF 文檔的元素都采用URI 的形式表示。當然,有些RDF 語句的對象是datatype 屬性,不是URI的形式。維基百科是創(chuàng)建RDF 文檔的非常好的資源。維基百科的條目可以作為本體的概念,每個條目都有一個獨立的URI。更重要的是,很多標簽在維基百科知識庫里都被定義為一個個條目,可以被轉換為實體。
因為維基百科沒有以明確的知識表示模型作為基礎,所以一個維基百科條目可以是實例、概念或屬性。根據(jù)慣例,維基百科包含的大多數(shù)條目都是名詞,而且沒有包含相互關系和屬性的內(nèi)容。這樣在構建本體時可忽略實例和概念之間的區(qū)別,這些對于純RDF 文檔并不重要。
通過把“2.1 節(jié)”篩選出的領域核心標簽映射成維基百科的條目,普通的標簽就成為帶有一定語義的概念。每個概念都可以用具體的URI 標識。URI 標識的概念可以作為RDF 文檔的實體直接使用。對一詞多義的標簽,需要手工進行處理。參考標簽所屬的領域,以人工方式確定標簽所屬的概念。對一些非名詞的標簽,如“social”等,雖然使用的頻率比較高,本研究并不對它們進行映射處理。同樣,對一些沒有對應條目的標簽,也不進行映射處理,當前只關注名詞概念。
此外,從維基百科的條目里難以發(fā)現(xiàn)相互關系和屬性的內(nèi)容。解決這個問題的方法是使用許多本體包含Dublin 核心元素[9-10]定義的相互關系和屬性。但本文沒有完全使用Dublin 作為本體的概念資源,因為相對而言,維基百科概念條目更新的速度更快,更能反映語義變化的動態(tài)性。
Programmableweb 是一個非常流行的Mashup 服務和APIs 平臺。實驗收集了Programmableweb 平臺“sports”領域的52 個Mashup 服務的標簽數(shù)據(jù),然后統(tǒng)計了這些標簽在“sports”領域Mashup 服務以及在整個Programmableweb 平臺所有Mashup 服務中使用的次數(shù),在此基礎上計算前者在后者所占的比例。
為了獲得“sports”領域的核心標簽,實驗設置了兩個閾值:
(1)每一個標簽在Programmableweb 平臺上使用的次數(shù)必須大于1。很多只使用一次的標簽與領域無關,如城市名稱;
(2)上述計算的比例必須大于0.1。標簽使用的頻率越高,它與領域的關聯(lián)越緊密。
表1 “Sports”領域的核心標簽
表1 顯示了52 個Mashup 服務集合的核心標簽,很明顯,所有這些標簽都與“sports”領域緊密相關。其中,有些標簽進行了額外的手工的處理,比如,“cycling”實際上包含{bicycle,bike,cycling,biking}四個標簽,實驗中把它們作為一個標簽處理;同樣,“football”包含了{football,soccer}兩個標簽;“skiing”包含了{skiing,ski}兩個標簽。
然后,利用這些“sports”領域的核心標簽創(chuàng)建相應的RDF 文檔。每一個核心標簽都是RDF 文檔的一個概念。其中,“sports”是這個領域的首要概念,所有其它標簽(即概念)應當與“sports”概念相關聯(lián)。第一步,從維基百科中搜索“sports”概念對應的條目,并在該條目搜索包含其它概念的文本內(nèi)容。反過來,從其它概念的條目搜索包含“sports”的文本內(nèi)容。第二步,從都柏林核心抽取元數(shù)據(jù),定義概念之間的語義關系。
有一些標簽在實驗中要被忽略,例如,忽略所有形容詞標簽,只關注名詞標簽。除此之外,在維基百科條目中與“sports”概念沒有文本相關內(nèi)容的標簽也要忽略。剩下的標簽可以用來創(chuàng)建RDF 文檔。每一個標簽都對應一個URI,可以視為RDF 的實體。實體之間的屬性來自Dublin 核心元素。圖2(見第16 頁)顯示了創(chuàng)建的RDF 文檔細節(jié)部分。
圖2 中橢圓代表實體,連接線代表實體之間的聯(lián)系。具體解釋如下:
Climbing(攀巖)、Baseball(棒球)、Basketball(籃 球)、Golf(高 爾 夫)、Running(跑 步)、Football(足球)、Skiing(溜冰)、Cycling(騎自行車)都屬于Sports 類(class)的實例。其中Cycling 和Bicycle(自行車)是一種關聯(lián)關系,Bike包括Bicycle;Ski(雪橇)和Skiing 是一種關聯(lián)關系,Soccer(英式足球)是Football 的實例。
為了考察生成的RDF 文檔的準確性,可利用Word Net 的知識對上述實驗結果進行驗證。首先,從WordNet 知識庫中找出包含上述全部核心標簽的知識,然后,利用這些WordNet 知識體系驗證生成的RDF 文檔。
標簽在Word Net 知識庫中可能有多個語義(sense),每個語義對應著WordNet 知識庫體系結構的一個結點,那么一個標簽就可能對應多個結點,但上述實驗的核心標簽的語義都存在于以entity 為根節(jié)點的樹狀結構中。為了確定每個核心標簽的語義,可求解每個標簽的結點到其它各個標簽結點的路徑長度之和,再對這些所求的和進行累加,當累加值最小時每個標簽對應的結點就作為標簽的sense。圖3(見第17 頁)顯示了“sports”領域的核心標簽的WordNet 知識體系。
本文構建的本體與WordNet 知識庫相比,語義關系比較準確。在WordNet 知識庫中,Skiing 與Cycling 屬于Sports 類(class)的實 例(instance),Basketball 與Golf 等 屬 于Sports 類的子類的實例,但Climbing 與Sports沒有這種隸屬關系。而且Ski 與Skiing、Bike及Bicycle 與Cycling 之間的關聯(lián)關系是WordNet中沒有的,這說明維基百科的語義關系比WordNet 更豐富,能對WordNet 形成補充。
圖2 “Sports”領域的RDF 圖
本文利用維基百科知識庫為服務創(chuàng)建本體,在篩選出服務領域的核心標簽后,把領域核心標簽與維基百科的條目進行關聯(lián),然后將各條目的URI 用作本體的基本元素。所創(chuàng)建的本體主要是一些簡單的RDF 文檔,RDF 實體之間的屬性來自Dublin 核心元素。下一步,可考慮創(chuàng)建一些結構復雜的本體,以便進一步提高服務搜索的效率。此外,文本描述也是一個重要的標簽來源,充分發(fā)揮網(wǎng)絡資源文本描述的作用也非常重要。
[1] 李兵. 軟件服務注冊庫[EB/OL].[2013- 05- 12].http:/ /www.s2r2.org,2010.
[2] Zeng C, He K Q, Li B, et al. Toward Multiontology Based Interoperability in Web Service Registry[J]. Journal of Computational Information Systems,2009,5 (6):1669- 1677.
[3] Zeng C,He K Q,Li B,et al. A MFI4OR- based Approach of Semantic Annotation for Web Service[A]/ / the 5th International Joint Conferences on Computer,Information, and Systems Sciences, and Engine(CISSE 2009) [C]. Connecticut, USA, 2009:615- 620.
圖3 “Sports”領域核心標簽在WordNet中的知識體系
[4] 曾誠,何克清,李兵. 一種支持語義互操作的Web服務注冊管理機制[J]. 小型微型計算機系統(tǒng),2011(9):1710- 1715.
[5] Ahn D,Jijkoun V,Mishne G,et al. UsingWikipedia at the TREC QA track [A]/ / The Thirteenth Text Retrieval Conference. 2004.
[6] Hepp M, Bachlechner D, Siorpaes K. Harvesting Wiki Consensus- Using Wikipedia Entries as Ontology Elements [A]/ / the 3rd European Semantic Web Conference[C]. Budva,Montenegro,2006.
[7] Laniado D,Eynard D,ColombettiM. UsingWordNet to turn a folksonomy into a hierarchy of concepts [C].the 4th Workshop on Semantic Web Applications and?Perspectives,2007:192- 201.
[8] d’Aquin M,Sabou M,Dzbor M,et al. Watson:A gateway for the semantic web [C]. the 4th European Semantic Web Conference,2007.
[9] Dublin Core Metadata Initiative. Dublin Core Metadata Element Set, Version 1.1: Reference Description[EB/OL].[2013- 05- 12]. http:/ / dublincore.org/ documents/dces/ ,2005- 11- 30.
[10] Dublin Core Metadata Initiative. DCMI Metadata Terms [EB/OL]. [2013- 05- 12]. http:/ / dublincore.org/ documents/ dcmi- terms/ ,2005- 11- 30.