A scoring method, device, equipment and storage medium for target applications

By introducing a combination of feature embedding, generalization and memory modules in the recommendation system, the problem of insufficient generalization and memory capabilities of the model is solved, and more accurate and efficient application scores are achieved.

CN114546802BActive Publication Date: 2025-08-26GUANGDONG XIAOTIANCAI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210135921.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-02-14
Publication Date
2025-08-26
Estimated Expiration
2042-02-14

AI Technical Summary

Technical Problem

While ensuring the memory ability of the existing recommendation system models, it is difficult to improve the generalization ability of the model, resulting in insufficient accuracy and targeted scoring.

Method used

By inputting user features and application features into the feature embedding module for dimensionality reduction processing, the application feature matrix and user feature matrix are obtained, and data processing is used using the generalization module and memory module, feature extraction and cross-operation are performed in combination with the self-attention layer, attention layer and enhancement layer, and finally scoring and calculation are performed at the fusion layer.

Benefits of technology

It improves the accuracy and calculation efficiency of ratings, ensures that the rating results are more targeted and meets the interests and needs of users.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114546802B_ABST
    Figure CN114546802B_ABST
Patent Text Reader

Abstract

The embodiment of the present invention discloses a method, device, equipment and storage medium for scoring a target application. The method includes: obtaining user features and application features of a target application, inputting the application features and the user features into a preset feature embedding module to obtain an application feature matrix corresponding to the application features and a user feature matrix corresponding to the user features; inputting the application feature matrix into a preset generalization module to obtain first data; at the same time, inputting the application feature matrix and the user feature matrix into a preset memory module to obtain second data; inputting the first data and the second data into a scoring module to obtain a score of the target application. This technical solution can achieve the accuracy of scoring by combining the memory capacity of the memory module while utilizing the generalization capability of the generalization module.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a scoring method, device, equipment and storage medium for a target application. Background Art

[0002] With the rapid development of deep learning technology, deep learning has appeared in various scenarios, especially recommendation scenarios. However, whether it is the dual-tower DeepFm model, the upgraded Deep Cross Network (DCN), the Deep Interest Network (DIN) in which the attention mechanism is introduced into the recommendation system, or the various attention-based models developed later, such as Automatic Feature Interaction Learning via Self-Attentive Neural Networks (AutoInt), they only perform second-order feature interactions to ensure the model's memory ability. AutoInt, based on the transformer structure, also only focuses on the model's generalization ability. Therefore, solving the technical problem of ensuring the model's memory ability while ensuring the model's generalization ability still needs to be improved. Summary of the Invention

[0003] The main purpose of the present invention is to provide a scoring method, device, computer equipment and storage medium for target applications, which can solve the problems in the prior art.

[0004] To achieve the above objectives, the present invention provides a first aspect of a method for scoring a target application, the method comprising:

[0005] Obtaining user features and application features of a target application, inputting the application features and the user features into a preset feature embedding module to obtain an application feature matrix corresponding to the application features and a user feature matrix corresponding to the user features;

[0006] Inputting the application feature matrix into a preset generalization module to obtain first data; at the same time, inputting the application feature matrix and the user feature matrix into a preset memory module to obtain second data;

[0007] The first data and the second data are input into a scoring module to obtain a score of the target application.

[0008] In this technical solution, an application feature matrix and a user feature matrix are obtained based on the application features and the user features. This allows the application's rating to be effectively evaluated based on user preferences and the application's practicality, making the resulting rating more targeted. The application feature matrix is ​​then input into a pre-set generalization module to obtain first data, while the application feature matrix and the user feature matrix are simultaneously input into a pre-set memory module to obtain second data to evaluate the target application's rating. This improves the accuracy of the target application's rating evaluation by combining the generalization capability of the generalization module with the memory capability of the memory module.

[0009] In combination with the first aspect, in a possible implementation, the generalization module includes: a self-attention layer, an attention layer, and an enhancement layer. The application feature matrix is ​​input into a preset generalization module to obtain the first data, including: inputting the application feature matrix into the self-attention layer for matrix transformation to obtain an initial matrix; inputting the application feature matrix into the attention layer for feature extraction processing to obtain a high-order feature matrix; and obtaining the first data based on the initial matrix and the high-order feature matrix.

