CN109903103B - Method and device for recommending articles - Google Patents

Method and device for recommending articles Download PDF

Info

Publication number
CN109903103B
CN109903103B CN201711283557.0A CN201711283557A CN109903103B CN 109903103 B CN109903103 B CN 109903103B CN 201711283557 A CN201711283557 A CN 201711283557A CN 109903103 B CN109903103 B CN 109903103B
Authority
CN
China
Prior art keywords
target
user
node list
item
feedback
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711283557.0A
Other languages
Chinese (zh)
Other versions
CN109903103A (en
Inventor
唐睿明
何秀强
钮敏哲
张伟楠
俞勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201711283557.0A priority Critical patent/CN109903103B/en
Priority to PCT/CN2018/109590 priority patent/WO2019109724A1/en
Publication of CN109903103A publication Critical patent/CN109903103A/en
Application granted granted Critical
Publication of CN109903103B publication Critical patent/CN109903103B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions

Abstract

The embodiment of the invention discloses a method and a device for recommending articles, and belongs to the technical field of computers. The method comprises the following steps: acquiring attribute data of a target user and attribute data of a plurality of candidate items; processing the attribute data of the target user and the attribute data of the candidate objects to generate a target data set, wherein the target data set comprises an identification of the target user and a corresponding target first interaction node list, and an identification of each candidate object in the candidate objects and a corresponding target second interaction node list; inputting the target data set into a scoring model to obtain scores of the target user on the candidate articles, wherein the scoring model is obtained by training according to the attribute data of the users, the attribute data of the articles and the scoring data; and determining the target recommended item according to the scores of the target user on the candidate items. By adopting the invention, the efficiency of selecting the articles by the user can be improved.

Description

Method and device for recommending articles
Technical Field
The present application relates to the field of computer technologies, and in particular, to a method and an apparatus for recommending an article.
Background
With the development of computer technology and internet technology, terminals such as mobile phones and computers are widely used, and the types of application programs on the corresponding terminals are more and more, and the functions are more and more abundant. People can shop through the shopping application program installed in the terminal, and can watch movies and the like through the video playing application program installed in the terminal.
One can first select an item to be processed (a good or a movie, etc.) before manipulating the item. Specifically, the user may trigger the terminal to send an item list acquisition request to the server by operation, and after receiving the item list acquisition request, the server may send an item list composed of items stored in the server to the terminal. After receiving the item list, the terminal can display the item list, and a user can browse each item in the item list one by one to determine the final favorite items.
In the process of implementing the present application, the inventor finds that the prior art has at least the following problems:
based on the above processing method, when the user wants to select an item, the user needs to select the item from the item list sent by the server, and the number of items in the item list is often large, which results in low efficiency of selecting the item for the user.
Disclosure of Invention
In order to solve the problem that the efficiency of selecting an article by a user is low in the related art, the embodiment of the invention provides a method and a device for recommending an article. The technical scheme is as follows:
in a first aspect, a method for recommending an item is provided, the method comprising: acquiring attribute data of a target user and attribute data of a plurality of candidate items, wherein the attribute data of the target user comprises an identifier of the target user, and the attribute data of each candidate item comprises an identifier of a corresponding candidate item; processing attribute data of a target user and attribute data of a plurality of candidate articles to generate a target data set, wherein the target data set comprises an identification of the target user, a corresponding target first interaction node list, an identification of each candidate article in the plurality of candidate articles and a corresponding target second interaction node list, the target first interaction node list is used for representing interaction information of the target user and other users or articles, and the target second interaction node list is used for representing interaction information of the candidate articles and other articles or users; inputting the target data set into a scoring model to obtain scores of target users for a plurality of candidate items, wherein the scoring model is obtained through training according to attribute data of the plurality of users, attribute data of the plurality of items and the scoring data, the plurality of users comprise the target users, the attribute data of each user in the plurality of users comprise corresponding user identifications, the plurality of items comprise the plurality of candidate items, the attribute data of each item in the plurality of items comprise corresponding item identifications, and the scoring data comprise the scores of each user in the plurality of users for one or more items in the plurality of items; and determining the target recommended item according to the scores of the target user on the candidate items.
According to the scheme shown in the embodiment of the invention, the server can have the function of recommending articles. Specifically, the server may obtain attribute data of the target user and attribute data of a plurality of candidate items in the candidate set, furthermore, the attribute data of the target user and the attribute data of the candidate items can be processed to obtain a target first interaction node list corresponding to the user of the target user, an identifier of each candidate item in the candidate items and a corresponding target second interaction node list, wherein, the target first interactive node list can be used for representing the interactive information of the target user and other users or articles, that is, the target first interaction node list may contain the identification of other users or articles that the target user has interacted with historically, the target second interaction node list may be used to represent the interaction information of the candidate article with other articles or users, that is, the target second interactive node list may contain the identification of other items or users that have been historically interacted with by the candidate item.
The server may store a scoring model in advance, where the scoring model may be obtained by the server through training according to attribute data of a plurality of users, attribute data of a plurality of items, and the scoring data, the plurality of users include a target user, and the plurality of items include a plurality of candidate items. The server may predict, through a scoring model, a score of the target user for each candidate item of the plurality of candidate items, and specifically, after generating a target data set including an identifier of the target user and a corresponding target first interaction node list, an identifier of each candidate item of the plurality of candidate items and a corresponding target second interaction node list, the server may input the target data set into the scoring model to obtain the score of the target user for the plurality of candidate items, and further, the server may determine, among the plurality of candidate items, a target recommended item to be recommended to the target user based on the score of the target user for the plurality of candidate items. Therefore, the target user can select the articles which the target user wants from the target recommended articles recommended by the server without selecting from all articles stored in the server, and therefore the efficiency of selecting the articles by the user can be improved. In addition, when predicting the scoring of each candidate item by the target user, the server utilizes the interaction information of the target user and other users or items (namely, the target first interaction node list) and the interaction information of each candidate item and other items or users (namely, the target second interaction node list), so that the accuracy of the obtained scoring can be improved.
In one possible implementation, the attribute data of the target user further includes one or more of the following data: gender, height, weight, age, occupation, income, hobbies, education, the attribute data of each candidate item further comprising one or more of the following data: brand, color, size, price, reviews, taste, shelf life, icons.
In one possible implementation, processing the attribute data of the target user and the attribute data of the plurality of candidate items to generate a target data set includes: according to the identification of the target user, determining a target first interaction node list corresponding to the target user in a target first interaction node list corresponding to the identification of each user in a plurality of pre-recorded users, and according to the identification of each candidate item, determining a target second interaction node list corresponding to each candidate item in a target second interaction node list corresponding to the identification of each candidate item in a plurality of pre-recorded candidate items; and generating a target data set according to the identification of the target user, the target first interaction node list corresponding to the target user, the identification of each candidate item and the target second interaction node list corresponding to each candidate item.
In the solution shown in the embodiment of the present invention, a target first interaction node list corresponding to an identifier of each of a plurality of users and a target second interaction node list corresponding to an identifier of each of a plurality of candidate items may be stored in a server in advance, where the server may record the target first interaction node list corresponding to the identifier of each of the users and the target second interaction node list corresponding to the identifier of each of the candidate items in a form of a table, and may also record the target first interaction node list corresponding to the identifier of each of the users and the target second interaction node list corresponding to the identifier of each of the candidate items in a form of a bipartite graph. After obtaining the identifier of the target user and the identifier of each candidate item, the server may determine, in a pre-recorded target first interaction node list corresponding to the identifier of each user of the multiple users, a target first interaction node list corresponding to the target user, and may determine, in a pre-recorded target second interaction node list corresponding to the identifier of each candidate item of the multiple candidate items, a target second interaction node list corresponding to each candidate item. After determining a target first interaction node list corresponding to the target user and a target second interaction node list corresponding to each candidate item, the server may generate a target data set including an identifier of the target user and the corresponding target first interaction node list, an identifier of each candidate item and the corresponding target second interaction node list, where each target data in the target data set may include the identifier of the target user and the corresponding target first interaction node list, an identifier of a candidate item j and the corresponding target second interaction node list, and the candidate item j is any one of the plurality of candidate items.
In one possible implementation, the scoring model includes a feature learning model, a feedback learning model, and a neural network model;
inputting the target data set into a scoring model to obtain scores of the target user on a plurality of candidate articles, wherein the scoring comprises the following steps: inputting the identification of the target user and the identification of the candidate item j in the target data set into a feature learning model to obtain a feature vector corresponding to the target user and a feature vector corresponding to the candidate item j, and inputting a target first interaction node list corresponding to the target user and a target second interaction node list corresponding to the candidate item j in the target data set into a feedback learning model to obtain implicit feedback corresponding to the target user and implicit feedback corresponding to the candidate item j, wherein the item j is any one of a plurality of candidate items; and inputting the characteristic vector corresponding to the target user, the characteristic vector corresponding to the candidate item j, the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j into the neural network model to obtain the score of the target user on the candidate item j.
The feature vector corresponding to the target user may be a vector for characterizing features (or characteristics) of the user. The feature vector corresponding to the candidate item j may be a vector for characterizing features (or characteristics) of the candidate item j itself.
In the solution shown in the embodiment of the present invention, the scoring model may include a feature learning model, a feedback learning model, and a neural network model, where the feature learning model may be a feature vector for learning a target user and each candidate item, and the model parameters of the feature learning model may include a user feature matrix and an item feature matrix, where the user feature matrix is composed of feature vectors of each of a plurality of users (that is, each row vector of the user feature matrix is a feature vector of a corresponding user, and a row number of the user feature matrix is a number of the plurality of users), and the item feature matrix is composed of feature vectors of each of a plurality of items (that is, each row vector of the item feature matrix is a feature vector of a corresponding item, and a row number of the item feature matrix is a number of the plurality of items). After the target data set is obtained, the server may input the identifier of the target user and the identifier of the candidate item j in the target data set into the feature learning model, so as to obtain a feature vector corresponding to the target user and a feature vector corresponding to the candidate item j. Specifically, after the server inputs the identifier of the target user and the identifier of the candidate item j into the feature learning model, according to the identifier of the target user and the identifier of the candidate item j, a feature vector corresponding to the target user is extracted from a user feature matrix through the feature learning model, a feature vector corresponding to the candidate item j is extracted from an item feature matrix, and the feature vector corresponding to the target user and the feature vector corresponding to the candidate item j are obtained.
The feedback learning model may be an implicit feedback for learning the target user and each candidate item, and the model parameters of the feedback learning model may include a user feedback matrix (which may be represented by Y) and an item feedback matrix (which may be represented by X), where the user feedback matrix may be composed of feedback vectors (each row vector in the user feedback matrix represents a feedback vector corresponding to one node), and the item feedback matrix may be composed of feedback vectors (each row vector in the item feedback matrix represents a feedback vector corresponding to one node). Determining a target first interactive node list (R can be used) corresponding to a target user (k can be used for representing)kRepresented by R), a target second interactive node list (which may be R) corresponding to the candidate item jjRepresentation), it may be input in reverseAnd feeding the learning model to obtain the implicit feedback corresponding to the target user k and the implicit feedback corresponding to the candidate item j. Specifically, after the server inputs the target first interaction node list corresponding to the target user k into the feedback learning model, a plurality of feedback vectors corresponding to the target first interaction node list may be extracted from the user feedback matrix through the feedback learning model (where the number of the feedback vectors is the number of nodes included in the target first interaction node list), so as to obtain the feedback vector corresponding to the target user k. After the feedback vector corresponding to the target user k is obtained, the plurality of feedback vectors may be added to obtain the implicit feedback corresponding to the target user k. The specific processing of obtaining the implicit feedback corresponding to the candidate item j may be as follows: after the server inputs the target second interaction node list corresponding to the candidate item j into the feedback learning model, a plurality of feedback vectors corresponding to the target second interaction node list (where the number of the feedback vectors is the number of nodes included in the target second interaction node list) may be extracted from the item feedback matrix through the feedback learning model, so as to obtain a feedback vector corresponding to the candidate item j. After the feedback vector corresponding to the candidate item j is obtained, the plurality of feedback vectors may be added to obtain the implicit feedback corresponding to the candidate item j.
After the feature vector corresponding to the target user k, the feature vector corresponding to the candidate item j, the implicit feedback corresponding to the target user k and the implicit feedback corresponding to the candidate item j are obtained, the server can input the implicit feedback into the neural network model to obtain the score of the target user on the candidate item j.
In a possible implementation manner, the target first interaction node list includes a multi-order target first interaction node list, a target second interaction node list corresponding to each candidate item includes a multi-order target second interaction node list, an odd-order target first interaction node list in the multi-order target first interaction node list is used for representing interaction information of a target user and the item, an even-order target first interaction node list in the multi-order target first interaction node list is used for representing interaction information of the target user and other users, an odd-order target second interaction node list in the multi-order target second interaction node list is used for representing interaction information of the candidate item and the user, and an even-order target second interaction node list in the multi-order target second interaction node list is used for representing interaction information of the candidate item and other items; inputting a target first interactive node list corresponding to a target user in a target data set and a target second interactive node list corresponding to a candidate item j into a feedback learning model to obtain implicit feedback corresponding to the target user and implicit feedback corresponding to the candidate item j, wherein the method comprises the following steps: inputting a multi-order target first interactive node list corresponding to a target user in the target data set and a multi-order target second interactive node list corresponding to the candidate item j into a feedback learning model to obtain implicit feedback corresponding to the target user and implicit feedback corresponding to the candidate item j.
According to the scheme shown in the embodiment of the invention, when the server predicts the score of the target user on the candidate item j, the server can further utilize a multi-order target first interaction node list corresponding to the target user and a multi-order target second interaction node list corresponding to the candidate item j, wherein the multi-order target first interaction node list can be a first-order target first interaction node list, a second-order target first interaction node list, … and an A-order target first interaction node list respectively, the multi-order user feedback matrix can comprise a first-order user feedback matrix, a second-order user feedback matrix, … and an A-order user feedback matrix, A is a preset numerical value (for example, A is 3), A is the maximum number of steps which can be reached by the preset target user in the user-item bipartite graph, and the multi-order target second interaction node list can be a first-order target second interaction node list, a second interaction node list, a third-order target first interaction node list, a second interaction node list and a third interaction node list corresponding to the target object j respectively, …, a B-order target second interaction node list, wherein the multi-order commodity feedback matrix may include a first-order commodity feedback matrix, a second-order commodity feedback matrix, …, and a B-order commodity feedback matrix, B is a preset value, and B is a preset maximum number of steps that a candidate commodity j can reach in the user-commodity bipartite graph, wherein A and B may be the same or different. First order user feedback matrix, which may be Y1Each row vector in the first-order user feedback matrix may be a vector representation when a corresponding article is used as a node in the first-order target first interaction node list, and the second-order user feedback matrix may be Y2Representing, second order user feedback momentsEach row of vectors in the array may be a vector representation of the corresponding user as a node in the second order target first interaction node list, and so on. First order article feedback matrix, which may be X1Each row vector in the first-order article feedback matrix can be represented by a vector when a corresponding user is used as a node in the first-order target second interaction node list, and the second-order article feedback matrix can be represented by X2In this case, the second-order item feedback matrix may be a vector representation of the second-order item as a node in the second-order target interaction node list.
For such a situation, the server may input the multi-order target first interaction node list corresponding to the target user in the target data set and the multi-order target second interaction node list corresponding to the candidate item j into the feedback learning model, so as to obtain the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j. Specifically, for each level of the target first interactive node list
Figure BDA0001497950110000044
(a ═ 1, 2, …, a), the server may learn the model through feedback, at this stage with a user feedback matrix YaIn the method, a target first interactive node list is extracted
Figure BDA0001497950110000041
The corresponding feedback vector. The server may select the feedback vectors corresponding to the target first interaction node lists of each order corresponding to the target user according to the above manner, and further, may add all the selected feedback vectors to obtain the implicit feedback corresponding to the target user. For each-order target second interactive node list corresponding to candidate item j
Figure BDA0001497950110000042
(B is 1, 2, …, B), the server can feed back the matrix X at the item through the feedback learning modelbIn the method, a target second interactive node list is selected
Figure BDA0001497950110000043
Obtaining a target second interactive node list corresponding to the candidate item j by the corresponding feedback vector
Figure BDA0001497950110000051
The corresponding feedback vector. The server may select the feedback vectors corresponding to the target second interactive node lists of each order corresponding to the candidate item j according to the above manner, and further, may add all the selected feedback vectors to obtain the implicit feedback corresponding to the candidate item j. In this way, when the scoring of each candidate item by the target user is predicted, the historical interaction information of each order corresponding to the target user and the historical interaction information of each order of each candidate item are utilized, so that the accuracy of the predicted scoring of the target user on the candidate item can be improved.
In one possible implementation, the model parameters of the feedback learning model include: a weight of a feedback vector for each of a plurality of users, a weight of a feedback vector for each of a plurality of items; inputting a target first interactive node list corresponding to a target user in a target data set and a target second interactive node list corresponding to a candidate item j into a feedback learning model to obtain implicit feedback corresponding to the target user and implicit feedback corresponding to the candidate item j, wherein the method comprises the following steps: and inputting the identification of the target user in the target data set, the corresponding target first interactive node list, the identification of the candidate item j and the corresponding target second interactive node list into a feedback learning model to obtain the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j.
According to the scheme shown in the embodiment of the invention, aiming at the condition that the model parameters of the feedback learning model further comprise the weight of the feedback vector of each user in a plurality of users and the weight of the feedback vector of each article in a plurality of articles, the server can input the identification of the target user in the target data set and the corresponding target first interactive node list, the identification of the candidate article j and the corresponding target second interactive node list into the feedback learning model to obtain the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate article j. Specifically, the server may determine that the target user corresponds to the candidate item j according to the aboveThe feedback vector method determines a feedback vector corresponding to a target user and a feedback vector corresponding to a candidate item j through a learning model. The server may then learn the weight of the target user's feedback vector in the model by feedback (which may be in Φ) based on the target user's identity and the identity of the candidate item jktRepresenting) the feedback vector corresponding to the target user k is weighted and processed to obtain implicit feedback corresponding to the target user, and the weight (which can be omega) of the feedback vector of the candidate item j in the feedback learning model is usedvjAnd representing) the implicit feedback corresponding to the candidate item j is obtained by weighting and processing the feedback vector corresponding to the candidate item j. In this way, when the scoring of each candidate item by the target user is predicted, the weight of the feedback vector of the target user and the weight of the feedback vector of each candidate item are introduced, so that the accuracy of the predicted scoring of the target user on the candidate item can be improved.
In one possible implementation manner, determining a target recommended item according to scores of a plurality of candidate items by a target user includes: and determining the corresponding target recommended articles with scores meeting preset recommendation conditions according to the scores of the target users for the candidate articles.
According to the scheme of the embodiment of the invention, the server can be pre-stored with the preset recommendation condition, and after the server obtains scores of the target user for the plurality of candidate items, the server can select the target recommended item with the corresponding score meeting the preset recommendation condition from the plurality of candidate items.
In a possible implementation manner, determining a target recommended item whose corresponding score meets a preset recommendation condition according to the scores of a plurality of candidate items by a target user includes: determining a preset number of target recommended articles with the largest score according to the scores of the target users for the candidate articles; or determining the target recommended item with the score larger than the preset score threshold value according to the scores of the target user on the candidate items.
According to the scheme provided by the embodiment of the invention, after the server determines that the target user scores the plurality of candidate items, the plurality of candidate items can be sorted according to the corresponding order from large to small of the scores, and then the preset number of candidate items which are sorted in the front are determined as the target recommended items. Alternatively, the server may store a preset score threshold in advance. After the server determines that the target user scores the multiple candidate items, the server may select, from the multiple candidate items, a candidate item whose corresponding score is greater than a preset score threshold, and further may determine the determined candidate item as the target recommended item.
In one possible implementation, the scoring model is trained by: acquiring attribute data of a plurality of users, attribute data of a plurality of articles and the scoring data; processing attribute data of a plurality of users, attribute data of a plurality of articles and scoring data to obtain a training data set, wherein the training data set comprises an identification of each user and a corresponding first interactive node list, an identification of each article and a corresponding second interactive node list, and a score of each user for one or more articles in the plurality of articles, the first interactive node list is used for representing interactive information of the user and other users or articles, and the second interactive node list is used for representing interactive information of the articles and other articles or users; and training the grading model according to the training data set.
According to the scheme of the embodiment of the invention, the server can determine the training data set in advance for training the scoring model. Specifically, the server may obtain attribute data of a plurality of users, attribute data of a plurality of items, and scoring data, where the attribute data of each of the plurality of users may include an identifier of the corresponding user, the attribute data of each of the plurality of items may include an identifier of the corresponding item, and the scoring data may include a score of each of the plurality of users for one or more of the plurality of items. After obtaining attribute data of a plurality of users, attribute data of a plurality of articles, and scoring data, the server may process the attribute data, and scoring data to obtain a training data set, where the training data set may include an identifier of each user in the plurality of users and a corresponding first interactive node list, an identifier of each article in the plurality of articles and a corresponding second interactive node list, and a score given to one or more articles in the plurality of articles by each user. After the training data set is obtained, the server can train the scoring model, namely model parameters in the scoring model can be adjusted, and the trained scoring model is obtained.
In one possible implementation, the attribute data of each of the plurality of users further includes one or more of the following information: gender, height, weight, age, occupation, income, hobbies, educational profile, the attribute data for each of the plurality of items further comprising one or more of the following: brand, color, size, price, reviews, taste, shelf life, icons; the scoring data further includes one or more of the following: operating time, current equipment used, discount conditions.
In one possible implementation, obtaining attribute data of a plurality of users, attribute data of a plurality of items, and rating data includes: obtaining a plurality of scoring records, wherein each scoring record in the plurality of scoring records comprises attribute data of a user u, attribute data of an article i and scoring data of the user u on the article i, the user u is any one of a plurality of users who score the article i, and the article i is any one of a plurality of articles; processing attribute data of a plurality of users, attribute data of a plurality of articles and scoring data to obtain a training data set, comprising: and processing the plurality of scoring records to obtain a training data set, wherein each training data in the training data set comprises an identifier of a user u and a corresponding first interactive node list, an identifier of an article i and a corresponding second interactive node list, and a score of the user u on the article i.
According to the scheme shown in the embodiment of the invention, the server can obtain a plurality of scoring records, each scoring record in the plurality of scoring records comprises attribute data of the user u, attribute data of the item i and scoring data of the user u on the item i, the item i is any one of a plurality of items, the user u is any one of a plurality of users who score the item i, the attribute data of the user u comprises an identifier of the user u, the attribute data of the item i comprises an identifier of the item i, the scoring data of the user u on the item i can comprise the scoring of the user u on the item i, and the scoring records of the user u on the item i comprise the scoring of the user u on the item iThe scoring record may also be referred to as an interaction record (e.g., if a user purchases something, the corresponding scoring data in the scoring record may be 1). For example, the plurality of score records are each (u)0,i0,1)、(u0,i1,1)、(u0,i2,1). After the plurality of scoring records are obtained, for each scoring record w in the plurality of scoring records, the training data g corresponding to the scoring record w can be obtained according to the scoring record w and the scoring record with the occurrence time before the scoring record w. For example, a scoring record is first obtained as w0(u0,i01), since the score is recorded w0Is acquired for the first time, therefore, user u0Item i, corresponding to the first interactive node list being empty0The corresponding second interactive node list is empty, and the obtained scoring record w0Corresponding training data g0Identification u for user u0Identification i of article i0The first interactive node list corresponding to the user u is empty, the second interactive node list corresponding to the article i is empty, and the score is 1; the second obtained score is recorded as w1(u0,i11), from which it can be seen that user u0To article i0Hit over, article i1Not overpowered by other users, therefore, user u0The corresponding first interactive node list is i0Article i1The corresponding second interactive node list is empty, and the obtained scoring record w1Corresponding training data g1Identification u for user u0Identification i of article i1The first interactive node list corresponding to the user u is i0The second interactive node list corresponding to the article i is empty, and the score is 1; then the obtained scoring record w2(u1,i11), from which it can be seen that user u1Article i without overstocking other articles1By user u0Hit too much, therefore, user u1Item i, corresponding to the first interactive node list being empty1The corresponding second interactive node list is u0The resulting scoring record w2Corresponding training data g2Identification u for user u1Identification i of article i1The first interactive node list corresponding to the user u is empty, and the second interactive node list corresponding to the item i is u0The score is 1.
In one possible implementation, the scoring model includes a feature learning model, a feedback learning model, and a neural network model; wherein training the scoring model according to the training data set comprises: inputting the identification of the user u and the identification of the article i into a characteristic learning model to obtain a characteristic vector corresponding to the user u and a characteristic vector corresponding to the article i, and inputting a first interactive node list corresponding to the user u and a second interactive node list corresponding to the article i into a feedback learning model to obtain implicit feedback corresponding to the user u and implicit feedback corresponding to the article i; inputting the feature vector corresponding to the user u, the feature vector corresponding to the article i, the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i into the neural network model to obtain a prediction score; and adjusting the characteristic learning model, the feedback learning model and the neural network model according to the prediction score and the scoring of the user u on the article i to obtain a trained scoring model.
According to the scheme shown in the embodiment of the invention, after a training data set is obtained, a server inputs the identification of a user u and the identification of an article i in each training data set into a feature learning model to obtain a feature vector corresponding to the user u and a feature vector corresponding to the article i, and can input a first interactive node list corresponding to the user u and a second interactive node list corresponding to the article i in each training data into a feedback learning model to obtain an implicit feedback corresponding to the user u and an implicit feedback corresponding to the article i, wherein the specific modes of obtaining the feature vector corresponding to the user u and the feature vector corresponding to the article i are similar to the modes of obtaining the feature vector corresponding to a target user and the feature vector corresponding to a candidate article j, and the specific modes of obtaining the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i are similar to the modes of obtaining the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate article j, and will not be described in detail herein. After the feature vector corresponding to the user u, the feature vector corresponding to the item i, the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i are obtained, the server can input the implicit feedback into the neural network model to obtain the prediction score. After the prediction score of the user u for the article i is obtained, model parameters of the feature learning model, the feedback learning model and the neural network model can be adjusted according to the prediction score and the scoring of the user u for the article i in each training data in the training data set, and the trained scoring model is obtained.
In a possible implementation manner, the first interactive node list corresponding to the user u includes a multi-order first interactive node list, the second interactive node list corresponding to the item i includes a multi-order second interactive node list, and the feeding back the model parameters of the learning model includes: the order of a first interactive node list corresponding to a user u is the same as the order of the user feedback matrix, the order of a second interactive node list corresponding to an article i is the same as the order of the article feedback matrix, an odd-order first interactive node list in the multi-order first interactive node list is used for representing interactive information of the user and the article, an even-order first interactive node list in the multi-order first interactive node list is used for representing interactive information of the user and other users, an odd-order second interactive node list in the multi-order second interactive node list is used for representing interactive information of the article and the user, and an even-order second interactive node list in the multi-order second interactive node list is used for representing interactive information of the article and other articles; inputting a first interactive node list corresponding to the user u and a second interactive node list corresponding to the article i into a feedback learning model to obtain implicit feedback corresponding to the user u and implicit feedback corresponding to the article i, wherein the method comprises the following steps: and inputting the multi-order first interactive node list corresponding to the user u and the multi-order second interactive node list corresponding to the item i into a feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i.
According to the scheme of the embodiment of the invention, when the server trains the scoring model, the multi-order first interactive node list corresponding to the user u and the multi-order second interactive node list corresponding to the article i can be used. For such a situation, the server may input the multi-order first interactive node list corresponding to the user u and the multi-order second interactive node list corresponding to the item i into the feedback learning model, so as to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i.
In one possible implementation, the model parameters of the feedback learning model include: a weight of a feedback vector for each of a plurality of users, a weight of a feedback vector for each of a plurality of items; inputting a first interactive node list corresponding to the user u and a second interactive node list corresponding to the article i into a feedback learning model to obtain implicit feedback corresponding to the user u and implicit feedback corresponding to the article i, wherein the method comprises the following steps: and inputting the identification of the user u, the corresponding first interactive node list, the identification of the article i and the corresponding second interactive node list into a feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i.
According to the scheme shown in the embodiment of the invention, the server can input the identification of the user u and the corresponding first interactive node list, the identification of the article i and the corresponding second interactive node list in each training data in the training data set into the feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i.
In a second aspect, a method for training a scoring model is provided, the method comprising: acquiring attribute data of a plurality of users, attribute data of a plurality of articles and scoring data; processing attribute data of a plurality of users, attribute data of a plurality of articles and scoring data to obtain a training data set, wherein the training data set comprises an identification of each user and a corresponding first interactive node list, an identification of each article and a corresponding second interactive node list, and a score of each user for one or more articles in the plurality of articles, the first interactive node list is used for representing interactive information of the user and other users or articles, and the second interactive node list is used for representing interactive information of the articles and other articles or users; and training the grading model according to the training data set.
According to the scheme of the embodiment of the invention, the server can determine the training data set in advance for training the scoring model. Specifically, the server may obtain attribute data of a plurality of users, attribute data of a plurality of items, and scoring data, where the attribute data of each of the plurality of users may include an identifier of the corresponding user, the attribute data of each of the plurality of items may include an identifier of the corresponding item, and the scoring data may include a score of each of the plurality of users for one or more of the plurality of items. After obtaining attribute data of a plurality of users, attribute data of a plurality of articles, and scoring data, the server may process the attribute data, and scoring data to obtain a training data set, where the training data set may include an identifier of each user in the plurality of users and a corresponding first interactive node list, an identifier of each article in the plurality of articles and a corresponding second interactive node list, and a score given to one or more articles in the plurality of articles by each user. After the training data set is obtained, the server can train the scoring model, namely model parameters in the scoring model can be adjusted, and the trained scoring model is obtained.
In one possible implementation, the attribute data of each of the plurality of users further includes one or more of the following information: gender, height, weight, age, occupation, income, hobbies, educational profile, the attribute data for each of the plurality of items further comprising one or more of the following: brand, color, size, price, reviews, taste, shelf life, icons; the scoring data further includes one or more of the following: operating time, current equipment used, discount conditions.
In one possible implementation, obtaining attribute data of a plurality of users, attribute data of a plurality of items, and rating data includes: obtaining a plurality of scoring records, wherein each scoring record in the plurality of scoring records comprises attribute data of a user u, attribute data of an article i and scoring data of the user u on the article i, the user u is any one of a plurality of users who score the article i, and the article i is any one of a plurality of articles; processing attribute data of a plurality of users, attribute data of a plurality of articles and scoring data to obtain a training data set, comprising: and processing the plurality of scoring records to obtain a training data set, wherein each training data in the training data set comprises an identifier of a user u and a corresponding first interactive node list, an identifier of an article i and a corresponding second interactive node list, and a score of the user u on the article i.
According to the scheme shown in the embodiment of the present invention, a server may obtain a plurality of scoring records, where each scoring record in the plurality of scoring records includes attribute data of a user u, attribute data of an item i, and scoring data of the user u on the item i, the item i is any one of a plurality of items, the user u is any one of a plurality of users who score the item i, the attribute data of the user u includes an identifier of the user u, the attribute data of the item i includes an identifier of the item i, and the scoring data of the user u on the item i may include scoring of the item i by the user u, where the scoring record may also be referred to as an interaction record (for example, if the user purchases some item, the scoring data in the corresponding scoring record may be 1). For example, the plurality of score records are each (u)0,i0,1)、(u0,i1,1)、(u0,i2,1). After the plurality of scoring records are obtained, for each scoring record w in the plurality of scoring records, the training data g corresponding to the scoring record w can be obtained according to the scoring record w and the scoring record with the occurrence time before the scoring record w. For example, a scoring record is first obtained as w0(u0,i01), since the score is recorded w0Is acquired for the first time, therefore, user u0Item i, corresponding to the first interactive node list being empty0The corresponding second interactive node list is empty, and the obtained scoring record w0Corresponding training data g0Identification u for user u0Identification i of article i0The first interactive node list corresponding to the user u is empty, the second interactive node list corresponding to the article i is empty, and the score is 1; the second obtained score is recorded as w1(u0,i11), from which it can be seen that user u0To article i0Hit over, article i1Is not excessively beaten by other usersThus, user u0The corresponding first interactive node list is i0Article i1The corresponding second interactive node list is empty, and the obtained scoring record w1Corresponding training data g1Identification u for user u0Identification i of article i1The first interactive node list corresponding to the user u is i0The second interactive node list corresponding to the article i is empty, and the score is 1; then the obtained scoring record w2(u1,i11), from which it can be seen that user u1Article i without overstocking other articles1By user u0Hit too much, therefore, user u1Item i, corresponding to the first interactive node list being empty1The corresponding second interactive node list is u0The resulting scoring record w2Corresponding training data g2Identification u for user u1Identification i of article i1The first interactive node list corresponding to the user u is empty, and the second interactive node list corresponding to the item i is u0The score is 1.
In one possible implementation, the scoring model includes a feature learning model, a feedback learning model, and a neural network model; wherein training the scoring model according to the training data set comprises: inputting the identification of the user u and the identification of the article i into a characteristic learning model to obtain a characteristic vector corresponding to the user u and a characteristic vector corresponding to the article i, and inputting a first interactive node list corresponding to the user u and a second interactive node list corresponding to the article i into a feedback learning model to obtain implicit feedback corresponding to the user u and implicit feedback corresponding to the article i; inputting the feature vector corresponding to the user u, the feature vector corresponding to the article i, the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i into the neural network model to obtain a prediction score; and adjusting the characteristic learning model, the feedback learning model and the neural network model according to the prediction score and the scoring of the user u on the article i to obtain a trained scoring model.
According to the scheme shown in the embodiment of the invention, after a training data set is obtained, a server inputs the identification of a user u and the identification of an article i in each training data set into a feature learning model to obtain a feature vector corresponding to the user u and a feature vector corresponding to the article i, and can input a first interactive node list corresponding to the user u and a second interactive node list corresponding to the article i in each training data into a feedback learning model to obtain an implicit feedback corresponding to the user u and an implicit feedback corresponding to the article i, wherein the specific modes of obtaining the feature vector corresponding to the user u and the feature vector corresponding to the article i are similar to the modes of obtaining the feature vector corresponding to a target user and the feature vector corresponding to a candidate article j, and the specific modes of obtaining the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i are similar to the modes of obtaining the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate article j, and will not be described in detail herein. After the feature vector corresponding to the user u, the feature vector corresponding to the item i, the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i are obtained, the server can input the implicit feedback into the neural network model to obtain the prediction score. After the prediction score of the user u for the article i is obtained, model parameters of the feature learning model, the feedback learning model and the neural network model can be adjusted according to the prediction score and the scoring of the user u for the article i in each training data in the training data set, and the trained scoring model is obtained.
In a possible implementation manner, the first interactive node list corresponding to the user u includes a multi-order first interactive node list, the second interactive node list corresponding to the item i includes a multi-order second interactive node list, and the feeding back the model parameters of the learning model includes: the order of a first interactive node list corresponding to a user u is the same as the order of the user feedback matrix, the order of a second interactive node list corresponding to an article i is the same as the order of the article feedback matrix, an odd-order first interactive node list in the multi-order first interactive node list is used for representing interactive information of the user and the article, an even-order first interactive node list in the multi-order first interactive node list is used for representing interactive information of the user and other users, an odd-order second interactive node list in the multi-order second interactive node list is used for representing interactive information of the article and the user, and an even-order second interactive node list in the multi-order second interactive node list is used for representing interactive information of the article and other articles; inputting a first interactive node list corresponding to the user u and a second interactive node list corresponding to the article i into a feedback learning model to obtain implicit feedback corresponding to the user u and implicit feedback corresponding to the article i, wherein the method comprises the following steps: and inputting the multi-order first interactive node list corresponding to the user u and the multi-order second interactive node list corresponding to the item i into a feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i.
According to the scheme of the embodiment of the invention, when the server trains the scoring model, the multi-order first interactive node list corresponding to the user u and the multi-order second interactive node list corresponding to the article i can be used. For such a situation, the server may input the multi-order first interactive node list corresponding to the user u and the multi-order second interactive node list corresponding to the item i into the feedback learning model, so as to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i.
In one possible implementation, the model parameters of the feedback learning model include: a weight of a feedback vector for each of a plurality of users, a weight of a feedback vector for each of a plurality of items; inputting a first interactive node list corresponding to the user u and a second interactive node list corresponding to the article i into a feedback learning model to obtain implicit feedback corresponding to the user u and implicit feedback corresponding to the article i, wherein the method comprises the following steps: and inputting the identification of the user u, the corresponding first interactive node list, the identification of the article i and the corresponding second interactive node list into a feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i.
According to the scheme shown in the embodiment of the invention, the server can input the identification of the user u and the corresponding first interactive node list, the identification of the article i and the corresponding second interactive node list in each training data in the training data set into the feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i.
In a third aspect, an apparatus for recommending items is provided, which includes at least one module for implementing the method for recommending items provided in the first aspect.
In a fourth aspect, an apparatus is provided that includes a processor configured to execute instructions stored in a memory, and a transmitter; execution of the instructions by the processor causes the apparatus to carry out the method of recommending items provided by the first aspect above.
In a fifth aspect, there is provided a computer-readable storage medium comprising instructions which, when run on a computer, cause the computer to perform the method of the first aspect described above.
In a sixth aspect, there is provided a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method of the first aspect described above.
In a seventh aspect, a training device for a scoring model is provided, which includes at least one module, and the at least one module is used for implementing the training method for the scoring model provided in the second aspect.
In an eighth aspect, an apparatus is provided that includes a processor configured to execute instructions stored in a memory, and a transmitter; the processor executes the instructions to cause the apparatus to implement the method for training the scoring model provided in the second aspect.
In a ninth aspect, there is provided a computer-readable storage medium comprising instructions which, when run on a computer, cause the computer to perform the method of the second aspect described above.
In a tenth aspect, there is provided a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method of the second aspect described above.
The technical scheme provided by the embodiment of the invention has the following beneficial effects:
in the embodiment of the invention, the attribute data of a target user and the attribute data of a plurality of candidate articles are obtained, the attribute data of the target user comprises an identifier of the target user, and the attribute data of each candidate article comprises an identifier of a corresponding candidate article; processing attribute data of a target user and attribute data of a plurality of candidate articles to generate a target data set, wherein the target data set comprises an identification of the target user, a corresponding target first interaction node list, an identification of each candidate article in the plurality of candidate articles and a corresponding target second interaction node list, the target first interaction node list is used for representing interaction information of the target user and other users or articles, and the target second interaction node list is used for representing interaction information of the candidate articles and other articles or users; inputting the target data set into a scoring model to obtain scores of target users for a plurality of candidate items, wherein the scoring model is obtained through training according to attribute data of the plurality of users, attribute data of the plurality of items and the scoring data, the plurality of users comprise the target users, the attribute data of each user in the plurality of users comprise corresponding user identifications, the plurality of items comprise the plurality of candidate items, the attribute data of each item in the plurality of items comprise corresponding item identifications, and the scoring data comprise the scores of each user in the plurality of users for one or more items in the plurality of items; and determining the target recommended item according to the scores of the target user on the candidate items. Therefore, the target user can select the articles which the target user wants from the target recommended articles recommended by the server without selecting from all articles stored in the server, and therefore the efficiency of selecting the articles by the user can be improved.
Drawings
FIG. 1 is a system framework diagram provided by an embodiment of the present invention;
fig. 2 is a schematic structural diagram of a server according to an embodiment of the present invention;
FIG. 3 is a schematic diagram of a bipartite graph according to an embodiment of the invention;
FIG. 4 is a flow chart of a method for recommending items according to an embodiment of the present invention;
FIG. 5 is a flowchart of a method for training scoring models according to an embodiment of the present invention;
FIG. 6 is a schematic structural diagram of an apparatus for recommending articles according to an embodiment of the present invention;
FIG. 7 is a schematic structural diagram of an apparatus for recommending articles according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of a training device for a scoring model according to an embodiment of the present invention.
Detailed Description
The embodiment of the invention provides a method for recommending articles. The server may be a background server recommending the function of the article, the server may be a single server, or a server group composed of a plurality of servers. In order to improve the efficiency of selecting articles by a user, when a target user wants to select an article, an article recommendation request corresponding to the target user can be sent to a server through an operation trigger terminal, correspondingly, after the server receives the article recommendation request, a target recommended article which the target user may like can be determined in a plurality of candidate articles in a candidate set, and then the target recommended article can be sent to the terminal, and the terminal can display the target recommended article after receiving the target recommended article so that the target user can select the article which the target user wants from the target recommended article, wherein a system frame diagram is shown in fig. 1.
The server may include a processor 210, a transmitter 220, a receiver 230, and a memory 240, and the receiver 230 and the transmitter 220, and the memory 240 may be respectively connected to the processor 210, as shown in fig. 2. The receiver 230 may be used to receive messages or data, the transmitter 220 and the receiver 230 may be network cards, and the transmitter 220 may be used to transmit messages or data, i.e., may transmit the target recommended item to the terminal of the target user. The processor 210 may be a control center of the server, and various interfaces and lines are used to connect various parts of the entire server, such as the receiver 230, the transmitter 220, the memory 240, and the like. In the present invention, the processor 210 may be a Central Processing Unit (CPU), and may be configured to determine relevant Processing of the target recommended item, and optionally, the processor 210 may include one or more Processing units; processor 210 may integrate an application processor, which primarily handles the operating system, and a modem processor, which primarily handles wireless communications. The processor 210 may also be a digital signal processor, an application specific integrated circuit, a field programmable gate array or other programmable logic device, or the like. The memory 240 may be used to store software programs and modules, and the processor 210 executes various functional applications of the server and data processing by reading the software codes and modules stored in the memory.
To facilitate understanding of the embodiments of the present invention, the basic concepts related to the embodiments of the present invention will be described first.
1. User-item bipartite graph
That is, the interaction of the user with the item can be represented by a bipartite graph, wherein the edges between the user and the item represent the historical interaction of the user with the item, and the bipartite graph is described in detail below:
the server may obtain historical behavior data of each user (for example, in the case where the item is a movie, the historical behavior data of each user may be a movie that each user has downloaded, viewed, or collected), and further, for each user, the server may establish a connection between the user and the item that has been interacted with the history according to the historical behavior data of the user, thereby obtaining a user-item bipartite graph.
For example, a user-item bipartite graph is shown in FIG. 3, with users 1 through 5 representing 5 users, respectively, and items 1 through 8 representing 8 items, respectively, in FIG. 3. Starting from a node in fig. 3, all nodes that can be reached in one step are articles, and all nodes that can be reached in two steps are all users who have at least one same interactive article as the current user, wherein all nodes that can be reached in one step starting from a user can be referred to as a first-order first interactive node list, all nodes that can be reached in two steps can be referred to as a second-order first interactive node list, and so on, starting from an article, all nodes that can be reached in one step can be referred to as a first-order second interactive node list, all nodes that can be reached in two steps can be referred to as a second-order second interactive node list, and so on. The server may obtain, according to the user-item bipartite graph, each level of first interaction node list corresponding to each user and each level of second interaction node list corresponding to each item, for example, the first level interaction node list corresponding to user1 includes item1, item2, item3, and item8, and the second level first interaction node list of user1 includes user2, user3, and user 5. For another example, the first order second interaction node list corresponding to item1 includes user1 and user3, and the second order second interaction node list corresponding to item1 includes item2, item3, item4, and item 8.
The process flow shown in fig. 4 will be described in detail below with reference to the specific embodiments, and the contents may be as follows:
step 401, obtaining attribute data of a target user and attribute data of a plurality of candidate items, where the attribute data of the target user includes an identifier of the target user, and the attribute data of each candidate item includes an identifier of a corresponding candidate item.
In implementation, the server may store article recommendation trigger events corresponding to each user in advance, where the article recommendation trigger events corresponding to each user may be the same, for example, the article recommendation trigger event may be a preset article recommendation period, and the article recommendation trigger events corresponding to each user may also be different, for example, the article recommendation trigger event corresponding to each user may be an article recommendation request sent by a terminal of the user. When the server detects that an item recommendation trigger event corresponding to the target user occurs (for example, when an item recommendation request corresponding to the target user sent by the terminal is detected), the server may determine a target recommended item favored by the target user and recommend the target recommended item to the target user. Specifically, the server may obtain attribute data of the target user and attribute data of each candidate item in the plurality of candidate items, where the attribute data of the target user may include an identifier of the target user, and the attribute data of each candidate item in the plurality of candidate items may include an identifier of a corresponding candidate item.
Optionally, the attribute data of the target user may further include one or more of the following data: gender, height, weight, age, occupation, income, hobbies, educational history, the attribute data for each candidate item may further include one or more of the following: brand, color, size, price, reviews, taste, shelf life, icons.
Step 402, processing the attribute data of the target user and the attribute data of the candidate items to generate a target data set, where the target data set includes an identifier of the target user and a corresponding target first interaction node list, an identifier of each candidate item in the candidate items and a corresponding target second interaction node list, the target first interaction node list is used to represent interaction information of the target user and other users or items, and the target second interaction node list is used to represent interaction information of the candidate items and other items or users.
In implementation, after acquiring the attribute data of the target user and the attribute data of the multiple candidate items, the server may process the attribute data to obtain a target data set, where the target data set may include an identifier of the target user and a corresponding target first interaction node list, an identifier of each candidate item in the multiple candidate items and a corresponding target second interaction node list, the target first interaction node list is used to represent interaction information of the target user with other users or items, and the target second interaction node list is used to represent interaction information of the candidate item with other items or users.
Optionally, after obtaining the identifier of the target user and the identifier of each candidate item, the target first interaction node list and the target second interaction node list corresponding to each candidate item may be determined according to the identifier of the target user and the identifier of each candidate item, and accordingly, the processing procedure in step 402 may be as follows: according to the identification of the target user, determining a target first interaction node list corresponding to the target user in a target first interaction node list corresponding to the identification of each user in a plurality of pre-recorded users, and according to the identification of each candidate item, determining a target second interaction node list corresponding to each candidate item in a target second interaction node list corresponding to the identification of each candidate item in a plurality of pre-recorded candidate items; and generating a target data set according to the identification of the target user, the target first interaction node list corresponding to the target user, the identification of each candidate item and the target second interaction node list corresponding to each candidate item.
In implementation, a target first interaction node list corresponding to an identifier of each of a plurality of users and a target second interaction node list corresponding to an identifier of each of a plurality of candidate items may be stored in a server in advance, where the server may record the target first interaction node list corresponding to the identifier of each of the users and the target second interaction node list corresponding to the identifier of each of the candidate items in a form of a table, and may also record the target first interaction node list corresponding to the identifier of each of the users and the target second interaction node list corresponding to the identifier of each of the candidate items in a form of a bipartite graph. After obtaining the identifier of the target user and the identifier of each candidate item, the server may determine, in a pre-recorded target first interaction node list corresponding to the identifier of each user of the multiple users, a target first interaction node list corresponding to the target user, and may determine, in a pre-recorded target second interaction node list corresponding to the identifier of each candidate item of the multiple candidate items, a target second interaction node list corresponding to each candidate item. After determining a target first interaction node list corresponding to the target user and a target second interaction node list corresponding to each candidate item, the server may generate a target data set including an identifier of the target user and the corresponding target first interaction node list, an identifier of each candidate item and the corresponding target second interaction node list, where each target data in the target data set may include the identifier of the target user and the corresponding target first interaction node list, an identifier of a candidate item j and the corresponding target second interaction node list, and the candidate item j is any one of the plurality of candidate items.
And step 403, inputting the target data set into a scoring model to obtain a score of the target user for the candidate items, wherein the scoring model is obtained by training according to attribute data of the plurality of users, attribute data of the plurality of items and the scoring data, the attribute data of each user in the plurality of users includes an identifier of the corresponding user, the attribute data of each item in the plurality of items includes an identifier of the corresponding item, and the scoring data includes a score of each user in the plurality of users for one or more items in the plurality of items.
In an implementation, a scoring model may be stored in advance in the server, where the scoring model may be trained by the server according to attribute data of a plurality of users, attribute data of a plurality of items, and the scoring data, the plurality of users include a target user, and the plurality of items include a plurality of candidate items. The server may predict, via a scoring model, a score for each candidate item of the plurality of candidate items by the target user. Specifically, after the target data set is generated, the server may input the target data set into the scoring model to obtain a score of the target user for each candidate item in the multiple candidate items, where, for a case that the target data set includes multiple target data, the server may input each target data into the scoring model to obtain a score of the target user for the corresponding candidate item.
Optionally, the scoring model may include a feature learning model, a feedback learning model, and a neural network model, and accordingly, the processing procedure of step 403 may be as follows: inputting the identification of the target user and the identification of the candidate item j in the target data set into a feature learning model to obtain a feature vector corresponding to the target user and a feature vector corresponding to the candidate item j, and inputting a target first interaction node list corresponding to the target user and a target second interaction node list corresponding to the candidate item j in the target data set into a feedback learning model to obtain implicit feedback corresponding to the target user and implicit feedback corresponding to the candidate item j, wherein the item j is any one of a plurality of candidate items; and inputting the characteristic vector corresponding to the target user, the characteristic vector corresponding to the candidate item j, the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j into the neural network model to obtain the score of the target user on the candidate item j.
The feature vector corresponding to the target user may be a vector for characterizing features (or characteristics) of the user. The feature vector corresponding to the candidate item j may be a vector for characterizing features (or characteristics) of the candidate item j itself.
In an implementation, the scoring model may include a feature learning model, a feedback learning model, and a neural network model, where the feature learning model may be used to learn feature vectors corresponding to a target user and each candidate item, and the model parameters of the feature learning model may include a user feature matrix and an item feature matrix, where the user feature matrix is composed of feature vectors of each of a plurality of users (i.e., each row of vectors of the user feature matrix is a feature vector of a corresponding user, and a row of the user feature matrix is the number of the plurality of users), and the item feature matrix is composed of feature vectors of each of a plurality of items (i.e., each row of vectors of the item feature matrix is a feature vector of a corresponding item, and a row of the item feature matrix is the number of the plurality of items). After the target data set is obtained, the server may input the identifier of the target user and the identifier of the candidate item j in the target data set into the feature learning model, so as to obtain a feature vector corresponding to the target user and a feature vector corresponding to the candidate item j. Specifically, after the server inputs the identifier of the target user and the identifier of the candidate item j into the feature learning model, according to the identifier of the target user and the identifier of the candidate item j, a feature vector corresponding to the target user is extracted from a user feature matrix through the feature learning model, a feature vector corresponding to the candidate item j is extracted from an item feature matrix, and the feature vector corresponding to the target user and the feature vector corresponding to the candidate item j are obtained.
The feedback learning model may be used to learn implicit feedback corresponding to the target user and each candidate item, and the model parameters of the feedback learning model may include a user feedback matrix (which may be represented by Y) and an item feedback matrix (which may be represented by X), where the user feedback matrix may be composed of feedback vectors (each row of vectors in the user feedback matrix)Representing a feedback vector corresponding to a node), the commodity feedback matrix may be composed of feedback vectors (each row of vectors in the commodity feedback matrix represents a feedback vector corresponding to a node). Determining a target first interactive node list (R can be used) corresponding to a target user (k can be used for representing)kRepresented by R), a target second interactive node list (which may be R) corresponding to the candidate item jjAnd representing), the implicit feedback can be input into a feedback learning model to obtain the implicit feedback corresponding to the target user k and the implicit feedback corresponding to the candidate item j. Specifically, after the server inputs the target first interaction node list corresponding to the target user k into the feedback learning model, a plurality of feedback vectors corresponding to the target first interaction node list may be extracted from the user feedback matrix through the feedback learning model (where the number of the feedback vectors is the number of nodes included in the target first interaction node list), so as to obtain the feedback vector corresponding to the target user k. After the feedback vector corresponding to the target user k is obtained, the multiple feedback vectors may be added to obtain the implicit feedback corresponding to the target user k, where the server may obtain the implicit feedback P corresponding to the target user k according to formula (1)k
Figure BDA0001497950110000151
Wherein, each row vector in the user feedback matrix can use YtWhere t is the node identifier, and t is 1, 2, …, M, and M is the total number of rows in the user feedback matrix. It should be noted that, when the user feedback matrix is an odd-order user feedback matrix, M is the total number of the multiple articles, and when the user feedback matrix is an even-order user feedback matrix, M is the total number of the multiple users.
The specific processing of obtaining the implicit feedback corresponding to the candidate item j may be as follows: after the server inputs the target second interaction node list corresponding to the candidate item j into the feedback learning model, a plurality of feedback vectors corresponding to the target second interaction node list can be extracted from the item feedback matrix through the feedback learning model (wherein the number of the feedback vectors is the number of the feedback vectors in the target second interaction node list)The number of included nodes) to obtain a feedback vector corresponding to the candidate item j. After the feedback vector corresponding to the candidate item j is obtained, the plurality of feedback vectors may be added to obtain the implicit feedback corresponding to the candidate item j, wherein the server may obtain the implicit feedback Q corresponding to the candidate item j according to formula (2)j
Figure BDA0001497950110000152
Wherein, each row vector in the article feedback matrix can use XvWhere v is the node identifier, v is 1, 2, …, and N is the total number of rows in the commodity feedback matrix. It should be noted that when the item feedback matrix is an odd-order item feedback matrix, N is the total number of the plurality of users, and when the item feedback matrix is an even-order item feedback matrix, N is the total number of the plurality of items.
After the feature vector corresponding to the target user k, the feature vector corresponding to the candidate item j, the implicit feedback corresponding to the target user k and the implicit feedback corresponding to the candidate item j are obtained, the server can input the implicit feedback into the neural network model to obtain the score of the target user on the candidate item j.
Specifically, the server may store a pre-trained neural network model in advance, where the neural network model may include a plurality of layers of neural networks, an input of each layer of neural network in the plurality of layers of neural networks may be an output of a previous layer of neural network, where a formula of the h-th layer of neural network may be as shown in formula (3),
rh+1=σ(Whrh+bh) (3)
where σ () is called an activation function, such as sigmoid function, relu function, tanh function, etc., rhIs an input of the h-th layer, bhAs an offset term for the h-th layer, WhThe weight on the connecting edge of the h layer neuron and the h +1 layer neuron, wherein WhAnd bhAlso trained, the input r to the first layer of neural networks1As can be seen from the equation (4),
r1=<p+P,q+Q>(4) wherein the content of the first and second substances,<x,y>multiplication of a number representing the corresponding dimensions of vector x and vector y, r1P represents a feature vector corresponding to a user, P represents implicit feedback corresponding to the user, Q represents a feature vector corresponding to an article, and Q represents implicit feedback corresponding to the article. Thus, the neural network model may be as shown in equation (5), where H is the total number of layers of the neural network model.
y=σ(WH(σ(WH-1(σ(...σ(W1r1+b1)+...+bH-1))+bH) (5)
The server determines a feature vector p corresponding to a target user kkImplicit feedback P corresponding to target user kkFeature vector q corresponding to candidate item jjImplicit feedback Q corresponding to candidate item jjThen r can be1 kjAnd (5) taking the input of the neural network model into the formula (5) to obtain the score of the target user k on the candidate item j. Wherein r is1 kjAs shown in equation (6).
Figure BDA0001497950110000161
In addition, b may be included in the formula (6)k、bjAnd b is (b)k、bjThe sum of b, which is the mean of all scores included in the training data set, may be referred to as the statistical benchmark score), and bkDifference of all scores of all items for target user k included in the training dataset from bjThe difference of the average of the scores for item j for all users included in the training dataset and b.
Optionally, the target first interaction node list may include a multi-order target first interaction node list, the target second interaction node list corresponding to each candidate item may include a multi-order target second interaction node list, an odd-order target first interaction node list in the multi-order target first interaction node list is used for representing interaction information between the target user and the item, an even-order target first interaction node list in the multi-order target first interaction node list is used for representing interaction information between the target user and other users, an odd-order target second interaction node list in the multi-order target second interaction node list is used for representing interaction information between the candidate item and the user, and an even-order target second interaction node list in the multi-order target second interaction node list is used for representing interaction information between the candidate item and other items; the model parameters of the feedback learning model may include a multi-order user feedback matrix and a multi-order commodity feedback matrix, wherein the order of the target first interaction node list is the same as the order of the user feedback matrix, and the order of the target second interaction node list corresponding to each candidate commodity is the same as the order of the commodity feedback matrix. For such a situation, correspondingly, the specific processing procedure for obtaining the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j may be as follows: inputting a multi-order target first interactive node list corresponding to a target user in the target data set and a multi-order target second interactive node list corresponding to the candidate item j into a feedback learning model to obtain implicit feedback corresponding to the target user and implicit feedback corresponding to the candidate item j.
In an implementation, when the server predicts the score of the target user on the candidate item j, the server may further use a multi-level target first interaction node list corresponding to the target user and a multi-level target second interaction node list corresponding to the candidate item j, where the multi-level target first interaction node list may be a first-order target first interaction node list, a second-order target first interaction node list, …, and an a-order target first interaction node list, respectively, the multi-level user feedback matrix may include a first-order user feedback matrix, a second-order user feedback matrix, …, and an a-order user feedback matrix, a is a preset value (for example, a is 3), a is a maximum number of steps that can be reached by the preset target user in the user-item bipartite graph, and the multi-level target second interaction node list may be a first-order target second interaction node list, a second-order target second interaction node list, respectively, …, B-order target second interactive node list, wherein the multi-order commodity feedback matrix may include a first-order commodity feedback matrix, a second-order commodity feedback matrix, …, and a B-order commodity feedback matrix, B is a preset value, B is a preset candidateThe maximum number of steps that item j can reach in the user-item bipartite graph, where a and B may or may not be the same. First order user feedback matrix, which may be Y1Each row vector in the first-order user feedback matrix may be a vector representation when a corresponding article is used as a node in the first-order target first interaction node list, and the second-order user feedback matrix may be Y2In this case, the second-order user feedback matrix may be a vector representation of the second-order user as a node in the second-order target first interaction node list. First order article feedback matrix, which may be X1Each row vector in the first-order article feedback matrix can be represented by a vector when a corresponding user is used as a node in the first-order target second interaction node list, and the second-order article feedback matrix can be represented by X2In this case, the second-order item feedback matrix may be a vector representation of the second-order item as a node in the second-order target interaction node list.
For such a situation, the server may input the multi-order target first interaction node list corresponding to the target user in the target data set and the multi-order target second interaction node list corresponding to the candidate item j into the feedback learning model, so as to obtain the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j. Specifically, for each level of the target first interactive node list
Figure BDA0001497950110000171
(a ═ 1, 2, …, a), the server may learn the model through feedback, at this stage with a user feedback matrix YaIn the method, a target first interactive node list is extracted
Figure BDA0001497950110000172
The corresponding feedback vector. The server may select the feedback vectors corresponding to the target first interaction node lists of each order corresponding to the target user according to the above manner, and further, may add all the selected feedback vectors to obtain the implicit feedback corresponding to the target user.
For each step of target second interactive section corresponding to candidate item jPoint list
Figure BDA0001497950110000173
(B is 1, 2, …, B), the server can feed back the matrix X at the item through the feedback learning modelbIn the method, a target second interactive node list is selected
Figure BDA0001497950110000174
Obtaining a target second interactive node list corresponding to the candidate item j by the corresponding feedback vector
Figure BDA0001497950110000175
The corresponding feedback vector. The server may select the feedback vectors corresponding to the target second interactive node lists of each order corresponding to the candidate item j according to the above manner, and further, may add all the selected feedback vectors to obtain the implicit feedback corresponding to the candidate item j.
Optionally, the model parameters of the feedback learning model may further include: the weight of the feedback vector of each of the multiple users and the weight of the feedback vector of each of the multiple articles may be obtained by pre-training the server, and in this case, the specific processing procedure for obtaining the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate article j may be as follows: and inputting the identification of the target user in the target data set, the corresponding target first interactive node list, the identification of the candidate item j and the corresponding target second interactive node list into a feedback learning model to obtain the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j.
In implementation, for a case that the model parameters of the feedback learning model further include a weight of a feedback vector of each of the plurality of users and a weight of a feedback vector of each of the plurality of articles, the server may input the identifier of the target user in the target data set and the corresponding target first interaction node list, the identifier of the candidate article j and the corresponding target second interaction node list into the feedback learning model to obtain the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate article j. In particular, the serviceThe feedback vector corresponding to the target user and the feedback vector corresponding to the candidate item j can be determined by the feedback learning model according to the method for determining the feedback vectors corresponding to the target user and the candidate item j. The server may then learn the weight of the target user's feedback vector in the model by feedback (which may be in Φ) based on the target user's identity and the identity of the candidate item jktRepresenting) the feedback vector corresponding to the target user k is weighted and processed to obtain implicit feedback corresponding to the target user, and the weight (which can be omega) of the feedback vector of the candidate item j in the feedback learning model is usedvjAnd representing) the implicit feedback corresponding to the candidate item j is obtained by weighting and processing the feedback vector corresponding to the candidate item j.
Optionally, the model parameters of the feedback learning model may include: the weight of the feedback vector of each user in the plurality of users, the weight of the feedback vector of each item in the plurality of items, the multi-order user feedback matrix and the multi-order item feedback matrix, and accordingly, the target first interaction node list corresponding to the target user may include a multi-order target first interaction node list, and the target second interaction node list corresponding to each candidate item may include a multi-order target second interaction node list, and accordingly, the processing procedure for determining the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j may be as follows: and inputting the identification of the target user in the target data set, the corresponding multi-order target first interactive node list, the identification of the candidate item j and the corresponding multi-order target second interactive node list into a feedback learning model to obtain the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j.
In implementation, the server may select a feedback vector corresponding to each order of target first interactive node list corresponding to the target user and a feedback vector corresponding to each order of target second interactive node list corresponding to the candidate item j according to the above manner. The server may then learn the weights of the feedback vectors (which may be used) for the target users in the model by feedback based on the identification of the target users and the identification of the candidate item j
Figure BDA0001497950110000181
Representing) the feedback vector corresponding to the target user k is weighted and processed to obtain implicit feedback corresponding to the target user, and the weight (available) of the feedback vector of the candidate item j in the feedback learning model is used
Figure BDA0001497950110000182
And representing) the implicit feedback corresponding to the candidate item j is obtained by weighting and processing the feedback vector corresponding to the candidate item j.
Specifically, the server may obtain the implicit feedback P corresponding to the target user according to formula (7)k
Figure BDA0001497950110000183
Wherein the content of the first and second substances,
Figure BDA0001497950110000184
feedback vector representing target user k
Figure BDA0001497950110000185
The weight of (c).
The server can obtain implicit feedback Q corresponding to the candidate item j according to a formula (8)j
Figure BDA0001497950110000186
Wherein the content of the first and second substances,
Figure BDA0001497950110000187
feedback vector representing candidate item j
Figure BDA0001497950110000188
The weight of (c).
And step 404, determining a target recommended item according to the scores of the target user on the candidate items.
In implementation, after the scores of the target user for the multiple candidate items are obtained, the server may determine, in the multiple candidate items, a target recommended item to be recommended to the target user according to the score of the target user for each candidate item of the multiple candidate items, and may further recommend the target recommended item to the target user.
Optionally, the server may store preset recommendation conditions, and accordingly, the processing procedure of step 404 may be as follows: and determining the corresponding target recommended articles with scores meeting preset recommendation conditions according to the scores of the target users for the candidate articles.
The preset recommendation condition may be a condition for the server to determine whether an item is recommended according to the corresponding score.
In implementation, preset recommendation conditions may be stored in the server in advance, and after the server obtains scores of the target user for the plurality of candidate items, the server may select a target recommended item, of which the corresponding score meets the preset recommendation conditions, from the plurality of candidate items.
Optionally, based on different preset recommendation conditions, the processing manner for determining the target recommended item may be various, and several feasible processing manners are given as follows:
in the first mode, according to the scores of the target users on the multiple candidate items, the corresponding target recommended items with the maximum scores in the preset number are determined.
In implementation, after the server determines that the target user scores the multiple candidate items, the server may sort the multiple candidate items according to a descending order of the corresponding scores, and then determine a preset number of candidate items that are sorted in front as the target recommended item.
And in the second mode, according to the scores of the target user on the candidate articles, determining the target recommended articles with the corresponding scores larger than the preset score threshold value.
In implementation, the server may store a preset score threshold in advance. After the server determines that the target user scores the multiple candidate items, the server may select, from the multiple candidate items, a candidate item whose corresponding score is greater than a preset score threshold, and further may determine the determined candidate item as the target recommended item.
The embodiment of the present invention further provides a method for training a scoring model, and the following details are provided to describe the processing flow shown in fig. 5 in detail with reference to the specific implementation manner, and the contents may be as follows:
step 501, obtaining attribute data of a plurality of users, attribute data of a plurality of articles and scoring data.
In implementation, the server may predetermine a training data set for training the scoring model. Specifically, the server may obtain attribute data of a plurality of users, attribute data of a plurality of items, and scoring data, where the attribute data of each of the plurality of users may include an identifier of the corresponding user, the attribute data of each of the plurality of items may include an identifier of the corresponding item, and the scoring data may include a score of each of the plurality of users for one or more of the plurality of items.
Optionally, the attribute data of each of the plurality of users may further include one or more of the following information: gender, height, weight, age, occupation, income, hobbies, educational profile, the attribute data for each of the plurality of items may further include one or more of the following: brand, color, size, price, reviews, taste, shelf life, icons; scoring data may also include one or more of the following: operating time, current equipment used, discount conditions.
Optionally, the server may obtain attribute data of a plurality of users, attribute data of a plurality of items, and rating data by obtaining a plurality of rating records, and accordingly, the processing procedure of step 501 may be as follows: and acquiring a plurality of scoring records, wherein each scoring record in the plurality of scoring records comprises attribute data of a user u, attribute data of an article i and scoring data of the user u on the article i, the user u is any user in the plurality of users who score the article i, and the article i is any article in the plurality of articles.
In an implementation, the server may obtain a plurality of scoring records, each of the plurality of scoring records including attribute data of user u, attribute data of item i, andthe scoring data of the user u on the item i, the item i is any one of a plurality of items, the user u is any one of a plurality of users who score the item i, the attribute data of the user u includes an identifier of the user u, the attribute data of the item i includes an identifier of the item i, and the scoring data of the user u on the item i may include a score of the user u on the item i, where the scoring record may also be referred to as an interaction record (for example, if the user purchases some item, the scoring data in the corresponding scoring record may be 1). For example, the plurality of score records are each (u)0,i0,1)、(u0,i1,1)、(u0,i2,1)。
Step 502, processing attribute data of a plurality of users, attribute data of a plurality of articles, and scoring data to obtain a training data set, where the training data set includes an identifier of each user and a corresponding first interactive node list, an identifier of each article and a corresponding second interactive node list, and a score of each user for one or more articles in the plurality of articles, where the first interactive node list is used to represent interactive information of the user with other users or articles, and the second interactive node list is used to represent interactive information of the articles with other articles or users.
In implementation, after obtaining attribute data of a plurality of users, attribute data of a plurality of articles, and scoring data, the server may process the attribute data, and the scoring data to obtain a training data set, where the training data set may include an identifier of each of the plurality of users and a corresponding first interaction node list, an identifier of each of the plurality of articles and a corresponding second interaction node list, and each user scores one or more articles of the plurality of articles.
Optionally, for the case of obtaining multiple scoring records, correspondingly, the processing procedure of step 502 may be as follows: and processing the plurality of scoring records to obtain a training data set, wherein each training data in the training data set comprises an identifier of a user u and a corresponding first interactive node list, an identifier of an article i and a corresponding second interactive node list, and a score of the user u on the article i.
In implementation, after a plurality of scoring records are acquired,for each scoring record w in the plurality of scoring records, the training data g corresponding to the scoring record w can be obtained according to the scoring record w and the scoring record whose occurrence time is before the scoring record w. For example, the score record obtained first is w0(u0,i01), since the score is recorded w0Is acquired for the first time, therefore, user u0Item i, corresponding to the first interactive node list being empty0The corresponding second interactive node list is empty, and the obtained scoring record w0Corresponding training data g0Identification u for user u0Identification i of article i0The first interactive node list corresponding to the user u is empty, the second interactive node list corresponding to the article i is empty, and the score is 1; the second obtained score is recorded as w1(u0,i11), from which it can be seen that user u0To article i0Hit over, article i1Not overpowered by other users, therefore, user u0The corresponding first interactive node list is i0Article i1The corresponding second interactive node list is empty, and the obtained scoring record w1Corresponding training data g1Identification u for user u0Identification i of article i1The first interactive node list corresponding to the user u is i0The second interactive node list corresponding to the article i is empty, and the score is 1; the score obtained is then recorded as w2(u1,i11), from which it can be seen that user u1Article i without overstocking other articles1By user u0Hit too much, therefore, user u1Item i, corresponding to the first interactive node list being empty1The corresponding second interactive node list is u0The resulting scoring record w2Corresponding training data g2Identification u for user u1Identification i of article i1The first interactive node list corresponding to the user u is empty, and the second interactive node list corresponding to the item i is u0The score is 1.
Step 503, training the scoring model according to the training data set.
In implementation, after the training data set is obtained, the server may train the scoring model, that is, may adjust model parameters in the scoring model to obtain the trained scoring model.
Optionally, for the case that the scoring model includes the feature learning model, the feedback learning model and the neural network model, the server may train the feature learning model, the feedback learning model and the neural network model in a unified manner, and accordingly, the processing procedure of step 503 may be as follows: inputting the identification of the user u and the identification of the article i into a characteristic learning model to obtain a characteristic vector corresponding to the user u and a characteristic vector corresponding to the article i, and inputting a first interactive node list corresponding to the user u and a second interactive node list corresponding to the article i into a feedback learning model to obtain implicit feedback corresponding to the user u and implicit feedback corresponding to the article i; inputting the feature vector corresponding to the user u and the feature vector corresponding to the article i, the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i into a neural network model to obtain a prediction score; and adjusting the characteristic learning model, the feedback learning model and the neural network model according to the prediction score and the scoring of the user u on the article i to obtain a trained scoring model.
In implementation, after obtaining the training data set, the server inputs the identifier of the user u and the identifier of the article i in each training data set into the feature learning model, to obtain a feature vector corresponding to the user u and a feature vector corresponding to the article i, and may input the first interaction node list corresponding to the user u and the second interaction node list corresponding to the article i in each training data set into the feedback learning model, to obtain an implicit feedback corresponding to the user u and an implicit feedback corresponding to the article i, where a specific manner of obtaining the feature vector corresponding to the user u and the feature vector corresponding to the article i is similar to a manner of obtaining the feature vector corresponding to the target user and the feature vector corresponding to the candidate article j, and a specific manner of obtaining the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i is similar to a manner of obtaining the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate article j, and will not be described in detail herein. After the feature vector corresponding to the user u, the feature vector corresponding to the item i, the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i are obtained, the feature vectors and the implicit feedback can be input into a neural network model to obtain the prediction score. After the prediction score of the user u for the article i is obtained, model parameters of the feature learning model, the feedback learning model and the neural network model can be adjusted according to the prediction score and the scoring of the user u for the article i in each training data in the training data set, and the trained scoring model is obtained.
Optionally, the first interactive node list corresponding to the user u may include a multi-stage first interactive node list, the second interactive node list corresponding to the item i may include a multi-stage second interactive node list, and the feeding back the model parameters of the learning model may include: the order of a first interactive node list corresponding to a user u is the same as the order of the user feedback matrix, the order of a second interactive node list corresponding to an article i is the same as the order of the article feedback matrix, an odd-order first interactive node list in the multi-order first interactive node list is used for representing interactive information of the user and the article, an even-order first interactive node list in the multi-order first interactive node list is used for representing interactive information of the user and other users, an odd-order second interactive node list in the multi-order second interactive node list is used for representing interactive information of the article and the user, and an even-order second interactive node list in the multi-order second interactive node list is used for representing interactive information of the article and other articles. For such a situation, correspondingly, the specific processing procedure for determining the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i may be as follows: and inputting the multi-order first interactive node list corresponding to the user u and the multi-order second interactive node list corresponding to the item i into a feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i.
In implementation, when the server trains the scoring model, the server may further use a multi-level first interactive node list corresponding to the user u and a multi-level second interactive node list corresponding to the item i. For such a situation, the server may input the multi-order first interactive node list corresponding to the user u and the multi-order second interactive node list corresponding to the item i into the feedback learning model, so as to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i.
Optionally, the model parameters of the feedback learning model may include: a weight of the feedback vector for each user of the plurality of users, a weight of the feedback vector for each item of the plurality of items. In this case, the specific processing procedure for determining the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i may be as follows: and inputting the identification of the user u, the corresponding first interactive node list, the identification of the article i and the corresponding second interactive node list into a feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i.
In implementation, the server may input the identifier of the user u and the corresponding first interactive node list, the identifier of the item i and the corresponding second interactive node list in each training data in the training data set into the feedback learning model, so as to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i.
Based on the same technical concept, an embodiment of the present invention further provides an apparatus for recommending an article, as shown in fig. 6, the apparatus including:
the obtaining module 610 is configured to obtain attribute data of a target user and attribute data of a plurality of candidate items, where the attribute data of the target user includes an identifier of the target user, and the attribute data of each candidate item includes an identifier of a corresponding candidate item, and specifically, the obtaining function in step 401 above may be implemented, and other implicit steps.
A generating module 620, configured to process the attribute data of the target user and the attribute data of the multiple candidate items, and generate a target data set, where the target data set includes an identifier of the target user and a corresponding target first interaction node list, an identifier of each candidate item in the multiple candidate items and a corresponding target second interaction node list, the target first interaction node list is used to represent interaction information of the target user with other users or items, and the target second interaction node list is used to represent interaction information of the candidate item with other items or users, and specifically, the generating function in step 402 and other implicit steps may be implemented.
A scoring module 630, configured to input the target data set into a scoring model, so as to obtain a score of the target user for the multiple candidate items, where the scoring model is obtained through training according to attribute data of multiple users, attribute data of multiple items, and scoring data, the attribute data of each of the multiple users includes an identifier of a corresponding user, the attribute data of each of the multiple items includes an identifier of a corresponding item, and the scoring data includes a score of each of the multiple users for one or more of the multiple items, where the scoring function in step 403 may be specifically implemented, and other implicit steps.
The determining module 640 is configured to determine a target recommended item according to the scores of the target user on the multiple candidate items, and may specifically implement the determining function in step 404 and other implicit steps.
Optionally, the attribute data of the target user further includes one or more of the following data: gender, height, weight, age, occupation, income, hobbies, education, the attribute data of each candidate item further comprising one or more of the following data: brand, color, size, price, reviews, taste, shelf life, icons.
Optionally, the generating module 620 is configured to:
according to the identification of the target user, determining a target first interaction node list corresponding to the target user in a target first interaction node list corresponding to the identification of each user in a plurality of pre-recorded users, and according to the identification of each candidate item, determining a target second interaction node list corresponding to each candidate item in a target second interaction node list corresponding to the identification of each candidate item in a plurality of pre-recorded candidate items;
and generating a target data set according to the identification of the target user, the target first interaction node list corresponding to the target user, the identification of each candidate item and the target second interaction node list corresponding to each candidate item.
Optionally, the scoring model includes a feature learning model, a feedback learning model and a neural network model;
wherein, the scoring module 630 is configured to:
inputting the identifier of a target user in the target data set and the identifier of a candidate item j into the feature learning model to obtain a feature vector corresponding to the target user and a feature vector corresponding to the candidate item j, and inputting a target first interaction node list corresponding to the target user in the target data set and a target second interaction node list corresponding to the candidate item j into the feedback learning model to obtain an implicit feedback corresponding to the target user and an implicit feedback corresponding to the candidate item j, wherein the item j is any one of the candidate items;
inputting the feature vector corresponding to the target user, the feature vector corresponding to the candidate item j, the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j into a neural network model to obtain the score of the target user on the candidate item j.
Optionally, the target first interaction node list includes a multi-order target first interaction node list, a target second interaction node list corresponding to each candidate item includes a multi-order target second interaction node list, an odd-order target first interaction node list in the multi-order target first interaction node list is used for representing interaction information between a target user and an item, an even-order target first interaction node list in the multi-order target first interaction node list is used for representing interaction information between the target user and other users, an odd-order target second interaction node list in the multi-order target second interaction node list is used for representing interaction information between the candidate item and the user, and an even-order target second interaction node list in the multi-order target second interaction node list is used for representing interaction information between the candidate item and other items;
the scoring module 630 is configured to:
inputting the multi-order target first interactive node list corresponding to the target user and the multi-order target second interactive node list corresponding to the candidate item j in the target data set into the feedback learning model to obtain implicit feedback corresponding to the target user and implicit feedback corresponding to the candidate item j.
Optionally, the model parameters of the feedback learning model include: a weight of a feedback vector for each user of the plurality of users, a weight of a feedback vector for each item of the plurality of items;
the scoring module 630 is configured to:
and inputting the identification of the target user in the target data set, the corresponding target first interactive node list, the identification of the candidate item j and the corresponding target second interactive node list into the feedback learning model to obtain the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j.
Optionally, the determining module 640 is configured to:
and determining a target recommended article with a score meeting a preset recommendation condition according to the scores of the target user on the candidate articles.
Optionally, the determining module 640 is configured to:
determining a preset number of target recommended articles with the largest score according to the scores of the target users for the candidate articles; alternatively, the first and second electrodes may be,
and determining the target recommended article with the corresponding score larger than a preset score threshold according to the scores of the target user on the candidate articles.
Optionally, as shown in fig. 7, the obtaining module 610 is further configured to:
acquiring attribute data of the plurality of users, attribute data of the plurality of articles and the scoring data;
the generating module 620 is further configured to:
processing the attribute data of the users, the attribute data of the articles and the scoring data to obtain a training data set, wherein the training data set comprises an identifier of each user and a corresponding first interaction node list, an identifier of each article and a corresponding second interaction node list, and a score of each user for one or more articles in the articles, the first interaction node list is used for representing interaction information of the user and other users or articles, and the second interaction node list is used for representing interaction information of the articles and other articles or users;
the device further comprises:
and a training module 650 for training the scoring model according to the training data set.
Optionally, the attribute data of each of the plurality of users further includes one or more of the following information: gender, height, weight, age, occupation, income, hobbies, educational history, the attribute data for each of the plurality of items further comprising one or more of the following data: brand, color, size, price, reviews, taste, shelf life, icons; the scoring data further comprises one or more of the following: operating time, current equipment used, discount conditions.
Optionally, the obtaining module 610 is configured to:
obtaining a plurality of scoring records, wherein each scoring record in the plurality of scoring records comprises attribute data of a user u, attribute data of an article i and scoring data of the user u on the article i, the user u is any user in the plurality of users who score the article i excessively, and the article i is any article in the plurality of articles;
the generating module 620 is configured to:
and processing the plurality of scoring records to obtain a training data set, wherein each training data in the training data set comprises an identifier of a user u and a corresponding first interactive node list, an identifier of an article i and a corresponding second interactive node list, and a score of the user u on the article i.
Optionally, the scoring model includes a feature learning model, a feedback learning model and a neural network model;
wherein the training module 650 is configured to:
inputting the identification of the user u and the identification of the article i into the feature learning model to obtain a feature vector corresponding to the user u and a feature vector corresponding to the article i, and inputting a first interactive node list corresponding to the user u and a second interactive node list corresponding to the article i into the feedback learning model to obtain implicit feedback corresponding to the user u and implicit feedback corresponding to the article i;
inputting the feature vector corresponding to the user u and the feature vector corresponding to the item i, the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i into the neural network model to obtain a prediction score;
and adjusting the feature learning model, the feedback learning model and the neural network model according to the prediction score and the scoring of the user u on the article i to obtain the trained scoring model.
Optionally, the first interactive node list corresponding to the user u includes a multi-order first interactive node list, the second interactive node list corresponding to the item i includes a multi-order second interactive node list, and the model parameters of the feedback learning model include: the order of a first interactive node list corresponding to the user u is the same as the order of the user feedback matrix, the order of a second interactive node list corresponding to the item i is the same as the order of the item feedback matrix, an odd-order first interactive node list in the multi-order first interactive node list is used for representing interactive information between the user and the item, an even-order first interactive node list in the multi-order first interactive node list is used for representing interactive information between the user and other users, an odd-order second interactive node list in the multi-order second interactive node list is used for representing interactive information between the item and the user, and an even-order second interactive node list in the multi-order second interactive node list is used for representing interactive information between the item and other items;
the training module 650 is configured to:
and inputting the multi-order first interactive node list corresponding to the user u and the multi-order second interactive node list corresponding to the item i into the feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i.
Optionally, the model parameters of the feedback learning model include: a weight of a feedback vector for each user of the plurality of users, a weight of a feedback vector for each item of the plurality of items;
the training module 650 is configured to:
and inputting the identification of the user u and the corresponding first interactive node list, the identification of the article i and the corresponding second interactive node list into the feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i.
It should be noted that the obtaining module 610, the generating module 620, the scoring module 630, the determining module 640, and the training module 650 may be implemented by a processor, or the processor is implemented by matching a memory, or the processor executes program instructions in the memory, or the processor is implemented by matching the memory and a transmitter.
In the embodiment of the invention, the attribute data of a target user and the attribute data of a plurality of candidate articles are obtained, the attribute data of the target user comprises an identifier of the target user, and the attribute data of each candidate article comprises an identifier of a corresponding candidate article; processing attribute data of a target user and attribute data of a plurality of candidate articles to generate a target data set, wherein the target data set comprises an identification of the target user, a corresponding target first interaction node list, an identification of each candidate article in the plurality of candidate articles and a corresponding target second interaction node list, the target first interaction node list is used for representing interaction information of the target user and other users or articles, and the target second interaction node list is used for representing interaction information of the candidate articles and other articles or users; inputting the target data set into a scoring model to obtain scores of target users for a plurality of candidate items, wherein the scoring model is obtained through training according to attribute data of the plurality of users, attribute data of the plurality of items and the scoring data, the plurality of users comprise the target users, the attribute data of each user in the plurality of users comprise corresponding user identifications, the plurality of items comprise the plurality of candidate items, the attribute data of each item in the plurality of items comprise corresponding item identifications, and the scoring data comprise the scores of each user in the plurality of users for one or more items in the plurality of items; and determining the target recommended item according to the scores of the target user on the candidate items. Therefore, the target user can select the articles which the target user wants from the target recommended articles recommended by the server without selecting from all articles stored in the server, and therefore the efficiency of selecting the articles by the user can be improved.
It should be noted that: in the device for recommending an article according to the above embodiment, when recommending an article, only the division of the above functional modules is used as an example, in practical applications, the above function distribution may be completed by different functional modules according to needs, that is, the internal structure of the server is divided into different functional modules, so as to complete all or part of the above described functions. In addition, the apparatus for recommending an article and the method for recommending an article provided in the above embodiments belong to the same concept, and specific implementation processes thereof are detailed in the method embodiments and are not described herein again.
Based on the same technical concept, an embodiment of the present invention further provides a training apparatus for scoring models, as shown in fig. 8, the apparatus includes:
the obtaining module 810 is configured to obtain the attribute data of the multiple users, the attribute data of the multiple articles, and the rating data, and may specifically implement the obtaining function in step 501, and other implicit steps.
A generating module 820, configured to process the attribute data of the multiple users, the attribute data of the multiple articles, and the scoring data to obtain a training data set, where the training data set includes an identifier of each user and a corresponding first interaction node list, an identifier of each article and a corresponding second interaction node list, and a score of each user on one or more articles in the multiple articles, where the first interaction node list is used to represent interaction information of the user with other users or articles, and the second interaction node list is used to represent interaction information of the articles with other articles or users, and specifically, the generating function in step 502 described above and other implicit steps may be implemented.
The training module 830 is configured to train the scoring model according to the training data set, and specifically may implement the training function in step 503 and other implicit steps.
Optionally, the attribute data of each of the plurality of users further includes one or more of the following information: gender, height, weight, age, occupation, income, hobbies, educational history, the attribute data for each of the plurality of items further comprising one or more of the following data: brand, color, size, price, reviews, taste, shelf life, icons; the scoring data further comprises one or more of the following: operating time, current equipment used, discount conditions.
Optionally, the obtaining module 810 is configured to:
obtaining a plurality of scoring records, wherein each scoring record in the plurality of scoring records comprises attribute data of a user u, attribute data of an article i and scoring data of the user u on the article i, the user u is any user in the plurality of users who score the article i excessively, and the article i is any article in the plurality of articles;
the generating module 820 is configured to:
and processing the plurality of scoring records to obtain a training data set, wherein each training data in the training data set comprises an identifier of a user u and a corresponding first interactive node list, an identifier of an article i and a corresponding second interactive node list, and a score of the user u on the article i.
Optionally, the scoring model includes a feature learning model, a feedback learning model and a neural network model;
wherein the training module 830 is configured to:
inputting the identification of the user u and the identification of the article i into the feature learning model to obtain a feature vector corresponding to the user u and a feature vector corresponding to the article i, and inputting a first interactive node list corresponding to the user u and a second interactive node list corresponding to the article i into the feedback learning model to obtain implicit feedback corresponding to the user u and implicit feedback corresponding to the article i;
inputting the feature vector corresponding to the user u and the feature vector corresponding to the item i, the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i into the neural network model to obtain a prediction score;
and adjusting the feature learning model, the feedback learning model and the neural network model according to the prediction score and the scoring of the user u on the article i to obtain the trained scoring model.
Optionally, the first interactive node list corresponding to the user u includes a multi-order first interactive node list, the second interactive node list corresponding to the item i includes a multi-order second interactive node list, and the model parameters of the feedback learning model include: the order of a first interactive node list corresponding to the user u is the same as the order of the user feedback matrix, the order of a second interactive node list corresponding to the item i is the same as the order of the item feedback matrix, an odd-order first interactive node list in the multi-order first interactive node list is used for representing interactive information between the user and the item, an even-order first interactive node list in the multi-order first interactive node list is used for representing interactive information between the user and other users, an odd-order second interactive node list in the multi-order second interactive node list is used for representing interactive information between the item and the user, and an even-order second interactive node list in the multi-order second interactive node list is used for representing interactive information between the item and other items;
the training module 830 is configured to:
and inputting the multi-order first interactive node list corresponding to the user u and the multi-order second interactive node list corresponding to the item i into the feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i.
Optionally, the model parameters of the feedback learning model include: a weight of a feedback vector for each user of the plurality of users, a weight of a feedback vector for each item of the plurality of items;
the training module 830 is configured to:
and inputting the identification of the user u and the corresponding first interactive node list, the identification of the article i and the corresponding second interactive node list into the feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i.
It should be noted that the obtaining module 810, the generating module 820, and the training module 830 may be implemented by a processor, or the processor is implemented by matching with a memory, or the processor executes program instructions in the memory, or the processor is implemented by matching with a memory and a transmitter.
In the training device for the scoring model provided in the above embodiment, when the scoring model is trained, only the division of the functional modules is exemplified, and in practical applications, the function distribution may be completed by different functional modules according to needs, that is, the internal structure of the server is divided into different functional modules, so as to complete all or part of the functions described above. In addition, the training device of the scoring model and the training method of the scoring model provided in the above embodiments belong to the same concept, and the specific implementation process thereof is described in detail in the method embodiments and will not be described herein again.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only an example of the present invention and should not be taken as limiting the present invention, and any modifications, equivalents, improvements and the like made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (30)

