The Personalized-Ranking recipe generates personalized rankings of items.
A personalized ranking is a list of recommended items that are re-ranked for a specific user. This is useful if you have a collection of ordered items, such as search results, promotions, or curated lists, and you want to provide a personalized re-ranking for each of your users.
To train a model, the Personalized-Ranking recipe uses the Interactions dataset from a dataset group. A dataset group is a set of related datasets, which can include the Users, Items, and Interactions datasets. To get a personalized ranking, use the GetPersonalizedRanking API.
If you provide items without interactions data for ranking, Amazon Personalize will return these items without a recommendation score in the GetPersonalizedRanking API response.
This recipe has the following properties:
The following table describes the hyperparameters for the Personalize-Ranking recipe. A hyperparameter is an algorithm parameter that you can adjust to improve model performance. Algorithm hyperparameters control how the model performs. Featurization hyperparameters control how to filter the data to use in training. The process of choosing the best value for a hyperparameter is called hyperparameter optimization (HPO). For more information, see Hyperparameters and HPO.
The table also provides the following information for each hyperparameter:
|hidden_dimension||The number of hidden variables used in the model. Hidden variables recreate users’ purchase history and item statistics to generate ranking scores. Specify a greater number of hidden dimensions when your Interactions dataset includes more complicated patterns. Using more hidden dimensions requires a larger dataset and more time to process. To decide on the optimal value, use HPO. To use HPO, set
|bptt||Determines whether to use the back-propagation through time technique. Back-propagation through time is a technique that updates weights in recurrent neural network-based algorithms. Use
|recency_mask||Determines whether the model should consider the latest popularity trends in the Interactions dataset. Latest popularity trends might include sudden changes in the underlying patterns of interaction events. To train a model that places more weight on recent events, set
|min_user_history_length_percentile||The minimum percentile of user history lengths to include in model training. History length is the total amount of data about a user. Use
|max_user_history_length_percentile||The maximum percentile of user history lengths to include in model training. History length is the total amount of data about a user. Use