1 Introduction

Web services are software components offer a service from one electronic device to another electronic device to communicates via World Wide Web. The technology development for data communication through internet, intranet.

And electronic commerce systems forcing users to work with enormous amount of data which is very difficult to handle effectively.

Global Ranking Method (GRM) was used for simple recommendation of products or services [1, 2]. It sorted all the objects in descending order and finally recommend services with the highest degree but its major defect is insufficient accuracy and personalized recommendation exclusion. Required data is extracted using some information filtering technologies [3, 4]. Some of the personal recommendation algorithms like Collaborative Filtering (CF), Content Based Filtering (CBF), Spectral Analysis, Principle Component analysis, and Diffusion approach have been used still further development is needed to conceive adequate recommendations [5,6,7]. Among these, Content Based Filtering (CBF) and Collaborative filtering (CF) are the most important methods of Information filtering [8]. The collaborative filtering approach functions based on users’ history, i.e., past behavior used to predict the services according to their interest [9]. CBF is also referred as cognitive filtering recommends services based on a comparison between the content of the Services and a user profile [10]. QoS plays a major role in web service invocation because features like reliability, throughput, and response time of web service are considered for the selection of a qualitative web service.

Providing an effective web service for a requester is a critical task for a service provider because the service providers may deliver improper QoS either moderately or entirely at runtime that create problems for the user [11]. Because of partial dependency with testing results in a particular period of time or a particular geographic area, the service provider may either be unauthentic or misleading to the requester. Imprecise QoS information of untrustworthy [12, 13]. Web services which can only be determined by domain experts as it is completely elusive to the naïve requester [14]. Hence, QoS based web service selection for untrustworthy web services is a prerequisite for QoS management process [15]. The main idea is to construct trustworthy Web service dataset from the public dataset [16]. Intelligent QoS based model is used to acquire intelligence legitimate service selection via CF (Collaborative Filtering) with artificial neural networks.

This proposed model is developed using the following three phases.

  • The first phase suggests proper QoS web service with users’ personalized interest, location preference and service QoS factors such as response time and throughput. The classification quality is enhanced using Term Frequency (TF) and Inverse Document Frequency (IDF) algorithms.

  • Untrustworthy web services are ascertained using this model and it exhibits tremendous stable performance even while malicious feedback is being fed dynamically as input. This is achieved via the calculation of Privacy, Demand, Satisfaction and Retention Level Assessment which in turn used to avoid noise through classification.

  • To enhance the prediction accuracy and trustworthiness of the service identification, Neuro Fuzzy Logic is used in third phase to attain most favourable weight for services.

2 Collaborative filtering

2.1 Web service selection

The appropriate selections of algorithms are important for providing qualitative recommendation. Intelligent Recommendation system adopts Domain based collaborative filtering with Privacy, Demand, Satisfaction and Retention Level assessment to provide proper recommendations based on the user preferences response time, throughput, etc [17]. It is essential to learn from user searches and have intelligence enough to recommend proper qualitative services. The system has to create users content-based profile with weighted vector of web service features [18]. Users’ each feature is assigned with appropriate weight and it is calculated from individually rated content vectors using Artificial Neural Networks to assess the probability that the user is going to like the web service [19]. Using a like (higher weight) or dislike (lower weight) button, direct feedback from a user is ascertained based on the influence of certain attributes (using Rocchio classification or other similar techniques). Personalized recommendation model normally designed based on the proper association of user clustering technology and Web Service clustering technology. The users are clustered based on users ratings and Domain name which is extracted from the WSDL address in web services data set. Each users’ cluster has a cluster center [20]. The nearest neighbour of the target user is predicted based on the similarity between target user, cluster centers, and the Domain. In order to get accurate prediction, the users are clustered not only with their ratings and also with their Domain, which helps to make precise predictions [21]. The Pearson Correlation Coefficient (PCC) has been applied in many recommendation systems to compute the similarity between both users and Web services. Ratings on a scale of 1 to k is directly mapped to k classes, or alternatively the numeric rating is used to weight the training example in a probabilistic binary classification setting [22]. The k-nearest neighbour, decision trees and Artificial neural networks are some of other classification algorithms which are mainly used for content-based recommendation.

