QoS prediction method and system based on multiple double-layer stacked denoising autoencoders
By using multiple double-layer stack noise reduction autoencoder in Web service QoS prediction and improving Jaccard similarity coefficient to obtain trusted similar neighbors, the problems of data sparseness and noise data impact are solved, and high-accuracy QoS prediction and quality improvement of recommended results are achieved.
Patent Information
- Application Number
- CN202210445520.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-26
- Publication Date
- 2025-05-13
- Estimated Expiration
- 2042-04-26
AI Technical Summary
The prior art ignores the correlation between data features and the impact of noise data on prediction accuracy in QoS prediction of Web services, resulting in low quality of recommendation results.
The QoS prediction method based on a multi-dual-layer stack noise reduction autoencoder is adopted to obtain trusted similar neighbors by obtaining user locations and improving Jaccard similarity coefficients, and data pre-filling and user preference information are obtained. Combined with multiple different noise addition operations, a high-accuracy QoS prediction value is obtained.
It effectively solves the problem of data sparseness, highlights the correlation characteristics between QoS data, avoids overfitting, and improves the accuracy of QoS prediction and the quality of recommended results.
Smart Images

Figure CN114817722B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of communication technology, and in particular relates to a QoS prediction method and system based on a multiple double-layer stacked denoising autoencoder. Background Art
[0002] The statements in this section merely provide background information related to the present invention and do not necessarily constitute prior art.
[0003] Traditional Web service recommendation methods are limited to satisfying user functional requirements, but ignore the non-functional attributes (QoS) of Web services, making the recommendation results unable to meet user needs well. In fact, QoS (such as response time, throughput, reliability, etc.) is a key criterion for service selection and recommendation.
[0004] In real network environments, compared with the huge set of Web services, the number of services called by users is very small, resulting in a serious lack of historical QoS values. Although previous QoS prediction methods have achieved some success in solving the problem of data sparsity, they ignore the correlation between data features and the impact of noise data on QoS prediction accuracy, thereby reducing the quality of service recommendations. In addition, existing deep learning models often only focus on fully mining the potential features of data to improve QoS prediction accuracy, but rarely pay attention to the contextual information (location information) of users or services and all the attribute characteristics of the users themselves. Summary of the invention
[0005] In order to solve at least one technical problem existing in the above-mentioned background technology, the present invention provides a QoS prediction method and system based on multiple double-layer stacked denoising autoencoders, which obtains the trusted similar neighbors of the target user according to the user position and the improved Jaccard similarity coefficient, and uses the trusted neighbors to pre-fill the data of the initial user-service QoS matrix to solve the impact of data sparsity on model training, and uses the information of user calling services to obtain user preferences as auxiliary information of the pre-filled QoS matrix to improve the prediction accuracy. The pre-filled QoS matrix containing auxiliary information is trained through the learning of multiple double-layer stacked denoising autoencoders to obtain a highly accurate predicted QoS value, and can highlight the correlation characteristics between QoS data, avoiding the overfitting phenomenon of traditional models.
[0006] In order to achieve the above object, the present invention adopts the following technical solution:
[0007] A first aspect of the present invention provides a QoS prediction method based on a multiple double-layer stacked denoising autoencoder, comprising the following steps:
[0008] Obtain location information of Internet users and services invoked by them;
[0009] Based on the location information of Internet users and the services they call, the QoS value gap in the intersection of services called by users is introduced when calculating the overall similarity between the user and service QoS vectors to obtain similar neighbors of the target user and service.
[0010] The initial user-service QoS matrix is pre-filled with data using the target user's similar neighbors, and the user preference information is obtained using the information of the service's similar neighbors to obtain a pre-filled QoS matrix containing the user preference information;
[0011] Based on the pre-filled QoS matrix containing user preference information and the trained multiple double-layer stacked denoising autoencoders, multiple operations with different denoising rates and multiple encoding and decoding are performed to obtain the QoS prediction value.
[0012] A second aspect of the present invention provides a QoS prediction system based on a multiple double-layer stacked denoising autoencoder, comprising:
[0013] An information acquisition module is used to obtain location information of Internet users and services called by users;
[0014] A similar neighbor acquisition module is used to obtain similar neighbors of target users and services based on the location information of Internet users and services called by users. When calculating the overall similarity between the QoS vectors of users and services, the QoS value gap in the intersection of services called by users is introduced to obtain similar neighbors of target users and services respectively.
[0015] The pre-filled QoS matrix module is used to pre-fill the initial user-service QoS matrix with data using similar neighbors of the target user; and obtain user preference information using information of similar neighbors of the service to obtain a pre-filled QoS matrix containing user preference information;
[0016] The QoS prediction module is used to perform multiple operations with different denoising rates and multiple encoding and decoding to obtain QoS prediction values based on a pre-filled QoS matrix containing user preference information and a trained multiple double-layer stacked denoising autoencoder.
[0017] A third aspect of the present invention provides a computer-readable storage medium.
[0018] A computer-readable storage medium stores a computer program, which, when executed by a processor, implements the steps in the QoS prediction method based on multiple double-layer stacked denoising autoencoders as described above.
[0019] A fourth aspect of the present invention provides a computer device.
[0020] A computer device comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the steps in the QoS prediction method based on multiple double-layer stacked denoising autoencoders as described above are implemented.
[0021] Compared with the prior art, the present invention has the following beneficial effects:
[0022] The present invention obtains the target user's trusted similar neighbors based on the user's location and the improved Jaccard similarity coefficient, and uses the trusted neighbors to pre-fill the initial user-service QoS matrix with data, solving the impact of data sparsity on model training, and using the information of user service calls to obtain user preferences as auxiliary information for pre-filling the QoS matrix, improving the prediction accuracy, and using the pre-filled QoS matrix containing auxiliary information to obtain a highly accurate predicted QoS value through the learning and training of multiple double-layer stacked denoising autoencoders. The method provided by this proposal can highlight the correlation characteristics between QoS data and avoid the overfitting phenomenon of traditional models.
[0023] In the process of obtaining user (service) trusted similar neighbors, this proposal innovatively proposes an improved Jaccard similarity coefficient calculation method, which ensures a high similarity between users and trusted similar neighbors (services and trusted similar neighbors), and effectively avoids the QoS pre-filling error problem caused by invalid similar neighbors in existing methods.
[0024] In the process of QoS prediction, this proposal innovatively proposes a multiple double-layer stacked denoising autoencoder model. This model performs noise addition operations on the QoS matrix at different low noise addition rates multiple times, ensuring the correlation characteristics between QoS data, avoiding overfitting, and effectively improving the QoS prediction accuracy.
[0025] Advantages of additional aspects of the present invention will be given in part in the following description, and in part will become obvious from the following description, or will be learned through practice of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] The accompanying drawings in the specification, which constitute a part of the present invention, are used to provide a further understanding of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute improper limitations on the present invention.
[0027] Figure 1 This is an overall framework diagram of QoS prediction of a multiple double-layer stacked denoising autoencoder according to the first embodiment of the present invention;
[0028] Figure 2 is a flowchart of pre-filling missing values of the initial QoS matrix according to the first embodiment of the present invention;
[0029] Figure 3 is a framework diagram for obtaining user preference information according to the first embodiment of the present invention;
[0030] Figure 4 It is a schematic diagram of a multiple double-layer stacked denoising autoencoder according to the first embodiment of the present invention. DETAILED DESCRIPTION
[0031] The present invention will be further described below in conjunction with the accompanying drawings and embodiments.
[0032] It should be noted that the following detailed descriptions are all illustrative and intended to provide further explanation of the present invention. Unless otherwise specified, all technical and scientific terms used herein have the same meanings as those commonly understood by those skilled in the art to which the present invention belongs.
[0033] It should be noted that the terms used herein are only for describing specific embodiments and are not intended to limit exemplary embodiments according to the present invention. As used herein, unless the context clearly indicates otherwise, the singular form is also intended to include the plural form. In addition, it should be understood that when the terms "comprising" and / or "including" are used in this specification, it indicates the presence of features, steps, operations, devices, components and / or combinations thereof.
[0034] Embodiment 1
[0035] like Figure 1 As shown, this embodiment provides a QoS prediction method based on a multiple double-layer stacked denoising autoencoder, comprising the following steps:
[0036] Step 1: Obtain location information of Internet users and services called by users;
[0037] The number of Web services on the Internet is extremely large, and users can only call a small number of services, which makes the historical QoS data obtained very sparse. In addition, due to the different geographical locations of users or services, the generated QoS values are also different, which will affect the QoS data values to be generated.
[0038] By comparing the obtained data sets, we can find that the QoS values generated by users in the same area when calling the same service are relatively close, and the QoS values generated by the same user calling different services in a certain area are often relatively close. From this, we can draw the following conclusion: location information is an important factor affecting QoS value, so the location information of Internet users and services is used as a prerequisite to calculate the similar neighbors of users and services.
[0039] Step 2: Based on the location information of Internet users and the services they call, when calculating the overall similarity between the user and service QoS vectors, the QoS value gap in the intersection of services called by users is introduced to obtain similar neighbors of the target user and service.
[0040] Among them, taking users as an example, similarity is calculated for users in the same autonomous system (AS) and country as the target user, and TOP-K similar users are obtained respectively. Then, TOP-K users are taken from all the obtained similar users to obtain similar neighbors of the final target user.
[0041] The method for obtaining similar neighbors of a service is the same as the method for obtaining similar neighbors of a target user, and will not be described in detail here.
[0042] Different users call different services, so the generated QoS vectors are different. However, there is a phenomenon that different users call the same service, that is, an intersection is generated, which is called the intersection part here, and the opposite is the non-intersection part. Since the vector space of the non-intersection part is different, it is difficult to calculate, so the similarity of the user-service QoS vector cannot be accurately calculated.
[0043] The Jaccard similarity coefficient only cares about whether the common features between two vectors are consistent, so it can solve the overall similarity between the QoS vectors of the target user (service) and other users (services).
[0044] As one or more embodiments, the formula for the Internet user to obtain similar neighbors of the target user in combination with the improved daccard similarity coefficient is:
[0045]
[0046] Among them, J U (β u , β v ) represents the Jaccard similarity between user u and user v, QG U The QoS value difference between the service invocation intersection of user u and user v;
[0047] The Jaccard similarity calculation formula between user u and user v is:
[0048]
[0049] Among them, S u is the set of services called by user u; S v is the set of services called by user v. U is the set of users, S is the set of services, I is the set of user-service QoS values, and the QoS vectors of users u, v∈U are represented by β u , βv , the user-service QoS matrix is R.
[0050] From formula (2), we can see that J(β u , β v ), the larger the value of , the greater the possibility that user u is similar to user v.
[0051] In order to express the similarity between users more carefully, this paper introduces the difference of the corresponding QoS values of the intersection part to improve the Jaccard similarity calculation.
[0052] The calculation of the QoS value gap between the intersection of user u and user v calling services is as follows:
[0053]
[0054] Among them, S u,v The intersection of services called by user u, v∈U; I ui QoS value for user u to call service i; For user v in the service set S u,v The average QoS value on the
[0055] From the formula, we can see that QG U The larger the value of , the smaller the difference in QoS values between user u and user v in calling the common service, and the greater the possibility that the two users are similar.
[0056] The formula for obtaining similar neighbors of a service by combining the information of the user calling the service with the improved Jaccard similarity coefficient is:
[0057]
[0058] Among them, U h is the set of users who have called service h; U k is the set of users who have called service k; U h,k is the intersection of users who have called service h, k∈S; S is the service set; I hj QoS value for user j to call service h; For service k in user set U h,k The average QoS value on the
[0059] Step 3: Use the target user's similar neighbors to pre-fill the initial user-service QoS matrix with data; and use the information of the service's similar neighbors to obtain the user's preference information, and obtain a pre-filled QoS matrix containing the user's preference information, specifically including:
[0060] like Figure 2As shown, step 301: using similar neighbors of the target user to pre-fill data for the initial user-service QoS matrix, specifically including:
[0061] (1) Using the initial user-service QoS matrix and adopting JQG u Method, calculate the similarity between the target user u and other users, and obtain the similar neighbor user matrix JQG;
[0062] (2) Get the top TOP-K from all similar neighbors to form a set N u , and obtain similar neighbors N respectively u Called service S Nu ;
[0063] (3) For the services called by the target user u and its similar neighbors, the set of intersection services (the services called by user u and its similar neighbors) is removed to obtain the set of non-intersection services SN u ';
[0064] (4) For non-intersection service set SN u 'In different services, all QoS values of the same service are averaged and filled into the missing QoS values of the corresponding service of the target user u;
[0065] (5) Perform the above operations for all users and finally obtain the pre-filled user-service QoS matrix S'.
[0066] By obtaining the user's preference information and adding it to each user row in the obtained pre-filled user-service QoS matrix as auxiliary information, a matrix with user preferences is obtained, which can better train the model and make the predicted QoS value more accurate.
[0067] Step 302: Using the information of similar neighbors of a service, the TOP-K similar neighbors of each service can be obtained, and each service and its similar neighbors are grouped into similar services es = (e0, e1, e2, ..., e K ). Then N services of the same type can be obtained, and the set of all services of the same type is represented as ES = (es1, es2, ..., es N ).
[0068] And obtain the number of services that the user has called in the same type of service, expressed as CN = (cn1, cn2, ..., cn N ). Select the two largest numbers in the set CN, and the calculation method is as follows:
[0069] fn=max(CN)
[0070] sn=max(CN-fn)
[0071] Among them, fh represents the maximum number of services called by users in a certain type of service; sn represents the second maximum number of services called by users in a certain type of service.
[0072] Suppose the QoS value set generated by each service in each category when the user calls it is eq = (q1, q2, ..., q K ) Calculate the weighted average of the QoS value for each type of service:
[0073]
[0074] in, The average QoS value generated by the user's call for a certain type of service.
[0075] According to fn and sn, we can get the user's two types of preferred services, esf and ess. According to the above formula, we can calculate esf and ess respectively. value: and will As the user's preference information.
[0076] like Figure 3 As shown, step 303: add the user preference information to the end of each user row in the pre-filled user-service QoS matrix (add two columns to fill them respectively at the end of the matrix), and obtain a pre-filled QoS matrix with user preferences.
[0077] Based on steps 1 to 3, the user-service QoS initial matrix R0∈R M×N Get the pre-filled QoS matrix R0′∈R with user preferences M×(N+2) .
[0078] Step 4: Based on the pre-filled QoS matrix containing user preference information and the trained multiple double-layer stacked denoising autoencoders, multiple operations with different denoising rates and multiple encoding and decoding are performed to obtain the QoS prediction value.
[0079] The multiple double-layer stacked denoising autoencoder performs multiple denoising operations on the vector data in the input layer at different rates and performs multiple encoding and decoding. Figure 4 As shown in FIG. 1 , the multiple double-layer stacked denoising autoencoder model fuses together stacked denoising autoencoders with different denoising rates (one is 0, and the other denoising rates are non-zero but not equal), thereby solving the influence of deterministic denoising operations on data features to a certain extent.
[0080] Wherein, the noise adding operation includes: Figure 4 It can be seen that the multiple double-layer stacked denoising autoencoder model needs to first perform different degrees of noise addition operations on the initial vector x of the input layer. The initial vector x∈R 1×(N+2) is R0′∈R M×(N+2)A user-service initial QoS data vector in.
[0081] The multiple double-layer stacked denoising autoencoder model has a denoising rate of 0 in the first denoising operation, and the remaining denoising operations add Gaussian noise to the initial vector x according to different denoising rates.
[0082] Assuming that the noise rate is expressed as q∈[0,1], the initial vector x of the input layer is noised multiple times according to the number of layers of the model, and its noise rate is expressed as:
[0083]
[0084] Among them, Q t (·) represents the noise rate of the t-th layer, and when t=1, the noise rate of the first layer is 0, and no operation is performed on the initial vector x. When t>1, the t-th layer double-layer stacked denoising autoencoder is subjected to different degrees of noise addition. represents the data value after adding noise to the i-th QoS value in the t-th layer input vector; represents the i-th QoS value in the t-th layer input vector; γ represents the added noise data, which obeys the standard normal distribution and satisfies γ∈[0, N(0, 1)].
[0085] In addition, it should be noted that the QoS value without adding noise to the input vector of each layer is magnified Thus, the user-service noisy QoS vector after the complete noise addition operation is obtained:
[0086] Encoding phase: Obtaining the user-service noisy QoS vector After that, the model obtains t input vectors in total, and the first user-service noise QoS vector is the initial user-service QoS vector without noise, and the subsequent t-1 vectors are all noise QoS vectors with different noise addition rates.
[0087] Next, for these user-service noise QoS vectors The encoding operation is performed to map it to the low-dimensional features of the deepest hidden layer:
[0088]
[0089] Among them, h t represents the t-th layer of deep potential features extracted after two layers of encoding; f 1 represents the activation function of the outer encoding end; f 2 represents the activation function of the inner coding end; w1 represents the feature weight of the outer coding end; w2 represents the feature weight of the inner coding end; b1 represents the bias term of the outer coding end; b2 represents the bias term of the inner coding end.
[0090] Decoding stage: This stage requires the low-dimensional potential features h of the hidden layer t Decode it and restore it to a vector of the same size as the initial user-service QoS vector:
[0091]
[0092] in, represents the QoS prediction vector obtained by the output layer of the tth layer; g 1 represents the activation function of the outer layer decoding end; g 2 represents the activation function of the inner decoding end; w1′ represents the feature weight of the outer decoding end; w2′ represents the feature weight of the inner decoding end; b1′ represents the bias term of the outer decoding end; b2′ represents the bias term of the inner decoding end.
[0093] Finally, the t QoS prediction vectors obtained by the multiple double-layer stacked denoising autoencoder model are Combined together, the final QoS prediction vector is obtained
[0094]
[0095] It is the final QoS prediction vector obtained by the decoding layer.
[0096] The objective function of predicting the missing QoS value using the multiple double-layer stacked denoising autoencoder model is expressed as:
[0097]
[0098] Among them, Losses(·) represents the loss function of the multiple double-layer stacked denoising autoencoder model. This paper adopts the square error as the loss function; λ represents the coefficient to prevent overfitting.
[0099] As one or more embodiments, the neural network is trained by updating the parameters of the iterative encoding end and the decoding end using a gradient descent method as follows:
[0100]
[0101]
[0102]
[0103]
[0104]
[0105]
[0106]
[0107]
[0108] The multiple double-layer stacked denoising autoencoder model performs the above training on each user-service QoS vector in the user-service QoS initial matrix R0 so that the obtained QoS prediction vector achieves the best convergence effect, and then obtains the user-service QoS matrix after predicting the missing QoS value.
[0109] Embodiment 2
[0110] This embodiment provides a QoS prediction system based on a multiple double-layer stacked denoising autoencoder, including:
[0111] An information acquisition module is used to obtain location information of Internet users and services called by users;
[0112] A similar neighbor acquisition module is used to obtain similar neighbors of target users and services by introducing the QoS value gap in the intersection of services called by users when calculating the overall similarity between the QoS vectors of users and services based on the location information of Internet users and services called by users;
[0113] A pre-filled QoS matrix module is used to pre-fill the initial user-service QoS matrix with data using similar neighbors of the target user, and obtain user preference information using information of similar neighbors of the service to obtain a pre-filled QoS matrix containing user preference information;
[0114] The QoS prediction module is used to perform multiple operations with different denoising rates and multiple encoding and decoding to obtain QoS prediction values based on a pre-filled QoS matrix containing user preference information and a trained multiple double-layer stacked denoising autoencoder.
[0115] Embodiment 3
[0116] This embodiment provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the steps in the QoS prediction method based on multiple double-layer stacked denoising autoencoders as described above are implemented.
[0117] Embodiment 4
[0118] This embodiment provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, the steps in the QoS prediction method based on multiple double-layer stacked denoising autoencoders as described above are implemented.
[0119] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of hardware embodiments, software embodiments, or embodiments combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) containing computer-usable program code.
[0120] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0121] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0122] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0123] A person skilled in the art can understand that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program, and the program can be stored in a computer-readable storage medium, and when the program is executed, it can include the processes of the embodiments of the above-mentioned methods. The storage medium can be a disk, an optical disk, a read-only memory (ROM) or a random access memory (RAM), etc.
[0124] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.
Claims
1. A QoS prediction method based on multiple double-layer stacked denoising autoencoders, characterized in that: The steps include: Obtain location information of Internet users and services invoked by them; Based on the location information of Internet users and the services they call, the QoS value gap in the intersection of services called by users is introduced when calculating the overall similarity between the user and service QoS vectors to obtain similar neighbors of the target user and service. Specifically, similarity calculations are performed on users in the same autonomous system and country as the target user, and TOP-K similar users are obtained respectively. Then, TOP-K similar users are obtained from all the obtained similar users to obtain similar neighbors of the final target user. The method for obtaining similar neighbors of the service is the same as the method for obtaining similar neighbors of the target user. Different users call different services, so the generated QoS vectors are different. However, there is a phenomenon that different users call the same service, that is, an intersection is generated, which is called the intersection part. The opposite is the non-intersection part. The formula for the Internet user to obtain the similar neighbors of the target user by combining the improved Jaccard similarity coefficient is: Among them, J U (β u ,β v ) represents the Jaccard similarity between user u and user v, QG U The QoS value difference between the service invocation intersection of user u and user v; The Jaccard similarity calculation formula between user u and user v is: Among them, S u is the set of services called by user u; S v is the set of services called by user v; U is the set of users, S is the set of services, I is the set of user-service QoS values, and the QoS vectors of users u, v∈U are represented by β u , β v , the user-service QoS matrix is R; From the similarity calculation formula, we can know that J(β u ,β v ) is larger, the more likely it is that user u is similar to user v; The calculation of the QoS value gap between the intersection of user u and user v calling services is as follows: Among them, S u,v The intersection of services called by users u,v∈U; I ui QoS value for user u to call service i; For user v in the service set S u,v Average QoS value on U The larger the value of , the smaller the difference in QoS values between user u and user v in calling the common service, and the greater the possibility that the two users are similar; The formula for obtaining similar neighbors of a service by combining the information of the user calling the service with the improved Jaccard similarity coefficient is: Among them, U h is the set of users who have called service h; U k is the set of users who have called service k; U h,k is the intersection of users who have called service h,k∈S; S is the service set; I hj QoS value for user j to call service h; For service k in user set U h,k Average QoS value on The initial user-service QoS matrix is pre-filled with data using the target user's similar neighbors, and the user preference information is obtained using the information of the service's similar neighbors to obtain a pre-filled QoS matrix containing the user preference information; Train multiple double-layer stacked denoising autoencoders; Based on the pre-filled QoS matrix containing user preference information and the trained multiple double-layer stacked denoising autoencoders, multiple operations with different denoising rates and multiple encoding and decoding are performed to obtain the QoS prediction value.
2. The QoS prediction method based on multiple double-layer stacked denoising autoencoders according to claim 1, characterized in that: The method of pre-filling the initial user-service QoS matrix with data using similar neighbors of the target user includes: Based on the initial user-service QoS matrix, the similarity between the target user and other users is calculated to obtain the similar neighbor user matrix; Get the top TOP-K neighbors from all similar neighbors to form a similar neighbor set, and get the services called by the similar neighbor set respectively; Eliminate the intersection service set that the target user and similar neighbors call together to obtain the non-intersection service set; The average operation of all QoS values of the same service is performed on different services in the non-intersection service set, and the missing QoS values on the corresponding service of the target user are filled in.
3. The QoS prediction method based on multiple double-layer stacked denoising autoencoders according to claim 1, characterized in that: The method of obtaining user preference information by using information of similar neighbors of the service includes: Get the TOP-K similar neighbors of each service, and group each service and its similar neighbors into similar services; Get the set of service numbers that the user has called in the same type of service, and select the two largest numbers in the set; The two types of user preference services are obtained according to the two largest numbers, and the user preference information is obtained by performing weighted average calculation on the QoS value of each type of service.
4. The QoS prediction method based on multiple double-layer stacked denoising autoencoders according to claim 1, characterized in that: The noise adding rate operation includes: the noise adding rate in the first noise adding operation is 0, and the remaining noise adding operations add Gaussian noise to the initial vector according to different noise adding rates.
5. The QoS prediction method based on multiple double-layer stacked denoising autoencoders according to claim 1, characterized in that: The encoding stage and the decoding stage include: After obtaining the user-service noisy QoS vector, the user-service noisy QoS vector is encoded and mapped to the deepest low-dimensional feature of the hidden layer; The low-dimensional latent features of the hidden layer are decoded and restored to a vector of the same size as the initial user-service QoS vector.
6. The QoS prediction method based on multiple double-layer stacked denoising autoencoders according to claim 1, characterized in that: In the process of training the multiple double-layer stacked denoising autoencoder, the gradient descent method is used to update the parameters of the iterative encoding end and the decoding end.
7. The QoS prediction system based on multiple double-layer stacked denoising autoencoders is characterized by: include: An information acquisition module is used to obtain location information of Internet users and services called by users; A similar neighbor acquisition module is used to obtain similar neighbors of target users and services by introducing the QoS value gap in the intersection of services called by users when calculating the overall similarity between the QoS vectors of users and services based on the location information of Internet users and services called by users; Specifically, similarity calculations are performed on users in the same autonomous system and country as the target user, and TOP-K similar users are obtained respectively. Then, TOP-K similar users are obtained from all the obtained similar users to obtain similar neighbors of the final target user. The method for obtaining similar neighbors of the service is the same as the method for obtaining similar neighbors of the target user. Different users call different services, so the generated QoS vectors are different. However, there is a phenomenon that different users call the same service, that is, an intersection is generated, which is called the intersection part. The opposite is the non-intersection part. The formula for the Internet user to obtain the similar neighbors of the target user by combining the improved Jaccard similarity coefficient is: Among them, J U (β u ,β v ) represents the Jaccard similarity between user u and user v, QG U The QoS value difference between the service invocation intersection of user u and user v; The Jaccard similarity calculation formula between user u and user v is: Among them, S u is the set of services called by user u; S v is the set of services called by user v; U is the set of users, S is the set of services, I is the set of user-service QoS values, and the QoS vectors of users u, v∈U are represented by β u , β v , the user-service QoS matrix is R; From the similarity calculation formula, we can know that J(β u ,β v ) is larger, the more likely it is that user u is similar to user v; The calculation of the QoS value gap between the intersection of user u and user v calling services is as follows: Among them, S u,v The intersection of services called by users u,v∈U; I ui QoS value for user u to call service i; For user v in the service set S u,v Average QoS value on U The larger the value of , the smaller the difference in QoS values between user u and user v in calling the common service, and the greater the possibility that the two users are similar; The formula for obtaining similar neighbors of a service by combining the information of the user calling the service with the improved Jaccard similarity coefficient is: Among them, U h is the set of users who have called service h; U k is the set of users who have called service k; U h,k is the intersection of users who have called service h,k∈S; S is the service set; I hj QoS value for user j to call service h; For service k in user set U h,k Average QoS value on A pre-filled QoS matrix module is used to pre-fill the initial user-service QoS matrix with data using similar neighbors of the target user, and obtain user preference information using information of similar neighbors of the service to obtain a pre-filled QoS matrix containing user preference information; Train multiple double-layer stacked denoising autoencoders; The QoS prediction module is used to perform multiple operations with different denoising rates and multiple encoding and decoding to obtain QoS prediction values based on a pre-filled QoS matrix containing user preference information and a trained multiple double-layer stacked denoising autoencoder.
8. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the steps in the QoS prediction method based on multiple double-layer stacked denoising autoencoders as described in any one of claims 1 to 6 are implemented.
9. A computer device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the steps in the QoS prediction method based on multiple double-layer stacked denoising autoencoders are implemented as described in any one of claims 1-6.
Citation Information
Patent Citations
Constructing method for unsupervised learning unified characteristic extractor
CN108304359A
Enhanced collaborative filtering recommendation method based on stacked sparse noise reduction auto-encoder
CN109783739A