关键字 |
二部图,OWL-S,匹配,功能相似性,文本相似性 |
介绍 |
今天,有大量的工具支持和促进Web服务的开发、部署和调用,而且Web服务在它们的领域内所能做的事情几乎没有限制。随着Web服务的快速发展,相关服务的检索成为一个挑战。使用通用描述、发现和集成[1](UDDI)和Web服务描述语言[2](WSDL)的基于关键字的发现机制由于检索大量不相关的信息而效率低下。这是由于缺少服务的语义信息。语义Web计划通过创建一组基于XML的文档和本体来解决这个问题。语义Web服务将语义Web的有意义内容与Web服务的业务逻辑集成在一起,从而使行业和个人能够访问这些服务。但是随着可用web服务数量的增加,对有效检索所需服务的机制的需求也在增长。 |
发现过程的一个重要组成部分是匹配算法。为了克服现有基于语法的搜索算法的局限性,提出了基于语义技术的匹配算法。它们大多基于Paolucci等人在[3]中提出的基于逻辑的语义匹配方法。这种方法有一定的局限性。此时,改进现有的基于语义的web服务发现机制是至关重要的一步。因此,我们提出了一种改进的语义Web服务发现方法,使用基于二部图的匹配代替Paolucci算法(用于功能相似性)来查找OWL-S(面向服务的Web本体语言)服务。我们提出的方法还执行基于文本的相似度匹配。 |
高效Web服务搜索的关键步骤之一是理解用户请求中的含义,因为用户的请求通常采用自然语言的形式。目前流行的大多数服务发现算法都希望用户请求(查询)仅作为OWL-S查询提供。但是,我们的工作是通过带注释的Web服务集搜索与用户查询的匹配,用户查询仅由关键字组成,因此不需要了解语义语言。它允许以自然语言指定用户查询,并根据文本相似度进行匹配。该方法使用自然语言处理(NLP)技术来增强用户请求和可用服务集的描述。 |
本文提出的方法包括三个步骤: |
•使用NLP技术增强用户请求 |
•下一步涉及基于功能相似性检索相关服务(基于二部图的匹配) |
•最后使用NLP技术对OWL-S服务进行预处理,并根据文本描述检索服务 |
利用OWL-S TC2 (OWL-S服务检索测试集)对改进算法进行了测试,并与现有方法进行了比较。实验结果表明,与其他方法相比,该算法具有较高的灵活性,能够从非常相似的广告服务中筛选出最适合用户需求的广告服务,并且具有较高的召回率和可接受的精度。 |
本文的其余部分组织如下:第2节解释了一些背景细节。第3节介绍了一些相关工作。第4节概述了所提议的方法。我们的评估在第5节中介绍。最后,在第6部分提出了结论和未来的工作。 |
背景 |
答:本体 |
本体是领域内一组概念以及这些概念之间关系的正式表示。本体论用于推断领域的属性,并可用于定义领域。上层本体是与领域无关的本体,旨在对特定领域进行重用和扩展,形成领域本体 |
b为了进行 |
OWL- s是建立在DARPA DAML项目开发的Web本体语言(OWL)之上的本体。它取代了以前的DAML-S本体。OWL-S是语义Web基于owl的框架中的一个本体,用于描述语义Web服务。它将使用户和软件代理能够自动发现、调用、组合和监视提供服务[5]的Web资源。 |
c . WordNet |
WordNet是一个大型的英语词汇数据库。名词、动词、形容词和副词被归类为一组认知同义词(同义词集),每一组都表达一个不同的概念[6]。同义词集通过概念、语义和词汇关系相互联系。WordNet也可以免费公开下载。WordNet的结构使其成为计算语言学和自然语言处理的有用工具。 |
d .耶拿 |
Jena是用于构建语义Web应用程序[7]的Java框架。它提供了广泛的Java库,以帮助开发人员根据W3C发布的建议开发处理RDF、OWL和SPARQL的代码。Jena包含一个基于规则的推理引擎,用于执行基于OWL本体的推理。 |
相关工作 |
目前大多数语义web服务发现算法都执行基于逻辑的服务配置文件匹配,并且局限于OWL-S服务。我们所知道的影响最大的基于逻辑的语义匹配是Paolucci et al.算法[3],该算法在随后的提案中被广泛引用。在[3]中,Paolucci等人提出了一种基于本体的解决方案,根据本体树中定义的层次概念包容关系,比较服务的Input和Output参数的匹配。语义相似度有四种等级:精确的、包含的、插入的和失败的。 |
在[8]中,Li和Horrocks使用基于dml - s的本体和描述逻辑推理器来比较基于本体的服务描述。它们通过添加交集匹配扩展了[3]的匹配度。混合语义服务匹配器FCMATCH[9]对OWL-DL编写的整体服务和查询概念执行基于逻辑和基于文本相似性的组合匹配。类似地,[10]中的工作从语义上匹配请求和提供的参数,将匹配问题建模为匹配二部图之一。在[11]中,Peng和Shi将[3]的匹配等级替换为实数表示的精细值,用于对已匹配到相同等级的广告进行进一步排序。Wang等[12]工作提出了一种基于改进语义距离的语义匹配算法。本文考虑了四种关系。专业化、泛化、二元关系和相似关系。在[13]中,Liu等人实现了五个匹配等级的融合,精确地实现了句法和语义匹配的协作,并考虑了Qos等依赖特性。OWLS-MX[14]匹配生成器执行混合语义匹配,它用基于语法IR的相似性度量补充了基于逻辑的推理。 OWL-SLR [15] provides retrieval of Web services based not only on subsumption relationships, but also exploits the structural information of OWL ontologies. According to the work of [16], in the first phase, two web services` input/output parameters are compared semantically. In the second phase, the type of the input/output parameters of the web services is compared. In the third phase, the matching rate of the semantic web services is computed based on the results of the first and second phase. Zhang et al. [17] proposed a way to precisely compute the similarity of concepts after classifying the services into five different matchmaking levels. The weighted semantic distance and the common features of concepts are considered in similarity computation. Cai et al. [18] proposed a semantic matchmaker. But it focuses only on manufacturing domain. The similarity matching assumes either the total number of super classes subsuming the compared concepts or the total number of subclasses subsumed by the compared concepts in a shared ontological taxonomy. In addition, constraint reasoning is performed to deal with the more complex matches. |
上面提到的所有工作都期望用户输入以标准服务描述的形式给出。对接受自然语言用户请求的支持较少。因此,我们提出了一种匹配算法,它接受用户以自然语言输入,同时进行功能匹配和基于文本的匹配,从而提高了召回率,与现有的方法相比,更人性化。 |
算法 |
我们的发现过程旨在基于用户查询高效地搜索适当的Web服务。在我们提出的发现框架中,我们假设存在一组用OWL-S语言描述并由服务提供者发布的Web服务。为了解决现有方法的主要限制之一,即期望将用户请求指定为OWL-S查询,我们的发现框架允许用自然语言表示用户查询。然后,我们使用NLP技术执行查询预处理,如停止词删除,词干和查询增强。框架中的最后一个过程是语义匹配。它基于功能相似性(输入/输出概念)和文本相似性。我们所提议的工作架构如图1所示。 |
我们工作的主要阶段是: |
•用户请求增强 |
•语义匹配 |
-功能相似性 |
-文本相似性 |
A.用户请求增强 |
从服务请求者的角度来看,我们的系统提供了一个简单的图形用户友好界面,以自然语言输入他/她的查询。它还为用户输入所需服务的输入和输出参数提供了便利。该框架通过执行一些基于自然语言处理技术的预处理来增强用户查询。在此阶段执行的主要任务是通过使用WordNet添加关键术语的同义词集来停止单词删除、词干和增强用户请求。图2说明了在用户查询增强期间执行的各种活动。 |
1)服务请求预处理 |
服务请求(SR)将被解析和预处理。预处理包括以下步骤: |
•标记 |
用户查询首先被划分为一个单词列表。这个过程包括:将大写字符转换为小写字符,删除标点符号,并使用空格作为术语分隔符。 |
•停止删除单词 |
停止删除词的目的是减少作为索引项表现不佳的词。例如,这些单词可以是“a”,“the”,“and”等。外部停止词列表用于过滤掉这些词。 |
•阻止 |
词干化是去掉词缀(后缀或前缀),用词根或词干形式替换单词的过程。交叉的,交叉的,交叉的这些词的词根都是相交的。这个过程不仅减少了单词的种类,而且还减少了计算成本。波特阻塞算法[19]用于进行阻塞处理。它使用WordNet词典词典。 |
•查询增强 |
这个预处理的结果是项向量。通过从WordNet词汇表识别同义词集,可以增强这个向量。 |
B.语义匹配 |
匹配过程涉及两个活动,即:使用增强的用户请求和可用的OWL-S服务的输入和输出参数执行功能相似性[17]和基于增强的用户请求和OWL-S服务的增强文本描述[20]的文本相似性。 |
1)功能相似 |
Paolucci的算法依赖于在查询中定义概念的顺序,这是这种方法的一个主要缺点。由于这一缺陷,算法可能会产生假阳性或假阴性的结果。为了解决这个问题,引入了另一种语义匹配方法。它利用二部图匹配来产生所需的匹配。二部图算法还引入了一组不同的概念之间的匹配规则。插件级和包含级在匹配程度上互换。Paolucci的假设,“如果广告商宣传一个概念,它将提供该概念的所有直接子类型”被抛弃了。因此,如果查询概念包含广告概念,则返回Subsume,而如果查询概念包含广告概念,则返回Plug-in。插件的排名仍然高于Subsume匹配。输出参数匹配算法如下: |
算法:PROCEDURE match (outA, outQ) |
步骤1:如果outA = outQ那么 |
返回的 |
步骤2:else if outQ outA的超类then |
返回插件 |
步骤3:else if outQ包含outA then |
返回插件 |
步骤4:else if outA包含outQ then |
返回包含 |
5 .其他 |
返回失败 |
步骤6:结束if |
匹配: |
二部图G = (V, E)的匹配是子图G ' = (V, E '),使得E '中的两条边e1, e2都不具有相同的顶点。设用于查询和广告的输出概念集为Q和a。我们将构造一个图G = (Q+ a, E),其中有一个顶点对应于查询和广告中的每个概念。如果一个属于Q的概念v1和一个属于a的概念v2之间存在匹配度(≠Fail),那么我们定义一条边(v1, v2),权值作为匹配度。我们需要一个匹配,其中Q的所有输出概念都与a的某个概念相匹配。如果存在这样的匹配,我们就说广告和查询匹配。如果存在多个这样的匹配,我们将选择最优的一个。为此,我们将为不同匹配程度的边分配不同的数值权重。让我们假设,我们将最小权重分配给exact,然后是Plug-in,然后是subes。令max (w)我)为匹配中的最大加权边。在这种情况下,最优匹配将是具有最小max (w我)[10]。 |
2)文本相似性 |
有时逻辑匹配失败是因为领域本体中一对概念之间缺乏逻辑关系。此外,用户可能还不够专业,无法根据OWL-S查询指定他们的需求。在这种情况下,完全依赖功能(签名)相似性度量将无法发现两个相似的web服务。因此,为了得到更好的结果,规范(即文本描述)相似度度量应该与签名相似度度量相结合。OWL-S服务配置文件使用web服务的和标记提供签名,使用标记提供规范描述。通常,web服务的文本描述提供了关于它是什么的简短功能描述。首先检索来自标记的信息。执行以下步骤:将文本描述转换为术语向量、删除停止词、词干和使用WordNet增强术语向量。上述步骤与增强用户请求所做的步骤类似。然后计算增强后的用户查询向量和增强后的文本描述向量词之间的相似度。 Jaccard similarity [21] measure is used to calculate the similarity between terms in the Query and in the Advertisement. Based on this measure, the retrieved services are sorted. The text similarity is calculated as follows: |
|
最后,通过二部匹配(功能相似度)和基于文本的相似度的线性组合计算两个服务S1和S2的复合相似度,如下所示: |
|
实验结果 |
为了比较它们的正确性和性能,我们在Java中实现了以下算法: |
•Paolucci的算法 |
•二部匹配算法 |
•建议用户友好的基于文本匹配的二部分 |
A.评估设置 |
对于语义匹配,假设广告是用OWL-S格式定义的。原子OWL-S服务是从OWLS-TC v2集合[22]中选择的,这是一个公开可用的OWL-S服务集合,用于评估和比较不同的匹配算法。它由1007个服务组成,使用了来自7个不同领域的4694个概念的参考本体。小球推理器[23]用于对加载的本体进行分类。Jena API用于推理概念关系。匹配过程考虑输入参数、输出参数和文本描述。 |
例如,我们用一个用户查询Hospital_Investigating_Service来测试我们的算法,该查询有一个输入参数和一个输出参数,分别是Hospital和investigating_service,其描述是“Returns investigations of Hospital”。我们提出的基于文本的bipartite匹配方法比现有的bipartite匹配方法多检索了8个服务,其中3个服务与用户请求相关。 |
各种匹配算法的性能可以根据它们的召回率和准确率来衡量。实验结果表明,该方法具有较好的查全率。精度和召回率的数学计算如下所示: |
|
|
列出精度和召回率的总体结果如表i所示。这表明,与Paolucci的方法相比,Bipartite matching算法显著提高了相关服务的检索。我们提出的方法在召回率方面表现得更好,而且很明显,它更用户友好。 |
图3显示了三种不同的匹配算法,即Paolucci算法、二部匹配和我们提出的用户友好的基于语义的算法。 |
结论及未来工作 |
本文提出的工作提供了一种改进的、用户友好的Web服务发现方法。由于用户可能不太了解Web服务相关技术和实现细节,因此我们更加重视这样一个事实,即需要一个接受以自然语言表示的用户查询作为输入的发现框架。我们提出的框架提供了一种发现机制,可以基于用自然语言编写的关键字发现Web服务。实验结果也证明了该方法的有效性。作为未来工作的一个范围,由于目前我们的工作仅限于原子过程,这可以扩展到处理复合过程。 |
表格一览 |
|
表1 |
|
|
数字一览 |
|
|
参考文献 |
- http://uddi.org/。
- Christensen, E., Curbera, F., Meredith, G.和Weerawarana, S.,“Web服务描述语言(WSDL) 1.1”,检索自http://www.w3.org/TR/2001/NOTE-wsdl-20010315, 2001。
- Paolucci, M., Kawamura, T., Payne, T.R.和Sycara, K.,“Web服务能力的语义匹配”,第一届国际语义Web会议论文集,意大利,第333-347页,2002。
- Antoniou等人,“网络本体语言:OWL。信息系统中的本体手册”,2003年。
- David Martin等人,“OWL-S: Web服务的语义标记”,检索自http://www.w3.org/Submission/OWL-S”,2004年。
- http://wordnet.princeton.edu/。
- “JENA:构建语义Web应用程序的Java框架”,检索自http://jena.sourceforge.net/。
- 李磊和Ian Horrocks,“基于语义网络技术的配对软件框架”,第12届会议论文集。《WWW会议》,纽约ACM,第331-339页,2003年。
- D. Bianchini, V. D. Antonellis, M. Melchiori, D. Salvi,“语义丰富的服务发现”,IEEE ICDE第2期论文集
- 网络信息检索与集成挑战国际研讨会(WIRI06),亚特兰大,美国,2006。
- UmeshBellur, RoshanKulkarni,“基于二部图匹配的语义Web服务的改进匹配算法”,IEEE国际Web服务会议,86-93页,2007。
- 彭宏,施志志,Chang L.和牛伟,“改进语义Web服务发现的等级匹配到值匹配”,IEEE自然计算国际会议(ICNC 2008), IEEE计算机学会,中国济南,第232 -236页,2008年10月。
- 王公珍,徐东红,侯迪,“一种基于改进语义距离的Web服务语义匹配算法”,第四届国际下一代Web服务实践会议,2008。
- 刘敏,高强,沈玮,郝强,范毅中,“Web服务的语义增强多级匹配模型”,面向服务计算与应用,第3卷,第3期,第205-215页,2009年9月。
- K. Klusch M, Fries B, Sycara,“owl - mx: OWL-S服务的混合语义Web服务匹配器”,《Web语义学杂志:WWW上的科学、服务和代理》,第121-133页,2009年。
- GeorgiosMeditskos和Nick Bassiliades,“OWL-S中使用分类法的结构化和面向角色的Web服务发现”,IEEETransaction on Knowledge and Data Engineering,第22卷,no. 2。2、2010。
- GolsaHeidary, Kamran Zamanifar, NaserNematbakhsh,“三阶段语义网络匹配器”,《国际智能家居杂志》第4卷第3期,2010年7月。
- 张阳,刘法桂,张楠,“基于概念相似度的语义Web服务细粒度匹配研究”,计算机工程学报,第8期,pp. 377-384, 2011。
- 蔡敏,张文勇,张凯,“面向分布式制造环境的基于本体的服务管理的语义Web系统”,IEEE, 2011。《论系统、人与控制论——A部分:系统与人类》,第41卷,第3期,2011年5月。
- http://ccl.pku.edu.cn/doubtfire/NLP/Lexical_Analysis/Word_Lemmatization/Porter/波特词干算法。
- Yasser Ganjisaffar, Hassan Abolhassani, MahmoodNeshati,“OWL-S注释Web服务的相似性度量”,IEEE/WIC/ACM网络智能国际会议论文集,香港,2006。
- trac.research.cc.gatech.edu/ccl/export/184/SecondMindProject/SM/SM.WordNet/Paper/
WordNetDotNet_Semantic_Similarity.pdf。
- “OWL-S服务检索测试集。2.1版”,检索自http://projects.semwebcentral.org /projects/owls-tc/。
- Sirin, E.等人,“颗粒:一个OWL DL推理器”,网络语义杂志,2005年。
|