2.2 Intelligent authentic web service identification

In web services selection trust and reputation are important for proper web services selection. The trustworthy agents were rationalized Hang et al. [20] by utilizing the beta-mixture distribution to model the quality of Agent based services. That model was restricted to only one QoS metric at each time during the interaction among agents. To work with multiple QoS metrics, Nguyen et al. [23] proposed a Bayesian probability trust and reputation model to calculate web services trustworthiness with discrete combinations of QoS metrics. That model had inadequate correlation information among the different QoS metrics led to over-estimated confidence in the trustworthy services. This issue was addressed by multi-nominal distribution model that handled adequate correlated QoS metrics by breaking out, over or under estimating confidence nature of obtained trustworthy services. An intelligent QoS web services identification model developed in this research ascertain the proper web services through the use of correlation Information among different QoS metrics. Multi-layer neural network is used to analyze the samples and validate the untrustworthy web services using Neuro Fuzzy Logic. Intelligent decision of web service selection is obtained through combination of Artificial Neural Network (ANN) and Fuzzy Logic (FL). Network parameters including learning rate, momentum of the network and the number of Membership Functions (MF) for each input are properly used for authentic web service identification.

2.3 Adequate QoS management

Sharing eminent QoS based web services over the Internet is a challenging task due to dynamic and unpredictable nature. Web services with malicious QoS originate transactional applications that may suffer with performance degradation.

The Majority of QoS management methods were designed to observe the delivered and real time QoS information deviation. These approaches are useful only to calculate trustworthiness of web services based on runtime-diagnosis or post-processing, not with the previous trustworthiness identification, which leads to unreliable results because of the lack of correlation’s reference among the quality metrics properly. The proposed intelligent QoS web service dataset learn the characteristics of trustworthy web services through first phase with CF, second phase with Privacy, Demand, Satisfaction and Retention level assessment and Neuro Fuzzy Logic Model to enhance the accuracy of web service identification.

3 Web service recommendation system using three phase artificial neural networks

Three-phase artificial neural network (ANN) model is designed as shown in Fig. 1 to attain more accurate classification and identification. The first phase assess proper QoS web service to the requester based on users personalized interest, Domain preference and service QoS factors.

Fig. 1
figure 1

Intelligent neuro fuzzy collaborative filtering system architecture

Term Frequency (TF) and Inverse Document Frequency (IDF) algorithms are used to increase the classification quality. The Second Phase incorporates Privacy, Demand, Satisfaction and Retention level assessment for trustworthy web service identification. The third phase is framed using NFL to improve the prediction accuracy.

3.1 First-phase of neuro fuzzy collaborative filtering system

The proposed three-phase artificial neural network model initiates the web services classification based on the user preference and Domain. In this first phase data are normalized from the given 5825 real world dataset (WS-DREAM) based on client ID, Web Service ID (WSID), Response time, Data size, HTTP code and HTTP message. The user domain network and country are identified based on the given IP address to support efficient user-querying. The similarity of users and services is found through Term Frequency (TF) and Inverse Document Frequency (IDF).

3.1.1 Term frequency (TF) and inverse document frequency (IDF)

TF is used to identify the recurrence of a word in a document. IDF is the inverse of the document frequency among the whole body of documents. TF and IDF allocate weight for a high frequency words based on the importance of the Service document and it is used to damp down the effect of high frequency words while evaluating TF-IDF log. The Weight of a word in a document is estimated using the Eq. (1).

$$W_{t,d} = \int_{0,}^{{1 + \log_{10} tf_{t,d} ,}} {\begin{array}{*{20}c} {if\,tf_{t,d} > 0} \\ {otherwise} \\ \end{array} }.$$
(1)

3.2 Second phase for trust worthy web service identification

Four criteria level assessments namely Privacy, Demand, Satisfaction and Retention are introduced in the second phase after collaborative filtering process. This model recommends the best web services to service requester by gathering diverse set of data from WS-DREAM open datasets and monitored every 30 days to offer trust worthy service recommendation.