[0010] In combination with the first aspect, in a possible implementation method, obtaining the first data based on the initial matrix and the high-order characteristic matrix includes: inputting the initial matrix and the high-order characteristic matrix into the enhancement layer for nonlinear transformation processing to obtain the first matrix; performing a bitwise multiplication operation on the first matrix and the application characteristic matrix to obtain the first data.

[0011] In combination with the first aspect, in a possible implementation, the step of inputting the application feature matrix and the user feature matrix into a preset memory module to obtain the second data includes: performing a low-order feature cross operation on the initial feature matrix and the i-th cross matrix to obtain the i+1-th cross matrix, where the initial feature matrix includes the application feature matrix and the user feature matrix; if i+1 is less than N, setting i=i+1, and returning to execute the step of performing a low-order feature cross operation on the initial feature matrix and the i-th cross matrix to obtain the i+1-th cross matrix, wherein when i is 1, the first cross matrix is ​​the initial feature matrix, N is the total number of low-order memory operations, and i is a positive integer; if i+1 is equal to N, determining the second data based on the i+1-th cross matrix.

[0012] In combination with the first aspect, in one possible implementation, the scoring module includes a fusion layer and a fully connected layer, and the first data and the second data are input into the scoring module to obtain the score of the target application, including: inputting the first data and the second data into the fusion layer for horizontal splicing to obtain a splicing matrix; and inputting the splicing matrix into the fully connected layer for score calculation to obtain the score of the target application.

[0013] In combination with the first aspect, in a possible implementation method, inputting the application features and the user features into a preset feature embedding module to obtain an application feature matrix corresponding to the application features and a user feature matrix corresponding to the user features includes: inputting the application features and the user features into the feature embedding module respectively for linear projection to obtain the application feature matrix and the user feature matrix.

[0014] In combination with the first aspect, in a possible implementation, the target applications are sorted from large to small according to their scores to determine a sorting queue for the target applications; and the target applications are recommended according to the sorting queue.

[0015] To achieve the above-mentioned object, the second aspect of the present invention provides a scoring device for a target application, the device comprising:

[0016] Vector acquisition module: used to obtain user features and application features of the target application, input the application features and the user features into a preset feature embedding module, and obtain an application feature matrix corresponding to the application features and a user feature matrix corresponding to the user features;

[0017] Data calculation module: used for inputting the application feature matrix into a preset generalization module to obtain first data; at the same time, inputting the application feature matrix and the user feature matrix into a preset memory module to obtain second data;

[0018] Application scoring module: used to input the first data and the second data into the scoring module to obtain the score of the target application.

[0019] To achieve the above object, the present invention provides a computer-readable storage medium in a third aspect, storing a computer program, wherein when the computer program is executed by a processor, the processor performs the following steps:

[0020] Obtain user features and application features of the target application, input the application features and the user features into a preset feature embedding module, and obtain an application feature matrix corresponding to the application features and a user feature matrix corresponding to the user features;

[0021] Inputting the application feature matrix into a preset generalization module to obtain first data; at the same time, inputting the application feature matrix and the user feature matrix into a preset memory module to obtain second data;

[0022] The first data and the second data are input into a scoring module to obtain a score of the target application.

[0023] To achieve the above object, a fourth aspect of the present invention provides a computer device, comprising a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the processor performs the following steps:

[0024] Obtain user features and application features of the target application, input the application features and the user features into a preset feature embedding module, and obtain an application feature matrix corresponding to the application features and a user feature matrix corresponding to the user features;

[0025] Inputting the application feature matrix into a preset generalization module to obtain first data; at the same time, inputting the application feature matrix and the user feature matrix into a preset memory module to obtain second data;

[0026] The first data and the second data are input into a scoring module to obtain a score of the target application.

[0027] The use of the embodiment of the present invention has the following beneficial effects: by obtaining user features and application features of the target application, the application features and the user features are converted into corresponding application feature matrices and user feature matrices. The application feature matrix is ​​input into a memory generalization model to obtain first data, and the application feature matrix and the user feature matrix are input into a feature cross model to obtain second data. Based on the first data and the second data, the installation probability of the target application is obtained. It is possible to utilize the generalization ability of the model while combining the memory ability of the feature cross model, thereby ensuring the accuracy of user interest modeling and improving the accuracy of the installation probability evaluation of the target application. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, 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 any creative work.

