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