Time-aware hybrid cloud service recommendation method based on entropy

Through the entropy-based time-aware hybrid cloud service recommendation method, the defects in the prior art that failed to objectively quantify the user-perceived service quality differences and did not consider the trustworthiness of QoS indicator ratings were solved, and more accurate user similarity and trust calculations were achieved, and the quality and accuracy of service recommendations were improved.

CN116033001BActive Publication Date: 2025-03-04HEFEI UNIV OF TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202211692588.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-28
Publication Date
2025-03-04
Estimated Expiration
2042-12-28

AI Technical Summary

Technical Problem

The existing cloud service recommendation method based on collaborative filtering fails to objectively quantify the user-perceived service quality differences, and does not consider the trustworthiness of QoS indicator scores, resulting in low recommendation accuracy and quality.

Method used

The entropy-based time-aware hybrid cloud service recommendation method is adopted to determine the service weight by calculating the entropy value of the co-call services between users, and combining the Pearson similarity and trust calculation method to obtain the user's similar and trusted nearest neighbor user set, and then QoS indicator prediction and service recommendation are carried out.

Benefits of technology

It improves the accuracy of user similarity and trust calculations, enhances the quality of service recommendations, alleviates data sparsity, and eliminates the impact of unreliable QoS information.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116033001B_ABST
    Figure CN116033001B_ABST
Patent Text Reader

Abstract

The present invention provides a method, system, storage medium and electronic device for recommending time-aware hybrid cloud services based on entropy, and relates to the technical field of cloud service recommendation. The present invention includes: time-aware co-evaluation service weight calculation based on entropy; user similarity and trust calculation; QoS indicator score prediction and service recommendation. The cloud service recommendation method can effectively solve the problems of low service QoS prediction accuracy, poor recommendation effect, and data sparsity. Experiments have proved that introducing entropy-based service weights and user trust into traditional recommendation algorithms is feasible and effective, and has certain practical significance.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of cloud service recommendation, and in particular to a method, system, storage medium and electronic device for recommending time-aware hybrid cloud services based on entropy. Background Art

[0002] Cloud computing provides a highly distributed platform and a flexible computing architecture to provide on-demand and high-quality services for demand / target users. In many cloud computing platforms, such as Amazon EC2, Google App Engine, and Microsoft Azure, various distributed resources and functions are virtualized and encapsulated into component services and deployed in cloud infrastructure to provide rich functions. As more and more services share similar or even overlapping functions in cloud platforms, the "information explosion" makes it difficult for users to decide which service to choose. In this context, recommendation systems have emerged, which aim to predict the personalized preferences of target users for recommended services at the current moment through the user's past service call behavior, so as to recommend services that may be of interest to the target user.

[0003] Quality of Service (QoS) indicators are universal standards used to measure user personalized preferences in recommendation systems, such as time, cost, reliability, etc. As recommendation systems are constantly updated, more and more QoS-based service quality prediction and recommendation algorithms have been proposed and applied to different fields, such as movies, books, music, etc. Collaborative filtering (CF) algorithm is one of the most popular and widely used recommendation algorithms. Its basic assumption is that similar users share similar interests, that is, the historical service call QoS records of similar users are used to predict the service QoS value of the target user and make service recommendations.

[0004] However, existing CF-based cloud service recommendation methods assume that all historical QoS indicator scores of users have the same weight for user similarity calculation, ignoring the differences in user-perceived service quality caused by the dynamic nature of service quality and the instantaneous nature of user preferences. A few time-aware service recommendation methods only measure the degree of change in service QoS from the length of subjective time series, resulting in incorrect estimation of user similarity. In addition, the trust issues caused by the existence of false or even malicious QoS indicator scores will also greatly affect the prediction accuracy and recommendation quality. Therefore, how to objectively quantify the differences in user-perceived service QoS and consider the trust issues of QoS indicator scores are crucial for cloud service recommendation. Summary of the invention

[0005] 1. Technical issues to be resolved

[0006] In view of the shortcomings of the prior art, the present invention provides an entropy-based time-aware hybrid cloud service recommendation method, system, storage medium and electronic device, which solve the technical problems that the prior art does not objectively quantify the differences in service QoS perceived by users, and does not consider the trust issue of QoS indicator scoring.

[0007] (II) Technical solution

[0008] To achieve the above objectives, the present invention is implemented through the following technical solutions:

[0009] A time-aware hybrid cloud service recommendation method based on entropy, comprising:

[0010] Obtain the user set, service set, historical QoS indicator scores of each service, and service call timestamp, and normalize the historical QoS indicator scores;

[0011] A first matrix is ​​constructed based on the historical QoS indicator scores before normalization and the corresponding service call timestamps; a second matrix is ​​constructed based on the historical QoS indicator scores after normalization and the corresponding service call timestamps;

[0012] According to the first matrix, calculating the entropy value of the co-call service of any two users in the user set within the call time interval, and obtaining the weight of the co-call service;

[0013] According to the second matrix and the weight of the co-call service, a set of nearest neighbor users similar to and trusted by the first user is obtained; wherein the first user is a target user recommended by the current service;

[0014] According to the selected nearest neighbor users and their historical QoS indicator scores, the QoS indicator prediction value of the first user at the current moment is obtained;