[0029] in:

[0030] Figure 1A schematic diagram of a process for scoring a target application according to an embodiment of the present invention;

[0031] Figure 2 This is a structural diagram of a scoring model for a target application in an embodiment of the present invention;

[0032] Figure 3 This is a structural block diagram of a scoring device for a target application in an embodiment of the present invention;

[0033] Figure 4 4 is a structural block diagram of a computer device in an embodiment of the present invention. DETAILED DESCRIPTION

[0034] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. All other embodiments obtained by ordinary technicians in this field based on the embodiments of the present invention without making any creative efforts shall fall within the scope of protection of the present invention.

[0035] The technical solution of the present application can be applied to various application rating recommendation scenarios. Specifically, the technical solution of the present application can be applied to various terminal software (such as application stores) that support application rating recommendation functions or terminal devices that have communication connections with various terminal software (such as mobile phones, tablets, computers, etc.).

[0036] See also Figure 1 , Figure 1 A flow chart of a scoring method for a target application provided in an embodiment of the present application is shown as follows: Figure 1 As shown, the method includes the following steps:

[0037] Step S101: obtaining user features and application features of a target application, inputting the application features and the user features into a preset feature embedding module, and obtaining an application feature matrix corresponding to the application features and a user feature matrix corresponding to the user features.

[0038] Currently, many terminal software programs recommend target applications based on user scores. The target application can be an APK, and the terminal software can be software such as an app store that recommends APKs. For example, app stores will recommend APK installation packages based on scores. Because each user has unique interests, hobbies, and daily needs, terminal software programs rate applications based on user characteristics and the target application's features to ensure they are more targeted and meet their needs and preferences. User characteristics can include age, gender, and grade level, while application characteristics can include rating, risk level, and type. Since the obtained application features and user features are high-dimensional raw data, direct calculation based on the high-dimensional raw data will make the calculation complicated and inaccurate. Therefore, in order to improve the calculation efficiency, the high-dimensional raw data is reduced to low-dimensional data. Specifically, the application features and user features are input into the feature embedding module. The feature embedding module can be an embedding layer (abbreviated as emb layer). The application features and user features are linearly projected in the feature embedding module to obtain the application feature matrix corresponding to the application features and the user feature matrix corresponding to the user features, thereby achieving dimensionality reduction to obtain a low-dimensional matrix.

[0039] After obtaining the application feature matrix and user feature matrix, execute Figure 1 In step S102, the application feature matrix is ​​input into a preset generalization module to obtain first data; at the same time, the application feature matrix and the user feature matrix are input into a preset memory module to obtain second data.

[0040] Reference Figure 2 , Figure 2 A scoring model structure diagram of a scoring method for a target application provided in an embodiment of the present application, wherein the scoring model 20 includes a generalization module 201, a memory module 202 and a scoring module 203. Figure 2 The acquisition of the first data and the second data in the above step S102 are explained separately.

[0041] First, the application feature matrix is ​​input into a preset generalization module to obtain the first data. The details are as follows:

[0042] like Figure 2 As shown in the preset generalization module 201, the generalization module includes a self-attention layer 2011, an attention layer 2012, and an enhancement layer 2013.

[0043] The self-attention layer multiplies the application feature matrix by a weight matrix, making the transformed data more conducive to learning. The attention layer further extracts features from the target application. The enhancement layer incorporates the output matrix of the self-attention layer into the output of the attention layer.

[0044] Specifically, the application feature matrix is ​​input into the self-attention layer, and a weight is multiplied on the application feature matrix to transform the application feature matrix into the output matrix of the self-attention layer, that is, the initial matrix. In a possible implementation, Q, K, and V are application feature matrices, and Q = K = V, then QK is first calculated. T Get the attention matrix, and then use the attention matrix to weight V, so that the result after softmax normalization is more stable. Among them, there is a Multi-headedSelf-attention structure in the self-attention layer, which is used to initialize multiple sets of application feature matrices to obtain multiple head i , and finally multiple heads i Combined. The specific calculation can be as follows:

[0045]

[0046] MultiHead(Q,K,V)=Concat(head i ,...,head h )W o

[0047]

[0048] FFN(x)=ReLU(xW i +b1)W2+h2

[0049] in, Respectively represent the weight matrix of the input corresponding to headi, head i The weights of W can be obtained by initialization, which is to sample from a truncated Gaussian distribution; O The weight matrix corresponding to the multi-head attention layer can also be obtained by initialization. The initialization method is to sample from a truncated Gaussian distribution. d represents the input dimension, which is to transform the attention matrix into a standard normal distribution, making the result after softmax normalization more stable.

[0050] Furthermore, while inputting the application feature matrix into the self-attention layer for matrix transformation, the application feature matrix is ​​input into the attention layer for feature extraction processing to obtain a high-order feature matrix matrix, which is also a low-dimensional matrix, generally a two-dimensional matrix.

[0051] After obtaining the initial matrix and the high-order feature matrix, the initial matrix and the high-order feature matrix are input into the enhancement layer for nonlinear transformation processing to obtain the first matrix. Finally, the obtained first matrix and the application feature matrix are bitwise multiplied to obtain the first data. For example, if the first matrix is ​​x1 = [[1, 2, 3], [4, 5, 6]] and the application feature matrix is ​​x2 = [[0.1, 0.2, 0.3], [0.4, 0.5, 0.6]], then the bitwise multiplication of x1 and x2 obtains the result of [[0.1, 0.4, 0.9], [1.6, 2.5, 3.6]]. Among them, by inputting the application feature matrix into the self-attention module for matrix transformation and inputting the application feature matrix into the attention layer for further feature extraction processing, a high-order feature matrix is ​​obtained, so that the subsequent score calculated based on the initial matrix and the high-order feature matrix is ​​more accurate. In addition, performing a bitwise multiplication operation on the obtained first matrix and the application feature matrix can improve the efficiency of subsequent score calculation.

[0052] Based on the above description of inputting the application feature matrix into a preset generalization module to obtain the first data, the following description further describes inputting the application feature matrix and the user feature matrix into a preset memory module to obtain the second data, as follows:

[0053] In this embodiment, the preset memory module 202 includes multiple low-order feature cross operation layers 2021, generally 8, for performing low-order feature cross operation on the application feature matrix and the user feature matrix. By inputting the application feature matrix and the user feature matrix into the preset memory module, performing a low-order feature cross operation layer once at each low-order feature cross operation layer, performing multiple low-order feature cross operations, and finally obtaining the second data. Specifically, as Figure 2 As shown, the initial feature matrix and the i-th cross matrix are subjected to a low-order feature cross operation to obtain the i+1-th cross matrix, wherein the initial feature matrix includes the application feature matrix and the user feature matrix. If i+1 is less than N, let i=i+1, and return to execute the step of performing a low-order feature cross operation on the initial feature matrix and the i-th cross matrix to obtain the i+1-th cross matrix, wherein when i is 1, the first cross matrix is ​​the initial matrix, and N is the total number of low-order memory operations. If i+1 is equal to N, the second data is determined based on the i+1-th cross matrix. That is to say, based on the output matrix obtained by the initial matrix and the previous low-order feature cross operation layer, a low-order feature cross operation is performed on the low-order feature cross operation layer of the next layer, until the last low-order feature cross operation layer is completed, and the final cross matrix is ​​obtained, and the second data can be obtained.

[0054] For example, when there are 8 low-order feature cross operation layers, 8 low-order feature cross operations are required. The low-order feature cross operation can be calculated as follows:

[0055] x i+1 =x0⊙(W i x i +b i )+x i

[0056] Among them, W i ∈R d*d represents the link weight between layer i and i+1, b i ∈R d Indicates a paranoid term.

[0057] like Figure 2 As shown in the memory module 202, when the above operation is performed in the first low-order cross operation layer, x i The value of the initial matrix x0 is x1=x0⊙(W0x0+b0)+x0; when the above operation is performed in the second low-order cross operation layer, x l The value of is the matrix x1 output by the first low-order cross operation layer, and the calculated x2=x0⊙(W1x1+b1)+x1. This is deduced by analogy until 8 low-order cross operations are performed, and the result of the 8th operation is x8=x0⊙(W7x7+b7)+x7, and the second data can be obtained.

