IP Library Granted Patent US 12,141,852
Granted Patent B2
US 12,141,852 · App. 17/141,925 · Granted Nov 12, 2024

Methods for simultaneous learning of inputs and parameters on machine learning-based recommender systems

Inventor: Ramin Raziperchikolaei (Foster City, CA)
Assignee: Rakuten Group, Inc.
G06Q30/0631G06F18/2155G06F18/2193G06N3/08G06Q30/0282
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,141,852
App. No.
17/141,925
Granted
Nov 12, 2024
Kind
B2
Abstract

The present disclosure relates to a recommender system and method. Unlike known systems, which learn neural network parameters during training and fix the input vectors, the recommender system learns both the input vectors and machine learning model parameters during training. In one embodiment, the initial user and item input vectors are interaction vectors that are based on known and unknown user feedback. The non-zero elements of the interaction vectors correspond user-item pairs for which feedback is known, and the zero elements corresponding to user-item pairs for which feedback is unknown. The non-zero elements of the interaction vectors are learnable parameters during the training phase. The user and item vectors, as well as the model parameters, learned during the training phase are used in a prediction and recommendation phase to make product recommendations for a user.

Claims (45)

1. A method, performed by a computer system, for automatically recommending one or more items to a user using a machine learning model in which both input vectors and model parameters are learned during training, the method comprising:

performing the following with respect to a training phase for the machine learning model:

(a) obtaining user input vectors for a set of users and item input vectors for a set of items, wherein the user and item input vectors are created from user and item data in a training data set that includes known user feedback with respect to a subset of user/item pairs:

(b) training a machine learning model having one or more model parameters with the user and item input vectors, the training a machine learning model comprising:

mapping, by a set of encoding neural networks, the user and item input vectors to lower dimensional user and item vector representations, and

calculating, by a prediction neural network, feedback predictions based on combinations of the lower dimensional user and item vector representations to obtain predicted feedback for the users with respect to the items;

(c) updating the user and item input vectors and the model parameters of the machine learning model to minimize a difference between the predicted feedback and the known user feedback;

(d) repeating steps (b)-(c) for a number of iterations to learn both the input vectors and the model parameters for use in a recommendation and prediction phase, wherein the model parameters and input vectors updated in a previous iteration are used in a next iteration, and wherein a user input vector is learned for each of the users in the set of users and an item input vector is learned for each of the items in the set of items;

performing the following with respect to a prediction and recommendation phase:

(e) obtaining an input user vector learned in the training phase for a test user, wherein the test user is in the set of users;

(f) obtaining an input item vector learned in the training phase for an item unrated by the test user, wherein the item is in the set of items;

(g) further training the machine learning model trained in the training phase with the learned input vector for the test user and the learned input vector for the item, the further training the machine learning model comprising:

obtaining, based on the learned input vector for the test user and the learned input vector for the item, a predicted feedback for the test user with respect to the item;

(h) repeating steps (f)-(g) with respect to the test user and a plurality of items for which the test user has not provided feedback; and

(i) using the test user's predicted feedback for the plurality of items to recommend one or more items to the test user.

2. The method of claim 1 , wherein the user input vectors are user interaction vectors having zero and non-zero values and the item input vectors are item interaction vectors having zero and non-zero values, wherein the non-zero values of the user and item interaction vectors correspond to user-item pairs for which feedback is known, and wherein the non-zero values of the user and item interaction vectors are learnable parameters during the training phase.

3. The method of claim 1 , wherein the input vectors and the model parameters are updated alternatively in iterations of steps (b) and (c) such that the system performs the training and updating steps as follows:

training the machine learning model with the user and item input vectors to obtain the user's predicted feedback for the items;

updating the model parameters to minimize the difference between the predicted feedback and the known user feedback;

training the machine learning model with the user and item input vectors using the updated model parameters to obtain new feedback predictions;

updating the user and item input vectors to minimize the difference between the new feedback predictions and the known user feedback;

training the machine learning model with the new user and item input vectors to obtain further new feedback predictions;

updating the model parameters to minimize the difference between the further new feedback predictions and the known user feedback; and

repeating the training and updating steps for a number of iterations.

4. The method of claim 1 , wherein the machine learning model is a linear model or a set of one or more neural networks.

5. The method of claim 1 , wherein the updating step comprises calculating mean square errors between the predicted ratings and the corresponding known ratings.

6. The method of claim 1 , wherein the feedback is ratings.

7. The method of claim 1 , wherein the known user feedback is whether a user purchased an item, and the predicted feedback is a probability that a user would purchase an item.

8. A method, performed by a computer system, for training a machine learning model to recommend one or more items to a user, the method comprising:

obtaining user input vectors for a set of users and item input vectors for a set of items, wherein the user and item input vectors are created from user and item data in a training data set that includes known user feedback with respect to a subset of user/items pairs;

training a machine learning model having one or more model parameters with the user and item input vectors, the training a machine learning model comprising:

mapping, by a set of encoding neural networks, the user and item input vectors to lower dimensional user and item vector representations, and

calculating, by a prediction neural network, feedback predictions based on combinations of the lower dimensional user and item vector representations to obtain predicted feedback for the users with respect to the items;

updating the user and item input vectors and the model parameters of the machine learning model to minimize a difference between the predicted feedback and the known user feedback, wherein the input vectors and the model parameters are updated alternatively in iterations of the training and updating steps such that the system performs the training and updating steps as follows:

training the machine learning model with the user and item input vectors to obtain the user's predicted feedback for the items;

updating the model parameters to minimize the difference between the predicted feedback and the known user feedback;

training the machine learning model with the user and item input vectors using the updated model parameters to obtain new feedback predictions;

updating the user and item input vectors to minimize the difference between the new feedback predictions and the known user feedback;

training the machine learning model with the new user and item input vectors to obtain further new feedback predictions;

updating the model parameters to minimize the difference between the further new feedback predictions and the known user feedback; and

repeating the training and updating steps for a number of iterations to learn both the input vectors and the model parameters that optimize feedback predictions, wherein the model parameters and input vectors updated in a previous iteration are used in a next iteration and wherein a user input vector is learned for each of the users in the set of users and an item input vector is learned for each of the items in the set of items.

9. The method of claim 8 , wherein the user input vectors are user interaction vectors having zero and non-zero values and the item input vectors are item interaction vectors having zero and non-zero values, wherein the non-zero values of the user and item interaction vectors correspond to user-item pairs for which feedback is known, and wherein the non-zero values of the user and item interaction vectors are learnable parameters during the training phase.

10. The method of claim 8 , wherein the machine learning model is a linear model or a set of one or more neural networks.

11. The method of claim 8 , wherein the feedback is ratings.

12. The method of claim 8 , wherein the known user feedback is whether a user purchased an item, and the predicted feedback is a probability that a user would purchase an item.

Assignments (2)
CHANGE OF NAME Recorded Jun 24, 2021
From: RAKUTEN, INC.
To: RAKUTEN GROUP, INC.
Reel/Frame 056676/0072 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 5, 2021
From: RAZIPERCHIKOLAEI, RAMIN
To: RAKUTEN, INC.
Reel/Frame 054818/0270 →
Continuity (2)
Provisional Application 63089677 · Oct 9, 2020
Related Publication 20220114643A1 · Apr 14, 2022
Cited By (1)
US 12,339,915