[0015] Traverse various QoS indicators of the service, obtain the predicted values ​​of various QoS indicators of the first user at the current moment, use the hierarchical analysis method to determine the weight of each indicator, and obtain the comprehensive QoS prediction value of the current service through weighting;

[0016] The services are sorted according to their comprehensive QoS prediction values, and the top-n services are selected to form a recommendation list for the first user to choose.

[0017] Preferably, the process of acquiring the set of similar and trusted nearest neighbor users of the first user includes:

[0018] If a first user and a second user have a co-call service, where the second user is any user in the user set except the first user:

[0019] Then, according to the second matrix and the weight of the co-call service, the Pearson similarity algorithm is used to obtain the direct similarity between the first user and the second user; and the distance formula is used to obtain the local trust of the first user to the second user;

[0020] According to the direct similarity and the local trust, the contribution of the second user to the first user in this case is obtained, and according to the size of the contribution, the direct nearest neighbors of the first user who meet the first preset number are obtained;

[0021] If the first user and the second user do not call the service together:

[0022] Then find a common similar user between the two and mark it as the third user. According to the second matrix and the weight of the co-call service, use the Pearson similarity algorithm to obtain the direct similarity between the first user and the third user, and between the second user and the third user, so as to obtain the indirect similarity between the first user and the second user; and use the distance formula to obtain the local trust of the third user in the second user, and obtain the global trust of the second user as the trust of the first user in the second user;

[0023] According to the indirect similarity and the global trust, the contribution of the second user to the first user in this case is obtained, and according to the size of the contribution, the expanded nearest neighbors of the first user that meet the second preset number are obtained;

[0024] The direct nearest neighbors and the expanded nearest neighbors are merged to obtain a set of nearest neighbor users that are similar and trusted by the first user.

[0025] Preferably, the process of obtaining the weight of the co-call service includes:

[0026] (1) Definition For shared call services j In the first user u i and the second user u k Call the QoS vector set evaluated by all users within the time interval Δt1 and calculate s j The entropy value within Δt1,

[0027]

[0028] Δt1=|t ij -t kj |

[0029]

[0030] in, For shared call services j In user u i and u kThe entropy value within the calling time interval Δt1 is used; D is the optional QoS indicator scoring domain, |D1| is The types of QoS indicator scores included in t ij and t kj u i and u k Calls j timestamp; Score each QoS indicator in D The probability of occurrence in Score the QoS indicator f in The number of occurrences in 1 for The total number of QoS indicator scores in the middle;

[0031] (2) Definition For shared call services j In the first user u i and the second user u k Calculate s as the set of QoS vectors evaluated by all users within the time interval Δt2 from the time of its call to the current service recommendation. j The entropy value within Δt2,

[0032]

[0033]

[0034]

[0035] in, For shared call services j In user u i and u k The entropy value within the calling time interval Δt2 is |D1| The types of QoS indicator scores included in t cur Recommended times for current services; Score each QoS indicator in D The probability of occurrence in Score the QoS indicator f in The number of occurrences in 2 for The total number of QoS indicator scores in the middle;

[0036] (3) Based on the above two entropy values, define the entropy-aware co-modulation service s j The weight of

[0037]

[0038] Among them, w jFor shared call services j The weight of .

[0039] Preferably, if the first user and the second user have a common calling service:

[0040] The direct similarity is shown in the following formula:

[0041]

[0042] Among them, sim(u i ,u k ) is user u i and u k The direct similarity between For the first user u i The set of services called, For the second user u k The set of services called, For user u i and u k The collection of services that are called together; for u i The average value of the QoS indicator score given, for u k The average value of the given QoS indicator score; q′ ij is the normalized first user u i Shared call services j QoS indicator score; w j For shared call services j The weight of

[0043] And the local trust is shown in the following formula:

[0044]

[0045]

[0046] Among them, tru i→k For the first user u i For the second user u k Local trust in For user u i and u k The total number of services called; For the second user u k Shared call services j The first user u is predicted by the QoS indicator score i Shared call services j QoS indicator score; q′ kj is the normalized second user u kShared call services j QoS indicator score.

[0047] Preferably, the contribution of the second user to the first user is as shown in the following formula:

[0048]

[0049] Among them, Con(u i ,u k ) is the second user u k For the first user u i contribution.

[0050] Preferably, if the first user and the second user do not call the service together:

[0051] The indirect similarity is shown in the following formula:

[0052]

[0053] Among them, sim(u i ,u k ) ind For user u i and u k Indirect similarity of sim(u i ,u l ) is user u i and u l The direct similarity, sim(u l ,u k ) is u l and u k Direct similarity of For user u i and u l The total number of services called, For user u l and u k The total number of services called;

[0054] And the global trust is as shown in the following formula:

[0055]

[0056] in, For the second user u k The global trust of U k Represents the second user u k The set of users who call the service together, u h For the set U k Users in |U k | represents the set U k The number of users in .

[0057] Preferably, the contribution of the second user to the first user is as shown in the following formula:

[0058]

[0059] Among them, Con(u i ,u k ) Second user u k For the first user u i contribution.