[0058] After obtaining the first data and the second data, execute Figure 1 In step S103, the first data and the second data are input into a scoring module to obtain a score of the target application.

[0059] Reference Figure 2The scoring module 203 includes a fusion layer 2031 and a fully connected layer 2032. The fusion layer is used to process the first data and the second data, and the fully connected layer is used to calculate the output data of the fusion layer to obtain a scoring value. Specifically, the first data and the second data are input into the fusion layer for horizontal splicing to obtain a splicing matrix. For example, the first data is x1 = [[1, 2, 3, 4], [5, 6, 7, 8]], and the second data is x2 = [[0.1, 0.2, 0.3, 0.4], [0.5, 0.6, 0.7, 0.8]], and the result of splicing x1 and x2 is [[1, 2, 3, 4, 0.1, 0.2, 0.3, 0.4], [5, 6, 7, 8, 0.5, 0.6, 0.7, 0.8]]. Finally, the splicing matrix is ​​input into the fully connected layer for scoring calculation to obtain the score of the target application. The first data obtained through the generalization module and the second data obtained through the memory module are horizontally spliced ​​to obtain a score for the target application, so that the score utilizes the capabilities of both the generalization module and the memory module, thereby improving the calculation efficiency and accuracy of the score.

[0060] Furthermore, the target applications can be sorted from highest to lowest based on their scores to determine a ranking queue for the target applications, and the target applications can be recommended based on the ranking queue. For example, if application A has a score of 70, application B has a score of 60, application C has a score of 80, and application D has a score of 65, the applications can be sorted from highest to lowest into a ranking queue of application C, application A, application D, and application B, and the applications can be recommended based on this ranking queue.

[0061] This technical solution performs linear projection on the application features and user features in the feature embedding module to obtain the application feature matrix corresponding to the application features and the user feature matrix corresponding to the user features, thereby reducing the dimensionality of high-dimensional data to obtain a low-dimensional matrix, thereby improving computational efficiency. Secondly, the application feature matrix is ​​input into the attention layer for further feature extraction processing to obtain a high-order feature matrix, so that the subsequent scores calculated based on the initial matrix and the high-order feature matrix are more accurate. In addition, performing bitwise multiplication operations on the obtained first matrix and the application feature matrix can improve the efficiency of subsequent score calculations. Finally, the first data obtained by the generalization module and the second data obtained by the memory module are input into the fusion layer for horizontal splicing to obtain a splicing matrix, and the score is calculated based on the splicing matrix to obtain the score of the target application, so that the score utilizes both the capabilities of the generalization module and the memory module, thereby improving the computational efficiency and accuracy of the score.

[0062] The above describes the method of the present application. To better implement the method of the present application, the target application scoring device of the present application will be described below.

[0063] See also Figure 3 , Figure 3 This is a schematic diagram of the structure of a target application scoring device provided in an embodiment of the present application. The device may be a part of the aforementioned application terminal. Figure 3 As shown, the target application scoring device 30 includes:

[0064] Vector acquisition module 301: used to obtain user features and application features of the target application, input the application features and the user features into a preset feature embedding module, and obtain an application feature matrix corresponding to the application features and a user feature matrix corresponding to the user features;

[0065] Data calculation module 302: used to input the application feature matrix into a preset generalization module to obtain first data; at the same time, input the application feature matrix and the user feature matrix into a preset memory module to obtain second data;

[0066] Application scoring module 303: used to input the first data and the second data into a scoring module to obtain a score of the target application.

[0067] In a possible design, the vector acquisition module 301 is specifically used to: input the application features and the user features into the feature embedding module respectively for linear projection to obtain the application feature matrix and the user feature matrix.

[0068] In one possible design, the data calculation module 302 is specifically used to: input the application feature matrix into the self-attention layer for matrix transformation to obtain an initial matrix; input the application feature matrix into the attention layer for feature extraction processing to obtain a high-order feature matrix; and obtain the first data based on the initial matrix and the high-order feature matrix.

