柳佳佳,葛 文
(1.信息工程大學(xué) 地理空間信息學(xué)院,河南 鄭州 450052;2.65014部隊(duì),遼寧 沈陽(yáng) 110027)
隨著語(yǔ)義網(wǎng)技術(shù)的快速發(fā)展,基于語(yǔ)義網(wǎng)技術(shù)的服務(wù)發(fā)現(xiàn)技術(shù)已經(jīng)成為網(wǎng)絡(luò)服務(wù)領(lǐng)域的研究熱點(diǎn)之一。語(yǔ)義網(wǎng)環(huán)境下進(jìn)行地理信息服務(wù)發(fā)現(xiàn)需要解決兩個(gè)問(wèn)題,即服務(wù)采用什么樣的描述方法以及采用什么樣的服務(wù)匹配標(biāo)準(zhǔn)。語(yǔ)義化描述地理信息服務(wù)的方法是首先對(duì)地理信息服務(wù)中的概念進(jìn)行本體標(biāo)注,然后采用語(yǔ)義網(wǎng)絡(luò)服務(wù)描述語(yǔ)言如OWL-S(Web Ontology Language for Services)對(duì)地理信息服務(wù)進(jìn)行描述,該方面的研究?jī)?nèi)容可參見文獻(xiàn)[1-4]。對(duì)于服務(wù)的匹配標(biāo)準(zhǔn),目前基于本體語(yǔ)義的服務(wù)匹配研究比較多。但是服務(wù)匹配的方法還存在諸多問(wèn)題,如服務(wù)匹配的結(jié)果只是定性的區(qū)分是否匹配[5-6],即使是定量計(jì)算的方法適用性也不夠,如服務(wù)輸入輸出接口都是固定且必須等情況。
本文研究了一種基于本體語(yǔ)義的地理信息服務(wù)發(fā)現(xiàn)方法,該方法主要思路是:通過(guò)地理信息服務(wù)中的本體概念語(yǔ)義相似度以及引入服務(wù)接口間的依賴關(guān)系計(jì)算地理信息服務(wù)相似度,然后基于此相似度進(jìn)行地理信息服務(wù)的匹配。
最初關(guān)于語(yǔ)義距離的計(jì)算是將本體看作以概念為結(jié)點(diǎn),以繼承關(guān)系為邊的一個(gè)圖,本體兩個(gè)概念之間的語(yǔ)義距離就是兩個(gè)結(jié)點(diǎn)間最短路徑的邊數(shù)之和[7]。例如,對(duì)于圖1所示的本體片段,Point_Geog和Point的語(yǔ)義距離是2,Point_Geog和Point_Proj的語(yǔ)義距離也是2??梢钥闯觯@種語(yǔ)義距離方法并不合理。因?yàn)镻oint_Geog和Point_Proj同屬于Point_2D,直覺上Point_Geog和Point_Proj的語(yǔ)義距離應(yīng)該要小于Point_Geog和Point的語(yǔ)義距離。于是人們開始考慮對(duì)該計(jì)算方法進(jìn)行改進(jìn)。
圖1 幾何對(duì)象(Geometry)本體片段
Sycara等提出了加權(quán)語(yǔ)義距離的改進(jìn)方法[8],該方法將不同的組合操作賦予不同的權(quán)重,其權(quán)重分配如表1所示。
表1 語(yǔ)義距離權(quán)重表
其中g(shù)表示gereralization,即泛化,也就是從子結(jié)點(diǎn)指向父結(jié)點(diǎn)的邊;s表示specialization,即細(xì)化,也就是從父結(jié)點(diǎn)指向子結(jié)點(diǎn)的邊;p表示positive association,即正關(guān)聯(lián),也就是連接兩同義關(guān)系結(jié)點(diǎn)的邊。
權(quán)重表中的操作順序?yàn)橄攘泻笮小@缦冗M(jìn)行g(shù)操作,然后再進(jìn)行s操作,則權(quán)重為1而不是3,因?yàn)橄攘泻笮械贸龅?列第3行。用權(quán)重代表語(yǔ)義距離重新計(jì)算圖1中的語(yǔ)義距離得出Point_Geog到Point的語(yǔ)義距離是2,因?yàn)樾柽M(jìn)行兩次g操作,Point_Geog和Point_Proj的語(yǔ)義距離是1,因?yàn)橄冗M(jìn)行g(shù)操作再進(jìn)行s操作??梢?,加權(quán)語(yǔ)義距離的改進(jìn)方法在一定程度上彌補(bǔ)了最初最短路徑邊計(jì)數(shù)法的不足。
但是,該方法還存在以下3個(gè)方面的問(wèn)題:
問(wèn)題1:通過(guò)研究幾何對(duì)象本體片段可以發(fā)現(xiàn),Point_Geog到Point_2D的語(yǔ)義距離(Dis(Point_Geog,Point_2D))和Point_2D到Point_Geog的語(yǔ)義距離(Dis(Point_2D,Point_Geog))應(yīng)該是不同的。因?yàn)樵凇皬椥云ヅ洹保?]中,Dis(Point_Geog,Point_2D)相當(dāng)于包含匹配(Subsume),而Dis(Point_2D,Point_Geog)相當(dāng)于精確匹配(Exact),那么根據(jù)相似度越小語(yǔ)義距離越大,可以得出Dis(Point_Geog,Point_2D)應(yīng)該大于Dis(Point_2D,Point_Geog),即語(yǔ)義距離是有方向的。然而由加權(quán)語(yǔ)義距離的改進(jìn)方法卻無(wú)法得出這樣的結(jié)論,甚至其只有兩次連續(xù)操作的權(quán)重,而無(wú)法計(jì)算單次操作的語(yǔ)義距離。
問(wèn)題2:通過(guò)表1可以看出,操作g→s(表示先g操作再s操作)和操作s→g(表示列s操作再g操作)的權(quán)重是不同的,造成語(yǔ)義距離權(quán)重的不對(duì)稱性。對(duì)幾何對(duì)象本體片段進(jìn)行分析得出Dis(Point_Geog,Point_Proj)與Dis(Point_Proj,Point_Geog)是不同的,這也是不合理的。
針對(duì)問(wèn)題1和問(wèn)題2對(duì)語(yǔ)義距離的權(quán)重計(jì)算作如下擴(kuò)展:
擴(kuò)展1 區(qū)別邊的方向。邊的方向不同,進(jìn)行的操作不同。例如g操作和s操作包含的邊的方向相反,其權(quán)重應(yīng)該有所不同,將在擴(kuò)展后的語(yǔ)義權(quán)重表中進(jìn)行體現(xiàn)。
擴(kuò)展2 增加二元關(guān)系。二元關(guān)系可以體現(xiàn)更加復(fù)雜的本體概念之間的語(yǔ)義關(guān)系,增加二元關(guān)系其實(shí)也就是增加邊的類型,并記b(binary relation)為二元關(guān)系。這樣邊的操作類型就包括g,s,p和b 4種。
擴(kuò)展3 擴(kuò)展和改進(jìn)語(yǔ)義距離權(quán)重表,包括擴(kuò)展單次操作權(quán)重和消除語(yǔ)義距離權(quán)重的不對(duì)稱性。對(duì)于單次操作權(quán)重采用引入空操作Φ與其他操作進(jìn)行組合的方式實(shí)現(xiàn)。擴(kuò)展后的權(quán)重如表2所示。
表2 擴(kuò)展后的語(yǔ)義距離權(quán)重表
經(jīng)過(guò)單次操作權(quán)重?cái)U(kuò)展后,通過(guò)組合就可以計(jì)算多次操作的權(quán)重,計(jì)算的方法是:前兩次操作的權(quán)重按兩次連續(xù)操作計(jì)算,其他操作按單次操作計(jì)算。例如對(duì)于多次操作序列g(shù)→g→s→b,其語(yǔ)義距離權(quán)重為(g→g)→s→b=4+3+7=14,并不是g→(g→s)→b=2+3.5+7=12.5。
問(wèn)題3:Point_2D和Point_3D之間的語(yǔ)義距離和Point_Geog和Point_Proj之間的語(yǔ)義距離是相等的,兩者都是先進(jìn)行g(shù)操作再進(jìn)行s操作,顯然有些不太合理。同樣存在這樣一個(gè)直觀規(guī)律:概念之間的語(yǔ)義距離與它在概念樹中的深度有密切關(guān)系,如果概念樹中的深度越深,它們之間的關(guān)系就越緊密,語(yǔ)義距離就越小,反之則越大。
對(duì)于上述問(wèn)題,Wu-Palmer[9]提出了最低共同祖先(Lowest Common Ancestry,LCA)的概念來(lái)解決,即通過(guò)概念結(jié)點(diǎn)vi和vj共同祖先結(jié)點(diǎn)中層次最低的一個(gè)概念結(jié)點(diǎn)vLCA來(lái)度量它們的語(yǔ)義距離,具體計(jì)算方法如下:
式中:r表示根結(jié)點(diǎn),len表示最短路徑,但該式中使用的是最短路徑邊計(jì)數(shù)法。
根據(jù)以上討論,本文將加權(quán)語(yǔ)義距離和Wu-Palmer法相結(jié)合,給出一個(gè)語(yǔ)義距離計(jì)算方法如下:
計(jì)算語(yǔ)義距離的目的是為了計(jì)算語(yǔ)義相似度[10],但兩者之間需要滿足以下關(guān)系:
1)當(dāng)語(yǔ)義距離為0時(shí),語(yǔ)義相似度為1;
2)語(yǔ)義相似度取值在[0,1]之間;
3)語(yǔ)義相似度與語(yǔ)義距離成反比,即語(yǔ)義距離越小,語(yǔ)義相似度越大,反之越小。
滿足上述3個(gè)條件的函數(shù)也有不少,比較常用的有以下3個(gè):
上述3個(gè)公式的語(yǔ)義相似度隨語(yǔ)義距離遞減的速度不一樣,第1個(gè)公式屬于線性遞減,第2個(gè)公式遞減速度要更加快一些,而第3個(gè)公式遞減速度最快。實(shí)際應(yīng)用中可以根據(jù)需要選擇適當(dāng)?shù)恼Z(yǔ)義相似度函數(shù)。
目前,大多數(shù)基于本體語(yǔ)義的服務(wù)匹配方法都默認(rèn)這樣一種假設(shè):對(duì)于服務(wù)的輸出而言,服務(wù)所有的輸入都是必須的。然而,地理信息服務(wù)的多態(tài)性卻存在這樣一種情況,即某個(gè)地理信息服務(wù)的輸入是可選的,但也能得出服務(wù)的輸出結(jié)果。例如,有這樣一個(gè)獲取坐標(biāo)位置的地理信息服務(wù)GetCoordByPosInfo(GeoCode,GeoName,GeoAddress),該服務(wù)具備3個(gè)輸入:地理編碼、地名和地址,具備一個(gè)輸出:坐標(biāo)。調(diào)用該服務(wù)時(shí),GeoCode和GeoName兩個(gè)輸入項(xiàng)可任選其一,GeoAddress為必選項(xiàng),即只需要給定GeoCode或GeoName、Geo-Address即可調(diào)用GetCoordByPosInfo服務(wù)獲取坐標(biāo)位置。但如果服務(wù)請(qǐng)求者只能提供GeoName和GeoAddress這兩個(gè)輸入,目前大多數(shù)基于本體語(yǔ)義的服務(wù)匹配算法無(wú)法向用戶返回該服務(wù)。因?yàn)椋鼈冋J(rèn)為用戶無(wú)法提供GeoCode輸入則無(wú)法使用該服務(wù),從而即認(rèn)為該服務(wù)不是用戶所需要的。因此,目前大多數(shù)的服務(wù)匹配算法沒有考慮服務(wù)接口多態(tài)性的問(wèn)題,本文引入服務(wù)輸入/輸出接口之間的依賴關(guān)系解決這一問(wèn)題。
定義1 服務(wù)接口:地理信息服務(wù)的輸入或輸出。I={I1,I2,…,Im}表示地理信息服務(wù)的輸入集合,O={O1,O2,…,On}表示地理信息服務(wù)的輸出集合,I∪O是地理信息服務(wù)的接口集合,每個(gè)接口均對(duì)應(yīng)一個(gè)本體概念。
定義2 接口依賴關(guān)系[11]:地理信息服務(wù)輸出集合到輸入集合的一個(gè)映射,即ψ(O′)=I′,表示為O′|→I′,其中O′?O,I′?I。
給一個(gè)抽象的服務(wù)例子說(shuō)明定義2,該服務(wù)的接口有3個(gè)輸入和兩個(gè)輸出,如圖2所示。其中輸出O1依賴于所有輸入(O1|→{I1,I2,I3}),稱為全依賴輸出;輸出O2只依賴于I1和I3(O2|→{I1,I3}),稱為部分依賴輸出。
圖2 具有接口依賴關(guān)系的服務(wù)
定義3 服務(wù)(接口)請(qǐng)求:一個(gè)地理信息服務(wù)請(qǐng)求為一個(gè)二元組R=〈IR,OR〉,這里暫不考慮其他服務(wù)請(qǐng)求因素,其中:IR={IR1,IR2,…,IRm},表示地理信息服務(wù)的輸入集合,OR={OR1,OR2,…,ORn}表示地理信息服務(wù)的輸出集合,每個(gè)服務(wù)請(qǐng)求接口也均對(duì)應(yīng)一個(gè)本體概念。
具體的考慮接口依賴關(guān)系的本體語(yǔ)義地理信息服務(wù)匹配算法如表3所示。
表3 考慮接口依賴關(guān)系的本體語(yǔ)義地理信息服務(wù)匹配
上面的算法中,如果直接給定了候選服務(wù)與服務(wù)請(qǐng)求接口間的對(duì)應(yīng)關(guān)系,則可以直接計(jì)算接口間的相似度,而不用執(zhí)行第8行和第16行的操作。下面通過(guò)圖3所示的一個(gè)候選服務(wù)S和一個(gè)服務(wù)請(qǐng)求R來(lái)說(shuō)明該服務(wù)匹配方法。在該例子中,候選服務(wù)S有3個(gè)輸入和3個(gè)輸出,且接口具有如下依賴關(guān)系:O1|→{I1,I2,I3},O2|→{I1,I3},O3|→{I3}。服務(wù)請(qǐng)求R有3個(gè)輸入和兩個(gè)輸出,且候選服務(wù)S和服務(wù)請(qǐng)求R的接口之間映射關(guān)系和相似度如下:
應(yīng)用考慮接口依賴關(guān)系的本體語(yǔ)義地理信息服務(wù)匹配算法,圖3中的候選服務(wù)S和服務(wù)請(qǐng)求R之間的相似度為
圖3 服務(wù)匹配例子
考慮服務(wù)名稱N后,最終基于本體語(yǔ)義的地理信息服務(wù)匹配相似度計(jì)算方法為
其中,w1+w2=1,w1,w2的取值體現(xiàn)服務(wù)匹配因素的構(gòu)成,w1=1時(shí)則為純基于服務(wù)名稱N的匹配,w2=1時(shí)則變?yōu)榧兓诜?wù)輸入輸出IO的匹配。SimN采用GetOntologySim函數(shù)直接計(jì)算本體概念語(yǔ)義相似度即可。
為了驗(yàn)證本章的服務(wù)發(fā)現(xiàn)方法,基于Java語(yǔ)言設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)實(shí)驗(yàn)原型。其中地理信息服務(wù)采用OWL-S語(yǔ)義化描述,本體采用OWL描述,OWL-S的解析借助于卡內(nèi)基梅隆大學(xué)的OWL-S API 1.1,并采用Jess作為規(guī)則推理引擎。
地理信息服務(wù)測(cè)試樣例來(lái)自O(shè)WL-S TC4以及自定義發(fā)布并語(yǔ)義化描述的部分服務(wù)共64個(gè),本體采用幾何對(duì)象本體(Geometry.owl)、地理信息服務(wù)本體(ISO_geographic_service.owl)和應(yīng)用本體geographydataset(geographydataset.owl),需預(yù)先將geographydataset本體的部分概念與Geometry和ISO_geographic_service進(jìn)行本體集成。
首先進(jìn)行基于本體語(yǔ)義的地理信息服務(wù)發(fā)現(xiàn)實(shí)驗(yàn),將考慮服務(wù)接口依賴關(guān)系和未考慮服務(wù)接口依賴關(guān)系的實(shí)驗(yàn)結(jié)果進(jìn)行對(duì)比如表4所示。
表4 實(shí)驗(yàn)結(jié)果
表4表明,基于本體語(yǔ)義的地理信息服務(wù)匹配方法的性能較高,未考慮服務(wù)接口依賴關(guān)系時(shí)查全率 為91.1%,查 準(zhǔn) 率 為90.5%,F(xiàn)-Score值 為0.908,考慮服務(wù)接口依賴關(guān)系后服務(wù)匹配性能進(jìn)一步提高,查全率達(dá)到95.6%,查準(zhǔn)率達(dá)到94.3%,F(xiàn)-Score值到達(dá)0.949。
語(yǔ)義網(wǎng)的出現(xiàn)為人們描繪了一個(gè)未來(lái)網(wǎng)絡(luò)的美好愿景,在語(yǔ)義網(wǎng)環(huán)境中,一切網(wǎng)絡(luò)活動(dòng)和任務(wù)將變得更加自動(dòng)化、智能化。引入本體語(yǔ)義是未來(lái)語(yǔ)義網(wǎng)環(huán)境下進(jìn)行地理信息服務(wù)發(fā)現(xiàn)的必然需求,本文基于此背景研究了基于本體語(yǔ)義的地理信息服務(wù)發(fā)現(xiàn)方法,討論了以下兩個(gè)問(wèn)題:
1)將加權(quán)語(yǔ)義距離和Wu-Palmer法相結(jié)合并進(jìn)行改進(jìn)后,給出了本體概念語(yǔ)義相似度的計(jì)算方法;
2)結(jié)合服務(wù)接口依賴關(guān)系,提出了支持接口多態(tài)性的本體語(yǔ)義地理信息服務(wù)輸入輸出IO匹配方法。
本文還設(shè)計(jì)了實(shí)驗(yàn)原型對(duì)基于本體語(yǔ)義的地理信息服務(wù)發(fā)現(xiàn)方法進(jìn)行了實(shí)驗(yàn)與分析。此研究對(duì)于提高地理信息服務(wù)的發(fā)現(xiàn)性能具有一定的理論和技術(shù)價(jià)值,進(jìn)一步的研究工作將圍繞地理信息服務(wù)本體概念的推理、前提、效果屬性的匹配等展開。
[1]李宏偉.基于Ontology的地理信息服務(wù)研究[D].鄭州:信息工程大學(xué),2007.
[2]陳建杰,楊樹鋒,李長(zhǎng)江.一種基于本體的空間信息Web服務(wù)實(shí)現(xiàn)方法[J].浙江大學(xué)學(xué)報(bào):工學(xué)版,2006,40(3):376-380.
[3]王海濤,劉海硯,劉棟永,等.基于本體的地理信息語(yǔ)義共享方法[J].測(cè)繪工程,2012,21(6):4-7.
[4]王強(qiáng).空間信息服務(wù)聚合的關(guān)鍵技術(shù)研究[D].鄭州:信息工程大學(xué),2010.
[5]PAOLUCCI M,KAWAMURA T,PAYNE T R,et al.Semantic Matching of Web Services Capabilities[C].Proeeedings of the 1st International Semantic Web Conference(ISWC),Sardinia,Italia,2002,333-347.
[6]LUTZ M.Ontology-based Descriptions for Semantic Discovery and Composition of Geoprocessing Services[J].Geoinformatica 2007,1(11):1-36.
[7]RADA R,MILI H,BICKNELL E,et al.Development and Application of Metric on Semantic nets[J].IEEE Transaction on Systems,Man,and Cybernecics,1989,19(1):17-30.
[8]SYCARA K,WIDOFF S,KLUSH M,et al.Larks:Dynamic Matchmaking among Heterogeneous Software Agents in Cyberspace[J].Autonomous Agents and Multi-Agent Systems,2002,(5):173-203.
[9]WU Z,PALMER M.Verb Semantics and Lexical Selection[C].Proceedings of the 32nd Annual Meeting of the Association for Computational Linguistics,New Mexico,1994,133-138.
[10]孫海霞,錢慶,成穎.基于本體的語(yǔ)義相似度計(jì)算方法研究綜述[J].現(xiàn)代圖書情報(bào)技術(shù),2010(1):51-56.
[11]鄧水光,尹建偉,李瑩,等.基于二分圖匹配的語(yǔ)義Web服務(wù)發(fā)現(xiàn)方法[J].計(jì)算機(jī)學(xué)報(bào),2008,31(8):1364-1375.