1. A method of recommending items, the method comprising:
acquiring attribute data of a target user and attribute data of a plurality of candidate items, wherein the attribute data of the target user comprises an identifier of the target user, and the attribute data of each candidate item comprises an identifier of a corresponding candidate item;
processing the attribute data of the target user and the attribute data of the candidate items to generate a target data set, wherein the target data set comprises an identification of the target user and a corresponding target first interaction node list, an identification of each candidate item in the candidate items and a corresponding target second interaction node list, the target first interaction node list is used for representing interaction information of the target user and other users or items, the first interaction node list comprises nodes which can be reached in N steps from the departure of the user, the target second interaction node list is used for representing interaction information of the candidate items and other items or users, and the second interaction node list comprises nodes which can be reached in N steps from the departure of the items, wherein N is one or more positive integers;
inputting the target data set into a scoring model to obtain scores of the target user on the candidate items, wherein the scoring model is obtained through training according to attribute data of a plurality of users, attribute data of a plurality of items and scoring data, the attribute data of each user in the plurality of users comprises an identifier of the corresponding user, the attribute data of each item in the plurality of items comprises an identifier of the corresponding item, and the scoring data comprises scores of each user in the plurality of users on one or more items in the plurality of items;
and determining a target recommended item according to the scores of the target user on the candidate items.
2. The method of claim 1, wherein the attribute data of the target user further comprises one or more of the following data: gender, height, weight, age, occupation, income, hobbies, education, the attribute data of each candidate item further comprising one or more of the following data: brand, color, size, price, reviews, taste, shelf life, icons.
3. The method of claim 1, wherein processing the attribute data of the target user and the attribute data of the plurality of candidate items to generate a target data set comprises:
according to the identification of the target user, determining a target first interaction node list corresponding to the target user in a target first interaction node list corresponding to the identification of each user in a plurality of pre-recorded users, and according to the identification of each candidate item, determining a target second interaction node list corresponding to each candidate item in a target second interaction node list corresponding to the identification of each candidate item in a plurality of pre-recorded candidate items;
and generating a target data set according to the identification of the target user, the target first interaction node list corresponding to the target user, the identification of each candidate item and the target second interaction node list corresponding to each candidate item.
4. The method of claim 1, wherein the scoring model comprises a feature learning model, a feedback learning model, and a neural network model;
inputting the target data set into a scoring model to obtain the scores of the target user on the candidate items, wherein the scoring comprises:
inputting the identifier of a target user in the target data set and the identifier of a candidate item j into the feature learning model to obtain a feature vector corresponding to the target user and a feature vector corresponding to the candidate item j, and inputting a target first interaction node list corresponding to the target user in the target data set and a target second interaction node list corresponding to the candidate item j into the feedback learning model to obtain an implicit feedback corresponding to the target user and an implicit feedback corresponding to the candidate item j, wherein the item j is any one of the candidate items;
inputting the feature vector corresponding to the target user, the feature vector corresponding to the candidate item j, the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j into a neural network model to obtain the score of the target user on the candidate item j.
5. The method according to claim 4, wherein the target first interactive node list comprises a multi-order target first interactive node list, the target second interactive node list corresponding to each candidate item comprises a multi-order target second interactive node list, the odd-order target first interactive node list in the multi-order target first interactive node list is used for representing interactive information of a target user and the item, the even-order target first interactive node list in the multi-order target first interactive node list is used for representing interactive information of the target user and other users, the odd-order target second interactive node list in the multi-order target second interactive node list is used for representing interactive information of the candidate item and the user, and the even-order target second interactive node list in the multi-order target second interactive node list is used for representing interactive information of the candidate item and other items;
inputting the feedback learning model into the target first interaction node list corresponding to the target user and the target second interaction node list corresponding to the candidate item j in the target data set to obtain the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j, including:
inputting the multi-order target first interactive node list corresponding to the target user and the multi-order target second interactive node list corresponding to the candidate item j in the target data set into the feedback learning model to obtain implicit feedback corresponding to the target user and implicit feedback corresponding to the candidate item j.
6. The method of claim 4, wherein the model parameters of the feedback learning model comprise: a weight of a feedback vector for each user of the plurality of users, a weight of a feedback vector for each item of the plurality of items;
inputting the feedback learning model into the target first interaction node list corresponding to the target user and the target second interaction node list corresponding to the candidate item j in the target data set to obtain the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j, including:
and inputting the identification of the target user in the target data set, the corresponding target first interactive node list, the identification of the candidate item j and the corresponding target second interactive node list into the feedback learning model to obtain the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j.
7. The method of claim 1, wherein determining a target recommended item based on the target user's scores for the plurality of candidate items comprises:
and determining a target recommended article with a score meeting a preset recommendation condition according to the scores of the target user on the candidate articles.
8. The method according to claim 7, wherein the determining, according to the scores of the target user for the candidate items, a target recommended item whose corresponding score meets a preset recommendation condition includes:
determining a preset number of target recommended articles with the largest score according to the scores of the target users for the candidate articles; alternatively, the first and second electrodes may be,
and determining the target recommended article with the corresponding score larger than a preset score threshold according to the scores of the target user on the candidate articles.
9. The method according to any one of claims 1-8, wherein the scoring model is trained by:
acquiring attribute data of the plurality of users, attribute data of the plurality of articles and the scoring data;
processing the attribute data of the users, the attribute data of the articles and the scoring data to obtain a training data set, wherein the training data set comprises an identifier of each user and a corresponding first interaction node list, an identifier of each article and a corresponding second interaction node list, and a score of each user for one or more articles in the articles, the first interaction node list is used for representing interaction information of the user and other users or articles, and the second interaction node list is used for representing interaction information of the articles and other articles or users;
and training the grading model according to the training data set.
10. The method of claim 9, wherein the attribute data for each of the plurality of users further comprises one or more of the following information: gender, height, weight, age, occupation, income, hobbies, educational history, the attribute data for each of the plurality of items further comprising one or more of the following data: brand, color, size, price, reviews, taste, shelf life, icons; the scoring data further comprises one or more of the following: operating time, current equipment used, discount conditions.
11. The method of claim 9, wherein said obtaining attribute data for said plurality of users, attribute data for said plurality of items, and said scoring data comprises:
obtaining a plurality of scoring records, wherein each scoring record in the plurality of scoring records comprises attribute data of a user u, attribute data of an article i and scoring data of the user u on the article i, the user u is any user in the plurality of users who score the article i excessively, and the article i is any article in the plurality of articles;
the processing the attribute data of the plurality of users, the attribute data of the plurality of articles, and the scoring data to obtain a training data set includes:
and processing the plurality of scoring records to obtain a training data set, wherein each training data in the training data set comprises an identifier of a user u and a corresponding first interactive node list, an identifier of an article i and a corresponding second interactive node list, and a score of the user u on the article i.
12. The method of claim 11, wherein the scoring model comprises a feature learning model, a feedback learning model, and a neural network model;
wherein training a scoring model according to the training dataset comprises:
inputting the identification of the user u and the identification of the article i into the feature learning model to obtain a feature vector corresponding to the user u and a feature vector corresponding to the article i, and inputting a first interactive node list corresponding to the user u and a second interactive node list corresponding to the article i into the feedback learning model to obtain implicit feedback corresponding to the user u and implicit feedback corresponding to the article i;
inputting the feature vector corresponding to the user u and the feature vector corresponding to the item i, the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i into the neural network model to obtain a prediction score;
and adjusting the feature learning model, the feedback learning model and the neural network model according to the prediction score and the scoring of the user u on the article i to obtain the trained scoring model.
13. The method of claim 12, wherein the first list of interaction nodes corresponding to user u comprises a multi-level first list of interaction nodes, wherein the second list of interaction nodes corresponding to item i comprises a multi-level second list of interaction nodes, and wherein the model parameters of the feedback learning model comprise: the order of a first interactive node list corresponding to the user u is the same as the order of the user feedback matrix, the order of a second interactive node list corresponding to the item i is the same as the order of the item feedback matrix, an odd-order first interactive node list in the multi-order first interactive node list is used for representing interactive information between the user and the item, an even-order first interactive node list in the multi-order first interactive node list is used for representing interactive information between the user and other users, an odd-order second interactive node list in the multi-order second interactive node list is used for representing interactive information between the item and the user, and an even-order second interactive node list in the multi-order second interactive node list is used for representing interactive information between the item and other items;
the inputting the first interactive node list corresponding to the user u and the second interactive node list corresponding to the item i into the feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i includes:
and inputting the multi-order first interactive node list corresponding to the user u and the multi-order second interactive node list corresponding to the item i into the feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i.
14. The method of claim 12, wherein the model parameters of the feedback learning model comprise: a weight of a feedback vector for each user of the plurality of users, a weight of a feedback vector for each item of the plurality of items;
the inputting the first interactive node list corresponding to the user u and the second interactive node list corresponding to the item i into the feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i includes:
and inputting the identification of the user u and the corresponding first interactive node list, the identification of the article i and the corresponding second interactive node list into the feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i.
15. An apparatus for recommending items, said apparatus comprising:
the system comprises an acquisition module, a storage module and a display module, wherein the acquisition module is used for acquiring attribute data of a target user and attribute data of a plurality of candidate items, the attribute data of the target user comprises an identifier of the target user, and the attribute data of each candidate item comprises an identifier of a corresponding candidate item;
a generating module, configured to process attribute data of the target user and attribute data of the candidate items, and generate a target data set, where the target data set includes an identifier of the target user and a corresponding target first interaction node list, an identifier of each candidate item in the candidate items and a corresponding target second interaction node list, the target first interaction node list is used to represent interaction information between the target user and other users or items, the first interaction node list includes nodes that can be reached in N steps from the user, the target second interaction node list is used to represent interaction information between the candidate item and other items or users, and the second interaction node list includes nodes that can be reached in N steps from the item, where N is one or more positive integers;
a scoring module, configured to input the target data set into a scoring model, so as to obtain scores of the target user on the multiple candidate items, where the scoring model is obtained by training according to attribute data of multiple users, attribute data of multiple items, and scoring data, the attribute data of each of the multiple users includes an identifier of a corresponding user, the attribute data of each of the multiple items includes an identifier of a corresponding item, and the scoring data includes scores of each of the multiple users on one or more items of the multiple items;
and the determining module is used for determining the target recommended item according to the scores of the target user on the candidate items.
16. The apparatus of claim 15, wherein the attribute data of the target user further comprises one or more of the following: gender, height, weight, age, occupation, income, hobbies, education, the attribute data of each candidate item further comprising one or more of the following data: brand, color, size, price, reviews, taste, shelf life, icons.
17. The apparatus of claim 15, wherein the generating means is configured to:
according to the identification of the target user, determining a target first interaction node list corresponding to the target user in a target first interaction node list corresponding to the identification of each user in a plurality of pre-recorded users, and according to the identification of each candidate item, determining a target second interaction node list corresponding to each candidate item in a target second interaction node list corresponding to the identification of each candidate item in a plurality of pre-recorded candidate items;
and generating a target data set according to the identification of the target user, the target first interaction node list corresponding to the target user, the identification of each candidate item and the target second interaction node list corresponding to each candidate item.
18. The apparatus of claim 15, wherein the scoring model comprises a feature learning model, a feedback learning model, and a neural network model;
wherein, the scoring module is used for:
inputting the identifier of a target user in the target data set and the identifier of a candidate item j into the feature learning model to obtain a feature vector corresponding to the target user and a feature vector corresponding to the candidate item j, and inputting a target first interaction node list corresponding to the target user in the target data set and a target second interaction node list corresponding to the candidate item j into the feedback learning model to obtain an implicit feedback corresponding to the target user and an implicit feedback corresponding to the candidate item j, wherein the item j is any one of the candidate items;
inputting the feature vector corresponding to the target user, the feature vector corresponding to the candidate item j, the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j into a neural network model to obtain the score of the target user on the candidate item j.
19. The apparatus according to claim 18, wherein the target first node list comprises a multi-level target first node list, the target second node list corresponding to each candidate item comprises a multi-level target second node list, an odd-level target first node list in the multi-level target first node list is used for indicating interaction information between the target user and the item, an even-level target first node list in the multi-level target first node list is used for indicating interaction information between the target user and other users, an odd-level target second node list in the multi-level target second node list is used for indicating interaction information between the candidate item and the user, and an even-level target second node list in the multi-level target second node list is used for indicating interaction information between the candidate item and other items;
the scoring module is configured to:
inputting the multi-order target first interactive node list corresponding to the target user and the multi-order target second interactive node list corresponding to the candidate item j in the target data set into the feedback learning model to obtain implicit feedback corresponding to the target user and implicit feedback corresponding to the candidate item j.
20. The apparatus of claim 18, wherein the model parameters of the feedback learning model comprise: a weight of a feedback vector for each user of the plurality of users, a weight of a feedback vector for each item of the plurality of items;
the scoring module is configured to:
and inputting the identification of the target user in the target data set, the corresponding target first interactive node list, the identification of the candidate item j and the corresponding target second interactive node list into the feedback learning model to obtain the implicit feedback corresponding to the target user and the implicit feedback corresponding to the candidate item j.
21. The apparatus of claim 15, wherein the determining module is configured to:
and determining a target recommended article with a score meeting a preset recommendation condition according to the scores of the target user on the candidate articles.
22. The apparatus of claim 21, wherein the determining module is configured to:
determining a preset number of target recommended articles with the largest score according to the scores of the target users for the candidate articles; alternatively, the first and second electrodes may be,
and determining the target recommended article with the corresponding score larger than a preset score threshold according to the scores of the target user on the candidate articles.
23. The apparatus according to any one of claims 15-22, wherein the obtaining module is further configured to:
acquiring attribute data of the plurality of users, attribute data of the plurality of articles and the scoring data;
the generation module is further configured to:
processing the attribute data of the users, the attribute data of the articles and the scoring data to obtain a training data set, wherein the training data set comprises an identifier of each user and a corresponding first interaction node list, an identifier of each article and a corresponding second interaction node list, and a score of each user for one or more articles in the articles, the first interaction node list is used for representing interaction information of the user and other users or articles, and the second interaction node list is used for representing interaction information of the articles and other articles or users;
the device further comprises:
and the training module is used for training the scoring model according to the training data set.
24. The apparatus of claim 23, wherein the attribute data for each of the plurality of users further comprises one or more of the following information: gender, height, weight, age, occupation, income, hobbies, educational history, the attribute data for each of the plurality of items further comprising one or more of the following data: brand, color, size, price, reviews, taste, shelf life, icons; the scoring data further comprises one or more of the following: operating time, current equipment used, discount conditions.
25. The apparatus of claim 23, wherein the obtaining module is configured to:
obtaining a plurality of scoring records, wherein each scoring record in the plurality of scoring records comprises attribute data of a user u, attribute data of an article i and scoring data of the user u on the article i, the user u is any user in the plurality of users who score the article i excessively, and the article i is any article in the plurality of articles;
the generation module is configured to:
and processing the plurality of scoring records to obtain a training data set, wherein each training data in the training data set comprises an identifier of a user u and a corresponding first interactive node list, an identifier of an article i and a corresponding second interactive node list, and a score of the user u on the article i.
26. The apparatus of claim 25, wherein the scoring model comprises a feature learning model, a feedback learning model, and a neural network model;
wherein the training module is configured to:
inputting the identification of the user u and the identification of the article i into the feature learning model to obtain a feature vector corresponding to the user u and a feature vector corresponding to the article i, and inputting a first interactive node list corresponding to the user u and a second interactive node list corresponding to the article i into the feedback learning model to obtain implicit feedback corresponding to the user u and implicit feedback corresponding to the article i;
inputting the feature vector corresponding to the user u and the feature vector corresponding to the item i, the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i into the neural network model to obtain a prediction score;
and adjusting the feature learning model, the feedback learning model and the neural network model according to the prediction score and the scoring of the user u on the article i to obtain the trained scoring model.
27. The apparatus of claim 26, wherein the first list of interaction nodes for user u comprises a multi-level first list of interaction nodes, wherein the second list of interaction nodes for item i comprises a multi-level second list of interaction nodes, and wherein the model parameters of the feedback learning model comprise: the order of a first interactive node list corresponding to the user u is the same as the order of the user feedback matrix, the order of a second interactive node list corresponding to the item i is the same as the order of the item feedback matrix, an odd-order first interactive node list in the multi-order first interactive node list is used for representing interactive information between the user and the item, an even-order first interactive node list in the multi-order first interactive node list is used for representing interactive information between the user and other users, an odd-order second interactive node list in the multi-order second interactive node list is used for representing interactive information between the item and the user, and an even-order second interactive node list in the multi-order second interactive node list is used for representing interactive information between the item and other items;
the training module is configured to:
and inputting the multi-order first interactive node list corresponding to the user u and the multi-order second interactive node list corresponding to the item i into the feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the item i.
28. The apparatus of claim 26, wherein the model parameters of the feedback learning model comprise: a weight of a feedback vector for each user of the plurality of users, a weight of a feedback vector for each item of the plurality of items;
the training module is configured to:
and inputting the identification of the user u and the corresponding first interactive node list, the identification of the article i and the corresponding second interactive node list into the feedback learning model to obtain the implicit feedback corresponding to the user u and the implicit feedback corresponding to the article i.
29. A device, comprising a processor and a memory, the processor configured to execute instructions stored in the memory; execution of the instructions by the processor causes the device to implement the method of any of claims 1-14.
30. A computer-readable storage medium comprising instructions that, when executed on a computer, cause the computer to perform the method of any of claims 1-14.
CN201711283557.0A 2017-12-07 2017-12-07 Method and device for recommending articles Active CN109903103B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201711283557.0A CN109903103B (en) 2017-12-07 2017-12-07 Method and device for recommending articles
PCT/CN2018/109590 WO2019109724A1 (en) 2017-12-07 2018-10-10 Item recommendation method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711283557.0A CN109903103B (en) 2017-12-07 2017-12-07 Method and device for recommending articles