[0060] An entropy-based time-aware hybrid cloud service recommendation system, comprising:

[0061] A data acquisition module is used to obtain a user set, a service set, the historical QoS indicator scores of each service, and the service call timestamp, and to normalize the historical QoS indicator scores;

[0062] A matrix construction module, used to construct a first matrix according to the historical QoS indicator scores before normalization and the corresponding service call timestamps; and to construct a second matrix according to the historical QoS indicator scores after normalization and the corresponding service call timestamps;

[0063] A weight calculation module, used to calculate the entropy value of the co-call service of any two users in the user set within the call time interval according to the first matrix, and obtain the weight of the co-call service;

[0064] A nearest neighbor screening module, configured to obtain a set of nearest neighbor users who are similar and trusted to the first user according to the second matrix and the weight of the co-calling service; wherein the first user is a target user recommended by the current service;

[0065] An indicator prediction module is used to obtain the QoS indicator prediction value of the first user at the current moment based on the selected nearest neighbor users and their historical QoS indicator scores;

[0066] The indicator traversal module is used to traverse various QoS indicators of the service, obtain the predicted values ​​of various QoS indicators of the first user at the current moment, use the hierarchical analysis method to determine the weight of each indicator, and obtain the comprehensive QoS prediction value of the current service through weighting;

[0067] The service recommendation module is used to sort the services according to their comprehensive QoS prediction values ​​and select top-n services to form a recommendation list for the first user to choose.

[0068] A storage medium stores a computer program for entropy-based time-aware hybrid cloud service recommendation, wherein the computer program enables a computer to execute the entropy-based time-aware hybrid cloud service recommendation method as described above.

[0069] An electronic device, comprising:

[0070] one or more processors;

[0071] Memory; and

[0072] One or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the programs including instructions for executing the entropy-based time-aware hybrid cloud service recommendation method as described above.

[0073] (III) Beneficial effects

[0074] The present invention provides a method, system, storage medium and electronic device for recommending time-aware hybrid cloud services based on entropy. Compared with the prior art, the present invention has the following beneficial effects:

[0075] In the present invention, the degree of change of service QoS over time is quantitatively considered based on entropy, and the weight of the co-called service is determined based on the entropy value, which is integrated into the calculation process of user similarity and trust, thereby improving the accuracy and quality of nearest neighbor selection; a user trust calculation method is proposed to eliminate the influence of unreliable QoS information; the introduced indirect similarity and global trust can effectively increase the number of nearest neighbor users, thereby alleviating the data sparsity problem. BRIEF DESCRIPTION OF THE DRAWINGS

[0076] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0077] Figure 1 An overall framework diagram of an entropy-based time-aware hybrid cloud service recommendation method provided by an embodiment of the present invention;

[0078] Figure 2 A schematic diagram of a process flow of a time-aware hybrid cloud service recommendation method based on entropy provided in an embodiment of the present invention;

[0079] Figure 3 A comparison chart of MAE values ​​of UserSimSR, UserTruSR and the method provided by the embodiment of the present invention under different data densities;

[0080] Figure 4 This is a comparison chart of RMSE values ​​of UserSimSR, UserTruSR and the method provided by the embodiment of the present invention under different data densities. DETAILED DESCRIPTION

[0081] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention are clearly and completely described. Obviously, the described embodiments are 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.

[0082] The embodiments of the present application solve the technical problems that the prior art does not objectively quantify the differences in service QoS perceived by users and does not consider the trust issues of QoS indicator scoring by providing an entropy-based time-aware hybrid cloud service recommendation method, system, storage medium and electronic device.

[0083] The technical solution in the embodiment of the present application is to solve the above technical problems, and the overall idea is as follows:

[0084] Regarding the issues raised in the background technology, such as Figure 1 As shown, the embodiment of the present invention proposes a time-aware hybrid cloud service recommendation method based on entropy, which mainly includes: (1) time-aware co-evaluation service weight calculation based on entropy; (2) user similarity and trust calculation; (3) QoS indicator score prediction and service recommendation. The details are as follows:

[0085] (1) Information entropy is often used to measure the order and stability of a system under a specific state. Based on the historical QoS records of user-invoked services, information entropy is used to measure the degree of change in the QoS of co-invoked services within the time interval between two user calls and between the call time and the current service recommendation time interval, thereby determining the weight of the co-invoked service for user similarity / trust calculation based on the entropy value.

[0086] (2) The direct similarity between users is calculated by combining the weight of the co-calling service and the Pearson similarity coefficient. For two users who do not co-call services, their common similar users are found and the indirect similarity between the two users is calculated through the "similar propagation" theory; the trust between users is defined by combining the weight of the co-calling service and the QoS value prediction error. For two users who do not co-call services, the global trust of the users is calculated by the mean trust in the trust network.

[0087] (3) Define the user's comprehensive contribution based on similarity and trust. Based on the QoS records of the top m nearest neighbor users with the highest contribution, predict the QoS value of the target user for the service at the current moment. Based on the prediction results, select the top-n services to generate a recommendation list.

