A multi-task optimized intelligent caching method

Through the multi-task optimization model, the cached content is optimized by combining user information and content characteristics, and the cached content is optimized, which solves the cache deviation caused by a single basis in the edge server cache, and improves the cache hit rate and service quality.

CN114490447BActive Publication Date: 2024-12-10CHONGQING UNIV OF POSTS & TELECOMM
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202210081350.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-24
Publication Date
2024-12-10
Estimated Expiration
2042-01-24

AI Technical Summary

Technical Problem

The prior art in edge server caches causes cache deviations due to single-based user preferences or content popularity, which affects cache hit rate and service quality.

Method used

The intelligent cache method of multi-task optimization is adopted to predict user preferences and content popularity through multi-task training models, and combined with user information and content characteristics, a joint factor optimization cache content is designed to improve cache hit rate and user hit rate.

Benefits of technology

Improve the cache hit rate and service quality of edge servers, avoid cache bias caused by a single basis, and enhance the effectiveness of the cache strategy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114490447B_ABST
    Figure CN114490447B_ABST
Patent Text Reader

Abstract

The present invention relates to a multi-task optimized intelligent caching method, belonging to the field of wireless communication. The method first integrates the user-side information collected by the edge server, designs a model to extract user and content features; secondly, based on this information, constructs a multi-task optimization model to perform feature analysis on the interaction between the user and the content, mines the hidden features of the user, and predicts the content popularity and user preference in the future; then, according to the difference in importance of the content popularity and the user preference, designs a joint factor, jointly optimizes the two, and arranges the content in descending order, selects the Top‑k content for caching according to the cache capacity of the edge server; finally, optimizes the cache hit rate and the user hit rate according to the joint optimization result. The present invention improves the hit rate and service quality of the edge server.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the field of wireless communications and relates to a multi-task optimized intelligent caching method. Background Art

[0002] At present, with the rapid development of communication technology, mobile data traffic has increased dramatically, especially short video traffic has shown explosive growth. Faced with such a huge challenge, caching content in advance on edge base stations, user devices or vehicles with storage capabilities is considered to be a solution to this dilemma. Caching content in edge devices instead of cloud centers can not only reduce the traffic load of the backhaul link and reduce costs, but also reduce transmission delay and improve user experience. However, how to filter cached content has become an urgent problem to be solved.

[0003] Multi-task training is mainly a method used when multiple targets need to be modeled and predicted for the same data set, and there is a strong correlation between the multiple targets. Compared with traditional single-task modeling, multi-task modeling can simultaneously analyze the correlation and difference between tasks. On the basis of learning the independent features of each task, it integrates the common features between tasks and automatically filters out redundant features that are not related to each task, thereby mutually improving the training effect of each task. In addition, compared with single-task training, multi-task training can reduce training parameters and training time exponentially, and the higher the task correlation, the better the effect.

[0004] Most current cache strategies are based on user preferences or content popularity features. They design sorting algorithms to sort the content and then select the top ranked content for caching. However, user preferences for content are often affected by popular content, and the popularity of popular content will also change with the preferences of group users. Therefore, when designing a cache strategy, the two are not completely unrelated, but are strongly correlated.

[0005] Therefore, there is an urgent need for a joint optimization method for edge server cache content to optimize cache content and improve the service quality of edge servers. Summary of the invention

[0006] In view of this, the purpose of the present invention is to provide a multi-task optimized intelligent caching method, which aims to solve the problem of cache deviation caused by caching based on a single user preference or content popularity in the edge caching scenario of short videos. At the same time, the user preference level and content popularity are predicted for joint caching, so as to improve the hit rate and service quality of the edge server.

[0007] In order to achieve the above object, the present invention provides the following technical solutions:

[0008] A multi-task optimized intelligent caching method, first, when the content requested by the user is not cached in the edge server or there is a deviation in the cached content, the edge server collects user information and content features; then, the collected data is encoded differently and sent to the multi-task training model for training, and the user's preference and content popularity in the future are predicted; finally, the predicted user preference and content popularity are ranked respectively, and the top-ranked intersection part is selected for caching to optimize the cache hit rate and user hit rate. The method specifically includes the following steps:

[0009] S1: When the content requested by the user is not cached in the edge server or there is a deviation in the cached content, the edge server collects user-side data, including user information and content features;

[0010] S2: Encode the data collected in step S1 using different feature processing methods to mine important features, reduce the amount of later parameter training, and facilitate rapid model training and updating in the later stage;

[0011] S3: Build and train a multi-task optimization model: Use deep learning methods to construct a multi-task optimization model; input the data processed in step S2 for training and prediction, continuously optimize model parameters, and predict the content popularity and user preference in the future;

[0012] S4: Joint content caching: Based on the importance of content popularity and user preference, design appropriate joint factors, jointly optimize the two, sort the content in descending order, and select the top-k content for caching based on the cache capacity of the edge server;

[0013] S5: Optimize cache results: Optimize cache hit rate and user hit rate based on the joint optimization results.

[0014] Furthermore, in step S1, the user sends a content request to the edge base station. If the base station has cached the content and there is no cache deviation, it is directly distributed to the user; otherwise, if the base station has cached the content or there is a cache deviation, various information collected by the edge server is integrated, such as the user's age, gender, device model, requested content and other basic information, as well as basic content information, such as the number of content requests, playback completeness, etc.

[0015] Further, step S2 specifically includes the following steps:

[0016] S21: For the collected discrete features, such as gender, occupation, equipment model, etc., one-hot encoding is used for encoding;

[0017] Any discrete feature that has been one-hot encoded is denoted as f d :

[0018] f d =[d1,d2,...,d i ,...,d ||D|| ]

[0019]

[0020] in, D represents the discrete feature f d A set of categories; this encodes a one-dimensional discrete feature into a ||D||-dimensional vector containing only 0 and 1.

[0021] S22: For the collected continuous features, such as age, viewing time, viewing completeness, etc., feature embedding is used to encode, and the obtained low-dimensional dense embedding feature Y = [y1, y2, y3..., y k ];

[0022]

[0023] in, represents the parameters of the transition matrix, represents the sparse features of the input, k and m represent the dimensions of the parameter matrix, and k<m, Represents the bias vector, thus converting the high-dimensional sparse features into low-dimensional dense vectors.

[0024] Furthermore, in step S3, the multi-task optimization model constructed includes an input layer, a feature embedding layer, a feature sharing layer, a gated expert layer, a tower layer and an output layer.

[0025] Furthermore, in step S3, a feature sharing layer is constructed, specifically including: after all input features are output by the feature embedding layer, due to the use of different encoding methods, the high-dimensional sparse features generated by one-hot encoding and the low-dimensional dense features generated by embedded encoding need to be further integrated, so a feature sharing layer is designed to fuse all features.

[0026] First, the scattered input features of the feature embedding layer are aggregated, and the aggregated vector is recorded as f concat :

[0027] f concat =(f d ,f y )

[0028] Among them, f y represents the dense vector of discrete features after vector embedding, f d is a discrete feature that has been one-hot encoded;

[0029] The aggregated vector is still a high-dimensional and sparse vector. Then a single-layer neural network is used to reduce the dimension of the aggregated vector. The output vector after dimension reduction is recorded as f share :

[0030] f share =σ(Wf concat )

[0031] Where W represents the weight of a single-layer neural network, σ represents the activation function of the neural network, and ||f share ||<<||f concat ||, in this way, after the feature sharing layer, not only a low-dimensional dense vector can be obtained, but also some unnecessary feature information can be effectively filtered out, which greatly enhances the generalization of the model.

[0032] Further, in step S3, a gated expert layer is constructed, including: in the process of multi-task training, the shared bottom layer model of the traditional method can well learn the correlation between multiple tasks, but ignores the differences between multiple tasks, which leads to the weak generalization ability of the model. Therefore, a gated expert layer is used to replace the shared bottom layer; the gated expert layer mainly consists of three parts: expert modules of task A and task B, shared expert modules and gated network; among them, the advantages are mainly the following aspects:

[0033] 1) The input features of multiple expert modules are the same, that is, they are all output features after dimensionality reduction of the shared layer, but each expert module is isolated from each other and can independently learn and update its own task parameters according to the training error;

