Recommendation system training method, recommendation system, electronic device and storage medium
By introducing the reverse propensity coefficient and user perception coefficient in the recommendation system, and updating the objective function with non-overlapping user item rating data, the problem of Matthew effect in the recommendation system is solved, and the accuracy and de-bias effect of the recommendation system are improved. Make sure the user gets recommendations for items they really like.
Patent Information
- Application Number
- CN202111649140.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-30
- Publication Date
- 2025-01-03
- Estimated Expiration
- 2041-12-30
AI Technical Summary
Existing recommendation systems are prone to Matthew effect, tending to recommend popular items and neglecting unpopular items, resulting in users not being able to get product recommendations that they really like.
By selecting the non-overlapping first and second scoring data from the user item scoring data, the initial recommendation system is trained, and the inverse propensity coefficient and user perception coefficient are introduced, and the objective function is updated iteratively to reduce event link feedback errors and User perceive feedback errors to improve the accuracy of the recommendation system.
It effectively alleviates the Matthew effect, improves the possibility that the recommendation system recommends items you really like to users, and improves the accuracy and de-bias effect of the recommendation system.
Smart Images

Figure CN114297500B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of Internet technology, and more particularly to a method for training a recommendation system. The present invention also relates to a related recommendation system, electronic device, and storage medium. Background Art
[0002] Recommendation systems are widely used in various online services to help users find their favorite products, music, books, etc. more quickly. However, most recommendation systems currently prioritize products that users are most likely to like, which may lead to the Matthew effect, that is, popular items become more popular, while unpopular items become less popular. As a result, recommendation systems tend to recommend too many popular items to users instead of items that users really like.
[0003] Therefore, we are currently seeking to provide a recommendation system that can reduce the impact of the Matthew effect and provide corresponding items based on user needs.
[0004] The content of this background technology description is only for facilitating understanding of the relevant technology in this field and is not regarded as an admission of the prior art. Summary of the invention
[0005] Therefore, the embodiments of the present invention intend to provide a recommendation system training method and device, as well as related recommendation systems, electronic devices, and storage media, which can increase the possibility of recommending to users items that the users really like, and effectively alleviate or avoid the problem of current recommendation systems recommending too many popular items to users.
[0006] In a first aspect, a recommendation system training method is provided, which may include:
[0007] Selecting first rating data and second rating data for each user from given user-item rating data, wherein the given user-item rating data has the user's rating of the item, and the first rating data does not overlap with the second rating data;
[0008] An initial recommendation system is obtained by training the first rating data;
[0009] Iteratively perform the following steps of updating the recommendation system with a predetermined first iteration condition:
[0010] For each user, predict at least one recommended item using the recommendation system;
[0011] Obtaining the rating of each user on the recommended item in the second rating data, and adding the rating to the first rating data to obtain new first rating data;
[0012] Obtaining the user's preference bias towards the recommended item;
[0013] determining an inverse tendency coefficient from the tendency deviation;
[0014] Based on an objective function including an inverse tendency coefficient, the recommendation system is updated using the new first scoring data.
[0015] According to a second aspect, a recommendation system training device is provided, which may include a selection unit, a pre-training unit and an iterative execution unit; the iterative execution unit may include a prediction unit, a score acquisition unit, a tendency coefficient determination unit and an update unit; wherein the selection unit may be configured to select first score data and second score data for each user in given user-item score data, wherein the given user-item score data has the user's score for the item, and the first score data and the second score data do not overlap; the pre-training unit may be configured to obtain an initial recommendation system trained by the first score data; the prediction unit of the iterative execution unit may be configured to predict at least one recommended item for each user using the recommendation system; the score acquisition unit of the iterative execution unit may be configured to obtain the score of each user for the recommended item in the second score data, and add the score to the first score data to obtain new first score data; the tendency coefficient determination unit of the iterative execution unit may be configured to determine the user's tendency deviation for each item in the new first score data as an inverse tendency coefficient; the update unit of the iterative execution unit may be configured to update the recommendation system using the new first score data based on an objective function containing an inverse tendency coefficient.
[0016] According to a third aspect, a recommendation system is provided. The recommendation system is trained by the recommendation system training method according to any embodiment of the present invention and / or trained by the recommendation system training device according to any embodiment of the present invention.
[0017] According to a fourth aspect, an electronic device is provided, which may include: a processor and a memory storing a computer program, wherein the processor is configured to implement the method according to any embodiment of the present invention when running the computer program.
[0018] According to a fifth aspect, a storage medium is provided, wherein the storage medium stores a computer program, wherein the computer program is configured to implement the method according to any embodiment of the present invention when executed.
[0019] The technical solution of the embodiment of the present invention regards the recommendation system and user feedback as a series of events. Therefore, the technical solution of the embodiment of the present invention introduces an objective function containing an anti-bias coefficient in an iterative manner, thereby reducing the event link feedback error, so as to effectively combat the bias caused by the recommendation system to users when recommending items, thereby improving the accuracy of the recommendation system.
[0020] In the technical solution of a further embodiment, the user perception coefficient that reflects the user rating deviation is also introduced into the objective function to learn the rating deviation between different users, thereby realizing a solution to reduce the user perception feedback error, achieving a better debiasing effect, and further improving the accuracy of the recommendation system.
[0021] Other optional features and technical effects of the embodiments of the present invention are partially described below, and partially can be understood by reading this document. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. The elements shown are not limited to the proportions shown in the accompanying drawings. The same or similar reference numerals in the accompanying drawings represent the same or similar elements, wherein:
[0023] Figure 1 An exemplary flow chart of a recommendation model training method according to an embodiment of the present invention is shown;
[0024] Figure 2 shows a given user-item rating matrix for use according to an embodiment of the present invention;
[0025] Figure 3 A schematic diagram of a matrix decomposition method according to an embodiment of the present invention is shown;
[0026] Figure 4 Another exemplary flow chart of a recommendation model training method according to an embodiment of the present invention is shown;
[0027] Figure 5 Another exemplary flow chart of a recommendation model training method according to an embodiment of the present invention is shown;
[0028] Figure 6 An example diagram showing extraction of a given user-item rating matrix from an original user-item rating matrix according to an embodiment of the present invention is shown;
[0029] Figure 7 Another exemplary flow chart of a recommendation model training method according to an embodiment of the present invention is shown;
[0030] Figure 8 A schematic diagram showing a song recommendation interface according to an embodiment of the present invention is applied;
[0031] Fig. 9 Another exemplary flow chart of a recommendation model training method according to an embodiment of the present invention is shown;
[0032] Fig.10 A schematic diagram of the structure of a recommendation model training device according to an embodiment of the present invention is shown;
[0033] Fig.11 An exemplary structural diagram of an electronic device capable of implementing the method according to an embodiment of the present invention is shown. DETAILED DESCRIPTION
[0034] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with specific implementation methods and drawings. Here, the exemplary implementation methods of the present invention and their descriptions are used to explain the present invention, but are not intended to limit the present invention.
[0035] In the embodiment of the present invention, "model" has a conventional meaning in the field of machine learning. For example, the model may be a machine learning model, such as a machine learning model based on matrix decomposition.
[0036] In the embodiments of the present invention, "item" has a broad interpretation, including but not limited to one or more of music (songs), books, news, videos, such as long videos, short videos, courses, restaurants, products sold on e-commerce platforms, etc. In the multiple embodiments described herein, the recommendation system training method, device, and related recommendation system, electronic device, and storage medium of the embodiments of the present invention will be described by taking music (songs) as an example; however, those skilled in the art will understand that the methods, devices, systems, electronic devices, and storage media described in these embodiments can be applied to other items to obtain new embodiments.
[0037] In the embodiment of the present invention, the recommendation system may refer to a model used in the Internet field, such as an application (APP) to help online users discover items. In this article, the recommendation system can be used interchangeably with the recommendation model. In the embodiment of the present invention, the recommendation system may include a virtual device or module, and may also include a computer device that can be configured with the virtual device or module.
[0038] In an embodiment of the present invention, the training of the recommendation system may be partially or completely provided or implemented by various machine learning platforms / frameworks.
[0039] In an embodiment of the present invention, the machine learning platform / framework includes but is not limited to PyTorch, TensorFlow, Caffe, Keras, Amazon Machine Learning, Azure Machine Learning Studio, etc.
[0040] In an embodiment of the present invention, a recommendation system training method is provided. In the recommendation system training method in the embodiment of the present invention, the recommendation system and user feedback are regarded as a series of events, thereby introducing an objective function containing an anti-propensity coefficient in an iterative manner, reducing the event link feedback error, and effectively counteracting the tendency bias caused by the recommendation system to users when recommending items, thereby improving the accuracy of the recommendation system.
[0041] The method according to the embodiment of the present invention has further technical effects compared with the two solutions known to the inventors.
[0042] In a solution known to the inventor, the bias of popular item recommendations is reduced by introducing item preference scores when training with training data, for example, different weights are assigned to items of different popularity. However, this solution attempts to reduce the bias by assigning different weights to items of different popularity, but the solution does not consider the feedback bias that may be caused by the interaction between the recommendation system and the user. Therefore, this method cannot learn the impact of the recommendation system on the user's behavior itself when the user continues to use the recommendation system. It can only solve the data bias, but cannot eliminate the feedback bias in the recommendation system.
[0043] In another solution known to the inventor, some assumptions are made for the feedback chain of the recommendation system, and then corresponding objective functions are proposed based on the assumptions to reduce the error of the feedback chain. For example, it is assumed that each link in the feedback chain follows a certain mathematical relationship and is related to the previous recommendation system, such as assuming that the interaction between the recommendation system and the user is a Markov chain time. This solution proposes assumptions for the entire feedback chain for optimization. Although this takes into account the impact of the recommendation system on the user behavior itself, this optimization is largely based on the above-mentioned assumed mathematical relationship, which may be significantly different from the actual situation, resulting in poor debiasing performance in real application scenarios.
[0044] As an explanation but not limitation, compared with the first solution described above, the recommendation system training solution provided in the embodiment of the present invention further regards the user's feedback on the recommendation system as a series of events after the initial recommendation system is preliminarily trained, thereby introducing an objective function containing an anti-propensity coefficient through an iterative cycle, thereby reducing the event link feedback error. In particular, the recommendation system training method of the embodiment of the present invention specifically considers the actual interaction between the user and the recommendation system, and creates a step-by-step (iterative) feedback learning debiasing mode for the tendency bias gradually introduced by the user in the process of continuous interaction with the recommendation system.
[0045] Compared with the aforementioned second solution, the recommendation system training method provided in the embodiment of the present invention does not need to introduce strong assumptions for debiasing, but proposes a debiasing model that conforms to the actual interaction between the user and the recommendation system.
[0046] exist Figure 1 In the illustrated embodiment, the recommendation system training method includes steps S110 to S170.
[0047] S110: selecting first rating data and second rating data for each user from given user-item rating data, wherein the given user-item rating data has the user's rating of the item, and the first rating data does not overlap with the second rating data.
[0048] In the embodiment of the present invention, the user-item rating data is a user-item rating matrix.
[0049] In the embodiment of the present invention, the rating of the item by the user in step S110 is a real rating, as further described below.
[0050] Combined with reference Figure 2 and Table 1, showing an exemplary given user-item rating matrix R def In the specific example shown in Table 1, the items are songs.
[0051] In an embodiment of the present invention, a given user-item rating matrix comes from historical behavior data of all users interacting with all items. For example, in the example of songs, the user-item (song) rating matrix can come from the user's listening data, such as the listening data of users of a music APP.
[0052] In some embodiments, the aforementioned historical behavior data of all users interacting with all items may also include a rating matrix, which is the original user-item rating matrix R origin (like Figure 6 As shown in Figure 2.1 ... origin is a sparse matrix.
[0053] In a specific embodiment of the present invention, Figure 2 As shown in Table 1, the given user-item rating matrix R def is a complete rating matrix, that is, all items corresponding to each user in the given complete rating matrix (or all users corresponding to each item) have true ratings (also called true values). In other words, the given user-item rating matrix can be selected from the sparse original user-item rating matrix R origin The rating matrix is formed by the data with real ratings.
[0054] In this article, the true score may also be referred to as the true value, which has the meaning normally understood by those skilled in the art. Elsewhere in this article, predicted scores or predicted values are also used to represent the scores for recommended items generated by the recommendation system. In a number of different embodiments, the true score can be used as a true value in the training method of the present invention, so that the recommendation system can be trained (including preliminary training and subsequent interactive iterative training) based on the true score and the predicted score predicted by the recommendation system, and / or, it can be verified whether the recommendation system after the iteration meets the requirements. People will understand that in some places in this article, the "score" mentioned based on the user-item rating data (matrix) will be the true score, such as the score described in the aforementioned step S110; the "score" predicted by the recommendation system will be the predicted score.
[0055] In an embodiment of the present invention, as shown in Table 1, the rating may include an explicit rating, i.e., based on a user's direct rating of an item such as a song. In an embodiment of the present invention, the rating may include an implicit rating, such as, but not limited to, a "rating" derived from various interactions between a user and an item, such as a "rating" derived from operations such as whether the user has played a song, the length of time a song has been played, the number of times a song has been played, a song has been collected, a song has been liked, a song has been commented on, etc. In an embodiment of the present invention, the rating may include a combination of an explicit rating and an implicit rating.
[0056] In the embodiment of the present invention, as shown in Table 1, the score may be a single score, i.e., a one-dimensional vector. In the embodiment of the present invention, although not shown, the score may be a multi-dimensional vector, for example, a multi-dimensional vector including the aforementioned multiple explicit and / or implicit score values.
[0057] In an embodiment of the present invention, the score may be normalized or non-normalized.
[0058] In the example shown in Table 1, the ratings may be unnormalized explicit ratings in the rating range [1,5].
[0059] Table 1 - Exemplary complete user-item (song) rating matrix (table)
[0060] Blue and white porcelain Simple Love Rice Fragrance Catching loaches Little Star Newspaper Seller Song Camel bell Love Song of the West Sea Qinghai-Tibet Plateau User 1 4 4 2 4 1 3 3 2 3 User 2 2 2 3 3 4 5 3 1 1 User 3 2 4 5 2 3 2 2 2 4 User 4 2 3 5 3 3 4 2 5 2 User 5 3 3 4 4 1 2 4 5 1 User 6 4 5 4 3 2 3 5 3 1 User 7 3 2 4 3 2 3 4 4 3 User 8 5 4 4 3 4 5 4 4 4 User 9 2 4 4 2 3 3 2 4 1 User 10 2 5 4 4 4 5 1 2 4 User 11 4 2 2 3 4 2 2 1 4 User 12 4 2 3 2 4 4 3 3 3 User 13 2 4 3 4 3 4 3 2 1 User 14 1 2 5 1 2 3 3 4 4 User 15 2 2 3 2 5 4 2 3 2 User16 4 4 3 6 4 3 4 5 4 User 17 2 5 2 5 2 2 4 5 5 User 18 4 3 5 4 2 4 2 4 5 User 19 5 5 3 4 2 4 3 2 2 User 20 2 2 3 2 6 4 3 4 3 User 21 3 4 5 1 4 4 3 3 4 User 22 5 3 4 2 3 2 4 2 6 User 23 5 3 2 2 3 3 1 4 4 User24 2 4 3 2 2 2 4 1 2
[0061] In the embodiment of the present invention, in combination with reference Figure 2 As shown in Tables 1 and 2, given the complete user-item rating matrix R def In , for each user, the first scoring data is randomly selected. As an example, in the following Table 2, the first scoring data are those whose true values are not masked.
[0062] Similarly, given the complete user-item rating matrix R defIn , for each user, the second scoring data is randomly selected. As an example, in the following Table 2, the second scoring data are those whose real values are replaced by the symbol "-".
[0063] In some embodiments, the first scoring data may also be referred to as initialization scoring data D init , these rating data can be used for preliminary training to obtain an “initial” recommendation system.
[0064] In some embodiments, the second scoring data may also be referred to as candidate scoring data D candidat, These rating data can be used for subsequent iterative updates of the recommendation system after the “initial” recommendation system is trained.
[0065] In the embodiment of the present invention, the first scoring data / initialization scoring data D init and second scoring data / candidate scoring data D candidate No overlap.
[0066] Table 2 - Example of a scoring matrix with non-initialized scoring data masked (table)
[0067] Blue and white porcelain Simple Love Rice Fragrance Catching loaches Little Star Newspaper Seller Song Camel bell Love Song of the West Sea Qinghai-Tibet Plateau User 1 * * - - 1 3 - - - User 2 2 * * 3 - - - - - User 3 - 4 5 - * - * - - User 4 - * - 3 3 - - - * User 5 - 3 * 4 * - - - - User 6 - - 4 * - 3 - - * User 7 - 2 - - - * 4 - * User 8 - - 4 * * 5 - - - User 9 - - - * 3 * - 4 - User 10 - - - 4 - 5 - * * User 11 - 2 - * 4 - * - - User 12 - - - 2 * 4 * - - User 13 - - 3 - 3 - - * * User 14 - 2 5 - - * * - - User 15 - * * - - 4 2 - - User16 - - 3 * 4 - * - - User 17 - - - 5 * * - - 5 User 18 - - - - * 4 - 4 * User 19 - 5 * 4 - - * - - User 20 - - - 2 - - 3 * * User 21 - - * * 4 4 - - - User 22 - - 4 - * - * 2 - User 23 - * * - - 3 1 - - User24 - - 3 * - 2 * - -
[0068] In the embodiment of the present invention, the first scoring data is such as the initialization scoring data D init The proportion of random selection for each user is the same, for example, 5% of the data may be randomly selected.
[0069] In the embodiment of the present invention, the second scoring data such as the candidate scoring data D candidate The proportion of data randomly selected for each user is the same, for example, 75% of the data may be randomly selected.
[0070] In the embodiment of the present invention, the second scoring data such as the candidate scoring data D candidate The proportion of the first scoring data and the initial scoring data D init The proportion of is preferably at least 2 times, more preferably at least 5 times, more preferably at least 10 times that of the latter.
[0071] S120: An initial recommendation system is obtained by training the first scoring data.
[0072] In the embodiment of the present invention, a variety of known means can be used to train the initial recommendation system, including but not limited to: Figure 3 The matrix factorization (MF) and its various derivative methods shown.
[0073] Specifically, Figure 4 As shown, step 120 may include:
[0074] S410: Masking the scores of non-first score data in the given user-item score matrix to obtain an initialized score matrix based on the first score data, wherein the initialized score matrix is a sparse matrix having the same dimension as the given user-item score matrix.
[0075] S420: Decompose the initial rating matrix into a user matrix and an item matrix, and obtain an initial recommendation system by training with the help of matrix decomposition method.
[0076] Combined with reference Figure 3 , shows an exemplary matrix decomposition method. In short, the first scoring data, such as the initialization scoring data D init The resulting rating matrix, also called the initialization rating matrix, is decomposed into two matrix products. These two matrices can be called the user matrix (or user latent matrix) V and the item matrix (or item latent matrix) M respectively.
[0077] In the embodiment of the present invention, as shown in Table 2, in the above-given, complete rating matrix R, non-first rating data will be shielded (as schematically indicated by the symbols "-" and "*" in Table 2), that is, most of the real rating data (real values) are shielded to form a rating matrix for (pre) training to obtain an initial recommendation system. For the sake of distinction, this rating matrix is called the initialization rating matrix R'. Figure 3 In the example shown, in order to distinguish from the complete rating matrix R (in the embodiment of the present invention, that is, the given user-item rating matrix R def ), the initialization rating matrix is labeled as R'. Here, the initialization rating matrix forms a sparse matrix and has the same dimensions as the above-given, complete rating matrix. As schematically shown in Tables 1 and 2, the exemplary initialization rating matrix formed by Table 2 has the same dimensions as the complete matrix of Table 1, which is n=24, m=9, where n refers to the number of users in the rating matrix, and m refers to the number of items in the rating matrix.
[0078] Therefore, the initial recommendation system / recommendation model can be trained by using the matrix decomposition method or its derivative methods.
[0079] Continue to refer Figure 3 To describe an example of a matrix factorization method that can be used to train an initial recommendation system / recommendation model.
[0080] Figure 3The rating matrix on the left side of the figure (here, the initialized rating matrix) is a sparse matrix (in this sparse matrix, the masked true value area as before is defined as zero value), which is known data. The matrix decomposition method decomposes it into the product of the two matrices on the right side of the equal sign, namely the user latent matrix and the item latent matrix. In the illustrated embodiment, the user (hidden) matrix can have n×k dimensions, and the item (hidden) matrix can have k×m dimensions. In the exemplary example of the present invention, the vector formed by the u-th row of the user (hidden) matrix is used to represent the u-th user; the vector formed by the i-th column of the item (hidden) matrix is used to represent the i-th item (such as a song). Here, k can be a value much smaller than m and n.
[0081] In some embodiments, the k dimension of the latent matrix may be meaningful for interpretation, for example, items may be divided into k categories, and each dimension in the k-dimensional vector corresponds to a category of items. For example, in the examples shown in Table 1 and Table 2, songs may be divided into "popular songs", "children's songs", and "folk songs". In this case, k = 3. Figure 3 As shown. Setting the k dimension to have explanatory meaning, especially defining the k dimension based on item classification, can help make the implementation of the recommendation system more explanatory and facilitate subsequent improvements. On the other hand, it is also convenient to cluster users based on the explanatory meaning of the k dimension, such as item categories, such as song categories. The inventors have found that such clustering enables the recommendation system implemented according to the embodiment of the present invention to have a wider generalization and can be applied to a variety of situations with light modification.
[0082] In another embodiment, the k dimension of the aforementioned latent matrix may not have explanatory significance.
[0083] Therefore, when you want to calculate the predicted score of the u-th user for the i-th item, you can use the u-th row of the user matrix and the i-th column of the item matrix to make an inner product, and the inner product value is the predicted score.
[0084] Here, the matrix decomposition method can use the user matrix and the item matrix as unknown quantities, and learn or solve the user matrix and the item matrix by minimizing the difference between the predicted score and the actual score (true value) in the current initialized score matrix. In some embodiments, the learning or solving can be based on the least squares method, such as the alternating least squares method. Alternatively, the learning can be based on the gradient descent method, such as the random or non-random gradient descent method.
[0085] For the learning method, an objective function may be defined, which may be defined in a conventional manner, such as using a minimum square error objective function. By way of explanation and not limitation, it may be advantageous to use a conventional objective function in the initial training without introducing a bias coefficient or a user perception coefficient, which increases the computation speed, and for the initialization rating matrix of a relatively small sample, the bias coefficient or the user perception coefficient has a lower impact. In some embodiments of the present invention, when training an "initial" recommendation system, a predetermined "initial" threshold may be set so that when using the first rating data such as the initialization rating data D init , the recommendation system is continuously trained by matrix factorization method only when the initial loss value determined by the objective function is less than the initial loss threshold.
[0086] Here, the specific learning or solution process of the matrix decomposition method will not be repeated.
[0087] It is conceivable that the embodiments of the present invention may also use a matrix decomposition derivative method to train (pre-train) to obtain an initial recommendation system / recommendation model.
[0088] exist Figure 1 In the illustrated embodiment, the method further iteratively executes the following steps S130 to S170 with a predetermined (first) iteration condition.
[0089] In some embodiments, the predetermined (first) iteration condition is a predetermined (first) number of iterations. Preferably, under the predetermined (first) number of iterations, the iteration does not reach loss value convergence.
[0090] In the embodiment of the present invention, the predetermined number of iterations can be set as needed. In some embodiments, the predetermined number of iterations is 20.
[0091] As an alternative, the predetermined (first) iteration condition may be that a loss value calculated by the objective function is smaller than a predetermined (first) loss threshold.
[0092] Those skilled in the art will understand that in the embodiments of the present invention, it is particularly beneficial to converge before the loss value is reached, that is, to complete the iteration "in advance" with a predetermined number of iteration cycles of a preset threshold. This is because the inventors realize that when the anti-propensity coefficient is introduced, ending the iteration "in advance" with a predetermined number of iteration cycles can avoid the correction of the "over-learning" recommendation system and the feedback iteration of the user, thereby avoiding the overfitting that may be caused by this, and at the same time greatly reducing the amount of calculation.
[0093] In this iterative execution, the recommendation system / model previously trained with a small amount of training data (i.e., most of the real rating data is blocked) is used to predict the items that the user is most likely to be interested in, i.e., the recommended items.
[0094] S130: For each user, predict at least one recommended item using the recommendation system.
[0095] In step S130, multiple recommended items, such as multiple recommended songs, may be predicted for each user. Specifically, the top N recommended items in the second rating data may be predicted for each user, and the prediction is based on the recommendation scores predicted by the recommendation system / model, arranged from high to low. In some examples, each execution of step S130 may predict the top 10 (Top-10).
[0096] S140: Obtain each user's rating of the recommended item in the second rating data, and add the rating to the first rating data to obtain new first rating data.
[0097] As an explanation but not limitation, in this iterative execution, it is assumed that the user agrees 100% with the recommendation result. Therefore, the real rating of the recommended item predicted in step S130 is no longer blocked, and as described in step S140, as new training data is added iteratively, the recommendation system / model can gradually learn the features implicit in the user's continuous interaction with the recommendation system / model. Figure 4 In the illustrated embodiment, adding refers to adding real data to the sparse initialization scoring matrix (which can become an iterative scoring matrix after one or more iteration cycles), and the sparseness of the initialization scoring matrix (iterative scoring matrix) is reduced. In the embodiment of the present invention, the data added to the first scoring data means being removed from the second scoring data (candidate data).
[0098] In other embodiments of the present invention, it is possible to add an assumption that the user does not 100% agree with the recommendation result. Here, the recommended items predicted in the above step S130 can be randomly "shielded" at a certain ratio (fixed ratio or random ratio) without adding the real scores corresponding to the blocked recommended items to the first score data. In one example, for example, 30% (or a random value with a blocking ratio of less than 30%) of the recommended items can be randomly shielded without obtaining the real scores.
[0099] S150: Determine the user's tendency deviation for each item in the new first rating data as an inverse tendency coefficient.
[0100] In the embodiment of the present invention, the tendency deviation in step S150 may include one or both of the tendency deviation caused by the popularity of comments and the tendency deviation caused by the exposure of recommendation positions. As an explanation but not limitation, the inventors expect that the deviation of the user's tendency to items may be due to the recommendation system itself over-recommending items, causing the user to pay more attention to certain items than other items, and there may be items among these other items that the user may be interested in.
[0101] Thus, in some embodiments, step S150 may include:
[0102] A1: Determine the popularity parameter of each item in the new first rating data as the inverse tendency coefficient.
[0103] In a specific embodiment, Figure 5 As shown, step A1 may include:
[0104] S510: Acquire original user-item rating data, wherein the users and items covered by the original user-item rating data are greater than the given user-item rating data, and the given user-item rating data is extracted from the original user-item rating data.
[0105] Combined with reference Figure 6 As well as the above, the original user-item rating matrix R origin It covers a wider range of data than the given user-item rating matrix, for example, it can cover all or almost all users and items in all or part of the historical data of an online platform, such as a music playing platform. origin is a sparse matrix, such as Figure 6 It is schematically shown that only some have valid values V, and the rest are empty. Figure 6 Schematically, the given user-item rating matrix R def It can be selected from the sparse original user-item rating matrix R origin The rating matrix is formed by the real rating data in , and the original user-item rating matrix R origin The number of users and items covered in is much larger than the user-item rating matrix R def In other words, the original user-item rating matrix R origin The dimension is larger than the given user-item rating matrix R def Dimension.
[0106] S520: In the initial user-item rating data, count the total number of users and the number of rating users who have rated each item in the new first rating data.
[0107] Here, we can use the original user-item rating matrix Rorigin Count the number of users N with rating data in the column where each item i is located i , and the original user-item rating matrix R origin The total number of users N u , which is its user dimension (here, the number of rows).
[0108] S530: Determine a popularity parameter based on the number of rating users and the total number of users.
[0109] Here, the popularity (parameter) of item i can be defined as P i =N i / N u As an illustrative example, Figure 6 As shown, the third item I 3 (assuming it is a recommended item) has a popularity of 4 / 6.
[0110] In the embodiment of the present invention, the inventors found that by introducing "super data" with a much larger coverage than the training data (a given user-item rating matrix) for bias debiasing, a better debiasing effect can be achieved.
[0111] Alternatively, in some embodiments, step S150 may include:
[0112] B1: Determine the recommendation position display history parameter of each item in the new first rating data as the anti-tendency coefficient.
[0113] In a specific embodiment, Figure 7 As shown, step B1 may include:
[0114] S710: Obtaining historical data of recommended position display.
[0115] In some embodiments, the number of users and items covered by the recommendation placement display history data is greater than a given user-item rating matrix.
[0116] S720: In the recommendation position display history data, count the total number of recommendation positions and the number of times and / or ranking of each item in the new first rating data that appears in the recommendation position.
[0117] For example Figure 8 For example, a plurality of (6) recommendation positions 810 in the user interface 800 of the music player APP are shown, and the order of the recommendation positions can be defined from left to right and from top to bottom, such as the 1st position to the 6th position. In some embodiments, the relevant assignment can be determined according to the ranking, and the ranking and the relevant assignment can be negatively correlated, for example, the 1st position is assigned a value of 6 and the 6th position is assigned a value of 1.
[0118] In some embodiments, the aforementioned original user-item rating matrix R can be statistically calculatedorigin In the website or other historical data, the total number of recommendation positions presented to all users at all times or over a period of time, as well as the number of times each of the aforementioned items appeared in these recommendation positions and the ranking when they appeared.
[0119] S730: Determine the recommendation position display history parameters based on the number and / or ranking and the total number of recommendation positions.
[0120] In some embodiments, the method for determining the recommendation position display history parameter may be similar to the method for determining the popularity described above. For example, the recommendation position display history parameter may be defined as P i ′=N i ′ / N u ′, where N i ' can be the sum of times or the sum of rankings, N u ' is the total number of recommended positions.
[0121] S170: Based on the objective function containing the inverse tendency coefficient, the recommendation system is updated using the new first scoring data.
[0122] In the embodiment of the present invention, the update can also be based on the matrix decomposition method, so that updating the recommendation system may include further updating the pre-trained (and possibly iterated) user latent matrix and item latent matrix. However, according to the teaching of the present invention, it can be understood that the data based on which the update is based is the new first rating data, that is, the real data (real value) corresponding to the recommended items for each user in the current iteration is added.
[0123] Accordingly, in an embodiment of the present invention, the objective function may be based on an objective function that is the same or similar to the aforementioned pre-training, with a debiasing term added, which introduces an anti-biasing coefficient. However, it is conceivable that an objective function different from the aforementioned pre-training may be used.
[0124] In these embodiments, the updating may be performed using a gradient descent method.
[0125] In an exemplary embodiment, the objective function for the matrix decomposition method that introduces the inverse tendency coefficient is, for example, as shown in the following formula 1:
[0126]
[0127] In this formula, R represents the scoring matrix defined by the first scoring data (e.g. Figure 3 The rating matrix R' shown is added with the real data of the current (and previous) iteration), V represents the user hidden (vector) matrix, M represents the item hidden (vector) matrix, represents the F-norm, which aims to regularize the parameters of the user and item latent vector matrices, and λ represents the regularization constraint weight; P u,iis the negative tendency score, P u,i =P i or P u,i =P i ′, as described in the previous embodiment, the popularity (parameter) of item i can be defined as P i =N i / N u , the historical parameter of the recommended position display can be defined as P i ′=N i ′ / N u ′.
[0128] Therefore, in the update, the user latent vector and the item latent vector can be updated according to the following formulas 2 and 3:
[0129] V u ←V u +η(2e ui M i -λV u ) (2)
[0131] M i ←M i +η(2e ui V u -λM i ) (3)
[0133] Where η represents the learning rate, λ represents the regularization constraint weight, and e ui To introduce the inverse tendency coefficient P i (or P i ') debiasing term. ui It can be calculated according to the following formula 4
[0134]
[0135] in, represents the predicted rating of user u to item i; P u,i is the negative tendency score, P u,i =P i or P u,i =P i ′.
[0136] Here, the embodiment of the present invention adds new user-item ratings in each iteration according to the selection of the recommendation strategy, thereby simulating user feedback and ultimately simulating the feedback loop of the recommendation system and user interaction, without the need to introduce strong assumptions on the feedback loop link between the recommendation system and the user as in the existing methods, ultimately making the recommendation algorithm more accurate on real data sets.
[0137] In an embodiment in which relevant method steps are iteratively executed with predetermined (first) iteration conditions, the method, such as step S170, may further include: determining a (first) loss value based on the objective function, and terminating the (first) iteration when the (first) loss value is less than a predetermined (first) loss threshold.
[0138] In other embodiments, as an alternative to introducing only the popularity parameter or the recommendation position historical display history parameter, different iteration schemes can be configured to simultaneously learn these two debiasing parameters in the system.
[0139] For example, in some embodiments, different anti-bias coefficients may be introduced at different loops of the iteration.
[0140] For example, in the training method, the following steps may be iteratively performed with predetermined iteration conditions:
[0141] C1: For each user, use the recommendation system to predict at least one recommended item;
[0142] C2: Obtain each user's rating of the recommended item in the second rating data, and add the rating to the first rating data to obtain new first rating data;
[0143] C3: Determine the user's tendency deviation for each item in the new first rating data as an inverse tendency coefficient, wherein if it is an odd-numbered iteration cycle, the tendency deviation is one of the popularity parameter and the recommendation position display history parameter of each item in the new first rating data, and if it is an even-numbered iteration cycle, the tendency deviation is the other of the popularity parameter and the recommendation position display history parameter of each item in the new first rating data;
[0144] C4: Based on the objective function containing the inverse tendency coefficient, the recommendation system is updated using the new first scoring data.
[0145] The iteration condition described in this embodiment is, for example, the aforementioned iteration condition.
[0146] Alternatively, in some embodiments, two sets of iterations may be performed at two predetermined iterations respectively.
[0147] For example, in the training method, a first set of iterations may be iteratively performed with a predetermined (first) iteration condition, which includes the following steps D1 to D4:
[0148] D1: For each user, use the recommendation system to predict at least one recommended item;
[0149] D2: Obtain each user's rating of the recommended item in the second rating data, and add the rating to the first rating data to obtain new first rating data;
[0150] D3: Determine the user's (first) tendency deviation for each item in the new first rating data as the (first) anti-tendency coefficient;
[0151] D4: Based on the objective function containing the (first) inverse tendency coefficient, the recommendation system is updated using the new first scoring data;
[0152] Then, the following steps D5 to D8 may be iteratively performed with a predetermined second iteration condition:
[0153] D5: For each user, use the recommendation system to predict at least one recommended item;
[0154] D6: Obtain each user's rating of the recommended item in the second rating data, and add the rating to the first rating data to obtain new first rating data;
[0155] D7: Determine the second tendency deviation of the user for each item in the new first rating data as the second inverse tendency coefficient;
[0156] D8: Based on the objective function containing the second inverse tendency coefficient, the recommendation system is updated using the new first scoring data.
[0157] In these embodiments, the (first) iteration condition is, for example, the (first) iteration number, and the second iteration condition is, for example, the second iteration number. The (first) iteration number may be the same as or different from the second iteration number, for example, both are 10 times.
[0158] As an alternative, the predetermined first or second iteration condition may be that the loss value calculated by the objective function is less than a predetermined first or second loss threshold. And multiple alternative combinations are conceivable, such as the first iteration is performed with a first number of iterations, and the second iteration is performed with a second iteration condition based on the loss value, and vice versa.
[0159] In these embodiments, the (first) tendency bias is one of the popularity parameters and the recommendation position display history parameters of each item in the new first rating data, and the second tendency bias is the other of the popularity parameters and the recommendation position display history parameters of each item in the new first rating data.
[0160] In these embodiments, by simultaneously learning two debiasing parameters in the system and introducing only one anti-bias coefficient in a single iteration, it is surprisingly found that this can well understand the items that users really like, achieve excellent debiasing effects, and greatly improve the accuracy of the recommendation system.
[0161] In a further embodiment of the present invention, a feedback link debiasing method based on user perception can be used to allow the model to learn and perceive the threshold range of each user's ratings for all items, thereby correcting the user's own rating bias.
[0162] like Fig. 9 As shown, a recommendation system training method is provided, which may include:
[0163] S110': randomly selecting first rating data and second rating data for each user from given user-item rating data, wherein the given user-item rating data has the rating of the user on the item, and the first rating data and the second rating data do not overlap;
[0164] S120': obtaining an initial recommendation system through training with the first rating data;
[0165] The following steps S930 to S970 are iteratively performed with predetermined iteration conditions:
[0166] S130': For each user, predict at least one recommended item using the recommendation system;
[0167] S140': Obtain each user's rating of the recommended item in the second rating data, and add the rating to the first rating data to obtain new first rating data;
[0168] S150': determining the user's tendency deviation for each item in the new first rating data as an inverse tendency coefficient;
[0169] S160': Obtain the rating deviation of each user, and determine the user perception coefficient according to the rating deviation;
[0170] S170': Based on the objective function including the inverse tendency coefficient and the user perception coefficient, the recommendation model is updated using the new first rating data.
[0171] The predetermined iteration condition described in this embodiment is, for example, the aforementioned iteration condition.
[0172] exist Fig. 9 In the embodiment shown, steps S110', S120', S130', S140', S150' can refer to Figure 1 The description of steps S110, S120, S130, S140, and S150 in the illustrated embodiment and their features can be combined with the present embodiment and are not repeated here. Fig. 9 The anti-tendency coefficient and related features introduced in the illustrated embodiment may be combined with the aforementioned first iteration, second iteration or both, or may be combined with an odd-numbered iteration loop or an even-numbered iteration loop in the aforementioned iteration, which falls within the scope of the embodiments of the present invention.
[0173] In a further specific embodiment, step S160' may include E1 to E4:
[0174] E1: Determine the rating range for each user;
[0175] E2: Determine the mean score from the score range;
[0176] E3: Determine the rating deviation of each user based on the difference between the rating range of each user and the mean rating;
[0177] E4: The user perception coefficient of each user is determined by the rating deviation of each user.
[0178] In the embodiment of the present invention, different preferences of users for item ratings are taken into consideration. For example, user A's rating range for all items is [3,5], while user B's rating range for all items is [1,3]. Obviously, items with the same rating of 3 have different preferences for different users. User A may dislike them, but user B may like them very much.
[0179] The mean value in step E2 above may be a single point value or a mean range. For example, the median values of the rating ranges of all users in a given rating matrix may be counted and then averaged; or the upper and lower limits of the rating ranges of all users may be averaged to obtain the mean range.
[0180] Based on the difference in the mean, the score deviation in step E3 can be defined as needed. For example, for the median average, the difference between the median of each user and the median average can be determined. In the embodiment of the present invention, the average difference can be obtained by different means, for example, based on the mean error.
[0181] In the embodiment of the present invention, the user perception coefficient in step E4 may be, for example, a normalized value of the aforementioned difference.
[0182] exist Fig. 9 In the embodiment shown, in addition to further introducing the user perception coefficient into the objective function, step S170′ Figure 1 The step S170 shown is similar, and its features can be combined with this embodiment.
[0183] Specifically, a user perception term may be further added to the objective function, and the user perception term introduces a user perception coefficient β.
[0184] In an exemplary embodiment, the objective function for the matrix decomposition method that introduces the inverse tendency coefficient is, for example, as shown in the following formula 5:
[0185]
[0186] in, is the user perception item, β represents the user perception weight, V and M represent the user latent (vector) matrix and item latent (vector) matrix respectively.
[0187] Therefore, in the updating of step S170', the user latent vector and the item latent vector can be updated according to the following formulas 6 and 7:
[0188] V u ←V u +η(2e ui M i -λV u -β(V u -M i )) (6)
[0189] M i ←M i +η(2e ui V u -λM i -β(V u -M i )) (7)
[0190] In such Fig. 9 In the illustrated embodiment, the recommendation system training method according to the embodiment of the present invention also learns the rating deviations between different users, so that the recommendation model can fully perceive the threshold range of the user's own item ratings, understand to a greater extent the items that the user really likes, achieve better debiasing effects, and improve the accuracy of the recommendation system.
[0191] In addition, those skilled in the art will appreciate that the embodiments related to the user perception coefficient can be combined with the aforementioned Figure 1 The embodiment shown or in Figure 1 By further iterating the embodiments based on the above, new embodiments are obtained, and such embodiments clearly fall within the protection scope of the present invention.
[0192] In the embodiment of the present invention, the recommendation system training method may further include test-related operations.
[0193] For example, a recommender system training method may include:
[0194] F1: Select the third rating data for each user in the given user-item rating data, where the third rating data does not overlap with the first rating data;
[0195] In the embodiment of the present invention, the third scoring data is randomly selected.
[0196] In the embodiment of the present invention, the third scoring data is the test scoring data Dtest ,These scoring data can be used to verify whether the recommendation system meets the requirements after training.
[0197] In some embodiments, Figure 2 As shown, step F1 can be combined with the step of randomly selecting the first and second scoring data, such as step S110 or S110'. In this embodiment, for example, the scoring data remaining after randomly selecting the first and second scoring data is the third scoring data. For example, in the example of Table 2 above, the second and third scoring data do not overlap, and the third scoring data, i.e., the test scoring data D, is shielded by the mark "*". test ,.
[0198] However, it is also conceivable that the third scoring data randomly selected in step F1 can be completed in a separate step, or in combination with other multiple steps. For example, in some embodiments, all of the given user-item scoring matrix are randomly selected as the first and second scoring data, and then after the iterative cycle, the data in the second scoring data that is not added to the first scoring data can be used as the third scoring data.
[0199] F2: Use the third rating data to test the iterative recommendation system.
[0200] In some embodiments, it can be determined whether the test result meets the predetermined test criteria, and if not, the training method can be re-executed. In other words, the random selection, pre-training and iterative execution of the initialization data and candidate data (and possible test data) can be re-implemented for the given user-item rating data.
[0201] In the embodiment of the present invention, Fig.10 As shown, a recommendation model training device 1000 is also provided, which may include a selection unit 1010, a pre-training unit 1020 and an iterative execution unit 1030. The iterative execution unit 1030 may include a prediction unit 1031, a score acquisition unit 1032, a tendency coefficient determination unit 1033, and an update unit 1034.
[0202] In this embodiment, the selection unit 1010 may be configured to select first rating data and second rating data for each user in given user-item rating data, wherein the given user-item rating data has the user's rating of the item, and the first rating data does not overlap with the second rating data.
[0203] In this embodiment, the pre-training unit 1020 may be configured to obtain an initial recommendation system through training using the first rating data.
[0204] In this embodiment, the prediction unit 1031 of the iterative execution unit 1030 may be configured to predict at least one recommended item for each user using the recommendation system. In this embodiment, the score acquisition unit 1032 of the iterative execution unit 1030 may be configured to obtain the score of each user on the recommended item in the second score data, and add the score to the first score data to obtain new first score data. In this embodiment, the tendency coefficient determination unit 1033 of the iterative execution unit 1030 may be configured to determine the user's tendency deviation for each item in the new first score data as an inverse tendency coefficient. In this embodiment, the update unit 1034 of the iterative execution unit 1030 may be configured to update the recommendation system using the new first score data based on an objective function containing an inverse tendency coefficient.
[0205] The recommendation model training device described in the embodiments of the present invention can be combined with the features of the training method of any embodiment to obtain a new embodiment, and vice versa, which will not be repeated here.
[0206] In an embodiment of the present invention, a recommendation system is further provided. The recommendation system may be trained by any recommendation system training method according to the present invention and / or trained by any recommendation system training device according to any embodiment of the present invention.
[0207] In the embodiments of the present invention, especially when the k dimension in the latent matrix has explanatory meaning, the trained recommendation system can be used directly or after minimal transformation for users and / or items in clusters to provide recommendations for users.
[0208] Fig.11 A schematic diagram of an electronic device 1100 that can implement a method or implement an embodiment of the present invention is shown, and in some embodiments, more or fewer electronic devices than shown may be included. In some embodiments, it can be implemented using a single or multiple electronic devices. In some embodiments, it can be implemented using cloud or distributed electronic devices.
[0209] like Fig.11As shown, the electronic device 1100 includes a central processing unit (CPU) 1101, which can perform various appropriate operations and processes according to the programs and / or data stored in the read-only memory (ROM) 1102 or the programs and / or data loaded from the storage part 1108 to the random access memory (RAM) 1103. CPU 1101 can be a multi-core processor, or it can include multiple processors. In some embodiments, CPU 1101 can include a general main processor and one or more special coprocessors, such as a graphics processing unit (GPU), a neural network processor (NPU), a digital signal processor (DSP), etc. In RAM 1103, various programs and data required for the operation of the electronic device 1100 are also stored. CPU 1101, ROM 1102 and RAM 1103 are connected to each other via bus 1104. Input / output (I / O) interface 1105 is also connected to bus 1104.
[0210] The processor and the memory are used together to execute the program stored in the memory. When the program is executed by a computer, the method and its steps or functions described in the above embodiments can be implemented.
[0211] The following components are connected to the I / O interface 1105: an input section 1106 including a keyboard, a mouse, a touch screen, etc.; an output section 1107 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 1108 including a hard disk, etc.; and a communication section 1109 including a network interface card such as a LAN card, a modem, etc. The communication section 1109 performs communication processing via a network such as the Internet. A drive 1110 is also connected to the I / O interface 1105 as needed. A removable medium 1111, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1110 as needed, so that a computer program read therefrom is installed into the storage section 1108 as needed. Fig.11 Only some components are schematically shown in the figure, which does not mean that the computer system 1100 only includes Fig.11 Components shown.
[0212] In some embodiments, the electronic device 1100 refers to a mobile terminal, including a mobile phone, a car terminal, a smart TV, etc. Taking a mobile phone as an example, the electronic device 1100 also includes a display screen with a touch function, an external speaker, a gyroscope, a camera, a 4G / 5G antenna and other device modules.
[0213] The systems, devices, modules or units described in the above embodiments may be implemented by a computer or its associated components. The computer may be, for example, a mobile terminal, a smart phone, a personal computer, a laptop computer, a vehicle-mounted human-computer interaction device, a personal digital assistant, a media player, a navigation device, a game console, a tablet computer, a wearable device, a smart TV, an Internet of Things system, a smart home, an industrial computer, a server or a combination thereof.
[0214] In a preferred embodiment, the training system and method can be implemented or realized at least partially or completely on a cloud-based machine learning platform or partially or completely in a self-built machine learning system, such as a GPU array.
[0215] Although not shown, in an embodiment of the present invention, a storage medium is provided, wherein the storage medium stores a computer program, and the computer program is configured to execute any training method of the embodiments of the present invention when executed.
[0216] Storage media in embodiments of the present invention include permanent and non-permanent, removable and non-removable items that can be used to store information by any method or technology. Examples of storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission medium that can be used to store information that can be accessed by a computing device.
[0217] The methods, programs, systems, devices, etc. of the embodiments of the present invention may be executed or implemented in a single or multiple networked computers, or may be practiced in a distributed computing environment. In the embodiments of this specification, in these distributed computing environments, tasks may be performed by remote processing devices connected via a communication network.
[0218] Those skilled in the art should understand that the embodiments of the present specification may be provided as methods, systems or computer program products. Therefore, those skilled in the art may imagine that the functional modules / units or controllers and related method steps described in the above embodiments may be implemented in software, hardware or a combination of software / hardware.
[0219] Unless explicitly stated, the actions or steps of the methods, programs, and embodiments of the present invention do not have to be performed in a specific order and can still achieve the desired results. In some implementations, multitasking and parallel processing are also possible or may be advantageous.
[0220] In this article, multiple embodiments of the present invention are described, but for the sake of brevity, the description of each embodiment is not exhaustive, and the same or similar features or parts between the embodiments may be omitted. In this article, "one embodiment", "some embodiments", "examples", "specific examples", or "some examples" are meant to be applicable to at least one embodiment or example according to the present invention, but not all embodiments. The above terms do not necessarily mean to refer to the same embodiment or example. In the absence of contradiction, those skilled in the art can combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples.
[0221] The exemplary systems and methods of the present invention have been specifically shown and described with reference to the above embodiments, which are merely examples of the best modes for implementing the present systems and methods. It will be appreciated by those skilled in the art that various changes may be made to the embodiments of the systems and methods described herein when implementing the present systems and / or methods without departing from the spirit and scope of the present invention as defined in the appended claims.
Claims
1. A recommendation system training method, characterized in that: include: Selecting first rating data and second rating data for each user from given user-item rating data, wherein the given user-item rating data has the user's rating of the item, and the first rating data does not overlap with the second rating data; A recommendation system is obtained by training the first rating data; Iteratively perform the following steps of updating the recommendation system with a predetermined first iteration condition: For each user, predict at least one recommended item using the recommendation system; Obtaining the rating of each user on the recommended item in the second rating data, and adding the rating to the first rating data to obtain new first rating data; Determine the user's tendency deviation for each item in the new first rating data as an inverse tendency coefficient; Based on an objective function including an inverse tendency coefficient, the recommendation system is updated using the new first scoring data.
2. The recommendation system training method according to claim 1, characterized in that: The step of updating the recommendation system further includes: Obtaining a rating deviation for each user, and determining a user perception coefficient based on the rating deviation; Wherein, the updating of the recommendation system based on the objective function containing the inverse tendency coefficient and using the new first scoring data comprises: Based on an objective function including an inverse tendency coefficient and a user perception coefficient, the recommendation system is updated using the new first rating data.
3. The recommendation system training method according to claim 2, characterized in that: The step of obtaining the score deviation of each user and determining the user perception coefficient according to the score deviation includes: Determine a rating range for each user; Determining a score mean from the score range; Determine a score deviation for each user based on a difference between the score range of each user and the score mean; The user perception coefficient of each user is determined according to the score deviation of each user.
4. The recommendation system training method according to any one of claims 1 to 3, characterized in that: The determining of the user's tendency deviation for each item in the new first rating data as an inverse tendency coefficient includes: A popularity parameter of each item in the new first rating data is determined as the inverse tendency coefficient.
5. The recommendation system training method according to claim 4, characterized in that: The determining of the popularity parameter of each item in the new first rating data includes: Acquire original user-item rating data, wherein the original user-item rating data covers more users and items than the given user-item rating data, and the given user-item rating data is extracted from the original user-item rating data; In the initial user item rating data, counting the total number of users and the number of rating users who have rated each item in the new first rating data; The popularity parameter is determined based on the number of rated users and the total number of users.
6. The recommendation system training method according to any one of claims 1 to 3, characterized in that: The determining of the user's preference bias for each item in the new first rating data includes: Determine a recommendation position display history parameter of each item in the new first rating data as the inverse tendency coefficient.
7. The recommendation system training method according to claim 6, characterized in that: Determining the recommendation position display history parameters of each item in the new first rating data includes: Get the historical data of recommended positions; In the recommendation position display history data, counting the total number of recommendation positions and the number of times and / or ranking of each item in the new first rating data appearing in the recommendation position; The recommendation position display history parameter is determined based on the number and / or ranking and the total number of recommendation positions.
8. The recommendation system training method according to any one of claims 1 to 3, characterized in that: When the step of updating the recommendation system is performed with a predetermined first iteration condition: For an odd-numbered iteration cycle, the tendency deviation is one of a popularity parameter and a recommendation position display history parameter of each item in the new first rating data; For an even-numbered iteration loop, the tendency deviation is another one of a popularity parameter and a recommendation position display history parameter of each item in the new first rating data.
9. The recommendation system training method according to any one of claims 1 to 3, characterized in that: The tendency deviation is one of a popularity parameter and a recommendation position display history parameter of each item in the new first rating data; After the step of iteratively executing and updating the recommendation system with a predetermined first iteration condition, the method further comprises executing the following step of updating the recommendation system with a predetermined second iteration condition: For each user, predict at least one recommended item using the recommendation system; Obtaining the rating of each user on the recommended item in the second rating data, and adding the rating to the first rating data to obtain new first rating data; Determine a second tendency deviation of the user for each item in the new first rating data as a second inverse tendency coefficient, wherein the second tendency deviation is the other of a popularity parameter and a recommendation position display history parameter of each item in the new first rating data; Based on the objective function including the second inverse tendency coefficient, the recommendation system is updated using the new first scoring data.
10. The recommendation system training method according to any one of claims 1 to 3, characterized in that: The recommender system obtained by training the first scoring data comprises: Shielding scores of non-first score data in the given user item score data to obtain initialization score data based on the first score data, wherein the initialization score data is a sparse matrix having the same dimension as the given user item score data; The initialization rating data is decomposed into user data and item data, and the recommendation system is obtained by training the user data and the item data.
11. The recommendation system training method according to any one of claims 1 to 3, characterized in that: Also includes: Selecting third rating data for each user from the given user-item rating data, wherein the third rating data does not overlap with the first rating data; The recommendation system after the iteration is tested using the third rating data.
12. A recommendation system, characterized in that: The recommendation system is trained by the recommendation system training method according to any one of claims 1 to 11.
13. An electronic device, characterized in that: include: A processor and a memory storing a computer program, wherein the processor is configured to implement the method according to any one of claims 1 to 11 when executing the computer program.
14. A storage medium, characterized in that: The storage medium stores a computer program, which is configured to implement the method according to any one of claims 1 to 11 when executed.
Citation Information
Patent Citations
Recommendation system based on user score decomposition
CN107563841A
Recommendation model training method and device, recommendation method and device, equipment and storage medium
CN112633356A