Publications (2)

Publication Number Publication Date
CN109903103A CN109903103A (en) 2019-06-18
CN109903103B true CN109903103B (en) 2021-08-20

Family

ID=66751275

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711283557.0A Active CN109903103B (en) 2017-12-07 2017-12-07 Method and device for recommending articles

Country Status (2)

Country Link
CN (1) CN109903103B (en)
WO (1) WO2019109724A1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111178944B (en) * 2019-12-16 2023-05-05 贝壳找房(北京)科技有限公司 House source conversion rate prediction method and device, storage medium and equipment
CN112994923B (en) * 2019-12-18 2023-04-07 中国移动通信集团浙江有限公司 Network element selection method and device
CN111104599B (en) * 2019-12-23 2023-08-18 北京百度网讯科技有限公司 Method and device for outputting information
CN111259222B (en) * 2020-01-22 2023-08-22 北京百度网讯科技有限公司 Article recommendation method, system, electronic equipment and storage medium
CN111612581A (en) * 2020-05-18 2020-09-01 深圳市分期乐网络科技有限公司 Method, device and equipment for recommending articles and storage medium
CN113763075A (en) * 2020-07-17 2021-12-07 北京沃东天骏信息技术有限公司 Method, device, equipment and medium for pushing articles
CN114155051A (en) * 2020-09-04 2022-03-08 北京沃东天骏信息技术有限公司 Article display method and device, electronic equipment and storage medium

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8112720B2 (en) * 2007-04-05 2012-02-07 Napo Enterprises, Llc System and method for automatically and graphically associating programmatically-generated media item recommendations related to a user's socially recommended media items
CN103324690A (en) * 2013-06-03 2013-09-25 焦点科技股份有限公司 Mixed recommendation method based on factorization condition limitation Boltzmann machine
CN104699711B (en) * 2013-12-09 2019-05-28 华为技术有限公司 A kind of recommended method and server
CN105446972B (en) * 2014-06-17 2022-06-10 阿里巴巴集团控股有限公司 Searching method, device and system based on and fused with user relationship data
CN104331459B (en) * 2014-10-31 2018-07-06 百度在线网络技术(北京)有限公司 A kind of network resource recommended method and device based on on-line study
CN107369058A (en) * 2016-05-13 2017-11-21 华为技术有限公司 A kind of correlation recommendation method and server
CN106296305A (en) * 2016-08-23 2017-01-04 上海海事大学 Electric business website real-time recommendation System and method under big data environment
CN106897911A (en) * 2017-01-10 2017-06-27 南京邮电大学 A kind of self adaptation personalized recommendation method based on user and article
CN107169586A (en) * 2017-03-29 2017-09-15 北京百度网讯科技有限公司 Resource optimization method, device and storage medium based on artificial intelligence
CN107038609A (en) * 2017-04-24 2017-08-11 广州华企联信息科技有限公司 A kind of Method of Commodity Recommendation and system based on deep learning
CN107341687B (en) * 2017-06-01 2021-06-08 华南理工大学 Recommendation algorithm based on multi-dimensional labels and classification sorting
CN107316234A (en) * 2017-07-21 2017-11-03 北京京东尚科信息技术有限公司 Personalized commercial Forecasting Methodology and device