[0088] The cloud service recommendation method proposed in the embodiment of the present invention can effectively solve the problems of low service QoS prediction accuracy, poor recommendation effect, data sparsity, etc. Experiments have proved that introducing entropy-based time-aware service weights and user trust into the traditional recommendation algorithm is feasible and effective, and has certain practical significance.

[0089] In order to better understand the above technical solution, the above technical solution will be described in detail below in conjunction with the accompanying drawings and specific implementation methods.

[0090] Example:

[0091] like Figure 2 As shown, the example of the present invention provides an entropy-based time-aware hybrid cloud service recommendation method, comprising:

[0092] S1. Obtain a user set, a service set, historical QoS indicator scores of each service, and a service call timestamp, and normalize the historical QoS indicator scores;

[0093] S2. Construct a first matrix based on the historical QoS indicator scores before normalization and the corresponding service call timestamps; construct a second matrix based on the historical QoS indicator scores after normalization and the corresponding service call timestamps;

[0094] S3. Calculate, according to the first matrix, the entropy value of the co-calling service of any two users in the user set within the calling time interval, and obtain the weight of the co-calling service;

[0095] S4. Acquire a set of similar and trusted nearest neighbor users of the first user according to the second matrix and the weight of the co-calling service; wherein the first user is a target user recommended by the current service;

[0096] S5. Obtain the QoS indicator prediction value of the first user at the current moment according to the selected nearest neighbor users and their historical QoS indicator scores;

[0097] S6. Traverse various QoS indicators of the service, obtain the predicted values ​​of various QoS indicators of the first user at the current moment, use the hierarchical analysis method to determine the weight of each indicator, and obtain the comprehensive QoS prediction value of the current service through weighting;

[0098] S7. Sort the services according to their comprehensive QoS prediction values, and select top-n services to form a recommendation list for the first user to select.

[0099] The above scheme quantitatively considers the degree of change of service QoS over time based on information entropy, and determines the weight of co-called services based on the entropy value, and integrates it into the calculation process of user similarity and trust, thereby improving the accuracy and quality of nearest neighbor selection; a user trust calculation method is proposed to eliminate the influence of unreliable QoS information; the introduced indirect similarity and global trust can effectively increase the number of nearest neighbor users, thereby alleviating the problem of data sparsity.

[0100] Next, we will introduce the various steps of the above technical solution in detail:

[0101] First, a supplementary description of the technical problem to be solved by the entropy-based time-aware hybrid cloud service recommendation method provided by the embodiment of the present invention is as follows:

[0102] In the cloud service recommendation system, there are four key elements in the process of users calling services: user, service, QoS value and timestamp (the time when the user calls the service).

[0103] Let U = {u1,…u I} is the set of all users; where u i The target user recommended for the current service, namely the “first user” in the following text; u k For the user set except the first user u i Any user other than the one mentioned above, namely, the “second user” mentioned later.

[0104] S={s1,…s j ,…s J} is the set of all services; the services in the set are of the same type, and each service corresponds to several QoS evaluation indicators; where s j is the jth candidate service that can be called by the user.

[0105] Slice the service call time and divide it into T timestamps according to the time interval d. Then the time range of the t-th timestamp is ((t-1)d,td].t ij and t kj Respectively represent u i and u k Calls j The timestamp of the current service recommendation time is t cur , then user u i and u k About Services j The calling time interval Δt1=|t ij -t kj |, user u i and u k The interval between the time of calling its service and the time recommended by the current service

[0106] q i,j for u i For j A QoS indicator score is a score of a certain QoS indicator, and each QoS indicator score corresponds to a specific timestamp.

[0107] In summary, the problem to be solved by the embodiment of the present invention is: how to i and the second user u k Based on the historical call records of the service (including information such as QoS value and timestamp), the change degree of service QoS in a specific time interval (Δt1 and Δt2) and the trustworthiness of QoS indicator scores are considered to accurately predict t cur The first user at the moment u i About Services j QoS indicator scores, thereby recommending services of interest to them.

[0108] In step S1, a user set, a service set, various historical QoS indicator scores of each service, and a service call timestamp are obtained, and the historical QoS indicator scores are normalized.

[0109] The specific contents of the user set, service set, historical QoS indicator scores of each service, and service call timestamp have been introduced in detail in the problem description and will not be repeated here.

[0110] The historical QoS indicator score is normalized, specifically:

[0111]

[0112] Among them, q is the service QoS evaluation index, q′ ij Represents the normalized user u i About Services j QoS indicator evaluation value, maxq ij 、minq ij Represent the maximum and minimum values ​​of the QoS indicator score. For benefit-based indicators, the larger the value, the better the service quality, such as reliability. For cost-based indicators, the smaller the value, the better the service quality, such as time, cost, etc.

[0113] In step S2, a first matrix is ​​constructed according to the historical QoS indicator scores before normalization and the corresponding service call timestamps; and a second matrix is ​​constructed according to the historical QoS indicator scores after normalization and the corresponding service call timestamps.

[0114] The second matrix is ​​actually the normalized first matrix, which is expressed as:

[0115]

[0116] It can be understood that the representation of the first matrix M(U×S) is similar to The QoS value is the initial score q ij , which will not be described in detail here. In particular, if a user calls the same service multiple times, the user who selects the service closest to the current recommended time t cur The most recent historical QoS metric scores populate the matrix.