[0034] 2) The expert modules of Task A and Task B learn the differences of their respective tasks respectively; the shared expert module mainly learns the similarities and correlations between tasks;

[0035] 3) The gating network can assign different weights to each expert module according to the different learning functions of each expert module and the needs of their respective tasks, thereby fusing the experts.

[0036] Further, in step S3, a gated expert layer is constructed, specifically including: for the expert module of task A, the output of the expert module of task A is recorded as E A ,but:

[0037]

[0038] in, represents the parameter of the mth expert in the expert module of task A, and M represents the number of experts included in the expert module;

[0039] E A,m,l =ReLu(W A,m,l EA,m,l-1 )+b A,m,l

[0040] E A,m,1 =ReLu(W A,m,1 f share )+b A,m,1

[0041] Among them, W A,m,l-1 represents the neural network weight vector of the lth layer in the mth expert of task A module, E A,m,l-1 represents the output vector of the l-1th layer in the mth expert of task A module, b A,m,l represents the bias vector of the lth layer of the neural network in the mth expert of task A module, f share represents the output vector after dimensionality reduction;

[0042] Similarly, we can get the expert module E of task B respectively. B and shared expert module E S ;

[0043] The gated network can control the weights of each expert module according to the different tasks by learning the input features and expert modules;

[0044]

[0045] Among them, k∈{A,B} represents the training task, G k represents the output vector of the gating network for task k, represents the parameter matrix of the gating network for task k; S k represents the input vector of task k, represents the output vector of the mth expert in task k module, Represents the output vector of the mth expert in the shared expert module.

[0046] Furthermore, in step S3, the constructed tower layer includes: in order to more fully analyze the differences between each task and increase the generalization of the model, a tower layer is added after the gated expert layer; the tower layer inputs the matrix vector output by the gated expert layer into the multi-layer neural network to further mine the alienated information of each task, so that the entire model highlights its own characteristics on the basis of shared correlation features, thereby optimizing the performance of each task.

[0047] Furthermore, in step S3, the constructed output layer includes: the output layer has two tasks, namely predicting content popularity and user preference; considering that the outputs of these two tasks are different, the softmax function and ReLu are used for normalization and standardization respectively at the end; due to the different output types of the two tasks, different error functions are used for fitting; the classification problem uses a logarithmic cross entropy loss function.

[0048] Further, step S4 specifically includes the following steps:

[0049] S41: Perform weighted averaging and sorting of user preferences according to the training results of the multi-task optimization model;

[0050] S42: sorting the content popularity according to the training results of the multi-task optimization model;

[0051] S43: Taking the intersection of the two sorting results to obtain the final cache content.

[0052] The beneficial effect of the present invention is that: in the edge caching scenario, the method of caching only according to user preference or content popularity has a problem of cache deviation caused by a single cache standard. Therefore, the intelligent caching method based on multi-task optimization provided by the present invention can simultaneously predict user preference and content popularity and then perform joint caching, thereby improving the hit rate and service quality of the edge server.

[0053] Other advantages, objectives and features of the present invention will be described in the following description to some extent, and to some extent, will be obvious to those skilled in the art based on the following examination and study, or can be taught from the practice of the present invention. The objectives and other advantages of the present invention can be realized and obtained through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0054] In order to make the purpose, technical solutions and advantages of the present invention more clear, the present invention will be described in detail below in conjunction with the accompanying drawings, wherein:

[0055] Figure 1 It is an architecture diagram of the intelligent caching method based on multi-task optimization of the present invention;

[0056] Figure 2 A flow chart of the intelligent caching method based on multi-task optimization of the present invention;

[0057] Figure 3 It is a structural diagram of the multi-task optimization model in the present invention;

[0058] Figure 4 This is a training flowchart of the multi-task optimization model in the present invention. DETAILED DESCRIPTION

[0059] The following describes the embodiments of the present invention by specific examples, and those skilled in the art can easily understand other advantages and effects of the present invention from the contents disclosed in this specification. The present invention can also be implemented or applied through other different specific embodiments, and the details in this specification can also be modified or changed in various ways based on different viewpoints and applications without departing from the spirit of the present invention. It should be noted that the illustrations provided in the following embodiments only illustrate the basic concept of the present invention in a schematic manner, and the following embodiments and features in the embodiments can be combined with each other without conflict.

