摘要:面對目前互聯網上動態多樣的Web服務,如何發現最大符合用戶請求的服務成為一個具有挑戰性的課題。Web服務發現主要包括服務的匹配和服務的選擇,雖然目前基于OWL-S和語義相似度的服務發現方法在一定程度上改進了傳統的基于關鍵字和簡單分類的服務發現機制,但也存在著在綜合評價服務相似度時缺乏合理的權值分配的問題。因此,構建Web服務本體,利用神經網絡合理分配各個相似度向量的權值,能夠更好地發現與請求匹配的服務。
關鍵詞:神經網絡;語義Web服務;語義相似度
中圖分類號:TP183文獻標識碼:A文章編號:1009-3044(2008)36-2725-03
Based on Neural Network Semantic Web Service Discovery Mechanism
FENG Dong-zhu
(Dept of Information Engineering, Northeast Dianli University, Jilin 132012, China)
Abstract: In the face of a variety of dynamic web services on the Internet, it becomes a challenging issue how to find the most appropriate services for the users who request them. web service discovery mechanism include services matching and service choosing,although the discovery mechanism based on OWL-S and semantic similarity has improved the traditional discovery mechanism based on keywords and simple classification,there are some problems that reasonable weight distribution in the evaluation of service.It is able to find a better match with the request that build the web service ontology and make use of neural network to distribute the weight vector reasonably.
Key words: neural network; semantic web service; semantic similarity
1 引言
隨著互聯網的發展,Web服務也日益呈現動態多樣性。這對傳統的Web服務發現機制提出了挑戰。Web服務發現作為Web服務體系的起點,在很大程度上影響著Web服務的發展。
Web服務發現主要包括服務的匹配和服務的選擇。服務的匹配用于滿足用戶對某一服務的功能性要求,具有通用性(Generic)、團體性(Community)、個性(Personal)。服務的選擇則是在滿足用戶要求的范圍內提供最佳質量的服務[1]。傳統的Web服務架構中主要采用UDDI(Universal Discovery and Integration)技術來完成Web服務的發現工作。這種基于關鍵字和簡單分類的服務發現機制缺乏對基于概率和語義約束的模糊匹配的支持[2],影響了服務發現的查確率(precision)和查全率(recall)。因此,將語義描述和服務本體論引入到服務發現機制中,在語義層次上進行匹配,將是一種解決目前Web服務發現工作困境的有效方法。
2.重要概念及相關研究
2.1 語義Web服務及OWL-S[3](Semantic Markup for Web Services)
語義Web服務是語義Web(semantic web)與 Web服務技術相結合的產物,利用本體理論(Ontology)來描述Web服務,通過帶有語義信息的描述來實現Web服務的自動發現、調用和組合。語義Web和Web 服務是語義Web服務的兩大支撐技術,而OWL-S則是聯系二者的紐帶。
OWL—S基于 OWL(web ontology language, web本體語言),是目前應用最為廣泛的一種對語義Web服務進行描述的規范語言,可以精確描述Web服務的功能和屬性。
OWL—S對Web服務的三個方面進行了語義定義,如圖1所示。
1) Service Profile(服務概況)描述服務是做什么的。提供服務發現所需的一組信息:服務提供者的白頁和黃頁信息,比如服務提供者的聯系方式;服務的功能信息,主要是指服務的IOPE:Input,Output,Precondition,Effect;提供服務的所屬的分類,服務QoS信息。
2) Service Model(服務模型)描述服務是如何工作的。進一步分析服務的滿足程度并協調各參與者的活動。
3) Service Grounding(服務基礎)描述怎樣訪問服務。包括服務的具體規范, 指定服務訪問的協議,消息格式,端口等。
2.2 Web服務本體模型及其相似度
根據Service Profile(服務概況)的結構,我們對一個通用的Web服務本體及其相似性做出如下定義:
定義1. Web服務本體模型
WebService=
其中,AoS為服務屬性集合;Is/Os為輸入輸出接口集合;QoS 為服務質量集合。
定義2. Web服務相似度
SimWebService(S1,S2)
=WaoS(SimCos(S1,S2))+Wis/Os(SimIs/Os(S1,S2))+WQoS(SimQoS(S1,S2))
Web服務相似度是由服務屬性相似度、技術指標相似度等構成的線性組合。其中,S1,S2表示兩個服務;SimAoS(S1,S2)表示服務屬性相似度;SimIs/Os(S1,S2)表示服務輸入輸出參數的相似度;SimQoS(S1,S2)表示服務質量的相似度;WAoSWIs/OsWQoS分別是服務屬性相似度、服務輸入輸出參數相似度、服務質量的相似度的權值。
2.3 相關研究
服務匹配的實質就是通過某種方式選取相似度最大的一個或幾個服務。在Web服務使用OWL-S描述的情況下,語義相似度成為考量Web相似度的重要參量。
M Paolucci等提出分級匹配的算法,將匹配程度劃分為四個等級[4];Yiqiao Wang與Eleni Stroulia將語義結構匹配引入Web服務相似度比較當中[5];吳健等初步給出了一個Web相似度計算模型[6];GUO-HUA WANG等給出一種基于層次和屬性信息的語義概念相似性計算方法[7];王家琴等提出了一種基于本體的概念語義相似度算法[8];劉倩等在此基礎上,考慮概念之間的繼承和二元關系,以及概念所處深度對匹配度的影響,提出語義Web服務匹配中的概念相似度算法[9]。
縱觀近幾年中外關于語義Web相似度匹配研究的成果,在取得長足發展的同時,還伴隨著一些亟待解決的問題。其中,較為突出的就是無論何種相似度計算模型或算法都存在著相似度向量權值合理分配的問題,從最初理想的均值分配,到現在出現的定量分析分配,都沒有很好地解決這個問題。這也將是本文著力解決的重點。
3 算法主要思想
本算法主要利用BP神經網絡的歸納學習來修正權值,為Web服務相似度的計算提供更為合理的權值分配。
3.1 服務語義相似度
簡單看來,若兩個概念所共享的信息越多,則其相似性越大,反之則越小。在本體網絡層次體系中,每個概念節點都是對其祖先節點的的細化,因此,其最近的共同祖先節點的信息量在某種程度上反映了概念間的相似程度。
其中,C(s)表示概念s的信息量,P(s)表示概念s在訓練集中出現的概率,Sum表示訓練集總數,Sum(s)表示概念s在訓練集中出現的次數。
因此服務語義相似度在本體網絡層次體系中的計算公式為:
其中Ancestors(S1,S2)表示概念結點S1,S2在本體網絡層次體系中共同的最近祖先節點。
3.2 服務屬性相似度
當前語義Web服務屬性相似度的算法基本上都是基于向量空間模型,采用幾何距離作為相似度的度量,這就造成了這些距離函數需要滿足自相似性、最小性、對稱性等條件,進而容易和人對相似性的感知判斷產生差距。為此將Tversky相似理論[10]引入Web屬性相似度的計算模型當中修正這些誤差。
SimAoS(S1,S2)=f(S1∩S2)-αf(S1-S2)- βf(S2-S1)
其中f是一個反映特征顯著性的函數,用于衡量該特征值對相似度的影響。
3.3 服務技術指標相似度
針對輸入輸出的參數,可以從語義、數據類型、數據值方面進行衡量。語義相似度衡量已經敘述過了,這里不再贅述。對于數據類型和數據值可按一般字符串相似度計算方法進行判定。
其中|s|,|t|分別表示字符串長度,若兩者相等則f(i)=0,否則f(i)=1。
對于服務質量參數,根據與領域的相關性可以從兩個方面進行。在建立QoS本體時抽象出與領域相關和與領域無關兩個子概念,并對其屬性進行語義標注。比較服務質量的相似度,在很大程度上取決于服務請求者的服務質量要求集合。
當服務請求的質量約束集合Re quest(A)=α∈[0,1]時:
其中k是服務提供者的信譽值,D(Ai)表示服務提供者對服務質量屬性Ai的聲明,Wm是服務質量的權值,Rm(Ai)表示對服務質量屬性Ai的請求,SimQoS表示服務質量在當前請求下的相似度。
3.5 利用BP神經網絡修正權值
語義Web服務相似度計算過程等價于將一組輸入映射為一組輸出,而本體的各個節點之間的關系可以是非線性;BP神經網絡的歸納學習能力可以很好地解決人為給定相似度向量權值的主觀性。基于以上考慮,采用BP神經網絡來修正權值。
選取服務屬性、服務的輸入輸出、服務的質量三個特征向量作為輸入層的3個神經元,隱含層有7個神經元,輸出層為1個神經元。如圖2所示。
3.5.1 模型的訓練
對于這個3維輸入,1維輸出三層的BP神經網絡,其學習就是尋找一個映射f,并通過權函數的調節,最終達到目標映射F。
F:R3→R1,Y=f(X)
令P為被測神經元性能,S為全部訓練輸入的記號,Z為全部輸出節點的記號,dsz為訓練輸入S在節點Z的期望輸出,Osz為訓練輸入S在節點Z的實際輸出,則被測性能P是權的函數。
令Wi→j為連接第i層節點和第j層節點的權值, ,則:
可知權值的變化應當由某個比例參數r來決定。r的值選得越大越有利于提高學習速度,但又不能太大,以避免使輸出過分超過期望值而引起超調。所以:
ΔWi→j=rOj(1-Oj)βj
對于隱節點:
對于輸出節點:
βZ=dZ-OZ
3.5.2 模型的學習
神經網絡狀態初始化,置各權值和閾初始值;給定輸入向量和目標輸出向量;選取比例參數;進行下列過程直至性能滿足為止;
1) 對于每一訓練輸入,計算所得輸出;
2) 按下列公式計算輸出點的值:
βZ=dZ-OZ
3) 按下列公式計算其他全部節點:
4) 按下列公式計算全部權值變化:
ΔWi→j=rOiOj(1-Oj) βj
5) 對于所有訓練輸入,對權值變化求和,并修正個權值。
4 仿真實驗
3.5節已經給出了該神經網絡的模型,根據該模型構造BP神經網絡,根據Hybrid OWL-S Web Service Matchmaker提供測試集[11]提供的樣本經過相似度計算后(抽取200個服務樣本)來訓練該BP網絡。
經過仿真測試,我們發現基于關鍵詞的Web服務發現方法、文獻[2]與文獻[6]中所闡述的Web服務發現方法的平均查全率為42.5%、81.4%、87%,平均查準率為29%、80%、82%,而本文所采用的發現方法的平均查全率為88%,平均查準率為85%。可以看出,傳統的基于關鍵詞的Web服務發現方法在查全率和查準率方面都比較差,而文獻[2]與文獻[6]中所闡述的基于語義的Web服務發現方法在查全率和查準率方面都有了很大提高,基于神經網絡的語義Web服務發現方法在查全率和查準率方面都高于文中其他方法。
5 結束語
經過神經網絡的訓練和學習,給出的各個權值基本符合人們主觀意向,相對于原來人為添加權值的相似度計算模型,在匹配的精度和范圍有了很大提高。未來進一步要進行的工作就是擴大訓練集規模,引進不同領域的本體知識庫,進一步提高相似度的匹配能力。
參考文獻:
[1] Kokash N, van den Heuvel W J.Leveraging Web Services Discovery with Customizable Hybrid Matching[R].Vienna:ICSOC,2007.
[2] 夏虹,李增智,陳彥萍.基于概念格的語義Web服務匹配研究[J].北京郵電大學學報,2005,5(29):185-188.
[3] W3C. OWL-S: Semantic Markup for Web Services [EB/OL].http://www.w3.org/Submission/OWL-S/.
[4] Paolucci M,Kawamura T,Payne T R,et al.Semantic Matching of Web Services Capabilities[R].Sardinia:The Semantic Web - ISWC,2002.
[5] Wang Yiqiao,Stroulia E.Semantic Structure Matching for Assessing Web-Service Similarity[R].Trento:Service-Oriented Computing-ICSOC,2003.
[6] 吳健,吳朝暉,李瑩.基于本體論和詞匯語義相似度的Web服務發現[J].計算機學報,2005,4(28):595-602.
[7] Wang Guohua,Wang Yadong,Guo Maozu.An Ontology-Based Method fo Similarity Calculation of Concepts in the Semantic Web[R].Dalian:Proceedings of the Fifth International Conference on Machine Learning and Cybernetics,2006.
[8] 王家琴,李仁發,李仲生,等.一種基于本體的概念語義相似度方法的研究[J].計算機工程,2007,33(11):201-203.
[9] 劉倩,雙鍇,陳煒.語義Web服務匹配中的概念相似度算法[EB/OL].中國科技論文在線:http://www.paper.edu.cn/downloadpaper.php?serial_number=200712-102type=1.
[10] Tversky A.Feature of similarity[J]. Psychological Review,1977,84(4):327-352.
[11] OWLS-MX.service retrieval test collection[EB/OL].http://projects.semwebcentral.org/frs/download.php/255/owls-tc2.zip.15044665180.
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。”