Correction: Decision Support for Personalized Cloud Service Selection through Multi-Attribute Trustworthiness Evaluation

Facing a customer market with rising demands for cloud service dependability and security, trustworthiness evaluation techniques are becoming essential to cloud service selection. But these methods are out of the reach to most customers as they require considerable expertise. Additionally, since the cloud service evaluation is often a costly and time-consuming process, it is not practical to measure trustworthy attributes of all candidates for each customer. Many existing models cannot easily deal with cloud services which have very few historical records. In this paper, we propose a novel service selection approach in which the missing value prediction and the multi-attribute trustworthiness evaluation are commonly taken into account. By simply collecting limited historical records, the current approach is able to support the personalized trustworthy service selection. The experimental results also show that our approach performs much better than other competing ones with respect to the customer preference and expectation in trustworthiness assessment. Copyright: ß 2014 Ding et al. This is an open-access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited. Data Availability: The authors confirm that all data underlying the findings are fully available without restriction. All data are included within the manuscript. These funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.


Introduction
Cloud computing has become the driver for innovation in the recent years, from startups (e.g. Dropbox, Instagram) to established enterprises (Samsung). They are all using cloud computing to better serve their customers around the world [1]. Cloud service is also gaining wide acceptance and becoming popular to individuals as it reduces hardware and licensing costs, and it is scalable and allows users to work from any computer anywhere.
Several leading IT enterprises including Google, IBM, Microsoft, and Amazon have started to offer cloud services to their customers [2][3][4]. While many small and medium-sized enterprises (SMEs) and individual customers prefer to apply cloud services to build their business system or personal applications, they are often facing two major challenges at the selection time: (1) multiple cloud services are often available by different venders providing similar functional properties (i.e., ''functionally-equivalent''). Customers usually lack appropriate, qualified, sufficient information and benchmarks to assess cloud services with regard to individual preferences and market dynamics [5]; (2) although cloud service vendors are struggling to improve service quality and performance, cloud computing are not necessarily trustworthyunhandled exceptions and crashes may cause cloud service to deviate dramatically from the expectation [6,7]. Therefore, there is an increasing demand to help the non-expert customers with the selection of trustworthy cloud service.
The trustworthiness of cloud service affects customers' perception towards service quality, which has significant bearing on customer satisfaction and royalty. The trustworthy attributes include reliability, scalability, availability, safety, security, etc [8][9][10]. Designing a general and comprehensive analytical model for trustworthiness evaluation is challenging, as the model needs the assessor to achieve, in reasonable time, useful results to determine the best service option. Due to their commercial value (similar to online recommendation system), several evaluation models [11][12][13][14] have been proposed by academia and industry lately. These models focus on quantitative analysis and evaluate trustworthiness through a collectively exhaustive dataset.
Except for some specific cases, the assessment dataset remains very sparse due to the costly and time-consuming nature of cloud service invocation. Intuitively, without sufficient data, fair review of cloud services cannot be achieved by existing evaluation methods [9,15]. Fortunately, cloud vendors can collect historical records (QoS values, customer ratings, etc) from different cloud applications in cloud computing environment. With the vast amount of collaborative filtering (CF) technologies available in the field of online recommendation system, we believe there is a strong theoretical foundation to derive a generic trustworthiness model to support the evaluation of cloud service.
There have been some attempts to improve the accuracy of cloud service assessment by a CF process. However, very little attention is paid to the trustworthiness of cloud service, and no interest is given to the case when significant attribute values are missing. The lack of general and formal methodology can be attributed to the large process gap between the cloud service recommenders and trustworthiness researchers. To deal with this challenge, we propose a new CF approach to make use of hidden information (i.e. experience usability, value distribution) to measure the similarity between different services. Moreover, to support personalized selection of cloud services, we also provide a natural treatment for multi-attribute aggregation taking into account customer's preference and expectation.

