Amazon Personalize is a machine learning service that allows you to build and scale recommendation/personalization models in a quick and effective manner. The content below is designed to help you build out your first models for your given use case and makes assumptions that your data may not yet be in an ideal format for Amazon Personalize to use.
This repository assumes a base familiarity with the service and if you have not already done so it is recommended that you use the getting-started material below.
If you are not familiar with Amazon Personalize, you can learn more about the service on these pages:
By the end of this Immersion Day, you should have picked up the following skills:
- How to map datasets to Amazon Personalize.
- Which models or recipes are appropriate for which use cases.
- How to build models in a programmatic fashion.
- How to interpret model metrics.
- How to deploy models in a programmatic fashion.
- How to obtain recommendations from Personalize.
- Deploying your working environment [see below]
- Data Layer -
01_Data_Layer.ipynb
- Training Layer -
02_Training_Layer.ipynb
- Inference Layer -
03_Inference_Layer.ipynb
- Operations Layer -
04_Operations_Layer.ipynb
- Clean Up -
05_Clean_Up.ipynb
As mentioned above, the first step is to deploy a CloudFormation template that will perform much of the initial setup work for you. In another browser window or tab, login to your AWS account. Once you have done that, open the link below in a new tab to start the process of deploying the items you need via CloudFormation.
Follow along with the screenshots below if you have any questions about deploying the stack.
Start by clicking Next
at the bottom like this:
On this page you have a few options:
- Enter a Stack name to something relevant like
AmazonPersonalizeImmersionDay
. - Change the SageMaker notebook instance name (optional).
- Alter the SageMaker notebook EBS volume size, default is 64GB.
- Select the industry domain you wish to use for the Immersion Day (Media, Retail, or CPG). Datasets and notebooks for the selected industry will be deployed in the SageMaker notebook instance.
When you are done click Next
at the bottom.
This page is a bit longer, so scroll to the bottom to click Next
. All of the defaults should be sufficient to complete the POC, if you have custom requirements, alter as necessary.
Again scroll to the bottom, check the box to enable the template to create new IAM resources and then click Create Stack
.
For a few minutes CloudFormation will be creating the resources described above on your behalf it will look like this while it is provisioning:
Once it has completed you'll see green text like below indicating that the deployment has completed:
Now that your environment has been created go to the service page for SageMaker by clicking Services
in the top of the console and then searching for SageMaker
and clicking the service.
From the SageMaker console, scroll until you see the green box indicating now many notebooks you have in service and click that.
On this page you will see a list of any SageMaker notebooks you have running, click the Open JupyterLab
link on the Amazon Personalize Immersion Day notebook you have created.
This will open the Jupyter environment for your Immersion Day; think of it as a web based data science IDE if you are not familiar with it.
For additional Instructions please visit our Amazon Personalize Immersion Day Workshop Website
Finished with the Immersion Day? If you want to delete all the resources created in your AWS account while following along with these notebooks, please see the 05_Clean_Up.ipynb
notebook. It will help you identify all of the Personalize resources deployed in your account and shows you how to delete them.
See CONTRIBUTING for more information.
This project is licensed under the Apache-2.0 License.