3.2.1 Privacy level assessment

The sensitive data in web services should be safe guarded from its competing members in the network because when a web service enters into the public web service environment it is visible to all competitors. If they retrieve the sensitive details of web services using that they strengthen their capabilities and become better competitors. The Privacy Level Assessment (PLA) of competitive web services is computed using Eq. (2).

$$PLA = Min_{{i \in \left[ {1,n} \right]}} \left( { \frac{{\left| {FAT_{{Ws_{i} }} } \right|}}{{\left| {AT1_{{Ws_{i} }} } \right|}} } \right)$$
(2)

where, |FAT| denotes the total number of failed web service attacks and |AT| is the total number of web service attacks and n is the number of web services (Ws) in the network.

3.2.2 Demand level assessment

The popularity of a web service is calculated based on the demand. The web service Demand Level (DL) is estimated by the Accepted Web Service request (AWR) that is received from the provider over the total service request of M competing web services for a period of time using Eq. (3).

$$DL_{Wsi}^{Q} = \frac{{AWR_{{Ws_{i} }} }}{{\mathop \sum \nolimits_{k = 1}^{M} AWR_{{Ws_{i} }} }}.$$
(3)

3.2.3 Satisfaction level assessment

The cumulative subjective opinion on the web services is estimated through how frequently the web services requested. Accepted web services (AWS), usage time (Ut) which is the time gap between accept and exit are used here to calculate the satisfaction level using Eq. (4).

$$SL_{Wsi}^{Q} = \frac{{\sum\limits_{j = 1}^{UT} {AWS_{{Ws_{j} }} } }}{{\sum\limits_{K = 1}^{M} {\sum\limits_{j = 1}^{Ut} {AWS_{{Ws_{j} }} } } }}$$
(4)

where, total number of competing web services represented as M and Ut is the total number of web services Usage time.

3.2.4 Retention level assessment

The service quality is evaluated using retention level assessment to hold its requester for a long run. This criteria is closely related to satisfaction level assessment and signifies the high quality Retention Level (RL) with higher satisfaction level. This retention assessment ascertains the growth level of web services with respect to the current number of web services in the network and calculated using Eq. (5). \(ED_{{Ws_{i} }}\) denotes Exit Demand of a web service i that received over the Accepted web service request (AWR).

$$RL_{Wsi}^{Q} = \frac{{ED_{{Ws_{i} }} }}{{AWR_{{Ws_{i} }} }}.$$
(5)

3.3 Third phase for intelligent QoS aware web service identification

The Adaptive Neuro Fuzzy Inference System (ANFIS) is employed in the third phase to attain quick training, robust classification performance, ability to recognize new patterns. It integrates the features of Fuzzy Systems and Neural Network. The subjective knowledge and objective knowledge about the web services are required to solve the issues in trusted web service selection. The numerical data and linguistic knowledge about the service recommendation system (Ross 2005) are processed simultaneously using fuzzy logic system.

The Fuzzy logic system for service selection has two major components namely Database and Rulebase. Database is a repository of linguistic variables as represented in Table 4. Rulebase is the web service knowledge representation in the form of Fuzzy Rules. The process of mapping the given input into the output using fuzzy logic is called fuzzy inference and it is represented using the following four blocks.

  1. i.

    Fuzzification is the process of transforming any crisp value to the corresponding linguistic variable (fuzzy value) based on the appropriate membership function.

  2. ii.

    Rules block keeps the necessary IF–THEN rules and membership functions.

  3. iii.

    Inference Engine utilizes implication and aggregation processes to simulate human decision making.

  4. iv.

    Defuzzification is used to calculate the crisp numeric output from the fuzzy output.