Background
In the current market, multiple cloud services of similar functions are often available for specific domains. For example, in cloud storage service (e.g. data service, online file system, online backup plan), over 100 functionally-equivalent cloud services are offered by vendors. Some typical examples can be found in Table 1. Given the lack of cloud computing experience of nonexpert customers, it is tedious to manually select an appropriate candidate from a set of functionally-equivalent services. Therefore, cloud service evaluation through quality analysis has gained much attraction among service-oriented computing and cloud computing communities over the past two decades.
Given the intricate interactions among QoS (Quality of Service) attributes, customer preferences and market dynamics that jointly influence the perceived quality of cloud services, developing a market-relevant analytical model is crucial to cloud service selection [16][17][18]. Due to their commercial value and the associated research challenges, many researchers and practitioners have studied the topics. Two types of service selection models are widely examined: evaluation-focused service selection models and prediction-focused service selection models.
By achieving market-relevant evaluations, customers can identify risks and benefits of each cloud service application and choose the best for adoption. The most employed evaluation models include: AHP-based cloud service ranking [19], reputation-aware service rating [20], trust-aware service selection [21], brokerage-based selection [22], SLA-based cloud trustworthiness estimation [11], trustworthy service selection [23]. Although these techniques can accurately and exhaustively estimate service quality, their implementation is time-consuming and costly.
Instead of real-world cloud service invocations, the predictionfocused service selection models can produce QoS values or service ranking using collaborative filtering (CF). The CF approaches for cloud service selection can be categorized as: item-based approaches [24], customer-based approaches [25], their fusion approaches [26], model-based approaches [27], and ranking-oriented approaches [28], where the first three categories are rating-oriented approaches. These approaches help assessors predict the missing attribute values by exploiting neighbors' usage experiences. Several collaborative filtering approaches for cloud service selection have been studied, but they did not consider customer preference and expectation in trustworthiness assessment.
In the prediction process, similar neighbors (customers or services) are identified to generate useful collaborative information. Popular choices for similarity estimation include Pearson correlation coefficient (PCC) [29] and vector similarity (VS) [30]. Since these measures only consider the numerical relationship between different ratings, they remain imprecise and confusing for estimating the neighbor similarity to support missing value prediction. Concerned that PCC may overestimate the similarities of negative services, Zheng et al. [26] propose a significance weight and modify PCC to improve the accuracy of similarity computation in service recommendation. However, the significance weight affects the similarity computation of positive services with more usage experiences. To address this problem, Ding et al. [31] define a convex function (usage structure factor) to reflect the usability of customer experience. While a great number of researchers have focused on the trustaware service selection and recommendation, little attention has been devoted to the role of customer preference and expectation in multi-attribute trustworthiness evaluation [32]. In addition, large quantities of works offer some valuable clues to discern between different services, the significances arising from value distribution is seldom considered. Thus, we will here combine evaluationfocused and prediction-focused approaches to propose a novel trustworthiness evaluation method which will fully utilize the information of similar services and customer's experience, and take into account both the missing attribute value prediction and the multi-attribute trustworthiness evaluation at the same time.

Methods and Materials
Based on the fact that the size and rate of growth in customers outweigh the expansion of delivered services in the cloud computing market, we employ item-based CF approach rather than the user-based or their fusion approach to produce the missing attribute values in trustworthiness evaluation. Motivated by the observation that experience usability and value distribution could provide valuable insight and distinctive information in the CF process, we create a new similarity measure for enhancing the prediction performance.

Pearson Correlation Coefficient
To make an accurate prediction, we first estimate the similarity between different cloud services. Given a service selection problem consisting of M customers and N services, the customer-service matrix for missing value prediction is denoted as where the entry q m,n denotes a historical record (QoS value or customer rating) of cloud service cs n made by customer u m , ''q m,n = null'' states that u m didn't invoke cs n yet. Pearson Correlation Coefficient (PCC). [29] Taking use of numerical distance to estimate the correlation between different services, PCC has been successfully adopted for recommendation system evaluations. Let cs n and cs v be two services, U n,y be the subset of customers who have invoked both cs n and cs v , then PCC is applied to calculate the similarity between cs n and cs v by where Sim(cs n , cs v ) is in the interval of [21,1], q q n and q q y stand for the average values of cs n and cs v made by different customers. However, as noted in Ref. [26], PCC always overestimate the similarities of negative services, which are actually not similar but happen to have similar usage experience made by few customers. Table 2 shows a simple customer-service matrix which contains six customers (u 1 to u 6 ) and ten cloud services (cs 1 to cs 10 ). When utilizing Eq. (2), we calculate the PCC values between the services, and get the following relation: Sim(cs 1 , cs 3 ).Sim(cs 1 , cs 4 ).Sim(cs 1 , cs 2 ), which indicates cs 3 is more similar to cs 1 than cs 2 and cs 4 . It is clearly contrary to the reality due to the limited usage experience. Therefore, it is necessary to reinforce the similarity information in the CF process.