[0069] In one possible design, the data calculation module 302 is specifically used to: input the initial matrix and the high-order characteristic matrix into the enhancement layer for nonlinear transformation processing to obtain a first matrix; perform bitwise multiplication operation on the first matrix and the application characteristic matrix to obtain first data.

[0070] In one possible design, the data calculation module 302 is specifically used to: perform a low-order feature cross operation on the initial feature matrix and the i-th cross matrix to obtain the i+1-th cross matrix, where the initial feature matrix includes the application feature matrix and the user feature matrix; if i+1 is less than N, let i=i+1, and return to execute the step of performing a low-order feature cross operation on the initial matrix and the i-th cross matrix to obtain the i+1-th cross matrix, where when i is 1, the first cross matrix is ​​the initial feature vector, N is the total number of low-order memory operations, and i is a positive integer; if i+1 is equal to N, the second data is determined based on the i+1-th cross matrix.

[0071] In one possible design, the application scoring module 303 is specifically used to: input the first data and the second data into the fusion layer for horizontal splicing to obtain a splicing matrix; input the splicing matrix into the fully connected layer for scoring calculation to obtain the score of the target application.

[0072] In the above-mentioned device, an application feature matrix and a user feature matrix are obtained based on the application features and the user features, which can effectively evaluate the application's rating based on user preferences and the application's practicality, making the resulting rating more targeted. The application feature matrix is ​​input into a preset generalization module to obtain first data, and the application feature matrix and the user feature matrix are simultaneously input into a preset memory module to obtain second data to evaluate the target application's rating. This improves the accuracy of the target application's rating assessment by combining the generalization capability of the generalization module with the memory capability of the memory module.

[0073] See also Figure 4 , Figure 4 4 is a schematic diagram of the structure of a computer device provided in an embodiment of the present application. The computer device 40 includes a processor 401 and a memory 402. The processor 401 is connected to the memory 402. For example, the processor 401 can be connected to the memory 402 via a bus. The computer device can be the heating control device described in the above embodiment.

[0074] The processor 401 is configured to support the computer device 40 in executing the corresponding functions of the method in the above method embodiment. The processor 401 can be a central processing unit (CPU), a network processor (NP), a hardware chip, or any combination thereof. The above hardware chip can be an application specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The above PLD can be a complex programmable logic device (CPLD), a field programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof. Specifically, the processor 401 can be a processor in a single-chip microcomputer, and the memory 402 is used to store program code, etc. The memory 402 may include volatile memory (VM), such as random access memory (RAM); the memory 402 may also include non-volatile memory (NVM), such as read-only memory (ROM), flash memory, hard disk drive (HDD) or solid-state drive (SSD); the memory 402 may also include a combination of the above types of memory.

[0075] The processor 401 may call the program code to perform the following operations:

[0076] Obtain user features and application features of the target application, input the application features and the user features into a preset feature embedding module, and obtain an application feature matrix corresponding to the application features and a user feature matrix corresponding to the user features;

[0077] Inputting the application feature matrix into a preset generalization module to obtain first data; at the same time, inputting the application feature matrix and the user feature matrix into a preset memory module to obtain second data;

[0078] The first data and the second data are input into a scoring module to obtain a score of the target application.

[0079] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The program can be stored in a non-volatile computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).

[0080] The technical features of the above embodiments can be combined arbitrarily. In order to make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0081] The above-described embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present invention. It should be noted that a person of ordinary skill in the art may make various modifications and improvements without departing from the spirit of the present invention, all of which fall within the scope of protection of the present invention. Therefore, the scope of protection of the present invention shall be determined by the appended claims.

Claims