[0060] See also Figure 1 to Figure 4 , Figure 1 The edge cache optimization algorithm based on multi-task training provided by the present invention specifically includes the following steps:

[0061] Step 1: The user sends a content request to the edge base station. If the base station has cached the content and there is no cache deviation, it will be distributed to the user directly. Otherwise, if the base station has not cached the content or there is a cache deviation, the various information collected by the edge server will be integrated, such as the user's age, gender, device model, requested content and other basic information, as well as basic information about the content, such as the number of content requests and playback completeness.

[0062] Step 2: Input data preprocessing: For the information collected in step 1, different feature processing methods are used to encode it, explore important features, reduce the amount of later parameter training, and facilitate rapid model training and updating in the later stage. The specific steps include the following:

[0063] Step 2.1: For the collected discrete features, such as gender, occupation, equipment model, etc., use one-hot encoding to encode them. Any discrete feature that has been one-hot encoded is denoted as f d .

[0064] f d =[d1,d2,...,d i ,d ||D|| ]

[0065]

[0066] in, D represents the discrete feature f d This encodes a one-dimensional discrete feature into a ||D||-dimensional vector containing only 0 and 1.

[0067] Step 2.2: For the collected continuous features, such as age, viewing time, viewing completeness, etc., use feature embedding to encode, and the obtained low-dimensional dense embedding feature Y = [y1, y2, y3..., y k ].

[0068]

[0069] in, represents the parameters of the transition matrix, represents the sparse features of the input, and k<m, Represents the bias vector, thus converting the high-dimensional sparse features into low-dimensional dense vectors.

[0070] Step 3: Multi-task training modeling: Use deep learning methods to construct a neural network model, train and predict the data input in step 2, continuously optimize model parameters, and obtain two results: the popularity of the content in the future and the user's preference for the content. The specific steps include the following:

[0071] Step 3.1: Feature sharing layer; After all input features are output by the feature embedding layer, due to the use of different encoding methods, the high-dimensional sparse features generated by one-hot encoding and the low-dimensional dense features generated by embedded encoding need to be further integrated, so the feature sharing layer is designed to fuse all features.

[0072] First, the scattered input features of the feature embedding layer are aggregated, and the aggregated vector is recorded as f concat :

[0073] f concat =(f d ,f y )

[0074] where f y Represents the dense vector after discrete features are embedded in the vector.

[0075] The aggregated vector is still a high-dimensional and sparse vector. This paper uses a single-layer neural network to reduce the dimension of the aggregated vector. The output vector after dimension reduction is recorded as f share :

[0076] f share =σ(Wf concat )

[0077] Where W represents the weight of a single-layer neural network, σ represents the activation function of the neural network, ||f share ||<<||f concat ||, in this way, after the feature sharing layer, not only a low-dimensional dense vector can be obtained, but also some unnecessary feature information can be effectively filtered out, which greatly enhances the generalization of the model.

[0078] Step 3.2: Gated expert layer: In the process of multi-task training, the shared bottom layer model of the traditional method can learn the correlation between multiple tasks well, but ignores the differences between multiple tasks, which leads to the poor generalization ability of the model. Therefore, a gated expert layer is designed to replace the shared bottom layer. The gated expert layer mainly consists of three parts: expert modules for task A and task B, shared expert modules, and gated networks. The advantages are mainly as follows:

[0079] 1) The input features of multiple expert modules are the same, that is, they are all output features after dimensionality reduction of the shared layer, but each expert module is isolated from each other and can independently learn and update its own task parameters based on the training error.

[0080] 2) The expert modules of task A and task B learn the differences of their respective tasks respectively; the shared expert module mainly learns the similarities and correlations between tasks.

[0081] 3) The gating network can assign different weights to each expert module according to the different learning functions of each expert module and the needs of their respective tasks, thereby fusing the experts.

[0082] For the expert module of task A, the output of the expert module of task A is recorded as E A ,but:

[0083]

[0084] in, represents the parameter of the mth expert in the expert module of task A, and M represents the number of experts included in the expert module.

[0085] E A,m,l =ReLu(W A,m,l E A,m,l-1 )+b A,m,l