The web services have its own functional and non functional properties and the requester select a web service based on their requirement like response time, availability etc. A linguistic variable for the fuzzy set of a service is based on the user preferences and criteria’s. Fuzzy rule based selection is performed using fuzzy IF THEN rules and it facilitates the users to select a proper web service. The weight calculator web service is considered as an example to simulate the web service identification with crisp values. Fuzzifier maps crisp numbers into fuzzy sets and it is used in terms of linguistic variables with associated fuzzy sets. The FLS maps input fuzzy sets into output fuzzy sets using inference engine to make decisions in recommending services. The FLS results output sets with crisp numbers. The five different service providers for weight calculation service are analyzed based on response time and availability to predict the reliability of services as illustrated in Table 1. The following rules are applied to eliminate fuzziness in service selection.

Table 1 Sample web service classification based on response time and availability

IF delay ≥ 0.03 ms and availability = Yes THEN rank outstanding

IF delay ≥ 0.05 ms and availability = Yes THEN rank exceeds-expectation

IF delay ≤ 0.5 ms and availability = Yes THEN rank acceptable

IF delay > 0.5 ms and availability = No THEN rank low

IF delay > 0.3 ms and availability = No THEN rank Low

Fuzzy Rule based service selection algorithm is explained with the following steps.

  • Step 1: command the service descriptors to find the required services

  • Step 2: pass the request to the public registry and search for service availability based on service parameters as requested by the user

  • Step 3: based on service parameters group the discovered services and discard the services that do not match the user constraints (quick response and availability)

  • Step 4: after collecting the results prioritize the services which satisfy the most user constraints

  • Step 5: process the highest ranked result and send the result to the requester

  • Step 6: repeat step 5 until no unprocessed request available

  • Step 7: if no result found send the message “need proper user constraints” to the requested service.

This FLS is used to select proper weight calculator web service based on user’s preferences, i.e., QoS values response time and availability. The Intuitionist Fuzzy Set (IFS) concept proposed by Atanassov (1986) is applied in this system for member ship function calculation using Eq. (6). The fuzzy set is defined based on a universe of discourse S and characterized by a membership function M with the interval value [0, 1].

$$M = \left\{ { < s,\;dM(s),\;nM\; > \left| {s\;\,\, \mathsf{C}\!\!\!\!\!\!\!= \;S} \right|} \right\}$$
(6)

Here dM(s) represents the degrees of membership of the element, nM(s) degrees of non-membership of the element, linguistic variable (s), numerical values (S) of a linguistic variable with the following constraints. The degree of uncertainty of s to m is calculated using Eq. (7).

$$0 \le {\text{dM}}\left( {\text{s}} \right) \le 1,0 \le {\text{nM}}\left( {\text{s}} \right) \le 1, 0 \le {\text{dM}}\left( {\text{s}} \right) + {\text{nM}}\left( {\text{s}} \right) \le 1$$
$$\Pi {\text{M}} \left( {\text{s}} \right) = 1 - {\text{dM}}\left( {\text{s}} \right) - {\text{nM}}\left( {\text{s}} \right)$$
(7)

The fuzzy sets for service selection and the member ship functions are set based on user’s experience, perspectives etc. The weights are calculated based on the membership function μFun = {responsetime ≥ 0.5 ms and availability = “yes”} for the web service. The decision matrix is established using the membership function and the services are ranked to select appropriate services using the fuzzy IF THEN rules.

The Sugeno approach is used in the design of Adaptive Neuro-Fuzzy Inference System (ANFIS) for QoS aware web service identification. Multi-layered feed forward network is used. In this approach, every single layer has been characterized according to its fuzzy operation and each layer has its own dedicated task indicated in Fig. 2.

Fig. 2
figure 2

Multi layer back propagation network with hidden layer for web service identification

The response time and availability are given as input to the ANFIS multi-layered feed forward network and rating of services are normalized to identify the trusted web services. The back propagation algorithm used in ANFIS has forward and backward passes. Outputs of all the neurons in the network are calculated and compared with desired outputs in forward pass. Forward pass begin with the hidden layer using the input values from the training data set. The backward pass starts with error calculation at each neuron in the output layer, with weight adjustment. Mean Square Error (MSE) is the performance metric used to compute the difference between expected (e(k)) and actual output (a(k)) with Eq. (8). This multilayer back propagation algorithm is used to adjust the weights and biases of the network to minimize the mean square error. The new weight value of the connection from node i to node o is calculated using Eq. (9).