[0117] In step S3, according to the first matrix, the entropy value of the co-called service of any two users in the user set within the calling time interval is calculated to obtain the weight of the co-called service.

[0118] The embodiment of the present invention takes into account the dynamic characteristics of service QoS over time, and there are differences in the service quality perceived by users at different times. Therefore, this step is based on the first matrix M(U×S) constructed above, and uses information entropy to measure the degree of change of service QoS. The lower the entropy value, the more stable the service quality, indicating that the perceived service quality between users is closer, and the QoS value of the co-called service is more reliable, that is, the greater the weight of the service for the calculation of similarity / trust between users.

[0119] The process of obtaining the weight of the co-call service includes:

[0120] (1) Definition For shared call services j In the first user u i and the second user u k Call the QoS vector set evaluated by all users within the time interval Δt1 and calculate s j The entropy value within Δt1, the smaller the entropy value, the closer the service quality perceived by the two users is. The calculation formula is as follows:

[0121]

[0122] Δt1=|t ij -t kj |

[0123]

[0124] in, For shared call services j In user u i and u k The entropy value within the calling time interval Δt1 is used; D is the optional QoS indicator scoring domain, |D1| is The types of QoS indicator scores are included in, such as the QoS indicator scoreable domain is the set {1,2,3,4,5}, Then |D1|=3; t ij and t kj u i and u k Calls j timestamp; Score each QoS indicator in D The probability of occurrence in Score the QoS indicator f (such as "2") in The number of occurrences in 1 for The total number of QoS indicator scores in the middle;

[0125] (2) Definition For shared call services j In the first user u i and the second user u k Calculate s as the set of QoS vectors evaluated by all users within the time interval Δt2 from the time of its call to the current service recommendation. j The entropy value within Δt2, the smaller the entropy value, the closer the quality of the service when it is called is to the quality at the current recommendation time. The calculation formula is as follows:

[0126]

[0127]

[0128]

[0129] in, For shared call services j In user u i and u k The entropy value within the calling time interval Δt2 is |D1| The types of QoS indicator scores included in t cur Recommended times for current services; Score each QoS indicator in D The probability of occurrence in Score the QoS indicator f in The number of occurrences in 2 for The total number of QoS indicator scores in the middle;

[0130] (3) Based on the above two entropy values, define the entropy-based time-aware co-modulation service s j The weight of

[0131]

[0132] Among them, w jFor shared call services j The weight of .

[0133] In step S4, a set of nearest neighbor users that are similar and trusted to the first user is obtained according to the second matrix and the weight of the co-calling service; wherein the first user is a target user recommended by the current service.

[0134] In the previous step, the embodiment of the present invention quantitatively considers the degree of change of service QoS over time based on information entropy, and determines the weight of the co-call service based on the entropy value. In this step, it is also integrated into the calculation process of user similarity and trust, thereby improving the accuracy and quality of the nearest neighbor selection.

[0135] Specifically, according to whether the first user and the second user have a common calling service (the second user is any user in the user set except the first user), in order to obtain the nearest neighbor user set, the overall process can be divided into the following two parts and processed separately:

[0136] (1) If the first user and the second user have a shared service call:

[0137] (1-1) According to the second matrix and the weight of the co-call service, the Pearson similarity algorithm is used to obtain the direct similarity between the first user and the second user, as shown in the following formula:

[0138]

[0139] Among them, sim(u i ,u k ) is user u i and u k The direct similarity between For the first user u i The set of services called, For the second user u k The set of services called, For user u i and u k The collection of services that are called together; for u i The average value of the QoS indicator score given, for u k The average value of the given QoS indicator score; q′ ij is the normalized first user u i Shared call services j QoS indicator score; w j For shared call services j The weight of .

[0140] (1-2) and use the distance formula to obtain the local trust of the first user to the second user, as shown in the following formula:

[0141]

[0142]

[0143] Among them, tru i→k For the first user u i For the second user u k Local trust in For user u i and u k The total number of services called; For the second user u k Shared call services j The first user u is predicted by the QoS indicator score i Shared call services j QoS indicator score; q′ kj is the normalized second user u k Shared call services j QoS indicator score.

[0144] (1-3) According to the direct similarity and local trust, the contribution of the second user to the first user in this case is obtained, as shown in the following formula:

[0145]

[0146] Among them, Con(u i ,u k ) is the second user u k For the first user u i contribution.

[0147] And according to the contribution, the direct nearest neighbors of the first user who meets the first preset number are obtained, for example, m1 users with the highest contribution are selected as the first user u i The direct nearest neighbor of is denoted as M1.

[0148] (2) If the first user and the second user do not call the service together:

[0149] (2-1) Then find the common similar users of the two and mark them as the third user. According to the second matrix and the weight of the co-call service, use the Pearson similarity algorithm to obtain the direct similarity between the first user and the third user, and between the second user and the third user, respectively. The indirect similarity between the first user and the second user is obtained through the "similar propagation" theory, as shown in the following formula:

[0150]

[0151] Among them, sim(u i ,u k ) ind For user u i and u k Indirect similarity of sim(u i ,u l ) is user u i and u l The direct similarity, sim(u l ,u k ) is u l and u k Direct similarity of For user u i and u l The total number of services called, For user u l and u k The total number of services called.

