Creating and maintaining solutions
For custom datasets groups, an Amazon Personalize solution is the combination of an Amazon Personalize recipe, customized parameters and one or more solution versions (trained models). This AWS solution allows you to declare solution configuration using the same parameters as the Amazon Personalize API, and set schedules for solution version retraining. To configure Maintaining Personalized Recommendations with Machine Learning, you can update the configuration file (the datasets section from the above configuration has been omitted for brevity, but are required):
Note
All configuration parameters for solution creation are supported. For information on additional parameters to supply when configuring an Amazon Personalize solution, use the parameters from the CreateSolution API documentation in the Amazon Personalize Developer Guide. The datasetGroupARN
is inferred by the solution and must not be provided.
{ "datasetGroup": { "serviceConfig": { "name": "customer_1_datasetgroup" }, "workflowConfig": { "schedules": { "import": "cron(0 */6 * * ? *)" } } }, "datasets": { "see": "above" }, "solutions": [ { "serviceConfig": { "name": "customer_1_user_personalization", "recipeArn": "arn:aws:personalize:::recipe/aws-user-personalization", "tags": [{"tagKey": "config", "tagValue": "config-011"}] }, "workflowConfig": { "schedules": { "full": "cron(30 0 * * ? *)", "update": "cron(0 * * * ? *)" } }, "campaigns": [ { "serviceConfig": { "name": "customer_1_user_personalization_cpn", "minProvisionedTPS": 1, "tags": [{"tagKey": "department", "tagValue": "finance"}] } } ] } ] }
When using the aws-user-personalization
recipe, the service automatically updates the solution version in the background every 2 hours (at no additional cost). This auto-update process brings in new items added since the last update so that they can start being recommended to users. If the 2 hour auto-update is not frequent enough for introducing new items, you can have the Maintaining Personalized Experiences with Machine Learning solution create a new solution version on a cron schedule specified at the path solutions[idx].workflowConfig.schedules.update
. An update retraining does not fully retrain the model. To occasionally create a new solution version (a full retraining to recalculate weights across the model based on all data), specify a cron schedule at the path solutions[idx].workflowConfig.schedules.full
. As of September 2021, Amazon Personalize recommends training a new model weekly. The schedules specified in the example configuration have FULL training performed daily at 00:30 UTC and update training performed hourly.
Note
With User-Personalization, Amazon Personalize automatically updates the latest model (solution version) every two hours behind the scenes to include new data. There is no cost for these automatic updates. When solution versions are updated (via FULL or UPDATE training) the campaigns associated with the solution are updated to use the new solution version. This will result in a training cost to create a new solution version. Additonally, tags are optional. .