$$MSE = \frac{1}{n}\mathop \sum \limits_{k = 1}^{n} e\left( k \right)^{2} = \frac{1}{n}\mathop \sum \limits_{k = 1}^{n} a\left( k \right) - e(k)^{2}$$
(8)
$$Ws_{{new_{io} }} = Ws_{{old_{io} }} + \eta i\delta o$$
(9)

Where η is a tuning parameter fed into this system by trial and error with repeated runs on the training data. The tuning parameter value range lies between 0.1 and 0.9 and these weight adjustments continues till to reach the input layer. Output of neurons is calculated using Eq. (10).

$$\updelta_{\text{o}} = \left( {\frac{\updelta {\text{f}}}{{\updelta {\text{net}}_{\text{o}} }}} \right)\left( {{\text{y}}_{\text{o}}^{\left( {\text{k}} \right)} - {\text{y}}_{\text{o}} } \right)$$
(10)

where \({\text{net}}_{\text{o}} \equiv \mathop \sum \nolimits {\text{x}}_{\text{i }} {\text{web}}_{\text{io}}\) and \({\text{y}}_{\text{o}}^{{\left( {\text{k}} \right)}}\) is the desired output of node o. The input data is repeatedly given to neural network and each time the error is calculated with the comparision of output to the desired output. Then this error is back propogated to neural network to adjust the weights. The error decreases with each iteration and then the model come closer to produce the expected output. This is known as training phase used to train the data set for selecting proper web services based on user preferences.

The System architecture of ANFIS is illustrated in Fig. 3. This model has n service attribute inputs SA1,SA2,…SA5 and every input is mapped with five semantic terms Ti = {Verylow (VL), low (L), Acceptable (A), ExceedsExpectation (EE), outstanding (O)} and then the prevailing fuzzy if–then rule is incorporated. Semantic term sample classification weight rate is illustrated in Table 2. Rule1: If (SA1 is F11) and (SA2 is F21) and … and (SAn is Fn1) then R1(SA1, SA2,…, SAn). Output of ith node in Layer k is represented as Opk,i. ANFIS Structure has five layers and the working of each layer is explained.

Fig. 3
figure 3

Neuro fuzzy framework for web service selection

Table 2 Weight rate for classification description

3.3.1 Layer1

In this layer the semantic terms (VeryLow, low, Acceptable, ExceedsExpectation, Outstanding) related with the node are denoted in fuzzy representation (Fig. 3). Each node(i) value is converted as given bellow to fuzzy one.

Mgl,i = \(\upmu_{{{\text{F}}_{{ 1 {\text{i}}}} }} \left( {{\text{SA}}_{1} } \right)\) for i∈{1,2,…, 5} and

Mgl,i = \(\upmu_{{{\text{F}}_{{ 2 {\text{i}}}} }} \left( {{\text{SA}}_{2} } \right)\) for i∈{1,2,…, 5} and,… and

Mgl,i = \(\upmu_{{{\text{F}}_{\text{ni}} }} \left( {{\text{SA}}_{\text{n}} } \right)\) for i∈{1,2,…, 5}

If node k has a input SAk and Fki (k∈{1,…, n} and i∈{1,…, 5}) has linguistic terms (VeryLow, low, Acceptable, Exceeds-Expectation, Outstanding) then these terms are correlated with the nodes or for the given input SAk (k∈{1,…, n}).It should satisfy the quantifier F with Fuzzy set member ship grade \({\text{Mg}}_{{1,{\text{i}}}}\) and with the fuzzy set F∈{ \({\text{F}}_{11} \ldots . {\text{F}}_{15} \} \mathop \cup \nolimits \{ {\text{F}}_{21} \ldots . {\text{F}}_{25} \} \mathop \cup \nolimits \ldots \mathop \cup \nolimits \{ {\text{F}}_{{{\text{n}}1}} \ldots . {\text{F}}_{{{\text{n}}5}} \}.\)

Generalized Bell function is used as the member ship function (F1) represented in Eq. (11).