[0086] E A,m,1 =ReLu(W A,m,1 f share )+b A,m,1

[0087] Among them, W A,m,l-1 represents the neural network weight vector of the lth layer in the mth expert of task A module, E A,m,l-1 represents the output vector of the l-1th layer in the mth expert of task A module, b A,m,l Represents the bias vector of the l-th layer neural network in the m-th expert of the task A module.

[0088] Similarly, we can get the expert module E of task B respectively. B and shared expert module E S.

[0089] The gating network can control the weights of each expert module according to the different tasks by learning the input features and expert modules:

[0090]

[0091] Where k∈{A,B} represents the training task, G k represents the output vector of the gating network for task k, S k Represents the input vector for task k.

[0092] Step 3.3: Tower layer: In order to more fully analyze the differences between tasks and increase the generalization of the model, a tower layer is added after the gated expert layer. The tower layer inputs the matrix vector output by the gated expert layer into a multi-layer neural network to further mine the alienation information of each task, so that the entire model highlights its own characteristics on the basis of sharing correlation features, thereby optimizing the performance of each task.

[0093]

[0094] in, It represents the output of the tower layer of task k at the lth level, represents the parameter of the tower layer of task k at the lth level, b t,l Represents the bias vector.

[0095] Step 3.4: Output layer: The output layer has two tasks, namely predicting the user's preference for content and the popularity of the content. Considering that the outputs of these two tasks are different, the softmax function and ReLu are used for normalization and standardization respectively at the end:

[0096]

[0097] where y k represents the probability output of task k, σ represents the activation function, user preference is a classification problem, using softmax; content popularity is a regression problem, using ReLu.

[0098] Due to the different output types of the two tasks, different error functions are used for fitting. The classification problem uses the logarithmic cross entropy loss function:

[0099]

[0100] Where N represents the amount of data in the training set, f represents the input feature vector, represents the data of the training set, Multi(·) represents the proposed multi-task training model, and y∈{0,1} represents the user’s preference for content.

[0101] The regression problem uses the mean square error function (RMSE) to calculate the loss during parameter training:

[0102]

[0103] The final total error function is:

[0104] loss = loss1 + loss2

[0105] The purpose of the entire multi-task prediction model is to minimize the total error function through continuous iteration and learning of model parameters.

[0106] Step 4: Joint content caching: Based on the importance of content popularity and user preference, design a suitable joint factor, jointly optimize the two, sort the content in descending order, and select the top-k content for caching based on the cache capacity of the edge server;

[0107] First, use the multi-task model to obtain the user's preference set and content popularity collection

[0108] Then, P u and P c Sort in descending order and select the first m to get Cache@P u , Cache@P c .

[0109] The final cached content is the intersection of the two sets.

[0110] Step 5: Optimize cache results: Optimize cache hit rate and user hit rate based on the joint optimization results.

[0111] Finally, it should be noted that the above embodiments are only used to illustrate the technical solution of the present invention rather than to limit it. Although the present invention has been described in detail with reference to the preferred embodiments, those skilled in the art should understand that the technical solution of the present invention can be modified or replaced by equivalents without departing from the purpose and scope of the technical solution, which should be included in the scope of the claims of the present invention.

Claims

1. A multi-task optimized intelligent caching method, characterized in that: The method specifically comprises the following steps: S1: When the content requested by the user is not cached in the edge server or there is a deviation in the cached content, the edge server collects user-side data, including user information and content features; S2: Encoding the data collected in step S1 using different feature processing methods; S3: Build and train a multi-task optimization model: Use deep learning methods to construct a multi-task optimization model; the constructed multi-task optimization model includes an input layer, a feature embedding layer, a feature sharing layer, a gated expert layer, a tower layer, and an output layer; input the data processed in step S2 for training and prediction, continuously optimize the model parameters, and predict the content popularity and user preference in the future; S4: Joint content caching: Based on the importance of content popularity and user preference, a joint factor is designed to jointly optimize the two, sort the content in descending order, and select the top-k content for caching based on the cache capacity of the edge server; S5: Optimize cache results: Optimize cache hit rate and user hit rate based on the joint optimization results.