1. A scoring method for a target application, characterized in that: include: Obtaining user features and application features of a target application, inputting the application features and the user features into a preset feature embedding module to obtain an application feature matrix corresponding to the application features and a user feature matrix corresponding to the user features; Inputting the application feature matrix into a preset generalization module to obtain first data; at the same time, inputting the application feature matrix and the user feature matrix into a preset memory module to obtain second data; Inputting the first data and the second data into a scoring module to obtain a score of the target application; The generalization module includes: a self-attention layer, an attention layer, and an enhancement layer. Inputting the application feature matrix into a preset generalization module to obtain first data includes: Inputting the application feature matrix into the self-attention layer for matrix transformation to obtain an initial matrix; Inputting the application feature matrix into the attention layer for feature extraction to obtain a high-order feature matrix; Obtaining first data according to the initial matrix and the high-order characteristic matrix; The step of inputting the application feature matrix and the user feature matrix into a preset memory module to obtain second data includes: Performing a low-order feature cross operation on an initial feature matrix and an i-th cross matrix to obtain an i+1-th cross matrix, wherein the initial feature matrix includes the application feature matrix and the user feature matrix; If i+1 is less than N, let i=i+1, and return to the step of performing a low-order feature cross operation on the initial feature matrix and the i-th cross matrix to obtain the i+1-th cross matrix, wherein when i is 1, the first cross matrix is ​​the initial feature matrix, N is the total number of low-order memory operations, and i is a positive integer; If i+1 is equal to N, the second data is determined according to the i+1th cross matrix.

2. The method according to claim 1, characterized in that The obtaining of first data according to the initial matrix and the high-order characteristic matrix includes: Inputting the initial matrix and the high-order characteristic matrix into the enhancement layer for nonlinear transformation processing to obtain a first matrix; Perform a bitwise multiplication operation on the first matrix and the application characteristic matrix to obtain first data.

3. The method according to claim 1, characterized in that The scoring module includes a fusion layer and a fully connected layer. Inputting the first data and the second data into the scoring module to obtain a score for the target application includes: Inputting the first data and the second data into a fusion layer for horizontal splicing to obtain a splicing matrix; The concatenated matrix is ​​input into a fully connected layer to perform score calculation to obtain a score of the target application.

4. The method according to claim 1, wherein Inputting the application features and the user features into a preset feature embedding module to obtain an application feature matrix corresponding to the application features and a user feature matrix corresponding to the user features includes: The application features and the user features are respectively input into the feature embedding module for linear projection to obtain the application feature matrix and the user feature matrix.

5. The method according to claim 1, wherein Also includes: sorting the target applications according to their scores from largest to smallest, and determining a sorting queue for the target applications; The target application is recommended according to the sorting queue.

6. A scoring device for a target application, characterized in that: include: Vector acquisition module: used to obtain user features and application features of the target application, input the application features and the user features into a preset feature embedding module, and obtain an application feature matrix corresponding to the application features and a user feature matrix corresponding to the user features; Data calculation module: used for inputting the application feature matrix into a preset generalization module to obtain first data; at the same time, inputting the application feature matrix and the user feature matrix into a preset memory module to obtain second data; Application scoring module: used for inputting the first data and the second data into the scoring module to obtain a score of the target application; The generalization module includes: a self-attention layer, an attention layer, and an enhancement layer. Inputting the application feature matrix into a preset generalization module to obtain first data includes: Inputting the application feature matrix into the self-attention layer for matrix transformation to obtain an initial matrix; Inputting the application feature matrix into the attention layer for feature extraction to obtain a high-order feature matrix; Obtaining first data according to the initial matrix and the high-order characteristic matrix; Data calculation module: further used to perform a low-order feature cross operation on the initial feature matrix and the i-th cross matrix to obtain the i+1-th cross matrix, wherein the initial feature matrix includes the application feature matrix and the user feature matrix; If i+1 is less than N, let i=i+1, and return to the step of performing a low-order feature cross operation on the initial feature matrix and the i-th cross matrix to obtain the i+1-th cross matrix, wherein when i is 1, the first cross matrix is ​​the initial feature matrix, N is the total number of low-order memory operations, and i is a positive integer; If i+1 is equal to N, the second data is determined according to the i+1th cross matrix.

7. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the processor is caused to perform the steps of the method according to any one of claims 1 to 5.

8. A computer device comprising a memory and a processor, characterized in that: The memory stores a computer program, and when the computer program is executed by the processor, the processor is caused to perform the steps of the method according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Recommendation method based on double-layer matrix decomposition

    CN105843928A

  • Recommendation algorithm, recommendation system and terminal device

    CN110110226A