$$\mu_{F} \left( {SA} \right) = \frac{1}{{1 + \left| {\frac{{SA - Z_{i} }}{Xi}} \right|^{2yi} }}$$
(11)

The values of xi, yi, and zi parameters vary the bell shaped function and these parameters are the set of MFun. The bell-shaped curve width varies based on the x, y, and z parameters and pinpoint the curve center. Here, the parameters are called as premise parameters and y should be positive.

3.3.2 Layer 2

In this layer node is fixed and it is denoted as ∏.The weighting rate \({\text{Wt}}_{\text{k}}\) of each rule is estimated using membership expressions assessment in the predecessor of the rule. This is achieved by transferring the input values to fuzzy membership values with the help of input membership functions. Then AND operator is applied to these membership values which leads to multiplication of input membership values as illustrated in Eq. (12).

$$Mg_{2,i} = Wt_{i} = \mu_{F1i} \left( {SA_{1} } \right)\mu_{F2i} \left( {SA_{2} } \right) \ldots \mu_{Fni} \left( {SA_{n} } \right)$$
(12)

Node output denotes the rules discharge potential.

3.3.3 Layer 3

In this layer node is fixed and it is denoted as N. Using this fixed node input discharge potential is normalized using Eq. (13).

$$Mg_{3,i} = \overline{{Wt_{i } }} = \frac{{Wt_{i} }}{{\mathop \sum \nolimits_{j = 1}^{n} Wt_{j} }} i \in \left\{ {1, \ldots ..,n} \right\}$$
(13)

3.3.4 Layer 4

This Layer node is a parameterized function which is identified as “consequent parameters” and calculated using Eq. (14).

$$Mg_{4,i} = \overline{{Wt_{i} }} R_{i} = \overline{{Wt_{i} }} \left( {P_{1}^{i} SA_{1} + P_{2}^{i} SA_{1} + \ldots + P_{n}^{i} SA_{1} + P_{n + 1}^{i} } \right)$$
(14)

3.3.5 Layer 5

In this layer the node marked as Σ is considered as fixed node and the final output is calculated by the summation of all the inputs using Eq. (15).

$$Mg_{5,1} = \mathop \sum \limits_{i = 1}^{n} \overline{{Wt_{i} }} R = \frac{{\mathop \sum \nolimits_{i = 1}^{n} Wt_{i} R}}{{\mathop \sum \nolimits_{i = 1}^{n} Wt_{i} }}$$
(15)

ANFIS network created restores its parameters according to the back propagation algorithm which is used to deprecate the error between the output of ANFIS and the desired output. This has the feature of distinctive selection by utilizing the adaptive neural network, fitting procedures with the help of learning algorithm and mapping Member-ship Function parameters (MFun) with the dataset. The desired input–output data are examined with the number of membership functions assigned to each chosen input qualities to create legitimate fuzzy logic set design. Learning algorithms from neural networks with fuzzy logic approach are fused to achieve preferable service selection. This model segregates the service providers by five different classification namely Very low, Low, Acceptable, Exceeds-Expectation and Outstanding which automatically select services in dynamic services composition. The functions of Neuro-fuzzy system are decided based on web service requester’s QoS requirements. This model attempts to improve the web service composition ability.

4 Performance analysis of INFCF model

The three phase INFCF model is designed with collaborative filtering to remove noise from the data set in the first phase, the privacy, demand, satisfaction and retention level assessment in the second phase to result trustworthy service selection and ANFIS in third phase recommend the proper web services based on user preferences intelligently. The dataset is analyzed for every 30 days to show how the proposed recommendation algorithm results better accuracy compared with other competing approaches like (RAF, CF, CBF, and INFCF) based on Precision, Recall, Fallout, and Recommender Function F1.