[0152] (2-2) The distance formula is used to obtain the local trust of the third user on the second user, and the global trust of the second user is obtained as the trust of the first user on the second user, as shown in the following formula:

[0153]

[0154] in, For the second user u k The global trust of U k Represents the second user u k The set of users who call the service together, u h For the set U k Users in |U k | represents the set U k The number of users in .

[0155] (2-3) According to the indirect similarity and global trust, the contribution of the second user to the first user in this case is obtained, as shown in the following formula:

[0156]

[0157] Among them, Con(u i ,u k ) Second user u k For the first user u i contribution.

[0158] And according to the contribution, the expanded nearest neighbors of the first user that meet the second preset number are obtained, for example, m2 users with the highest contribution are selected as the first user ui The extended nearest neighbor is denoted as M2.

[0159] Finally, the direct nearest neighbor and the expanded nearest neighbor are merged to obtain a set of nearest neighbor users that are similar and trusted to the first user. For example, the total number of users in the nearest neighbor user set is m=m1+m2. Of course, m1 and m2 should be much smaller than the total number of users in the user set, and the optimal values ​​can be obtained through sensitivity analysis experiments.

[0160] The embodiment of the present invention eliminates the influence of unreliable QoS information based on the above user trust calculation method; in addition, the introduced indirect similarity and global trust can effectively increase the number of nearest neighbor users, thereby alleviating the data sparsity problem.

[0161] In step S5, the QoS index prediction value of the first user at the current moment is obtained according to the selected nearest neighbor users and their historical QoS index scores, and the formula is as follows:

[0162]

[0163] Among them, preq i,j For co-call services j , the first user u at the current moment i The current QoS indicator predicted value.

[0164] In step S6, various QoS indicators of the service are traversed to obtain the predicted values ​​of various QoS indicators of the first user at the current moment, and the weight of each indicator is determined by using the hierarchical analysis method, and the comprehensive QoS prediction value of the current service is obtained by weighting;

[0165] In step S7, the services are sorted according to their comprehensive QoS prediction values, and top-n services are selected to form a recommendation list for selection by the first user.

[0166] In order to better illustrate the superiority of the entropy-based time-aware hybrid cloud service recommendation method provided by the embodiment of the present invention, the following specific examples are provided:

[0167] The WS-DREAM public movie rating dataset is selected. The dataset includes user ID, movie ID, QoS indicator rating information (including two QoS indicators, response time and throughput), user call service timestamp information, etc. The information in the dataset can be used to effectively verify the method proposed in this patent.

[0168] The WS-DREAM dataset contains QoS records of 142 users calling 4532 services within 64 timestamps. Each timestamp is 15 minutes apart. 120 users’ call records for 500 services are randomly selected to construct two 120*500*64-dimensional user-service QoS matrices. The 64th matrix is ​​represented as the matrix at the current recommendation moment, and QoS prediction is performed on it. The matrix data is divided into training set and test set. The training set data density E is set to 0.05 to 0.45 with a step size of 0.05 to verify the effect of the method on data sparsity. When E=0.05, it indicates that the 64th matrix contains 5% of the training data and the rest is test data. Subsequently, 90% of the training data in the matrix is ​​randomly replaced by the corresponding QoS values ​​in the first 63 matrices, thereby constructing a user call service QoS matrix across 64 timestamps.

[0169] The performance of the method is verified by comparing the traditional user similarity-based service recommendation method (UserSimSR), the user trust-based service recommendation method (UserTruSR) and the entropy-based time-aware hybrid service recommendation method proposed in this paper. In the experiment, the mean absolute error (MAE) and root mean square error (RMSE) are used to measure the prediction accuracy of the method. The evaluation index is calculated as follows:

[0170]

[0171]

[0172] Among them, q′ ij and preq i,j They represent the actual and predicted QoS values, respectively, and P is the total number of predicted QoS. The smaller the MAE and RMSE values, the higher the prediction accuracy.

[0173] The experimental results are shown in Table 1 and Figure 3 , Figure 4 As shown in the experimental results, it can be seen that as the data density increases, the MAE and RMSE values ​​of the method proposed in the embodiment of the present invention and the comparative method both decrease, indicating that data sparsity has a greater impact on prediction accuracy.

[0174] Table 1 MAE and RMSE values ​​of the method proposed in the embodiment of the present invention in different neighborhood sets

[0175]

[0176] It can be seen from Table 1 that when the number of nearest neighbors is m=10 (m1=m2=5), the MAE and RMSE values ​​are the lowest. Therefore, the first 10 similar and trusted nearest neighbor users are selected to perform QoS prediction and service recommendation for the first user.

[0177] Depend on Figure 3 and Figure 4 It can be seen that under all data density conditions, the MAE and RMSE values ​​of the method proposed in this paper are smaller than those of the UserSimSR and UserTruSR methods, indicating that the method has a higher QoS prediction accuracy.

[0178] The embodiment of the present invention provides an entropy-based time-aware hybrid cloud service recommendation system, including:

[0179] A data acquisition module is used to obtain a user set, a service set, the historical QoS indicator scores of each service, and the service call timestamp, and to normalize the historical QoS indicator scores;

[0180] A matrix construction module, used to construct a first matrix according to the historical QoS indicator scores before normalization and the corresponding service call timestamps; and to construct a second matrix according to the historical QoS indicator scores after normalization and the corresponding service call timestamps;

[0181] A weight calculation module, used to calculate the entropy value of the co-call service of any two users in the user set within the call time interval according to the first matrix, and obtain the weight of the co-call service;

[0182] A nearest neighbor screening module, configured to obtain a set of nearest neighbor users who are similar and trusted to the first user according to the second matrix and the weight of the co-calling service; wherein the first user is a target user recommended by the current service;

[0183] An indicator prediction module, used to obtain a current QoS indicator prediction value of the first user based on the selected nearest neighbor users and their historical QoS indicator scores;

[0184] An indicator traversal module, used to traverse various QoS indicators of the current service, obtain the predicted values ​​of various QoS indicators of the first user, determine the weight of each indicator by using the hierarchical analysis method, and obtain the comprehensive QoS prediction value of the current service by weighting;

[0185] The service recommendation module is used to sort the services according to their comprehensive QoS prediction values ​​and select top-n services to form a recommendation list for the first user to choose.

[0186] An embodiment of the present invention provides a storage medium storing a computer program for entropy-based time-aware hybrid cloud service recommendation, wherein the computer program enables a computer to execute the entropy-based time-aware hybrid cloud service recommendation method as described above.

[0187] An embodiment of the present invention provides an electronic device, including:

[0188] one or more processors;

[0189] Memory; and

[0190] One or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the programs including instructions for executing the entropy-based time-aware hybrid cloud service recommendation method as described above.

[0191] It can be understood that the entropy-based time-aware hybrid cloud service recommendation method system, storage medium and electronic device provided in the embodiments of the present invention correspond to the entropy-based time-aware hybrid cloud service recommendation method provided in the embodiments of the present invention, and the explanations, examples and beneficial effects of the relevant contents can refer to the corresponding parts in the entropy-based time-aware hybrid cloud service recommendation method, which will not be repeated here.

[0192] In summary, compared with the prior art, the present invention has the following beneficial effects:

[0193] 1. The embodiment of the present invention proposes a method for measuring the degree of change of service QoS based on entropy, objectively determining the weight of the co-call service for similarity / trust calculation between users based on the entropy value, thereby improving the quality of nearest neighbor selection.

[0194] 2. The embodiment of the present invention proposes a method for calculating user trust, which eliminates the trustworthiness problem of QoS indicator scoring caused by noise information and malicious attacks.

[0195] 3. The calculation method of indirect similarity and global trust proposed in the embodiment of the present invention can increase the number of nearest neighbors of the target user, thereby alleviating the data sparsity problem.

[0196] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.

[0197] The above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A time-aware hybrid cloud service recommendation method based on entropy, characterized in that: include: Obtain the user set, service set, historical QoS indicator scores of each service, and service call timestamp, and normalize the historical QoS indicator scores; Construct the first matrix based on the historical QoS indicator scores before normalization and the corresponding service call timestamps; Construct the second matrix based on the normalized historical QoS indicator scores and the corresponding service call timestamps; According to the first matrix, calculating the entropy value of the co-call service of any two users in the user set within the call time interval, and obtaining the weight of the co-call service; According to the second matrix and the weight of the co-call service, a set of nearest neighbor users similar to and trusted by the first user is obtained; wherein the first user is a target user recommended by the current service; According to the selected nearest neighbor users and their historical QoS indicator scores, the QoS indicator prediction value of the first user at the current moment is obtained; Traverse various QoS indicators of the service, obtain the predicted values ​​of various QoS indicators of the first user at the current moment, use the hierarchical analysis method to determine the weight of each indicator, and obtain the comprehensive QoS prediction value of the current service through weighting; Sort by comprehensive QoS prediction values ​​of different services, and select top-n services to form a recommendation list for the first user to choose; The process of obtaining the similar and trusted nearest neighbor user set of the first user includes: If a first user and a second user have a co-call service, where the second user is any user in the user set except the first user: Then, according to the second matrix and the weight of the co-call service, the Pearson similarity algorithm is used to obtain the direct similarity between the first user and the second user; and the distance formula is used to obtain the local trust of the first user to the second user; According to the direct similarity and the local trust, the contribution of the second user to the first user in this case is obtained, and according to the size of the contribution, the direct nearest neighbors of the first user who meet the first preset number are obtained; If the first user and the second user do not call the service together: Then find a common similar user between the two and mark it as the third user. According to the second matrix and the weight of the co-call service, use the Pearson similarity algorithm to obtain the direct similarity between the first user and the third user, and between the second user and the third user, so as to obtain the indirect similarity between the first user and the second user; and use the distance formula to obtain the local trust of the third user in the second user, and obtain the global trust of the second user as the trust of the first user in the second user; According to the indirect similarity and the global trust, the contribution of the second user to the first user in this case is obtained, and according to the size of the contribution, the expanded nearest neighbors of the first user that meet the second preset number are obtained; Merging the direct nearest neighbor and the extended nearest neighbor to obtain a set of nearest neighbor users that are similar and trusted by the first user; The process of obtaining the weight of the co-call service includes: (1) Definition For shared call services j In the first user u i and the second user u k Call the QoS vector set evaluated by all users within the time interval Δt1 and calculate s j The entropy value within Δt1, Δt1=|t ij -t kj | in, For shared call services j In user u i and u k The entropy value within the calling time interval Δt1 is used; D is the optional QoS indicator scoring domain, |D1| is The types of QoS indicator scores included in t ij and t kj u i and u k Calls j timestamp; Score each QoS indicator in D The probability of occurrence in Score the QoS indicator f in The number of occurrences in 1 for The total number of QoS indicator scores in the middle; (2) Definition For shared call services j In the first user u i and the second user u k Calculate s as the set of QoS vectors evaluated by all users within the time interval Δt2 from the time of its call to the current service recommendation. j The entropy value within Δt2, in, For shared call services j In user u i and u k The entropy value within the calling time interval Δt2 is |D1| The types of QoS indicator scores included in t cur Recommended times for current services; Score each QoS indicator in D The probability of occurrence in Score the QoS indicator f in The number of occurrences in 2 for The total number of QoS indicator scores in the middle; (3) Based on the above two entropy values, define the entropy-based co-modulation service s j The weight of Among them, w j For shared call services j The weight of .

