论文部分内容阅读
【摘要】近年来关于Web Service相关领域的领域的研究非常多,这方面的一些标准也比较成熟,但是待解决的问题也很突出,像是服务推荐,Qos预测,服务组合,服务监测,服务替换等。
【关键词】协同过滤;服务质量;Qos预测;Web Service;服务推荐
Web Service的提供者使用Web Services Description Language(WSDL)去描述他们提供的服务,以及如何去调用这些服务,然后服务提供商使用UDDI来注册自己的服务,获取URL以便于用户去访问。用户利用基于XML的simple object access protocol(SOAP)来调用服务。Web Service与传统的网站服务区别是:例如在传统旅游网站,用户使用浏览器接入,基于http协议,旅游网站实现用户界面,事务逻辑和数据库接口。在Web Service下,是基于SOAP协议。
一、一种QoS预测方法
Quality of Service(QoS)是服务的属性和服务质量的描述,例如:可用性,安全性,响应时间,吞吐量。Qos的测量是由Web Service的用户制定的,这里的用户不是指代人这个用户,而是调用Web Service的那个程序。
随着Web Service数量的增加,QoS尝尝被用来描述服务的非功能性特性,这些属性中有些是用户相关的,有些是独立于用户的。目前获取这些QoS数值是一个很有挑战性的工作,有以下两三点原因:首先,现实世界中,服务的调用会消耗用户的资源,增加服务的开销,许多服务是需要收费的;其次:现在有非常多的服务需要被评估,但是用户不可能把所有的服务都使用一遍,很多服务都不会被发现;最后:大多数用户并非是Web Service的评估专家,所以对服务的深度和时间上都没有深入了解。
下面介绍一种基于Neighborhood的QoS预测方法:
QoS的预测分为4个步骤:
(1)数据预处理。
(2)正规化。
(3)相似度挖掘。
(4)Web Service Qos预测。
1.数据预处理
将收集到的数据,分配到相应地属性类别中。
收集到的数据是杂乱的,没有经过分类处理的,这一步主要是针对不同的属性的QoS数值,将QoS数值不同的属性值分配到不同的属性表中。
上表举例列出响应时间和可用性两张表,现实中会有很多表。
2.正规化
正规化的主要作用是将收集到的不同属性的数值统一到一定范围中去,无量纲华,通常涉及到的Qos数据的类型可以分为数值型和比率型,每种数据类型的单位也不一样,要将数值类型统一,便于后续的计算,这里使用高斯法对数据进行正规化,可以将数据映射到[0,1]之间。
3.相似度的挖掘
相似度挖掘使用的是皮尔逊相关系数法Pearson Correlation Coefficient(PCC),PCC算法一般都是用來想关心的。
计算基于用户a,u之间的共同服务来计算两个用户之间的相关性。
(用户a,u之间的相似性)
Sim(a,u)的取值范围是[-1,1]。
取值越大,则两个用户之间的相关性就越强,如果两个用户之间没有共同服务(I=null),则相关性为null。
服务之间的相关性计算:
PCC基于服务i,j的共同用户来计算两个服务之间的想关性。
(服务i,j之间的相似性)
Sim(i,j)的取值范围是[-1,1]。
取值越大,则两个服务之间的相关性就越强,如果两个服务之间没有共同用户(I=null),则相关性为null。
计算了服务之间的相似性,用户之间的相似性之后,要对这两个sim值进行重新计算。
Significance Weighting
这一步的作用是因为,用PCC来进行相关性计算,会过高的估计服务之间,用户之间的相似性。需要对相似数值进行重新估计。
Enhanced PCC算法:
的取值范围是[0,1],所以会降低之前估计的数值。
4.QoS值的预测
首先要进行Similar Neighbors Selection。
传统的方法是Top-K算法有一些缺陷,只是从数值上去考虑最相似的K个服务,而不考虑它们之间是否真的相似,这样可能会把不相似的Neighbors也包含进来。
这里使用一种enhanced Top-k算法。
在传统的Top-K算法里加上上面的条件。剃去不相似的用户和服务。
在实际应用中,可能还要加上用户需求的条件。例如某类用户对相应时间的需求,对价格的需求等。
选择了相似Neighbors之后,要进行Missing Value Prediction。
利用协同过滤算法对缺失数值的预测:
(User-Based)
(Item-Based)
系统的组合User-based和Item-based相关性算法,可以更准备的预测缺失数值。
Confidence Weights
用来平衡来自两个数据源的数据,相当于加了个权重。
本文介绍的QoS的预测方法主要用的算法有PCC,TOP-K和协同过滤算法。
二、总结
至此整个QoS预测的工作就做完了,这篇文章中主要对预测的算法进行了相似的阐述,对QoS数据的预处理没有说的很详细。对于数据的来源,以及QoS数据预测完之后的利用也没有阐述,对于后期利用可以用在服务推荐,服务替换,服务选择上面。引用领域还是比较广泛的。
参考文献
[1]Zhang Li,Zhang Bin,Liu Ying,Gao,Yan Zhu Zhi-Liang.A Web Service Qos Prediction Approach Based on Collaborative Filtering.IEEE Asia-Pacific Services Computing Confrence.2010.
[2]刘平峰,张慧,张佩璐.面向用户均衡需求的Web服务资源智能推荐方法[J].计算机应用研究,Vol.29 No.9 Sep.2012.
[3]邵凌霜,周立,赵俊峰,谢冰,梅宏.一种Web Service的服务质量预测方法.
[4]Zibin Zheng,Michael R.Lyu.Qos Management of Web Service.浙江大学出版社,Springer.20thNovember 2011.
[5]Linyan Lv,Matus Medo,Chi Ho Yeung,Yi-cheng Zhang,Zi-ke Zhang,Tao Zhou. Recommender systems.Physics Reports.519(2012):1-49.
[6]项亮.推荐系统实践[M].人民邮电出版社,2012.
作者简介:程晓龙,男,主要研究方向:Web Service,服务推荐,服务质量,协同过滤等。
【关键词】协同过滤;服务质量;Qos预测;Web Service;服务推荐
Web Service的提供者使用Web Services Description Language(WSDL)去描述他们提供的服务,以及如何去调用这些服务,然后服务提供商使用UDDI来注册自己的服务,获取URL以便于用户去访问。用户利用基于XML的simple object access protocol(SOAP)来调用服务。Web Service与传统的网站服务区别是:例如在传统旅游网站,用户使用浏览器接入,基于http协议,旅游网站实现用户界面,事务逻辑和数据库接口。在Web Service下,是基于SOAP协议。
一、一种QoS预测方法
Quality of Service(QoS)是服务的属性和服务质量的描述,例如:可用性,安全性,响应时间,吞吐量。Qos的测量是由Web Service的用户制定的,这里的用户不是指代人这个用户,而是调用Web Service的那个程序。
随着Web Service数量的增加,QoS尝尝被用来描述服务的非功能性特性,这些属性中有些是用户相关的,有些是独立于用户的。目前获取这些QoS数值是一个很有挑战性的工作,有以下两三点原因:首先,现实世界中,服务的调用会消耗用户的资源,增加服务的开销,许多服务是需要收费的;其次:现在有非常多的服务需要被评估,但是用户不可能把所有的服务都使用一遍,很多服务都不会被发现;最后:大多数用户并非是Web Service的评估专家,所以对服务的深度和时间上都没有深入了解。
下面介绍一种基于Neighborhood的QoS预测方法:
QoS的预测分为4个步骤:
(1)数据预处理。
(2)正规化。
(3)相似度挖掘。
(4)Web Service Qos预测。
1.数据预处理
将收集到的数据,分配到相应地属性类别中。
收集到的数据是杂乱的,没有经过分类处理的,这一步主要是针对不同的属性的QoS数值,将QoS数值不同的属性值分配到不同的属性表中。
上表举例列出响应时间和可用性两张表,现实中会有很多表。
2.正规化
正规化的主要作用是将收集到的不同属性的数值统一到一定范围中去,无量纲华,通常涉及到的Qos数据的类型可以分为数值型和比率型,每种数据类型的单位也不一样,要将数值类型统一,便于后续的计算,这里使用高斯法对数据进行正规化,可以将数据映射到[0,1]之间。
3.相似度的挖掘
相似度挖掘使用的是皮尔逊相关系数法Pearson Correlation Coefficient(PCC),PCC算法一般都是用來想关心的。
计算基于用户a,u之间的共同服务来计算两个用户之间的相关性。
(用户a,u之间的相似性)
Sim(a,u)的取值范围是[-1,1]。
取值越大,则两个用户之间的相关性就越强,如果两个用户之间没有共同服务(I=null),则相关性为null。
服务之间的相关性计算:
PCC基于服务i,j的共同用户来计算两个服务之间的想关性。
(服务i,j之间的相似性)
Sim(i,j)的取值范围是[-1,1]。
取值越大,则两个服务之间的相关性就越强,如果两个服务之间没有共同用户(I=null),则相关性为null。
计算了服务之间的相似性,用户之间的相似性之后,要对这两个sim值进行重新计算。
Significance Weighting
这一步的作用是因为,用PCC来进行相关性计算,会过高的估计服务之间,用户之间的相似性。需要对相似数值进行重新估计。
Enhanced PCC算法:
的取值范围是[0,1],所以会降低之前估计的数值。
4.QoS值的预测
首先要进行Similar Neighbors Selection。
传统的方法是Top-K算法有一些缺陷,只是从数值上去考虑最相似的K个服务,而不考虑它们之间是否真的相似,这样可能会把不相似的Neighbors也包含进来。
这里使用一种enhanced Top-k算法。
在传统的Top-K算法里加上上面的条件。剃去不相似的用户和服务。
在实际应用中,可能还要加上用户需求的条件。例如某类用户对相应时间的需求,对价格的需求等。
选择了相似Neighbors之后,要进行Missing Value Prediction。
利用协同过滤算法对缺失数值的预测:
(User-Based)
(Item-Based)
系统的组合User-based和Item-based相关性算法,可以更准备的预测缺失数值。
Confidence Weights
用来平衡来自两个数据源的数据,相当于加了个权重。
本文介绍的QoS的预测方法主要用的算法有PCC,TOP-K和协同过滤算法。
二、总结
至此整个QoS预测的工作就做完了,这篇文章中主要对预测的算法进行了相似的阐述,对QoS数据的预处理没有说的很详细。对于数据的来源,以及QoS数据预测完之后的利用也没有阐述,对于后期利用可以用在服务推荐,服务替换,服务选择上面。引用领域还是比较广泛的。
参考文献
[1]Zhang Li,Zhang Bin,Liu Ying,Gao,Yan Zhu Zhi-Liang.A Web Service Qos Prediction Approach Based on Collaborative Filtering.IEEE Asia-Pacific Services Computing Confrence.2010.
[2]刘平峰,张慧,张佩璐.面向用户均衡需求的Web服务资源智能推荐方法[J].计算机应用研究,Vol.29 No.9 Sep.2012.
[3]邵凌霜,周立,赵俊峰,谢冰,梅宏.一种Web Service的服务质量预测方法.
[4]Zibin Zheng,Michael R.Lyu.Qos Management of Web Service.浙江大学出版社,Springer.20thNovember 2011.
[5]Linyan Lv,Matus Medo,Chi Ho Yeung,Yi-cheng Zhang,Zi-ke Zhang,Tao Zhou. Recommender systems.Physics Reports.519(2012):1-49.
[6]项亮.推荐系统实践[M].人民邮电出版社,2012.
作者简介:程晓龙,男,主要研究方向:Web Service,服务推荐,服务质量,协同过滤等。