Abstract

With the rapid development and extensive application of Web services, various approaches for Web service recommendation have been proposed in the past. However, the traditional methods only utilize the information of the user-service rating matrix but ignore the trust relations between users, so their recommendation precision is often unsatisfactory, and, furthermore, most of these methods lack the ability to distinguish the credibility of recommendation. To address the problems, we proposed a personalized service recommendation based on trust relationship. In particular, our approach takes into account user experience, interest background, recommendation effect, and evaluation tendency in the formalization of trust relationship, and moreover it can filter out useless or suspected services by exploiting trust relationships between users. To verify the proposed approach, we conducted experiments by using a real-world Web services set. The experimental results show that our proposed approach leads to a substantial increase in the precision and the credibility of service recommendations.

1. Introduction

With the rapid development of service computing, more and more Web services are published to the Internet. When a user submits a request, the system may return a large number of available Web services with the same function properties but with different nonfunction properties. It is difficult to select a high-quality Web service among these candidates. Therefore, recommending an appropriate service from a lot of Web services to fulfill a user’s requirement is a nontrivial task.

Current service recommendation methods are usually based on collaborative filtering (CF) which is a successful and important technology in the research and application of recommender systems. The basic idea of CF is to predict and recommend potential favorite items for a particular user by employing rating data collected from other users [1]. However, since these methods treat each user without distinction, although the efficiency is high, due to a lack of personalization treatment, the precision of recommendations tends to be low. And it is worth noting that most of these approaches often give results under the assumption that each user recommends each service absolutely reliably, while ignoring the credibility of service recommendation. What is more, cold-start and sparsity still seriously devalue the performances of these methods. Thus, how to resolve the typical problems to enhance the quality of recommendations is becoming a research hotspot in the study of service recommendation.

In this paper, we formalize trust relationships between users by quantitating several factors which influence recommendation results and propose a service recommendation approach to enhance the precision and the credibility of recommendations, which can realize personalized recommendation based on trust relationship. The experimental results show that the method can effectively enhance the quality of recommendation.

This paper is organized as follows. In Section 2 we will review the related service recommendation methods as well as analyze their advantages and shortcomings. The quantitative methods for trust factors and the formalization for trust relationship are both introduced in Section 3. In Section 4 we elaborate on our proposed algorithm, followed by the experimental evaluations in Section 5. The conclusion is given in Section 6.

Service recommendation has been extensively studied in recent years. Based on QoS performances of Web services, various approaches have been proposed. Zheng et al. presented a collaborative filtering approach for predicting QoS values of Web services and making Web service recommendation by taking advantages of past usage experiences of service users [2]. Aiming to address the prediction of unknown QoS property values and the evaluation of overall QoS, a QoS evaluation for Web service recommendation is designed in [3]. In order to improve the recommendation accuracy, Chen et al. proposed an approach employing the characteristic of QoS, and they also used a recommendation visualization technique to show the result [4]. A Web services recommendation model based on QoS-awareness was proposed in [5]. The model could train Support Vector Machine (SVM) to gain a service selection function based on QoS information, and it could get a service candidate set by using the SVM classification method. In [6], the authors proposed an improved time-aware collaborative filtering approach for high-quality Web service recommendation. The approach integrated time information into both similarity measurement and QoS prediction. Although these approaches are generally feasible and efficient, because the QoS values of Web services are changing from time to time in reality, the applicability of this kind of recommendation methods is not satisfactory.

Besides the above methods, other approaches such as service recommendation based on users’ location [7, 8], service reputation [9, 10], and context [11, 12] have been also proposed. Among them, with the advent of social networks, the trust-based approach to recommendation has emerged. In [13], the authors studied the trust relationships between users and built Web services using network. Based on the findings and the service network model, they then proposed a trust-based collaborative filtering algorithm to provide personalized service recommendations. Jamali and Ester explored a model-based approach for recommendation in social networks by employing matrix factorization techniques [14]. Advancing previous work, they incorporated the mechanism of trust propagation into the model. In order to counter malicious attack from recommending users, Wang et al. employed a beta trust model for the establishment of trust relationship between users [15]. Based on the combination of improved similarity calculation method and the trust degree of service recommendation behavior, a trustworthy community was set up to find neighbor. Similarly, a method for Web services recommendation based on social network trust relationship was designed in [16]. The algorithm utilizes the direct trust values and indirect trust values of services. Specifically, it recommends the services with direct trust values based on users’ experiment and could recommend services based on indirect trust values if there are no experiences between the social network nodes and services. Generally, since these methods specially generate every recommendation by utilizing trust relationship between users, they can achieve better precision than the ones based on QoS.

In brief, traditional service recommendation methods have limitation in accuracy and applicability due to the time-variability of QoS values of Web services, and, furthermore, they hardly have the ability to distinguish the credibility of recommendation. On the other hand, the methods based on trust show the potentiality to address the shortcomings. In our previous research [17, 18], a user personalized model and a network model based on users’ community relations are proposed. The user personalized model is constituted by two submodels: implicit preferences model and explicit preferences model. The implicit preferences model, based on domain ontology, can be used to explore a user’s potential interest and reflect the user’s preference continuity; the explicit preferences model, based on the user’s preference ontology, can be used to express the user’s nonfunctional requirements and reflect the real-time user’s preference. In the network model, community relations between users are decomposed into clustering relations, recommended relations, and trust relations. The formalization methods of the three relations are discussed and given, including the relevant quantification and calculation methods. Consequently, on the basis of this work, we design a personalized Web service recommendation based on trust relationship, which can effectively formalize and use the trust relationship between users, to improve the precision and credibility of recommendation and, thus, to realize personalized recommendation.

3. Formalization of Trust Relationship

We argue that the trust relationship between users should be based on user experience, and it may be characterized by the level of trust, which mainly depends on the similarity of user’s interest background, each recommendation effect, and evaluation tendencies of users. Therefore, the quantitative methods for these factors are given as follows.

3.1. User Experience

In our view, a user always recommends a Web service according to the satisfaction after invoking the service; in other words, user experience can be denoted by the evaluation value about services. Hence, for a user , his/her user experience is a matrix , which can be described as where matrix is the services set invoked by and matrix expresses the set of QoS parameters. According to the definitions by W3C [19], the QoS requirements for Web services mainly refer to the quality aspect of a Web service. These may include performance, reliability, scalability, capacity, robustness, exception handling, response time, and throughput. In practical application, these factors usually can be monitored and detected after being invoked. In this paper, denotes the typical QoS factors such as price, response time, and throughput.

In traditional recommendation systems, the target service is usually evaluated by users with an overall satisfaction rating, and it is generally believed that the users giving the same rating values on the same services are similar users with same interest. However, there is a significant problem that these approaches cannot distinguish users’ preferences of interest or evaluation tendencies. To address such problems, we set the evaluated object as a combination of several QoS parameters.

In the above matrix, denotes the rating value of service on QoS parameter by user . Particularly, can be any real number, but often ratings are integers in the range [1, 5]. In this paper, we take the same measure.

3.2. Interest Background

This paper argues that the more similar the users’ interest backgrounds, the higher the credibility of recommendation; that is, user’s interest background is a prerequisite to build a trust relationship. Therefore, discussion about the effect of users’ interest backgrounds on mutual trust relationship is actually a comparison between their interest backgrounds. For a user set , the similarities between interest backgrounds are given in a matrix :

We suggest that similarity between interest backgrounds depends on the similarity between user preference models, namely, a user’s preference model can denote his/her interest background. In a previous study [17], we have proposed a user preference model based on ontology and designed the similarity calculating method between models, so we adopt them in this paper. Specifically, for , is the similarity between them, , , and .

Figure 1 shows a sample of user preference models which are essentially subtrees from domain ontology. Since the structure of domain ontology can cover almost all standard concepts and categories of the domain, hence, for a specific user, by analyzing and refining his/her historical operations record and call records, it is feasible to reveal the interesting points which can perform as a local node of domain ontology.

As mentioned above, in this example, the user preference models in Figure 1 actually, respectively, denote the interest backgrounds of and . By utilizing the pruning strategy proposed in [17], we can generate the matching tree between the user preference models of and the user preference models of , which is shown as in Figure 2. Then, we can calculate the similarity between interest backgrounds of and based on the matching tree; namely, we can get the value of . In Figure 2, .

3.3. Recommendation Effect

It is clear that a user’s evaluation on a recommended service will impact on the degree of trust to the recommender, and the evaluation can be reflected by recommendation effect. In this paper, we use the difference between user experiences on the recommended services as the main indicator to measure the effect of each recommendation.

If user recommends a service to user and calls and evaluates , then the recommendation effect from to on is , which can be calculated as follows:where and are, respectively, the user experiences of and ; is the max rating value of service on QoS parameter in the range, as mentioned before, is stated as integer in the range [1, 5], and, thus, in this paper; is the number of QoS parameters in matrix .

From this, it can be seen that , and if , this recommendation will increase the trust of to ; else if , the trust will be maintained in previous level; otherwise, the recommendation will damage the trust.

In this paper, we suppose that a server can record every action such as recommendation, calling, and evaluation, and the server can also maintain and update all trust relationships in real time. Moreover, we also assume that every action is complete and independent.

3.4. Evaluation Tendency

Tendency evaluation will also affect the trust relationship between users. Simply put, user’s rating for different parameters will reflect their evaluation tendencies. Concrete saying: if two users give the same total scores for the same service but for some specific parameters the rating values are different, then you can believe that their evaluation tendencies are not the same. Namely, we can compare users’ evaluation tendencies based on the rating values of these specific parameters.

In the user-based CF recommendation, the neighbors of each user are usually generated by calculating the similarity between users, and Pearson Correlation Coefficient [20] and Jaccard Similarity Coefficient [21] are the two typical methods. They can be described by the following equations:where is the service number in ; is the service number in ; is the matrix of services called and evaluated by both and ; and is the service number in .

From (4) we can see that Pearson Correlation Coefficient can better take advantage of the user’s scores, but the credibility of its conclusions is restricted by the number of recommended objects. On the other hand, Jaccard Similarity Coefficient can effectively resolve the problem of the number of objects in the former but failed to use the specific rating values, and its result is rough. Therefore, the effective combination of the two approaches is a worthy anticipated program. In this paper, we design a method to calculate the similarity between evaluation tendencies based on these two approaches, which is shown as where is the similarity between ’s evaluation tendency and ’s evaluation tendency; and are the similarities calculated, respectively, by Pearson Correlation Coefficient and Jaccard Similarity Coefficient; is the max rating value which has been defined in (3).

3.5. Trust Relationship

Based on the above factors, we can formalize the trust relationship between users. First, we should quantitate it by the degree of trust. By prior analysis we can conclude that the degree of trust between users is related to their interest backgrounds and evaluation tendencies and affected by the effect of each recommendation, which can be calculated as follows:where is the degree of trust of to , it represents the strength of trust relationship, and the greater its value, the stronger the relationship; is the set of services which recommended to . According to this equation, it is clear that will dynamically change with each recommendation from to , and .

Thus, a trust relationship is essentially a set of users and degrees of trust, which can be described in where is the trust relationship of and is the set of users in whom trusts. To be specific, once recommends a service to and > 0, the trust from to will be established and then will be an element of . Figure 3 shows a trust relation sample, in which there are five users in . It should be noted that if ≤ 0, the trust from to will be removed.

4. Service Recommendation Based on Trust Relationship

After building a trust relationship, a group of trusted users can be selected out. Based on this trust relationship, the target user’s acceptances of services can be predicted and then some services can be recommended.

In this paper, the predicted acceptances of services can be calculated by where indicates the predicted acceptance of service by target user ; is the matrix of services invoked by . Since we calculate recommendation effect, evaluation tendency, and user interest background similarity based on individual ratings to each QoS parameter in this paper, the degree of trust between users such as in the above equation can effectively ensure the accuracy of prediction. Thus, in order to reduce the amount of computation, the above equation predicts only the overall rating of the target user to services on all QoS factors.

Based on the above work, a personalized service recommendation based on trust relationship (PSRTR) is proposed, and its specific steps are described in Algorithm 1.

Input: target user
Output: recommended set of services for
 () Establish the trust relationship of , namely,
 ()
 () for each user   do
 ()   if    then
 ()    for each service   do
 ()     calculate
 ()     if then
 ()      add into
 ()     end if
 ()     end for
 ()    end if
 () end for
 () rank by in descending order
 () return

In Algorithm 1, in order to enhance the relevance between recommended services and target user and reduce invalid calculations, we set two thresholds: and ; by utilizing them, we can also limit the number of services in .

In traditional methods, it is natural to recommend highly evaluated services with an integrated predicted acceptance value over all users who evaluated a service. However, these highly evaluated services often cannot meet the target user’s demand. Hence, to improve the precision of recommendation, the proposed method uses only individual predicted value based on trust relationship. It can not only enhance the pertinence of recommendation, but also ensure the reliability of recommendation.

It also can be seen that the final recommended services all have been called by the trusted neighbors of target user, and they are well evaluated in these neighbors’ user experiences. Based on the trust relationship, the algorithm can avoid useless or suspected services, to improve the precision and credibility of recommendation.

5. Experiment and Analysis

In order to verify the performance of the method proposed in this paper, we performed the following simulation experiments in this section. Under the same experimental conditions, we compared it with several representative methods and analyzed the differences.

5.1. Experimental Setup

In this paper, we use a real-world QoS dataset from WS-DREAM [22, 23] which can monitor 339 Web services by using 5825 distributed computer nodes located all over the world. The dataset contains more than 1,900,000 invoking records. Table 1 shows the main characteristics of it.

For comparison, we set the response time and throughput for the two QoS parameters involved in the evaluation. Based on this dataset, we adopt the method proposed in [24] to generate users’ ratings for each Web service. Through utilizing these ratings, we get each user’s preference model and then calculate the similarities between interest backgrounds by comparing the implicit preference models of user preference models based on the method presented in our previous study [17].

In the simulation, the user will be divided into two groups, namely, the training and test sets, of which 80% of users are assigned into the training set and the remaining 20% into the test set, and the users of the training set recommend services to the users of the test set according to the proposed method PSRTR.

The popular evaluation metric in recommendation is Mean Absolute Error (MAE) which can be defined as follows:where is the actual overall evaluation value about service by user ; is the overall user experience of about service , namely, the predicted value, and these two factors can be generated based on the user experiences of and by the method in [24]; is the number of recommended services; and have been defined in (3). Obviously, the smaller the value of MAE is, the higher the accuracy of the results recommended is.

In order to estimate the fitness of recommendation, namely, to verify how correctly the proposed method can predict the target user’s QoS evaluation, we define Mean Subitem Absolute Error (MSAE) as another evaluation metric in our experiments, which can be described as follows:where the definitions of , and are same as the ones mentioned before. Evidently the smaller the value of MSAE is, the higher the fitness of the recommendation is.

To evaluate the performance of our method we consider two comparison partners: Personalized QoS Prediction (PQP) [25] and Collaborative Filtering Recommendation Based on Double Neighbor Choosing (CF-DNC) [26]. PQP makes similarity mining and predicts QoS for Web services from consumers’ experiences. The method is based on the assumption that the consumers, who have similar historical experiences on some services, would have similar experiences on other services. CF-DNC chooses the preferences similar users of target user dynamically on the basis of the computational result of user similarity and measures the trust relationship between users according to the ratings of similar users. These two approaches are partly similar to our proposed method on the principles of algorithms, so we selected them as the comparison partners in our experiments.

5.2. Results and Analysis

In the experiments, we set , , and we first select 50 users from WS-DREAM randomly and then increase users in steps of 30 until the number of total users reaches 260, as mentioned earlier; 80% of them are included in the training set and the rest in the test set. Along with the increase of users, the changes about MAE and MSAE of these three methods are, respectively, shown in Figures 4 and 5.

As can be seen from Figure 4, the precision of PSRTR is far superior to the other two, which shows that once trust relationship is introduced into the recommendation process, we can improve the quality of recommendation result. Specifically, compared with the traditional collaborative filtering recommendation algorithm PQP, the precision of the result of PSRTR is improved by 33.61% on average, and compared with the neighbor choosing algorithm CF-DNC, the precision is increased by 16.82% on average. Since the recommenders and the target users are highly similar in the interest backgrounds and evaluation tendencies, the results of PSRTR are more consistent with the preferences of the target users. Therefore, PSRTR can achieve the most satisfactory precision among these three algorithms.

Figure 5 shows the comparison result of the fitness of recommendation. It is clear that the fitness of PSRTR is also much better than the other two. In particular, the fitness of PSRTR is always the best from beginning to end. Compared with PQP, the MSAE of the result of PSRTR is improved by 37.93% on average, and compared with CF-DNC, the MSAE of the result of PSRTR is increased by 28.67% on average. Thus, it can be concluded that PSRTR can predict the target user’s QoS evaluation most correctly among these three algorithms.

In order to validate the credibility of the above three methods, in this article, by gradually increasing the number of suspect users until 5% of the total users in each experiment, to verify their ability to withstand malicious recommendations, the experimental results are shown in Figure 6.

In Figure 6, we can see that when the number of suspect users in the system gradually increased, due to the lack of defense mechanism, the service recommendation precision of PQP method decreased rapidly; in contrast, the CF-DNC method considers the issue of trust and has a certain antiattack capability; its precision declined relatively slowly. However, since the trust in the CF-DNC method is only based on the similarity of interests, as compared with the PSRTR method, its accuracy of similar users judging is not high, so its precision will be deteriorated with the increase of suspect users. On the contrary, the trust relationship in the PSRTR is built by a number of factors; once a trusted user generates malicious recommendation, the level of the trust of target user to him will be weakened, and the overall precision will not change much under the attacking from a small number of suspect users. Thus, it can be concluded that the PSRTR can well resist malicious recommendation, so its result has high credibility.

6. Conclusion

In this paper, we proposed a novel method to provide personalized Web service recommendations. Different from previous work, our algorithm constructs the trust relationship based on user experience and characterizes it by the level of trust. By quantitating the factors such as user’s interest background, recommendation effect, and evaluation tendency of user, we realized the formalization of trust relationship. Based on trust relationship, we proposed a personalized service recommendation method named PSRTR. Experimental results show that our approach significantly improves the precision and credibility of recommendation compared with the existing methods. Future improvements that need to be addressed are how to further improve the algorithm performance, as well as how to consider other qualitative factors for trust relationship to further enhance the credibility of recommendation.

Competing Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Acknowledgments

This work is supported by the Natural Science Foundation of Hubei Province, China, under Grant no. 2016CKB714.