2. The multi-task optimized intelligent caching method according to claim 1, characterized in that: Step S2 specifically includes the following steps: S21: For the collected discrete features, one-hot encoding is used for encoding; Any discrete feature that has been one-hot encoded is denoted as f d : f d =[d1,d2,...,d i ,...,d ||D|| ] in, D represents the discrete feature f d A collection of categories; S22: For the collected continuous features, use feature embedding to encode, and the obtained low-dimensional dense embedding feature Y = [y1, y2, y3..., y k ]; in, represents the parameters of the transition matrix, represents the sparse features of the input, k and m represent the dimensions of the parameter matrix, and k<m, Represents the bias vector.

3. The multi-task optimized intelligent caching method according to claim 1, characterized in that: In step S3, a feature sharing layer is constructed, which specifically includes: first, the input features of the feature embedding layer are aggregated, and the aggregated vector is recorded as f concat : f concat =(f d ,f y ) Among them, f y represents the dense vector of discrete features after vector embedding, f d is a discrete feature that has been one-hot encoded; The aggregated vector is still a high-dimensional and sparse vector. Then a single-layer neural network is used to reduce the dimension of the aggregated vector. The output vector after dimension reduction is recorded as f share : f share =σ(Wf concat ) Where W represents the weight of a single-layer neural network, σ represents the activation function of the neural network, and ||f share ||<<||f concat ||.

4. The multi-task optimized intelligent caching method according to claim 1, characterized in that: In step S3, constructing a gated expert layer includes: using the gated expert layer to replace the shared bottom layer; the gated expert layer consists of three parts: expert modules of task A and task B, shared expert modules and a gated network; wherein, 1) The input features of multiple expert modules are the same, that is, they are all output features after dimensionality reduction of the shared layer, but each expert module is isolated from each other and independently learns and updates its own task parameters based on the training error; 2) The expert modules of Task A and Task B learn the differences of their respective tasks respectively; the shared expert module learns the similarities and correlations between tasks; 3) The gating network assigns different weights to each expert module according to the different learning functions of each expert module and the needs of their respective tasks, and then fuses the experts.

5. The multi-task optimized intelligent caching method according to claim 4, characterized in that: In step S3, a gated expert layer is constructed, specifically including: for the expert module of task A, the output of the expert module of task A is recorded as E A ,but: in, represents the parameter of the mth expert in the expert module of task A, and M represents the number of experts included in the expert module; HAVE BEEN A,m,l =ReLu(W A,m,l HAVE BEEN A,m,l-1 )+b A,m,l HAVE BEEN A,m,1 =ReLu(W A,m,1 f share )+b A,m,1 Among them, W A,m,l-1 represents the neural network weight vector of the lth layer in the mth expert of task A module, E A,m,l-1 represents the output vector of the l-1th layer in the mth expert of task A module, b A,m,l represents the bias vector of the lth layer of the neural network in the mth expert of task A module, f share represents the output vector after dimensionality reduction; Similarly, we obtain the expert module E of task B B and shared expert module E S ; The gating network controls the weights of each expert module according to the different tasks by learning the input features and expert modules; Among them, k∈{A,B} represents the training task, G k represents the output vector of the gating network for task k, represents the parameter matrix of the gating network for task k; S k represents the input vector of task k, represents the output vector of the mth expert in task k module, Represents the output vector of the mth expert in the shared expert module.

6. The multi-task optimized intelligent caching method according to claim 1, characterized in that: In step S3, the tower layer constructed includes: adding a tower layer after the gated expert layer; the tower layer inputs the matrix vector output by the gated expert layer into the multi-layer neural network to further mine the alienated information of each task.

7. The multi-task optimized intelligent caching method according to claim 1, characterized in that: In step S3, the constructed output layer includes: the output layer has two tasks, namely prediction using softmax function and ReLu for normalization and standardization respectively; using different error functions for fitting; and the classification problem using the logarithmic cross entropy loss function.

8. The multi-task optimized intelligent caching method according to claim 1, characterized in that: Step S4 specifically includes the following steps: S41: Perform weighted averaging and sorting of user preferences according to the training results of the multi-task optimization model; S42: sorting the content popularity according to the training results of the multi-task optimization model; S43: Taking the intersection of the two sorting results to obtain the final cache content.