Also Published As

Publication number Publication date
CN109903103A (en) 2019-06-18
WO2019109724A1 (en) 2019-06-13

Similar Documents

Publication Publication Date Title
CN109903103B (en) Method and device for recommending articles
CN110458220B (en) Crowd orientation method, device, server and storage medium
CN110969516A (en) Commodity recommendation method and device
US10354184B1 (en) Joint modeling of user behavior
US10949000B2 (en) Sticker recommendation method and apparatus
CN110717099B (en) Method and terminal for recommending film
CN112231584B (en) Data pushing method and device based on small sample transfer learning and computer equipment
CN105159910A (en) Information recommendation method and device
CN109471978B (en) Electronic resource recommendation method and device
CN111159570B (en) Information recommendation method and server
CN110598120A (en) Behavior data based financing recommendation method, device and equipment
CN112528164B (en) User collaborative filtering recall method and device
CN113536105A (en) Recommendation model training method and device
CN115438787A (en) Training method and device of behavior prediction system
CN112269943B (en) Information recommendation system and method
CN109977979B (en) Method and device for locating seed user, electronic equipment and storage medium
CN115809374B (en) Method, system, device and storage medium for correcting mainstream deviation of recommendation system
WO2020135420A1 (en) Method and apparatus for classifying users
CN115795156A (en) Material recall and neural network training method, device, equipment and storage medium
CN115730217A (en) Model training method, material recalling method and device
CN116028708A (en) Training method and device for recommendation model
CN113128597B (en) Method and device for extracting user behavior characteristics and classifying and predicting user behavior characteristics
CN115640454A (en) Product recommendation method, system, electronic device and storage medium
CN108848152A (en) A kind of method and server of object recommendation
CN112307319A (en) Page generation method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant