Recommendation system using improved neural network
AssigneeAmazon Technologies, Inc.
InventorsRejith George Joseph, Oleg Rybakov
Life of this patent
Estimating the term…
Abstract
Some aspects of the present disclosure relate to generating and training a neural network by separating historical item interaction data into both inputs and outputs. This may be done, for example, based on date. For example, a neural network machine learning technique may be used to generate a prediction model using a set of inputs that includes both a number of items purchased by a number of users before a certain date as well as some or all attributes of those items, and a set of outputs that includes the items purchased after that date. The items purchased before that date and the associated attributes can be subjected to a time-decay function.
Claims10
A non-transitory computer readable medium storing a computer-executable module that, when executed by a computing system comprising one or more processors, causes the computing system to perform a process comprising:
- obtaining first training data representing a plurality of user-item interaction events during a predetermined timeframe, each user-item interaction event comprising an interaction between a human user of an electronic catalog and a representation of one of a plurality of items in the electronic catalog;
- obtaining second training data representing a plurality of attributes associated with each of the plurality of user-item interaction events;
- assigning, to an input group:
- a first subset of the plurality of items associated with a less recent subset of the plurality of user-item interaction events occurring within a first window between a beginning of the predetermined timeframe and a data split time, and
- a subset of the plurality of attributes associated with the less recent subset of the plurality of user-item interaction events, and
- assigning, to an expected output group, a second subset of the plurality of items associated with user-item interaction events occurring within a second window between the data split time and an end of the predetermined timeframe;
- training a machine learning model to predict the expected output group based on the input group, wherein training the machine learning model comprises (1) providing the input group to input layer nodes of a neural network, and (2) providing the expected output group to output layer nodes of the neural network;
- obtaining data representing at least a first item and a second item available in the electronic catalog;
- and
- generating, using the machine learning model and the data representing the first item and the plurality of other items available in the electronic catalog, a score reflecting a likelihood that a user interacting with the first item will also interact with the second item.
A computer-implemented method, comprising:
- maintaining user-specific event histories for each of a plurality of users of an electronic catalog, each event history corresponding to a respective user and comprising event data representing user-item interaction events performed by the user, wherein the event data for each user-item interaction event includes an identifier of a catalog item corresponding to the event and a time of the user-item interaction;
- dividing each user-specific event history such that user-item interaction events that occurred before a split time are allocated exclusively to an input group and user-item interaction events that occurred after the split time are allocated exclusively to an expected output group;
- training a neural network to predict user-item interaction events falling in the expected output group, wherein training the neural network comprises (1) providing, to input layer nodes of the neural network, identifiers and attributes of catalog items represented in the input group, and (2) providing, to output layer nodes of the neural network, identifiers of catalog items represented in the expected output group;
- and
- generating, with the trained neural network, a score representing a likelihood that a user that interacts with a particular first catalog item will also interact with a particular second catalog item;
- said method performed by execution of program instructions by a computing system.
Dependencies are inferred from the claim text.