A deep learning approach for service QoS prediction based on time-aware feature-oriented optimization
Through a deep learning method based on time perception, using probability matrix decomposition and deep gating loop network optimization features, the problems of low accuracy of service QoS prediction and risk of overfitting in the prior art are solved, and more efficient QoS prediction is achieved.
Patent Information
- Application Number
- CN202211437946.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-16
- Publication Date
- 2025-02-07
- Estimated Expiration
- 2042-11-16
AI Technical Summary
It is difficult for the prior art to accurately predict service QoS values, especially when acquiring time-aware user/service features, there are problems with large amounts of network parameters, long training time, and risk of overfitting.
Using a deep learning method based on time-aware feature-oriented optimization, the potential characteristics of users and services on the time slice are extracted through probability matrix decomposition, combined with deep gated recurrent network (DGRN) and generative adversarial network (GRGAN), optimize the characteristics and perform QoS prediction. .
It improves the accuracy of service QoS prediction, reduces the amount of network parameters and training time, reduces the risk of overfitting, and enhances the prediction ability of the model.
Smart Images

Figure CN116094977B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of service computing, and in particular to a deep learning method for service QoS prediction based on time perception and feature optimization. Background Art
[0002] Service computing usually uses QoS to describe the non-functional attributes of services, such as throughput, response time, cost, etc. Since different users have different network status, geographical location, and personal preferences, the QoS of different users calling the same service will also be different. Since the number of services is too large, it is impossible for users to call all Web services, so the QoS of many services is unknown. The services required by users can be recommended to users by predicting the QoS values of uncalled services. How to accurately predict the QoS value of services plays a vital role in service recommendation.
[0003] At present, traditional collaborative filtering methods are difficult to capture the time-varying characteristics of service QoS, and the existing time-aware deep learning service prediction methods have problems such as large network parameters, long training time, and overfitting risks in the feature extraction process when obtaining time-aware user / service features. In order to reduce the number of network parameters, researchers proposed a GRU-based method, but the network structure of this method can be further optimized. The existing service QoS prediction method performs QoS prediction on a sparse QoS matrix. Since the sparse QoS matrix provides less information, the prediction ability of the model is limited to a certain extent. Summary of the invention
[0004] In order to solve the deficiencies mentioned in the above background technology, the purpose of the present invention is to provide a deep learning method for service QoS prediction based on time perception and feature optimization.
[0005] The purpose of the present invention can be achieved by the following technical solution: a deep learning method for service QoS prediction based on time perception and feature optimization, the method comprising the following steps:
[0006] Use the probability matrix decomposition method to decompose the original QoS matrix of users and services on the time slice, obtain the potential feature matrix of users and services on the time slice, and then obtain the potential feature vector of users and services on the time slice;
[0007] The obtained potential feature vectors of the user constitute the user's time feature set, and the obtained potential feature vectors of the service constitute the service's time feature set;
[0008] The deep gated recurrent network DGRN is used as a generator, and the temporal feature sets of users and services are input into the DGRN respectively, and the user's time-aware user features and the service's time-aware service features are output respectively;
[0009] Perform probability matrix decomposition on the QoS matrix training set to obtain the baseline user characteristics of users and services;
[0010] Using multiple layers of fully connected layers as a discriminator, and inputting the obtained service features based on time perception into the discriminator to obtain a first service discrimination result, and using the first service discrimination result to calculate the generator loss, and using the generator loss to train the generator network parameters;
[0011] Inputting the obtained service characteristics based on time perception and the service benchmark user characteristics into the discriminator respectively, obtaining a second service discrimination result and a third service discrimination result, calculating the discriminator loss by using the second service discrimination result and the third service discrimination result, and training the discriminator network parameters by using the discriminator loss;
[0012] The process of inputting the obtained user characteristics based on time perception into the discriminator is the same as the process of inputting the obtained service characteristics based on time perception into the discriminator;
[0013] The trained generator is used to obtain the time-aware features of the end user and the service, and the time-aware features of the end user and the time-aware features of the final service are multiplied to obtain the final QoS prediction value.
[0014] Preferably, the process of obtaining potential feature vectors of users and services on a time slice comprises the following steps:
[0015] Set the time slice to [τ-M, τ-1], and is the original QoS matrix of users and services at the tth time slice, where m and n are the number of users and services respectively. t Perform probability matrix decomposition to obtain the potential feature matrix of users and services at the tth time slice and Among them U t Each column of represents the potential feature vector of user i at the tth time slice, S t Each column in represents the potential feature vector of service j at the tth time slice, and d is the dimension of the user / service potential feature vector;
[0016] Set the QoS value of user i for service j in the tth time slice Is and The inner product of is determined, that is:
[0017]
[0018] In formula (1), is the QoS value of user i for service j in the tth time slice, N() represents the normal distribution, U t and S t is the potential feature matrix of users and services at the t-th time slice, T is the transposed symbol, σ 2 is the variance of the original QoS matrix, then the conditional probability of the user-service original QoS matrix is:
[0019]
[0020] In formula (2), I ij is the indicator function, Q t is the original QoS matrix of users and services in the tth time slice, if If it is known, the function value of the indicator function is 1, otherwise the function value of the indicator function is 0. Assume that and They all obey the normal distribution, that is:
[0021]
[0022]
[0023] In formula (3) and formula (4), σ U and σ S is the standard deviation of the user latent feature vector and the service latent feature vector.
[0024] Since the posterior probability is equal to the prior probability multiplied by the likelihood probability, we can get U t , S t The posterior probability of is shown in formula (5):
[0025]
[0026] Taking the logarithm of both sides of equation (5) yields equation (6):
[0027]
[0028] The maximum a posteriori probability equivalent maximization objective function is shown in formula (7):
[0029]
[0030] In formula (7), E is the maximum a posteriori probability equivalent maximization objective function, Use stochastic gradient descent to update and As shown in formula (8) and formula (9):
[0031]
[0032]
[0033] In formula (8) and formula (9), η is the learning rate that controls the speed of gradient descent during the iteration process.
[0034] Preferably, after obtaining the user / service potential feature vector on the time slice [τ-M, τ-1] by using probability matrix decomposition, the potential feature vectors of user i on these M time slices constitute the time feature set of user i, which is recorded as Right now The latent feature vector of service j constitutes the temporal feature set of service j, denoted as Right now
[0035] Preferably, the construction process of the deep gated recurrent network DGRN is as follows:
[0036] Given user i calling service j on time slice [τ-M, τ-1], we fully utilize the time feature sets of user i and service j, and perform time perception on the time feature sets of user i and service j to obtain the service time feature set of service j on time slice [τ-M, τ-1]. As input, the DGRN structure is as follows:
[0037]
[0038] In the formula, the DGRN structure consists of M deep gated recurrent units DRGU, S j τ-M+k-1 is the input of the kth DGRU, denoted as DGRU k , which is the potential feature vector of service j in the τ+k-1th time slice; h k-1 It is the hidden state passed down from the previous node, including the relevant information of the previous node, combined with S j τ-M+k-1 and h k-1 , DGRU will get the hidden state h passed to the next node k , the hidden state h output by the Mth node M As the final result, the initial value h0 of the hidden state is set to 0.
[0039] Preferably, using the constructed DRGN, the time feature sets of the user and the service are respectively input into the DGRN, and the process of outputting the user's time-aware user features and the service's time-aware service features respectively comprises the following steps:
[0040] The hidden state h passed down through the (k-1)th node k-1 and the input of node k, i.e. S jτ-M+k-1 To obtain the states of the two gates: reset the gate as shown in formula (10):
[0041] r k =sigmoid(r′ k ×γ r +α r ) (10)
[0042] In formula (10), r′ k =ReLU(h k-1 ×γ hr +S j τ-M+k-1 ×γ xr +α rr ), γ hr , γ xr , γ r is the weight matrix, α rr and α r is the bias matrix;
[0043] Let z k is the update gate of node k, as shown in formula (11):
[0044] z k =sigmoid(z′ k ×γ z +α z ) (11)
[0045] In formula (11), γ hz , γ xz , γ z is the weight matrix, α zz and α z is the bias matrix;
[0046] Get r k and z k After two gating signals, use the reset gating to get h k-1 Data after reset h k-1 r k , and then with x k Get the current node information together As shown in formula (12):
[0047]
[0048] In formula (12), γ xh , γ hh , γ h is the weight matrix, α hh and α h is the bias matrix;
[0049] Use update gating to update and get the hidden state h of node k k , and h k Send it to the (k+1)th node, as shown in formula (13);
[0050]
[0051] After passing through M nodes, the output result is used as the time-aware service feature of service j Time-aware service characteristics of user i The acquisition process of is the same as the acquisition process of the time-aware service characteristics of service j.
[0052] Preferably, the process of calculating the generator loss and the discriminator loss includes:
[0053] Generator loss:
[0054] Generate time-aware service features using a generator;
[0055] Input the time-aware service feature into the discriminator to obtain the first service discrimination result ε 1 ;
[0056] Using the first service judgment result ε 1 Calculate the generator loss L G =MSE(ε 1 );
[0057] Using the generator loss L G Train the generator network parameters;
[0058] Discriminator loss:
[0059] Input the benchmark service feature into the discriminator and obtain the second service discrimination result ε 2 ;
[0060] Using the second service to determine the result ε 2 Calculate the loss L D1 =MSE(ε 2 );
[0061] Input the time-aware service feature into the discriminator to obtain the third service discrimination result ε 3 ;
[0062] Using the third service to determine the result ε 3 Calculate the loss L D2 =MSE(ε 3 );
[0063] Calculate the discriminator loss L D =LD1 +L D2 ;
[0064] Using the discriminator loss L D Train the discriminator network parameters.
[0065] Preferably, the mean square error (MSE) is used as the loss function during the training of the network parameters, and the MSE calculation process is as follows:
[0066]
[0067] In formula (14), n is the number of services input during the training process, is the discriminator’s judgment result on service j, is the discriminant result label during training, And k∈{1,2,3};
[0068] And the gradient descent method is used for training, as shown in equations (15) to (18). First, based on equations (17) and (18), the parameters in the network are trained using the generator loss:
[0069]
[0070]
[0071] In formula (15) and formula (16), λ is the learning rate that controls the speed of gradient descent during the iteration process, γ G is the set of all weight matrices in the generator network, α G is the set of all bias matrices in the generator network, and then the parameters in the network are trained using the discriminator loss through equations (17) and (18):
[0072]
[0073] In formula (17), γ D is the set of all weight matrices in the discriminator network;
[0074]
[0075] In formula (18), α D is the set of all bias matrices in the generator network.
[0076] Preferably, the process of obtaining the final QoS prediction value comprises the following steps:
[0077] The time feature vector sets of user i and service j on the time slice [τ-M, τ-1] are input into DGRN respectively, and the features are optimized through time perception, and then the time-aware user features of the final user i are output respectively. and the time-aware service characteristics of the final service j and The product of is the QoS prediction value of user i for service j in time slice τ. The calculation process is shown in formula (19):
[0078]
[0079] Preferably, a device comprises:
[0080] one or more processors;
[0081] A memory for storing one or more programs;
[0082] When one or more of the programs are executed by one or more of the processors, the one or more processors implement the deep learning method for service QoS prediction based on time-aware feature-oriented optimization as described above.
[0083] Preferably, a storage medium comprising computer executable instructions, which, when executed by a computer processor, are used to execute the deep learning method for service QoS prediction based on time-aware feature-oriented optimization as described above.
[0084] Beneficial effects of the present invention:
[0085] A deep learning service QoS prediction model based on time perception and feature optimization is proposed, which further improves the prediction accuracy. In this model, DGRN is first designed for time perception to extract user / service features based on time perception. Then GRGAN is designed for feature optimization. The discriminator in GRGAN is used to evaluate the optimized features to train the generator in GRGAN. Finally, the optimized features are used to predict the QoS value to improve the prediction accuracy. BRIEF DESCRIPTION OF THE DRAWINGS
[0086] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative work.
[0087] Figure 1 It is a schematic diagram of the structure of the present invention;
[0088] Figure 2 The DGRU of the present invention k Structural diagram;
[0089] Figure 3 It is a schematic diagram of the user / service feature extraction process based on time perception of the present invention;
[0090] Figure 4 is a schematic diagram of a GRGAN network structure diagram taking service j as an example of the present invention;
[0091] Figure 5 It is a schematic diagram of the influence of the original feature vector dimension of the user / service on the prediction accuracy of the present invention;
[0092] Figure 6 Schematic diagram of the effect of the number of discriminator layers on prediction accuracy of the present invention;
[0093] Figure 7 It is a schematic diagram of the effect of the time slice length on the prediction accuracy of the present invention. DETAILED DESCRIPTION
[0094] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0095] like Figure 1 As shown, the deep learning method for service QoS prediction based on time perception and feature optimization includes the following steps:
[0096] Use the probability matrix decomposition method to decompose the original QoS matrix of users and services on the time slice, obtain the potential feature matrix of users and services on the time slice, and then obtain the potential feature vector of users and services on the time slice;
[0097] The obtained potential feature vectors of the user constitute the user's time feature set, and the obtained potential feature vectors of the service constitute the service's time feature set;
[0098] The deep gated recurrent network DGRN is used as a generator, and the temporal feature sets of users and services are input into the DGRN respectively, and the user's time-aware user features and the service's time-aware service features are output respectively;
[0099] Perform probability matrix decomposition on the QoS matrix training set to obtain the baseline user characteristics of users and services;
[0100] Using multiple layers of fully connected layers as a discriminator, and inputting the obtained service features based on time perception into the discriminator to obtain a first service discrimination result, and using the first service discrimination result to calculate the generator loss, and using the generator loss to train the generator network parameters;
[0101] Inputting the obtained service characteristics based on time perception and the service benchmark user characteristics into the discriminator respectively, obtaining a second service discrimination result and a third service discrimination result, calculating the discriminator loss by using the second service discrimination result and the third service discrimination result, and training the discriminator network parameters by using the discriminator loss;
[0102] The process of inputting the obtained user characteristics based on time perception into the discriminator is the same as the process of inputting the obtained service characteristics based on time perception into the discriminator;
[0103] The trained generator is used to obtain the time-aware features of the end user and the service, and the time-aware features of the end user and the time-aware features of the final service are multiplied to obtain the final QoS prediction value.
[0104] 1) Probabilistic Matrix Decomposition
[0105] To realize temporal feature extraction, it is necessary to initialize the user / service potential feature vector on the time slice [τ-M,τ-1] through probabilistic matrix factorization (PMF), so as to obtain the user / service temporal feature set, and then input them into the deep gated recurrent network for user / service feature optimization, and output time-aware user / service features.
[0106] Probabilistic matrix decomposition is used to obtain the potential feature vectors of users and services on the time slice [τ-M, τ-1], and two matrices are decomposed from the original user-service QoS matrix, representing the potential features of users and services respectively, so that the decomposed matrices can be multiplied to obtain the original matrix. However, in actual situations, the QoS matrix is very sparse, that is, there are only a small number of users and a small number of services in the matrix. QoS values.
[0107] set up is the original QoS matrix of user-service at the t-th time slice, where m and n are the number of users and services respectively. Perform probability matrix decomposition on Qt to obtain the potential feature matrix of user and service at the t-th time slice respectively. and Among them U t Each column of represents the potential feature vector of user i at the tth time slice, S t Each column in represents the potential feature vector of service j at the tth time slice, and d is the dimension of the user / service potential feature vector. PMF assumes that user i’s QoS value for service j at the tth time slice is Is and The inner product of is determined, that is:
[0108]
[0109] In formula (1), N() represents normal distribution. Then the conditional probability of the original QoS matrix of user-service is:
[0110]
[0111] In formula (2), I ij is an indicator function, if If , then the function value is 1, otherwise it is 0. Assume that and They all obey the normal distribution, that is:
[0112]
[0113]
[0114] Since the posterior probability is equal to the prior probability multiplied by the likelihood probability, we can get U t , S t The posterior probability of is shown in formula (5):
[0115]
[0116] Taking the logarithm of both sides of equation (5) yields equation (6):
[0117]
[0118] The maximum a posteriori probability equivalent maximization objective function is shown in formula (7):
[0119]
[0120] In formula (7), Use stochastic gradient descent to update and As shown in formula (8) and formula (9):
[0121]
[0122]
[0123] In formula (8) and formula (9), η is the learning rate that controls the speed of gradient descent during the iteration process.
[0124] After obtaining the user / service potential feature vector on the time slice [τ-M, τ-1] by using probability matrix decomposition, the potential feature vector of user i on these M time slices constitutes the time feature set of user i, which is recorded as ,Right now The latent feature vector of service j constitutes the temporal feature set of service j, denoted as ,Right now
[0125] 2) Deep Gated Recurrent Network Design
[0126] Design a deep gated recurrent network structure. Given user i calling service j on time slice [τ-M, τ-1], make full use of the temporal feature set of user i and service j and make them time-aware. Taking input as an example, the DGRN structure is as follows.
[0127]
[0128] The structure consists of M deep gate recurrent units (DGRU). j τ-M+k-1 is the input of the kth DGRU (denoted as DGRUk), i.e., the potential feature vector of service j in the τ+k-1th time slice. k-1 It is the hidden state passed down from the previous node. This hidden state contains the relevant information of the previous node. j τ-M+k-1 and h k-1 , DGRU will get the hidden state h passed to the next node k The hidden state h output by the Mth node M As the final result, the initial value h0 of the hidden state is set to 0. Taking the potential feature vector input of service j in time slice [τ-M, τ-1] as an example, the DGRN structure of feature extraction is similar to the above. The specific structure of DGRUk is as follows Figure 2 shown.
[0129] Figure 2 middle, is the addition operation, ⊙ is the Hadamard product of matrices, that is, the multiplication of corresponding elements in two matrices of the same type. ReLU is the Rectified Linear Unit (ReLU), that is, ReLU(x) = max(0, x). σ is the sigmoid function, that is, sigmoid(x) = 1 / (1+e -x). tanh is the hyperbolic tangent function, that is, tanh(x)=(e x -e -x ) / (e x +e -x ). FC is a fully connected operation. Figure 2 In the example, the forward propagation process based on DGRU is as follows:
[0130] a) The hidden state h passed down from the previous node (the (k-1)th node) k-1 and the input of node k (i.e. S j τ-M+k-1 ) to obtain the states of the two gates: Reset gate as shown in formula (10):
[0131] r k =sigmoid(r′ k ×γ r +α r ) (10)
[0132] In formula (10), r′ k =ReLU(h k-1 ×γ hr +S j τ-M+k-1 ×γ xr +α rr ), γ hr , γ xr , γ r is the weight matrix, α rr and α r is the bias matrix.
[0133] Let z k is the update gate of node k, as shown in formula (11):
[0134] z k =sigmoid(z′ k ×γ z +α z ) (11)
[0135] In formula (11), γ hz , γ xz , γ z is the weight matrix, α zz and α z is the bias matrix.
[0136] b) If Figure 2 As shown, we get r k and z k After two gating signals, use the reset gating to get h k-1 Data after reset h k-1r k , and then with x k Get the current node information together As shown in formula (12):
[0137]
[0138] In formula (12), γ xh , γ hh , γ h is the weight matrix, α hh and α h is the bias matrix.
[0139] c) Use update gating to update and get the hidden state h of node k k , and send it to the (k+1)th node, as shown in formula (13).
[0140]
[0141] d) After passing through M nodes, the final result is output as the time-aware service feature of service j Time-aware service characteristics of user i The acquisition is similar to the service.
[0142] 3) User / service feature extraction based on time perception
[0143] The user / service feature extraction process based on time perception is as follows Figure 3 As shown. The user time feature set of user i and service j on the time slice [τ-M, τ-1] and service time feature set The inputs are respectively fed into two DGRNs for feature optimization, and then the time-aware user features of user i are output respectively. and the time-aware service characteristics of service j
[0144] A. Design, training and prediction of deep learning service QoS prediction model based on time-aware feature optimization
[0145] 1) Design and training of deep learning service QoS prediction model based on time-aware feature optimization
[0146] GRGAN mainly consists of two parts, namely the generator and the discriminator. Since the network structure used by users and services is the same, the network structure diagram of GRGAN is given by taking service j as an example, as shown in Figure 4 shown.
[0147] Figure 4In the paper, DGRN is first used as the generator of the generative adversarial network, and the temporal feature set of service j is Input into the generator to obtain the time-aware service characteristics of service j Next, the baseline service characteristics of service j are and They are sent to the discriminator respectively, and the discrimination results are obtained to judge the optimization status of user features.
[0148] The specific calculation process of GRGAN loss is as follows:
[0149] a) Generator loss
[0150] (a) Using the generator to generate time-aware service features.
[0151] (b) Input the time-aware service features into the discriminator and obtain the discriminant result ε 1 .
[0152] (c) Using the discrimination result ε 1 Calculate the generator loss L G =MSE(ε 1 ).
[0153] (d) Using the generator loss L G Train the generator network parameters.
[0154] b) Discriminator loss
[0155] (a) Input the benchmark service features into the discriminator and obtain the discriminant result ε 2 .
[0156] (b) Using the discrimination result ε 2 Calculate the loss L D1 =MSE(ε 2 ).
[0157] (c) Input the time-aware service features into the discriminator and obtain the discriminant result ε 3 .
[0158] (d) Using the discrimination result ε 3 Calculate the loss L D2 =MSE(ε 3 ).
[0159] (e) Calculate the discriminator loss L D =L D1 +L D2 .
[0160] (f) Using the discriminator loss L D Train the discriminator network parameters.
[0161] The mean square error (MSE) is used as the loss function in the parameter training process of the model. Taking the input service training model as an example, formula (14) gives the calculation process of its MSE:
[0162]
[0163] In formula (14), n is the number of services input during the training process, is the discriminator’s judgment result on service j, is the discriminant result label during training, And k∈{1, 2, 3}.
[0164] GRGAN uses the generator and the discriminator to optimize the overall network. In the process of DGRN learning feature optimization, the purpose of the generator is to generate higher quality features as much as possible to deceive the discriminator, while the purpose of the discriminator is to separate the optimized features from the baseline features as much as possible. In this process, the parameters of GRGAN are updated by minimizing the loss.
[0165] In order to optimize the parameters in the network, the stochastic gradient descent method is used to train GRGAN to minimize the two loss functions, as shown in equations (15) to (18). First, the parameters in the network are trained using the generator loss based on equations (17) and (18):
[0166]
[0167]
[0168] In formula (15) and formula (16), λ is the learning rate that controls the speed of gradient descent during the iteration process, γ G is the set of all weight matrices in the generator network, α G is the set of all bias matrices in the generator network. Then the parameters in the network are trained using the discriminator loss through equations (17) and (18):
[0169]
[0170] In formula (17), γ D is the set of all weight matrices in the discriminator network.
[0171]
[0172] In formula (18), α D is the set of all bias matrices in the generator network.
[0173] 2) Prediction of deep learning service QoS prediction model based on time-aware feature-oriented optimization
[0174] The prediction structure diagram of this model is as follows Figure 1 After DGRN learns the ability of feature optimization, it inputs the time feature vector sets of user i and service j on the time slice [τ-M, τ-1] into two DGRNs respectively, performs feature optimization through time perception, and then outputs the time-aware user features of user i respectively. and the time-aware service characteristics of service j Their product is the QoS prediction value of user i for service j in time slice τ The calculation process is shown in formula (19).
[0175]
[0176] A. It needs to be further explained that in the specific implementation process, Parameter Settings and the Compared Methods
[0177] The experimental parameter settings are shown in Table 1.
[0178] Table 1 Parameter settings
[0179]
[0180] In IV-D, the parameters that optimize the model performance will be determined through experiments within the parameter range set above. The initial values of all parameters in the network are determined using random numbers. In IV-F, the model performance is evaluated using the optimal parameters. In order to evaluate the model in this paper, it is compared with the following typical methods:
[0181] 1) UPCC (User-based CF using Pearson correlation coefficient)
[22] : This method is a user-based collaborative filtering algorithm that uses PCC to calculate user similarity and uses other users’ similarity data to predict missing QoS values.
[0182] 2) IPCC (Item-based CF using Pearson correlation coefficient)
[23] : This method is a service-based collaborative filtering algorithm that uses PCC to calculate service similarity and uses data on similarities of other services to predict missing QoS values.
[0183] 3) WSRec (Web service recommender system)
[24] : This method is a hybrid collaborative algorithm that combines UPCC and IPCC to predict missing QoS values.
[0184] 4) K-SLOPE
[25] : This method uses K-means to exclude users that are not very similar, and adopts the Slope One algorithm to predict the missing QoS over time.
[0185] 5) NTF (Non-negative tensor factorization)
[26] : This method is a generalized tensor decomposition model that takes into account the differences in QoS values at different times and replaces the user-service matrix in the matrix decomposition with the user-service-time interaction relationship.
[0186] 6) RTF (Recurrent tensor factorization)
[28] : This method is a time-aware service prediction framework based on deep learning, which combines tensor factorization and deep learning for time-aware service recommendation.
[0187] 7) TF-KMP (Temporal QoS forecasting with collaborative filtering QoS prediction based on K-means clustering)
[29] : This method combines TF and KMP to predict missing QoS values. TF (Temporal QoS forecasting based on historical values) takes the average of historical QoS values as the predicted QoS value, and KMP (Collaborative filtering QoS prediction based on K-means clustering) is a collaborative filtering QoS prediction method based on K-means clustering.
[0188] 8) TUIPCC (Time-aware user-service item-based CF using Pearson correlation coefficient)[7]: This method is based on collaborative filtering, which divides the QoS into multiple time slices and then uses the time-aware similarity calculation mechanism to select similar users (or services) to predict the missing QoS.
[0189] 9) RNCF (Recurrent neural network based collaborative filtering)
[18] : This method adds a multi-layer GRU structure to the neural collaborative filtering framework and shares call records on different time slices to perform QoS prediction. It is a prediction method based on collaborative filtering.
[0190] B. Experimental parameter setting comparison experiment
[0191] In order to analyze the impact of different parameter settings on the prediction accuracy of the model in this paper, the following experiments are carried out when the matrix density is 5%, 10%, 15%, and 20% respectively to determine the optimal values of the model parameters.
[0192] 1) Original user / service feature vector dimension l: The original user / service feature vector dimension represents the number of individual user and service features decomposed from the original user-service matrix Q, which determines how many individual features are used for QoS prediction. In order to study the impact of l on the prediction accuracy of the proposed model, L is set to 3 and l is set to 50, 60, 70, 80, 90, 100.
[0193] 2) Number of discriminator layers L: In order to study the impact of L on prediction accuracy, the matrix density is set to 15%, l is set to 50, M is set to 3, and L is set to 2, 3, 4, 5, 6.
[0194] 3) Time slice length M: In order to study the impact of time slice length on QoS prediction accuracy, l is set to 60, L is set to 3, and M is set to 4, 5, 6, 7, 8, 9, and 10.
[0195] 1) Dimension l of the original feature vector of user / service: The dimension l of the original feature vector of user / service represents the number of individual features of user and service decomposed from the original matrix Q of user-service, which determines how many individual features are used for QoS prediction. The influence of l on the prediction accuracy of the proposed model is studied. The experimental results are shown in Figure 5 shown.
[0196] Fig.9. The impact of the original feature vector dimension of users / services on prediction accuracy
[0197] like Figure 5As shown in the figure, as l increases, the prediction accuracy of QoS continues to improve. When l exceeds 60, the prediction accuracy of QoS begins to decline. This is because higher dimensions can mine more features, making the model more effective in feature learning and achieving higher prediction accuracy. However, as the dimension increases, overfitting problems are prone to occur, resulting in a decrease in accuracy. As the matrix density increases from 5% to 20%, the prediction accuracy improves significantly. As the density of the user-service original QoS matrix increases, the probability matrix decomposition can more accurately obtain the user / service potential feature vector, thereby improving the prediction accuracy of the model. Therefore, in the following comparative experiment, l is taken as 60.
[0198] 2) Number of discriminator layers L: The influence of the number of discriminator layers L on the prediction accuracy of the model in this paper is studied. The experimental results are as follows Figure 6 shown.
[0199] like Figure 6 As shown in the figure, when L<3, as L increases, the prediction accuracy also increases. This is because a deeper network can better learn the intrinsic connections in the sample. However, when L>3, the prediction accuracy decreases as L increases, because as the network deepens, the risk of overfitting also increases. Therefore, L is set to 3 in the following comparative experiments.
[0200] 3) Time slice length M: The influence of time slice length on QoS prediction accuracy is studied. The experimental results are as follows: Figure 7 shown.
[0201] like Figure 7 As shown in the figure, when M<8, as L increases, the prediction accuracy also increases. This is because time information can provide more features to optimize the prediction results. However, when M>8, the prediction accuracy decreases as M increases, because as the length of the time slice increases, the risk of overfitting also increases. Therefore, in the following comparative experiments, M is set to 8.
[0202] C.Performance Comparison
[0203] The MAE and RMSE of the eight methods are compared under four different matrix densities (5%, 10%, 15%, and 20%). Table 2 shows the MAE and RMSE of the response time of different prediction methods, and Table 3 shows the MAE and RMSE of the throughput of different prediction methods.
[0204] Table 2 Response time comparison
[0205]
[0206] Table 3 Throughput comparison
[0207]
[0208] The MAE and RMSE of the response time of the 10 methods are given in Table 2. Under four matrix densities, the proposed model outperforms the other 9 methods by 0.69% to 11.97%.
[0209] Table 3 gives the MAE and RMSE of the throughput of the nine methods. The throughput of the proposed model is 0.20% to 10.75% higher than that of the other methods. From Tables 2 and 3, it can be seen that for different QoS attributes (response time and throughput), DGRN achieves the highest prediction accuracy among the compared methods. The best results are also achieved under different matrix densities. As the matrix density increases, the prediction accuracy will improve because more data can be used to train a more accurate model, thereby improving the service QoS prediction accuracy.
[0210] Based on the same inventive concept, the present invention also provides a computer device, which includes: one or more processors, and a memory for storing one or more computer programs; the program includes program instructions, and the processor is used to execute the program instructions stored in the memory. The processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. It is the computing core and control core of the terminal, which is used to implement one or more instructions, specifically for loading and executing one or more instructions in a computer storage medium to implement the above method.
[0211] It needs to be further explained that, based on the same inventive concept, the present invention also provides a computer storage medium, on which a computer program is stored, and the computer program is executed by a processor to execute the above method. The storage medium can adopt any combination of one or more computer-readable media. The computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electrical, magnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples (non-exhaustive list) of computer-readable storage media include: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present invention, a computer-readable storage medium can be any tangible medium containing or storing a program, which can be used by an instruction execution system, device or device or used in combination with it.
[0212] In the description of this specification, the description with reference to the terms "one embodiment", "example", "specific example", etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present disclosure. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described can be combined in any one or more embodiments or examples in a suitable manner.
[0213] The above shows and describes the basic principles, main features and advantages of the present disclosure. Those skilled in the art should understand that the present disclosure is not limited by the above embodiments, and the above embodiments and descriptions are only for explaining the principles of the present disclosure. Without departing from the spirit and scope of the present disclosure, the present disclosure may have various changes and improvements, and these changes and improvements fall within the scope of the present disclosure to be protected.
Claims
1. A deep learning method for service QoS prediction based on time-aware feature-oriented optimization, characterized in that: The method comprises the following steps: Use the probability matrix decomposition method to decompose the original QoS matrix of users and services on the time slice, obtain the potential feature matrix of users and services on the time slice, and then obtain the potential feature vector of users and services on the time slice; The process of obtaining the potential feature vectors of users and services on a time slice comprises the following steps: Set the time slice to [τ-M,τ-1], and is the original QoS matrix of users and services at the tth time slice, where m and n are the number of users and services respectively. t Perform probability matrix decomposition to obtain the potential feature matrix of users and services at the tth time slice and Among them U t Each column of represents the potential feature vector of user i at the tth time slice, S t Each column in represents the potential feature vector of service j at the tth time slice, and d is the dimension of the user / service potential feature vector; Set the QoS value of user i for service j in the tth time slice Is and The inner product of is determined, that is: In formula (1), is the QoS value of user i for service j in the tth time slice, N() represents the normal distribution, U t and S t is the potential feature matrix of users and services at the t-th time slice, T is the transposed symbol, σ 2 is the variance of the original QoS matrix, then the conditional probability of the user-service original QoS matrix is: In formula (2), I ij is the indicator function, Q t is the user-service original QoS matrix at the tth time slice, if If it is known, the function value of the indicator function is 1, otherwise the function value of the indicator function is 0. Assume that and They all obey the normal distribution, that is: In formula (3) and formula (4), σ U and σ S is the standard deviation of the user latent feature vector and the service latent feature vector; Since the posterior probability is equal to the prior probability multiplied by the likelihood probability, we can get U t , S t The posterior probability of is shown in formula (5): Taking the logarithm of both sides of equation (5) yields equation (6): The maximum a posteriori probability equivalent maximization objective function is shown in formula (7): In formula (7), E is the maximum a posteriori probability equivalent maximization objective function, Use stochastic gradient descent to update and As shown in formula (8) and formula (9): In formula (8) and formula (9), η is the learning rate that controls the speed of gradient descent during the iteration process; The obtained potential feature vectors of the user constitute the user's time feature set, and the obtained potential feature vectors of the service constitute the service's time feature set; The deep gated recurrent network DGRN is used as a generator, and the temporal feature sets of users and services are input into the DGRN respectively, and the user's time-aware user features and the service's time-aware service features are output respectively; Perform probability matrix decomposition on the QoS matrix training set to obtain the baseline user characteristics of users and services; Using multiple layers of fully connected layers as a discriminator, and inputting the obtained service features based on time perception into the discriminator to obtain a first service discrimination result, and using the first service discrimination result to calculate the generator loss, and using the generator loss to train the generator network parameters; Inputting the obtained service characteristics based on time perception and the service benchmark user characteristics into the discriminator respectively, obtaining a second service discrimination result and a third service discrimination result, calculating the discriminator loss by using the second service discrimination result and the third service discrimination result, and training the discriminator network parameters by using the discriminator loss; The process of inputting the obtained user characteristics based on time perception into the discriminator is the same as the process of inputting the obtained service characteristics based on time perception into the discriminator; The trained generator is used to obtain the time-aware features of the end user and the service, and the time-aware features of the end user and the time-aware features of the final service are multiplied to obtain the final QoS prediction value.
2. The deep learning method for service QoS prediction based on time-aware feature-oriented optimization according to claim 1 is characterized in that: After obtaining the user / service potential feature vector on the time slice [τ-M,τ-1] by using probability matrix decomposition, the potential feature vector of user i on these M time slices constitutes the time feature set of user i, which is recorded as Right now The latent feature vector of service j constitutes the temporal feature set of service j, denoted as Right now 3. The deep learning method for service QoS prediction based on time-aware feature-oriented optimization according to claim 1 is characterized in that: The construction process of the deep gated recurrent network DGRN is as follows: Given user i calling service j on time slice [τ-M, τ-1], we fully utilize the time feature sets of user i and service j, and perform time perception on the time feature sets of user i and service j to obtain the service time feature set of service j on time slice [τ-M, τ-1]. As input, the DGRN structure is as follows: In the formula, the DGRN structure consists of M deep gated recurrent units DRGU, is the input of the kth DGRU, denoted as DGRU k , which is the potential feature vector of service j in the τ+k-1th time slice; h k-1 It is the hidden state passed down from the previous node, including the relevant information of the previous node, combined with S j τ-M+k-1 and h k-1 , DGRU will get the hidden state h passed to the next node k , the hidden state h output by the Mth node M As the final result, the initial value h0 of the hidden state is set to 0.
4. The deep learning method for service QoS prediction based on time-aware feature-oriented optimization according to claim 3 is characterized in that: Using the constructed DRGN, the time feature sets of users and services are respectively input into the DGRN, and the process of outputting the user's time-aware user features and the service's time-aware service features respectively includes the following steps: The hidden state h passed down through the (k-1)th node k-1 and the input of node k, i.e. S j τ-M+k-1 , to obtain the states of the two gates: reset gate as shown in formula (10): r k =sigmoid(r′ k ×γ r +α r ) (10) In formula (10), r′ k =ReLU(h k-1 ×γ hr +S j τ-M+k-1 ×γ xr +α rr ), γ hr , γ xr , γ r is the weight matrix, α rr and α r is the bias matrix; Let z k is the update gate of node k, as shown in formula (11): z k =sigmoid(z′ k ×γ z +α z ) (11) In formula (11), γ hz , γ xz , γ z is the weight matrix, α zz and α z is the bias matrix; Get r k and z k After two gating signals, use the reset gating to get h k-1 Data after reset h k-1 r k , and then with x k Get the current node information together As shown in formula (12): In formula (12), γ xh , γ hh , γ h is the weight matrix, α hh and α h is the bias matrix; Use update gating to update and get the hidden state h of node k k , and h k Send it to the (k+1)th node, as shown in formula (13); After passing through M nodes, the output result is used as the time-aware service feature of service j Time-aware service characteristics of user i The acquisition process of is the same as the acquisition process of the time-aware service characteristics of service j.
5. The deep learning method for service QoS prediction based on time-aware feature-oriented optimization according to claim 1 is characterized in that: The process of calculating the generator loss and the discriminator loss includes: Generator loss: Generate time-aware service features using a generator; Input the time-aware service feature into the discriminator to obtain the first service discrimination result ε 1 ; Using the first service judgment result ε 1 Calculate the generator loss L G =MSE(ε 1 ); Using the generator loss L G Train the generator network parameters; Discriminator loss: Input the benchmark service feature into the discriminator and obtain the second service discrimination result ε 2 ; Using the second service to determine the result ε 2 Calculate the loss L D1 =MSE(ε 2 ); Input the time-aware service feature into the discriminator to obtain the third service discrimination result ε 3 ; Using the third service to determine the result ε 3 Calculate the loss L D2 =MSE(ε 2 ); Calculate the discriminator loss L D =L D1 +L D2 ; Using the discriminator loss L D Train the discriminator network parameters.
6. The deep learning method for service QoS prediction based on time-aware feature-oriented optimization according to claim 5 is characterized in that: The mean square error (MSE) is used as the loss function during the training of the network parameters. The MSE calculation process is as follows: In formula (14), n is the number of services input during the training process, is the discriminator’s judgment result on service j, is the discriminant result label during training, And the gradient descent method is used for training, as shown in equations (15) to (18). First, the parameters in the network are trained using the generator loss based on equations (17) and (18): In formula (15) and formula (16), λ is the learning rate that controls the speed of gradient descent during the iteration process, γ G is the set of all weight matrices in the generator network, α G is the set of all bias matrices in the generator network, and then the parameters in the network are trained using the discriminator loss through equations (17) and (18): In formula (17), Y D is the set of all weight matrices in the discriminator network; In formula (18), α D is the set of all bias matrices in the generator network.
7. The deep learning method for service QoS prediction based on time-aware feature-oriented optimization according to claim 1 is characterized in that: The process of obtaining the final QoS prediction value comprises the following steps: The time feature vector sets of user i and service j on the time slice [τ-M, τ-1] are input into DGRN respectively, and the features are optimized through time perception, and then the time-aware user features of the final user i are output respectively. and the time-aware service characteristics of the final service j and The product of is the QoS prediction value of user i for service j in time slice τ. The calculation process is shown in formula (19):
8. A device, characterized in that include: one or more processors; A memory for storing one or more programs; When one or more of the programs are executed by one or more of the processors, one or more of the processors implement the deep learning method for service QoS prediction based on time-aware feature-oriented optimization as described in any one of claims 1-7.
9. A storage medium containing computer executable instructions, characterized in that: The computer executable instructions, when executed by a computer processor, are used to execute the deep learning method for service QoS prediction based on time-aware feature-oriented optimization as described in any one of claims 1-7.
Citation Information
Patent Citations
Mechanism and data hybrid driven generative adversarial network soft measurement modeling method
CN112668196A
Cloud service QoS deep learning prediction model
CN113743675A