030-035
Transcription
030-035
IPASJ International Journal of Computer Science (IIJCS) Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992 A Publisher for Research Motivation ........ Volume 3, Issue 3, March 2015 A Review on Web Service Recommendation System Using Collaborative Filtering Sabanaz S. Peerzade, Vanita D. Jadhav Department of Computer Science and Engineering SVERI’S College of Engineering, Pandharpur, India Solapur University ABSTRACT In today’s world, the amount of web services is increases on internet, so that selection and recommendation of web service are becoming more important. This paper presents review on QoS prediction and web service recommendation and illustrates the present similarity measure techniques of QoS prediction. This paper also reviews collaborative Filtering on the basis of Quality of Service of web services for the recommendation System. Keywords: Service Recommendation System, Collaborative Filtering, QOS prediction, Similarity Measure. 1. INTRODUCTION Web service is software system that performs interaction over network. Web service discovery is dependents on the functionality provided by the web service. Actually the key challenge is not discovery but selection i.e. the service user must select one good service provider [1]. On internet world there are many web services that are having same properties. The difficulty is selection of optimal web service. Optimality of web service is depend on the performance of web service, and performance is measures through quality of service i.e. QOS. Quality-of-Service (QoS) is usually defined as a set of nonfunctional properties, such as round-trip time (RTT), price, failure-rate, and so on. The optimal web service is finding out by using different recommendation system. Recommendation system first of all searches the list of web services those having similar functionality, which is user requested. By using filtering, separated the required list and finally on the basis of past performance of service provider finding the optimal web services and recommend to users. Collaborative filtering is technique used in almost all recommendation system. Collaborative filtering predicates the utilities of item or web services for a particular user, for the same set of web services given by many other users. In general, methods for collaborative filtering can be categorized into two classes: memory-based algorithms and model-based algorithms [2]. Memory-based algorithms predicate the rating for a test user on an item by averaging the ratings of the training users who share the similar interests as the test user. This category includes the Pearson- correlation coefficient approach [3] and the vector space similarity approach [3]. Model-based approaches group different training users into a small number of classes based on their respective RTT. The RTT of a test user on a particular item/web service is predicated as the RTT of the user class that the test user fits in best. In this paper, we focus on memory-based CF and will elaborate it Section 3. This paper is organized as follows: Section 2 includes a review of Recommendation System. Section 3 explains Collaborative filtering and its types. Section 4 illustrates QoS prediction, sections 5 explain services recommendation and finally, conclusion of this study is explained during section 6. 2. RECOMMENDATION SYSTEM The objective of any recommender system is to recommend web services to a user, a new product/ web service which the user has not already used or experienced but is very likely to choose from the past history of users and web service. Recommendation system collecting different QOS (i.e. RTT) of different web services and giving suggestions or recommendations on web services for which a particular user has not experience it. The current generation of recommendation methods can be broadly classified into the following five categories [4], based on the knowledge sources they use to make recommendations. 2.1. Content-based Recommendations Content-based recommenders recommend to an active/target user (user to whom recommendations are targeted) those items/web service, which he/she has not seen in the past and which are very similar to the ones he/she had preferred in the past. Volume 3 Issue 3 March 2015 Page 30 IPASJ International Journal of Computer Science (IIJCS) A Publisher for Research Motivation ........ Volume 3, Issue 3, March 2015 Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992 2.2 Collaborative Recommendations Collaborative Filtering (CF) recommenders recommend to an active user those items which he/she has not seen in the past and which his/her mentors had liked in the past. 2.3 Knowledge-based Recommendation Knowledge based or so called rule-based personalization systems recommend items by generating manually or automatically a number of decision rules. Knowledge-based recommenders emphasizes on explicit domain knowledge about the items as well as implicit knowledge about the users. 2.4 Demographic-based Recommendation A demographic recommender system provides recommendations based on a user’s demographic profile which involves user’s demographic data such as gender, age, date of birth, education, and other personal feature. 2.5 Hybrid Recommendation Systems All the above mentioned systems have complementary strengths and weaknesses. A Hybrid recommendation system combines two or more recommendation techniques to gain better system optimization and fewer of the weaknesses of any individual ones. The most popular Hybrids are those of Content-based and Collaborative Filtering. 3. COLLABORATIVE FILTERING The process of identifying similar users and similar web services and recommending what similar users like is called collaborative filtering. The collaborative filtering suggested the web services to the user, on the basis of past web service history. A user can hardly invoked all services, meaning that the QoS (round-trip time i.e. RTT) values of services that the user has not invoked are unknown. Hence, providing accurate Web service QoS prediction is very important for service users. Based on the predicted QoS values, desired service selection can be made. Collaborative Filtering was firstly proposed by Rich [5] and has been widely used in service recommendation systems. In Web service recommendation, the primary issue of CF is to find a group of similar users, a group of similar services and to build a user-service matrix about the QoS value of services used by users. The user-service matrix is actually very sparse in practice. Based on such a sparse matrix, the prediction accuracy of QoS values of services will decline distinctly. So we Firstly predict the missing QoS values of the matrix by finding historical QoS data from similar users or similar services and then recommend Web services with optimal QoS values to the active user. Table 1shows a simple example. The numerical values in the table correspond to the response time for users to invoke the indicated service. Question Mark (i.e.?) means that the user has not invoked this service. As the response time of service2 to Amy is unknown, we cannot decide which service is the best one for his in terms of response time. To execute QoS-based service selection, a pre-process is necessary to predict the unknown QoS values. Table 1: User-Item Matrix with Round-trip time (RTT) Collaborative Filtering algorithm applies two processes: a) Prediction Prediction is a numerical value which expressing the predicted likeliness of web services those does not access by particular user. This predicted value is in same scale as opinion values provided by same user [6]. b) Recommendation Recommendation is a list of N items that the active user will like the most. This recommended list must be on web services those are not already access by the active user. This interface of Collaborative filtering algorithm is called Top-N recommendation [6]. Collaborative filtering process is shown in bellow figure 1. Volume 3 Issue 3 March 2015 Page 31 IPASJ International Journal of Computer Science (IIJCS) A Publisher for Research Motivation ........ Volume 3, Issue 3, March 2015 Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992 Figure1. Collaborative Filtering Process Given Round trip time (i.e. RTT) table as an input, where u1, u2,..,um are users of the system and s1,s2,...,sn is a list of web services for which prediction is sought. There are two types of Collaborative Filtering algorithms: 3.1 Model Based Collaborative Filtering 3.2 Memory Based Collaborative Filtering 3.1 Model Based Collaborative Filtering Model-based algorithms use the collection of QoS to learn a model, which is then used to make QoS predictions. Modelbased CF algorithms include Bayesian models (probabilistic) and clustering models [2]. Model-based CF approaches provide a predefined model to fit the observed QoS data, and then the trained model can be used to predict the unknown QoS values. Matrix factorization is one of the most popular model-based CF approaches, which was first introduced to address the QoS prediction problem in [7]. Matrix factorization model handles the sparsity problem well and usually achieves better performance than neighborhood-based approaches. 3.1.1 Clustering model One of the models that are accepted for Collaborative Filtering (CF) is Cluster model. Another name of this model is multinomial mixture model .The Cluster model idea is that there are several definite groups or kind of users that taking a collection of precedence and preferences that is common among them [2]. 3.1.2 Bayesian models Another model can be used for Collaborative Filtering (CF) is Bayesian Network Model with a node similar to every item/web services that is located in domain. The states of a node are based on possible value for every item. We also have one state based on “NO VOTE” where there is not a logical interpretation for data that are lost in domains. After that, we use an algorithm to train data for learning Bayesian Network Model and where data are lost indicate by “NO VOTE”. The algorithm that is used for learning, search over different structures of model based on dependencies for every item [2] 3.2 Memory Based Collaborative Filtering Memory-based algorithms make predictions by operating on data (users, services and QoS data) stored in memory. They can be classified into Nearest Neighbour algorithms and Top-N recommendation algorithms. Nearest neighbour algorithms are the most commonly used Memory based CF algorithms. Users similar to the current user with respect to preferences are called as neighbours. This type of CF approaches use the observed QoS data to compute the similarity values between users or services, and further leverage them for QoS prediction. Top-N recommendation is to recommend a set of N top-ranked web services, those will be of interest to a certain user. Top-N recommendation techniques analyse the user-service matrix to correlate different users or services and use them to compute the recommendations. There are two different memory-based recommendations that are according to nearest neighbor algorithm [8]. 3.2.1 User-based filtering. User-based approaches leverage the QoS information of similar users for prediction. User-based nearest neighbour algorithms generate predictions for a given user based on QoS of web services used by user in the neighbourhood. A common approach to Item-based nearest neighbour algorithm is: a) Calculate Similarity of users who are similar to the current active user. Similarity calculation is done either by using Pearson correlation coefficient (PCC) between current user, and another user or Cosine-based correlation where in the two Volume 3 Issue 3 March 2015 Page 32 IPASJ International Journal of Computer Science (IIJCS) A Publisher for Research Motivation ........ Volume 3, Issue 3, March 2015 Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992 users are considered to be two vectors in an m-dimensional space and the similarity between the two is measured by computing the cosine of the angle between them. b) Select a subset of the users (neighbours) to use as predictors. Neighbour selection is done by finding similar users or users having a similarity measure above a certain threshold. c) Compute a prediction from a similarity measures combination of the selected neighbours. Present web service with highest predicted QoS as recommendations. 3.2.2 Item/Web Service-based filtering Item-based or web service-based approaches employ the QoS information of similar items (i.e., services) for prediction. Item-based nearest neighbour algorithms generate predictions for a given web service based on QoS of web services used by users in the neighbourhood. A common approach to Item-based nearest neighbour algorithm is: a) Calculate Similarity of web services, those was used by current active user and web services of other user of neighbourhood. Similarity calculation is done either by using Pearson correlation coefficient (PCC) between current user’s web services, and another user’ s web services or Cosine-based correlation where in the two web services are considered to be two vectors in an m-dimensional space and the similarity between the two is measured by computing the cosine of the angle between them. b) Select a subset of the web services to use as predictors. Compute a prediction from a similarity measures combination of the selected neighbours. Present web service with highest predicted QoS as recommendations. 4.QOS PREDICTION In general, the user-based collaborative filtering algorithm attempts to discover a group of users who shares similar interest with the active user and then predicts QoS values of services. The collaborative filtering algorithm attempts to discover a group of services who are similar to the active user historical services and then predict QoS values of service. So our goal is first to determine the similar neighbor according to similarity of users. With the similar neighbor, we predict the missing QoS value of the matrix to make the matrix denser and then predict the QoS values of unknown Web services for the active user. The selection of similar neighbor of users or services is shown as follow: The figure shows [9], that we could determine the similar neighbor of users or services by the long-term invocation relationship between users and services in the net. The digitals in the figure show the number of web services of invocation. Figure2. Invocation relation chart 4.1 Similarity Calculation Similarity calculation of the user-based method is to find the historical information of co-invoked services of two users. As in figure 2, user a and user c both have selected service 1 and service 2, that means they have a similar interest for the service 1 and service 2. However, from figure2, we know that user a invoked service 1 were 3 times and service 2 was 1 time while user c have invoked the number of service 1 and service 2 were both 2 times and invoked service 5 were 3 times. So we assume that the interest of user a is service 1 while the interest of user c is service 5. And for service 2, we assume that it could usually be invoked by different users and not be users' interest. There are two types of similarity measures, i.e., the functional similarity measure and the nonfunctional similarity measure. Input/output/operation names are usually employed to measure the functional similarity between two web services. In this Paper, instead of the functional similarity, we focus on the nonfunctional similarity (QoS similarity). Volume 3 Issue 3 March 2015 Page 33 IPASJ International Journal of Computer Science (IIJCS) A Publisher for Research Motivation ........ Volume 3, Issue 3, March 2015 Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992 Given a web service recommender system [10] that contains M users and N items (web services), we obtain an M * N useritem matrix, in which entry r m,n denotes the QoS value (e.g., RTT values) of the web service n observed by user m. If the entry rm,n is empty, then rm,n = ф denoting that the web service n has never been invoked by user m before, like question mark shown in table 1. 4.1.1 Pearson Correlation Coefficient (PCC) Pearson correlation coefficient has been introduced for computing similarity between users or items (web services) according to the user-item value shown in Table 1, which is usually called user-item matrix. In user-based collaborative filtering, the PCC can be employed to measure the similarity between two user u and v by (1) The PCC can also be employed to measure the similarity between two web services s and q by (2) 4.1.2 Cosine-based correlation In the cosine-based approach, the similarity between users or web services can be measured by calculating the cosine of the angle between them (3) (4) where S=Su∩Sv is the set of items co-invoked by users u and v and U = Us∩ Uq is the set of users who invoked both services s and q. Equation (3) is for calculating the similarity between users, while (4) is for calculating the similarity between items. Similarity values calculated by (3) and (4) are in the interval of -1 to 1. 4.2 Similar Neighbors Selection After calculating the similarities between different users, a set of similar neighbors [11] can be identified. Similar neighbor’s selection is a very important step for making accurate recommendation, since dissimilar neighbors will lead to inaccurate missing value prediction for the active user. In practice, some users have limited similar users or even do not have any similar users. Traditional Top-K algorithms ignore this problem and still choose the top k most similar neighbors to predict the missing value. This will greatly influence prediction accuracy. Use the information from those like-minded users found in similarity measure and similar Neighbors selection and calculates a prediction for the active user. 5. WEB SERVICE RECOMMENDATION The predicted QoS values can be employed for the Web service recommendation and selection by the following ways [11]: 1) For functionally equivalent Web services, the one with best predicted QoS performance can be recommended to the active user. 2) Web service recommendation can recommend the top k best performing Web services, which may not have Volume 3 Issue 3 March 2015 Page 34 IPASJ International Journal of Computer Science (IIJCS) A Publisher for Research Motivation ........ Volume 3, Issue 3, March 2015 Web Site: http://www.ipasj.org/IIJCS/IIJCS.htm Email: [email protected] ISSN 2321-5992 equivalent functionality, to the service users to help them discover the potential Web services. 3) Web service recommendation can also recommend the top k active service users, who have good predicted QoS values on a certain Web service, to the service provider to help the provider find its potential customers. 6. CONCLUSION This paper has aimed to give the overview of web service recommendation system using collaborative filtering and gives brief explanation on its types and filtering procedure that is QoS prediction and recommendation. QoS Prediction method has combined user-based and item-based algorithm to predict the unknown QoS values of services and then recommend Web services with optimal QoS to the active user. Similarity calculation of users or services is based on historical invocation information of services or users. The development in Collaborative Filtering will improve accuracy of QoS predicted for users and will give more accurate recommendations suitable for user REFERENCES [1] R.M. Sreenath and M.P. Singh, “Agent-Based Service Selection,” J. Web Semantics, vol. 1, no. 3, pp. 261-279, 2003. [2] J. Breese et al., “Empirical Analysis of Predictive Algorithms for Collaborative Filtering,” Proc. 14th Conf. Uncertainty in Artificial Intelligence (UAI ’98), pp. 43-52, 1998. [3] K. Abhishek, S. Kulkarni, V. Kumar.N Archana, P. Kumar,”A Review on Personalized Information Recommendation System Using Collaborative”. In (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 2 (3) , 2011, 1272-1278 [4] J. Manuel Adán-Coello, C. M. Tobar, Y. Yuming,” Improving the Performance of Web Service Recommenders Using Semantic Similarity”. In JCS&T Vol. 14, No. 2, October 2014. [5] E. Rich. User modeling via stereotypes, Cognitive Science, vol. 3, no. 4, 1979. [6] B. Sarwar, G..Karypis, J. Konstan, and J.Riedl.”Item-Based Collaborative Filtering Recommendation Algorithms”. In International World Wide Web Conference, pp. 285-95 (2001) [7] W. Lo, J. Yin, S. Deng, Y. Li, and Z. Wu, “An extended matrix factorization approach for qos prediction in service selection,” in Proc. of the 9th IEEE International Conference on Services Computing (SCC), 2012, pp. 162–169. [8] L. Shao, J. Zhang, Y. Wei, J. Zhao, B. Xie, and H. Mei, “Personalized QoS prediction for web services via collaborative filtering,” in Proc. Of the IEEE International Conference on Web Services (ICWS), 2007, pp. 439–446. [9] Yali LI, Shanliang PAN, Xi HUANG,” A Kind of Web Service Recommendation Method Based on Hybrid Collaborative Filtering ”.In Journal of Computational Information Systems 8: 20 (2012) 8357,8364. [10] H. Sun, Z. Zheng, J. Chen, and M. Lyu, “Personalized Web Service Recommendation via Normal Recovery Collaborative Filtering”. In IEEE Transactions On Services Computing, Vol. 6, No. 4, October-December 2013 [11] Z. Zheng, H. Ma, M.R. Lyu, and I. King, “WSRec: A Collaborative Filtering Based Web Service Recommender System,” Proc. IEEE Seventh Int’l Conf. Web Services (ICWS ’09), pp. 437-444, 2009. Volume 3 Issue 3 March 2015 Page 35