The developed Three phase Neuro fuzzy collaborative Filtering model for intelligent QoS based web service selection is analyzed using WS-DREAM real-world Web Service Dataset. The web services are classified based on its domain name and trusted web services are selected using this model. The information of the 5825 web services dataset are considered for performance study. It is reduced to 4447 web services after classification based on user preference (response time). The remaining 778 web services are not suitable for this categorization so it is discarded using Collaborative filtering in the first phase. The classified web services are fed into second phase and the 3256 web services among them are selected based on privacy, demand, satisfaction and retention level assessment. The ANFIS in third phase processed using back propagation recommend the proper web services according to the user preference. The sample classification of the web services is represented in Table 3 for the user preference, where “Collected web services” represents the number of web services from the dataset after the classification from first phase, “Available services “represents the number of available web services among them and “Used web Services” represents the number of web services after the trust assessment in the second phase and ANFIS assessment in third the phase.

Table 3 Web service classification according to usage category

The performance of this model is evaluated using Precision, Recall, Fallout and F1 Measure. Precision is a measure of exactness calculated using Eq. (16), Recall is a measure of completeness evaluated using Eq. (17). Precision and Recall is inversely related. Increase in the size of the recommendation set, increase Recall but decrease precision so in addition to this Fallout and F1 are added as two more metrics to estimate the accuracy of Recommender system. Fall out is the ratio between selected items that are not used and total number of unutilized services estimated using Eq. (18). The performance of the recommender increases with less fallout rate. F1 is the measure of standard harmonic mean of precision and recall estimated using Eq. (19). The conditions prescribed for web service recommendation are shown in Tables 3 and 4.

$$Precision = \frac{{W_{rs} }}{{W_{rs} + W_{is} }}$$
(16)

Three sequences are considered for testing the quality of recommendation system. Precision and Call Back are calculated for each sequence. All outstanding web services available in the data set are recommended if the value of Recall is 1.0., which is calculated with the ratio of preferred web services to the total number of web services used.

$$Recall = \frac{{W_{rs} }}{{W_{rs} + W_{rn} }}$$
(17)
$$Fallout = \frac{{W_{is} }}{{W_{is} + W_{in} }}$$
(18)

The overall performance of the recommendation system is evaluated by considering Precision and Recall together. Function F1 is used to merge Precision and Recall into a single metric expressed as a harmonic mean of precision and Recall shown in Eq. (19).

$$F1 = \frac{2}{{\left( {\frac{1}{Precision}} \right) + \left( {\frac{1}{Recall}} \right)}} = \frac{2*Precision*Recall}{Precision + Recall}$$
(19)
Table 4 Web service recommendation conditions

The performance of the designed QoS aware web service recommendation system with INFCF is compared with the existing recommendation algorithms like Random filtering (RAF), Collaborative Filtering (CF), Content Based Filtering (CBF), and Intelligent Neuro Fuzzy Collaborative Filtering (INFCF) based on precision, Recall, Fallout and F1 which is shown in Table 5 where S1, S2 and S3 are three different web services processing sample data set taken at three different instances with 30 days time interval for testing the algorithms. The graphical representation of recommender algorithms performance comparison is illustrated in Fig. 4.

Fig. 4
figure 4

Performance comparison of web service recommendation algorithms

The respective average values of Precision, Recall, Fallout, and 1 are calculated for each sequence of processing and it is shown in Table 5. The results show that the precision of INFCF is 0.27, higher than the other algorithms with Recall value of 0.94. The Fallout rate of INFCF is 0.07 desirably lower than the other algorithms. The harmonic mean of precision and Recall is expected to be more for better performance represented with F1 function that results 0.42 for INFCF which is higher compared to other algorithms. The experimental analysis on the performance of INFCF based recommendation system shows better prediction accuracy for web service selection than the existing other algorithms.

Table 5 Performance comparison of recommendation algorithms based on prediction accuracy

5 Summary

The Three-phase QoS aware web service recommendation model is developed to select proper web services intelligently based on user preferences among available services. Collaborative Filtering used in the first phase classify web services based on domain name. Privacy, Demand, Satisfaction and Retention Level assessment estimated in the second phase provide the trustworthy web services among the selected web sevices from the first phase. Adaptive Neuro Fuzzy Inference System (ANFIS) used in the third phase, rank and select the web services with user prefered QoS constraints. The performance of this model is assessed through Precision, Recall, Fallout and F1 by comparing with the other existing algorithms which results better web service prediction accuracy than others.