2. The entropy-based time-aware hybrid cloud service recommendation method according to claim 1, characterized in that: If the first user and the second user call the same service: The direct similarity is shown in the following formula: Among them, sim(u i ,u k ) is user u i and u k The direct similarity between For the first user u i The set of services called, For the second user u k The set of services called, For user u i and u k The collection of services that are called together; for u i The average value of the QoS indicator score given, for u k The average value of the given QoS indicator score; q′ ij is the normalized first user u i Shared call services j QoS indicator score; w j For shared call services j The weight of And the local trust is as shown in the following formula: Among them, tru i→k For the first user u i For the second user u k Local trust in For user u i and u k The total number of services called; For the second user u k Shared call services j The first user u is predicted by the QoS indicator score i Shared call services j QoS indicator score; q′ kj is the normalized second user u k Shared call services j QoS indicator score.

3. The entropy-based time-aware hybrid cloud service recommendation method according to claim 2, characterized in that: The contribution of the second user to the first user is shown in the following formula: Among them, Con(u i ,u k ) is the second user u k For the first user u i contribution.

4. The entropy-based time-aware hybrid cloud service recommendation method according to claim 1, characterized in that: If the first user and the second user do not call the service together: The indirect similarity is shown in the following formula: Among them, sim(u i ,u k ) ind For user u i and u k The indirect similarity of sim(u i ,u l ) is user u i and u l The direct similarity, sim(u l ,u k ) is u l and u k Direct similarity of For user u i and u l The total number of services called, For user u l and u k The total number of services called; And the global trust is as shown in the following formula: in, For the second user u k The global trust of U k Represents the second user u k The set of users who call the service together, u h For the set U k Users in |U k | represents the set U k The number of users in .

5. The entropy-based time-aware hybrid cloud service recommendation method according to claim 4, characterized in that: The contribution of the second user to the first user is shown in the following formula: Among them, Con(u i ,u k ) Second user u k For the first user u i contribution.

6. A time-aware hybrid cloud service recommendation system based on entropy, characterized in that: The method for recommending a time-aware hybrid cloud service according to claim 1 comprises: A data acquisition module is used to obtain a user set, a service set, the historical QoS indicator scores of each service, and the service call timestamp, and to normalize the historical QoS indicator scores; A matrix construction module, used to construct a first matrix according to the historical QoS indicator scores before normalization and the corresponding service call timestamps; and to construct a second matrix according to the historical QoS indicator scores after normalization and the corresponding service call timestamps; A weight calculation module, used to calculate the entropy value of the co-call service of any two users in the user set within the call time interval according to the first matrix, and obtain the weight of the co-call service; A nearest neighbor screening module, configured to obtain a set of nearest neighbor users who are similar and trusted to the first user according to the second matrix and the weight of the co-call service; wherein the first user is a target user recommended by the current service; An indicator prediction module is used to obtain the QoS indicator prediction value of the first user at the current moment based on the selected nearest neighbor users and their historical QoS indicator scores; The indicator traversal module is used to traverse various QoS indicators of the service, obtain the predicted values ​​of various QoS indicators of the first user at the current moment, use the hierarchical analysis method to determine the weight of each indicator, and obtain the comprehensive QoS prediction value of the current service through weighting; The service recommendation module is used to sort the services according to their comprehensive QoS prediction values ​​and select top-n services to form a recommendation list for the first user to choose.

7. A storage medium, characterized in that: The computer program for entropy-based time-aware hybrid cloud service recommendation is stored therein, wherein the computer program enables a computer to execute the entropy-based time-aware hybrid cloud service recommendation method according to any one of claims 1 to 5.

8. An electronic device, characterized in that: include: one or more processors; Memory; as well as One or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the programs including a program for executing the entropy-based time-aware hybrid cloud service recommendation method as described in any one of claims 1 to 5.