Significance estimation
It seems logical to believe that some cloud services in customerservice matrix may have high significances in making recommendations [33,34]. For instance, a cloud service, which has more useful historical records, may be regarded as more important compared with a negative service. PCC is only related to the numerical distance between different services, but it has nothing to do with the statistical features of historical records. For this case, we introduce two types of significances arising from the experience usability and value distribution of historical records, respectively.
Estimating the experience usability. To determine the significance of neighbors in a CF process, one often assumes a linear relationship between usage experiences and neighbor significances [26,31]. One difference of our work from traditional CF approaches is that we apply a distance measurement method to estimate the experience usability in customer-service matrix. During the distance measurement, Jaccard's coefficient [35] is frequently employed to estimate the discrimination of asymmetric information on binary variables. Before integrating Jaccard's coefficient into our similarity measure, we map the original customer-service matrix into a rectangular binary matrix as follows: where the entry b m,n = 1 denotes the customer u m has invoked the service cs n previously, whereas b m,n = 0 denotes that u m didn't invoke cs n . Let |U n | be the number of customers who has invoked cs n before, and |U n,y | be the number of customers who invoked both cs n and cs v . We use the Jaccard's coefficient J n,y to reflect the rise of significance due to the experience usability, which can be expressed mathematically as: where J n,y is in the interval of [0, 1], and a larger J n,y value indicates that the historical records made over cs v is more useful in the CF process. J n,y = J y,n holds for all services, which is consistent with the intuition that the similarity between cs v and cs n is only related to the subset of historical records made by the customers who have invoked both cs n and cs v . Based on the customer-service matrix in Table 2, we get the significances arising from the experience usability for each service, as shown in Table 3. The values shown in grey are calculated for the negative service cs 3 . As observed from Table 2, cs 3 has only been invoked twice. Consequently, his experience usability values are significantly lower than other services (e.g. J 1,3 ,,J 1,2 ). We can infer that integrating J n,y into similarity measure will notably reduce the influence of negative service. It is worth noting that neither PCC nor J n,y can distinguish between cs 2 and cs 4 , since they do not have sufficient power to detect the crucial difference in value distributions.
Estimating the value distribution. The neighbors which have the same PCC similarity may have different value distributions. It is necessary to detect more hidden information in the customer-service matrix for significance estimation. For this case, we propose a method to discriminate neighbors' significances arising from their unique value distributions. In practice, the customer-service matrix is very sparse due to limited usage experiences. Therefore, we will ignore the historical records made by the customer u, where u 6 [ U n,y . Let D n = {q m,n | u m [ U n,y } and D y = {q m,y | u m [ U n,y } be the historical records in similarity computation made over cs n and cs v , and |D y | be the cardinality of D n , and dom(D n ) be the domain of D n subject to the following constraints: Following dom(D n ), the dataset D y can be grouped into three categories: Since D y is a finite discrete dataset, the probability of each category can be computed as: where , and DD [n y DzDD~n y DzDD ]n y D~DD y D. From the information entropy aspect, we use the following expression to detect the difference between the value distributions of cs n and cs y : where H n,y~X p k y =0 {p k y log 2 (p k y ) denotes the information entropy of D y , and H max denotes the maximal entropy in customerservice matrix, respectively. VD n,y is a linear function defined in where VD n,y attains its unique global minimum VD MIN n,y~0 if p 1 y~p 2 y~p 3 y~1 =3; otherwise it attains global maximum VD MAX n,y~1 when Ap k y~1 . We can thus calculate the significances VD n,y arising from the value distribution using Eq.(9) over the customer-service matrix in  Table 2. Table 4 shows the values of these significances. The values shown in grey are calculated for the cloud services cs 2 and cs 4 . Similarity measurement adopting significance. After we have defined the two types of significance for each service, we can then create the similarity measure, Sim s (cs n , cs v ), which takes into account the significance previously defined. To estimate the significance as accurately as possible, we identify the significance of cs v with respect to cs n as a linear combination of J n,y and VD n,y , such that: where a is defined to determine how much our significance relies on experience usability and value distribution. If a = 0, we only extract the experience usability for conducting significance estimation, and if a = 1, we consider only the value distribution. Hence, the similarity measure can be written in standard form: Sim s (cs n ,cs y )~SIG n,y |Sim(cs n ,cs y ) where SIG n,y denotes the significance of cs v with respect to cs n , and Sim(cs n , cs v ) denotes the PCC value between cs n and cs v . Different from existing similarity measures, our approach employs not only numerical distance but also usage experience as well as value distribution to determine the similarity between different services. With the definition of similarity measure defined in Eq. (11), for every cloud service in customer-service matrix, we rank their neighbors and select the top-k most similar services to make missing value prediction. Following the top-k similar service defined in [26], we get CS k n~f cs y Dcs y [CS n , Sim S (cs n ,cs y )w0,y=ng, ð12Þ where CS n denotes the neighbor set of cs n in customer-service matrix, and Sim S (cs n , cs v ) denotes the similarity between cs n and cs v . For the customer-service matrix in Table 2, we set a to 0.8 to obtain the similarity measures between different services (see Table 5). The top 3 neighbors of each service are marked in grey areas as seen in each column. Missing value prediction. With the exponential growth of cloud service on the Internet, service recommendation techniques like QoS-aware CF approaches have become increasingly important and popular [37]. Based on our similarity measure, we propose an enhanced item-based CF approach (named as JV-PCC) to reinforce the prediction performance. To predict the missing valueq q m,n of service cs n for customer u m , we first determine the objective weight of each similar neighbor:  where cs v [CS k n denotes a similar neighbor of cs n , while Sim S (cs n , cs v ) denotes the similarity between cs n and cs v . The objective weights define the relative importance of each similar neighbor in the CF process. Next, we attain a prediction by a classic aggregation function:q q m,n~X qm,y=null q m,y |v n,y where q m,y denotes the historical record of cs y made by customer u m . In practice, local runtime environment (e.g. network bandwidth) and customer's rating style may significantly influence the historical records over delivered services. However, the above function deems inappropriate as it is calculated through only one customer. To address this problem, JV-PCC predicts the missing attribute value by the following equation: where v n,y denotes the objective weight of cs y with respect to cs n , while q { y and q z y denote the minimum and maximum values of service cs y , respectively. Table 6 displays the values estimated for the missing records in Table 2. In the experimental examples, both customer-based and service-based neighborhood information were adopted for approximating the missing value.

Trustworthiness-aware service selection
Several models, focusing on the quantitative measurement of service trustworthiness, have been proposed in Refs. [9,18,38]. However, different customers have different preference and expectation in service selection. A thorough understanding into these factors is essential to ensure effective evaluation finding. Here, we introduce a cloud service evaluation model, which helps aggregate trustworthy attributes by considering customer's preference and expectation.
Attribute utility determination. To make use of observed or estimated values, we need to know that different attributes may have inconsistent dimensions. The results in [32] show that utility can be used to identify an entity's trustworthiness. Therefore, we first derive the utility from the customer-service matrix so as to ensure their values are in the range of [0, 1]. Trustworthy attributes are often divided into quantitative and qualitative attributes, of which the former are objective measures (e.g. QoS value), and the latter are subjective customer ratings. In addition, quantitative trustworthy attributes can be grouped into two classes: ''benefit'' and ''cost''. For ''benefit'' (''cost'') attribute, e.g. throughput (response-time), the higher (lower) its value is, the greater the possibility that a customer would choose it becomes. In our model, qualitative attributes are also considered as ''benefit'' attributes. Let q m,n be the attribute value of cs n , and the attribute utility (risk-neutral) H m,n has the following form: where q { m and q z m denote the minimum and maximum attribute values for customer u m , and they are subject to the following constraints: The attribute utility H m,n is in the range of [0, 1], where a larger H m,n indicates that customer u m is more satisfied with the service cs n . Customer satisfaction estimation. From influential theory in marketing science, we consider that the perception of cloud service trustworthiness is a customer satisfaction function, which includes customer preference and expectation attributes. In general, customer satisfaction function should exhibit two characteristics: (1) given the same expectation, a trustworthy cloud service is weighed much more heavily than an untrustworthy service. This effect is reflected in the derivation of attribute utility; (2) customer satisfaction slightly increases when attribute utility surpasses a certain value (expectation), and significantly decreases when attribute utility falls below expectation [39]. We formalize this interaction as a piecewise linear function: where C m,n is constrained to 0#C m,n #1; the parameter d regulates the impact of customer preference on perceived trustworthiness; and H exp denotes the customer expectation with regard to selecting trustworthy cloud service. As shown in Fig. 1, C m,n is continuous (i.e. the piecewise function converges at H m,n = H exp ). The severity and rate of satisfaction (controlled by H exp and d, respectively) reflect different customer's tolerance to untrustworthy candidates. Let H exp = 0.7, and d = 2. Table 7 shows the customer satisfaction for each attribute value (historical record or predicted value), which corresponds to the original customer-service matrix in Table 2 and the predicted missing values given in Table 6.
Trustworthy attribute aggregation. After estimating customer satisfaction and ensuring the value of C m,n in the interval of [0, 1], the degree of trustworthiness (alias ''trust value'' [40]) of each cloud service in customer-service matrix can be achieved by aggregating trustworthy attributes. Let C 1 m,n ::C J m,n be the customer satisfaction on a set of specified attributes A 1 ..A J , then the trust value of cs n is computed as: where v j denotes the weight of trustworthy attribute A j , The trust value gives the comprehensive perception of cloud service trustworthiness, while the weights modify this trust value based on the relative importance of trustworthy attributes. Actually, a set of specified trustworthy attributes can be easily weighted by applying existing technologies such as those discussed in [32]. We omit the details for brevity.
Decision support for personalized service selection. Multi-attribute trustworthiness evaluation is an important step for making accurate service selection. We suppose that u m is the active customer, who requires trustworthy cloud service. While the evaluation results have arrived, a set of appropriate service candidates can be identified for u m by: CS m~f cs n Dtrust n we m , n~1,:::,Ng, ð20Þ where trust n denotes the trust value of cs n , e m denotes the selection threshold determined by u m . We aim to remedy the shortcomings of evaluation-focused selection methods by avoiding the costly and time-consuming real-world service invocations. Note that when CS m~1 the service selection for the active customer u m needs to be degrade by decreasing the parameter e m . Let e 1~: ::~e 6~0 :85, a set of trustworthy cloud services can be recommended for u 1 …u 6 as CS 1~f cs 1 ,cs 4 ,cs 5 g, CS 2~f cs 8 ,cs 9 g, CS 3~f cs 1 ,cs 9 ,cs 10 g, CS 4~f cs 2 ,cs 4 ,cs 5 ,cs 6 g, CS 5~f cs 7 g, CS 6~f cs 7 ,cs 8 where the customer satisfaction for each attribute value is presented in Table 7. In practice, our approach makes it possible to deal with various types of trustworthiness-aware cloud service selections by combing the evaluation-focused and the predictionfocused methods. Note that if trustworthiness is not the only issue that affects customer's decision making, it is necessary to extend the selection process of our approach, e.g., price-oriented service filtering, into other attributes or indexes.

Results
In this section, abundance of experiments are conducted to show how to recommend trustworthy cloud service in the context  of large sparse assessment dataset, and to verify the efficiency of our CF approach.

Prototype implementation and results
To demonstrate the effectiveness of the proposed service selection approach, we use Microsoft C# .NET to develop a prototype system. Based on literature [8,41,42], we find Availability and Performance are two commonly used trustworthy attributes. We utilize them to conduct trustworthiness-aware service selection, by including two types of historical records: response-time and throughput. Their evaluation styles and weights are summarized as Table 8.
We employ an open QoS research dataset [43] to simulate the historical records of Performance and Availability in cloud service market. The QoS values for response-time and throughput were collected from 339 users over 5825 web services in a real-world environment. Since it is impractical to discover and distinguish all functionally-equivalent services at the selection time, we randomly select 100 services' QoS records, and construct two 3396100 customer-service matrices for our experiment. Figure 2 shows the value distribution of response-time and throughput in user-service matrix. We cannot simply utilize these QoS records to analyze and rank the cloud services since these customer-service matrices are sparse assessment datasets, and cannot accurately interpret the trustworthiness status of all services. Suppose u 339 is the active customer. The historical records made by u 339 contains 9 and 7 missing values (on response-time and throughput, respectively) which will potentially affect his cloud service selection decision. Therefore, the proposed CF approach is employed to predict the missing attribute values. At this simulation experiment, the similarity parameter a is set to 0.8 and remains so until the trust values for u 339 are reported. Once the prototype system obtains the customer satisfactions by utilizing Eqs.(12)- (14), where the parameter d = 2 and the expectation H exp = 0.7, the active customer will receive the trust values of each service. We vary the selection parameter e 339 from 0 to 1 in increment of 0.1, and count the cloud services whose trust values surpass e 339 (the number of recommended services for u 339 , i.e. |CS 339 |). The experiment results are shown in Figure 3. Although we only study two trustworthy attributes in the   experiment, the proposed approach can be easily extended to other trustworthiness-aware service selection problems. When selecting the optimal trustworthy services from a set of functionally-equivalent candidates, the entry data of our approach are the corresponding historical records (i.e., QoS values or customer ratings), the active customer's preference and expectation towards service trustworthiness, and the selection parameter.

Impact of d and T exp
Different customers have different preference and expectation in trustworthy service selections. Instead of risk-neutral attribute utility, we use the customer satisfaction C m,n to identify the perceived trustworthiness of delivered services. To evaluate the impact of customer's preference and expectation, we have conduct additional experiments with variable parameters d and H exp . In these experiments, we first vary d from 2 to 6 in increment of 2, where the expectation H exp is fixed at 0.7 first. Later, we set d to 2, and vary H exp from 0.7 to 0.9 in increment of 0.1. Figure 4 (a) shows the experimental results of preference parameter d and Figure 4 (b) shows the experimental results of expectation H exp . The parameters d and H exp jointly determine how to derive the customer satisfaction from attribute utility to approximate the active customer's attitude towards profit and risk.

Performance comparison of CF approaches
In this work, we present an enhanced item-based CF approach (i.e., JV-PCC) to predict the missing attribute values for cloud service selection. Our approach engages the significances ( J n,y and VD n,y ) to improve the accuracy of similarity estimation. To study the prediction performance, we compare JV-PCC with two existing item-based approaches: Item-based CF adopting PCC (IPCC) [44], and Extended PCC approach (f-PCC) [31].
Evaluation metric. We use Mean Absolute Error (MAE) and Root Mean Square Error (RMSE) to evaluate the prediction  whereq q m,n and q m,n are the predicted QoS value and the actual value, respectively. Experimental setup and results. The size of top-k similar service set plays an important role in CF approach, which determines how many neighbors' historical records are employed to generate predictions. To study the impact of neighborhood size k, we separate the customer-service matrices into two parts: training set (80% historical records in the matrix) and test set (the remaining 20% records). We set the density to 50%, the significance parameter a to 0.7, and vary k from 5 to 30 in increment of 5. Figure 5 shows the experimental results for responsetime and throughput. Under the same simulation condition, JV-PCC and f-PCC significantly outperform IPCC. The observations also suggest that better accuracy can be achieved by our model when more historical records are available in the service selection study.

Conclusions
Trustworthiness-aware service selection is a critical issue among cloud computing and service-oriented architecture communities.
In this paper, we propose a personalized service selection approach which takes into account the missing value prediction and the multi-attribute evaluation requirements. We find that the proposed approach can tackle various types of trustworthinessaware selection problems in cloud service market. Meanwhile, the experimental results demonstrate that the proposed CF approach significantly improves the prediction performance as compared with other competing item-based approaches.
Employing untrustworthy cloud service will expose users to high-risk IT structure, resulting in a host of intra-organizational hazards that detriment the organization and disrupt the normal operations [45]. In the present work, we can only look into the static approach for trustworthy service selection, and we will investigate more types of trustworthiness evaluation models (e.g. probability model, dynamic model, etc) in the future since different cloud service applications may have different selection criteria and data structures.