Discover Recommendation Engine Best Practices with Amazon Personalize- AWS Online Tech Talks
Key Takeaways
Discusses best practices for using Amazon Personalize for recommendation engines
Full Transcript
foreign [Music] hi everyone my name is Dan Foley I'm a senior product manager at AWS and today we will discuss best practices when using Amazon personalized today we're going to cover uh Amazon personalize a quick overview of the service we'll do some use case mapping I will demo our data analysis and we'll talk about sort of next steps for getting started on your own foreign personalize enables developers to quickly build and deploy personalized user experiences at scale our service is powered by the same ml technology that is used by amazon.com but requires no ml expertise of your own Amazon personalized makes it easy to integrate into existing websites apps or outbound marketing tools and is used by 1600 Global customers across numerous different Industries to boost engagement and grow Revenue let me do a quick overview of how Amazon personalized works building a great personalized experience starts with data personalizes ml models are powered by three types of data sets first is interactions data this is information about how your users interact with items in your catalog so it can include things like clicks views or purchases next we consider items so this is metadata about the items in your catalog this can be the category your items fit into their price their description and finally we include information about users this can be psychographic or demographic information about users like their age location or the tier of subscription that they belong to you're able to share this data with Amazon personalized using S3 or our streaming apis next you select what type of personalization model you'd like to train we call these we call these personalized recipes the combination of your data set and your recipe is what we call a solution once you train a solution you're able to access your recommendations via our streaming apis or via batch image jobs creating a solution is Central to getting started with Amazon personalized so today as we talk about best practices we're going to map use cases to recipes and we'll talk about ensuring that your data sets are well prepared to Train Your solution as we start to prepare our solution we want to think about what types of use cases we're going to use Amazon personalized for and there's essentially four types of recipes that we're going to cover today that can map to your business's use cases so first is recommending generating recommendations that are directly targeted to each user these are commonly used on home pages so generating carousels of recommendations on a home page they're used frequently for product recommendations in email marketing campaigns and they're excellent for showing products to new users and new content to users as well um when you think about these types of recipes they would be the types of carousels that would say recommended for Dam generating these types of user experiences is Central to Amazon personalized is a very common use case that our customers start with and to produce these you'll use our Amazon personalized recipes first is user personalization this is a custom recipe that allows you a lot of flexibility in how you design and optimize these user experiences the next two options are what we call domain optimized use uh domain optimized recommenders and these are targeted for applications in e-commerce and video on demand so the first is recommended for you and the second is top picks this is a very easy way for you to generate carousels that do exactly that so if you're looking for a carousel that's specifically recommended for you you'll be able to use these domain optimized recommenders same with top picks for you thank you the next uh the next common use cases that we see from our customers is one they want to personalize a curated list so frequently our customers have some content that their editors have have curated they have uh content that's on sale and they want to display all of these options to their customers but they want to make sure that whatever their customer sees first is the content that's most relevant to them so we see a lot of applications where they're sorting an entire product category they're taking a playlist and optimizing what order that playlist is played in for for a specific user they're they're also using it to re-rank search results so when you do a search query and you have a set of results you can apply Amazon personalize on top of that so that the results are ordered in a way that's tailored to an individual user and for that we have one very specific recipe that we call a personalized ranking generating these types of applications with Amazon personalized is easy we have a handful of different options to to generate this type of application so first is our custom recipe known as similar items but we also have some domain optimized recommenders as well first is first ones are tailored towards e-commerce applications again so this is customers who viewed X also viewed and then frequently bought together so again these are generating carousels that do exactly as described there one is powered by the view event so customers who also viewed as powered by view interactions and frequently bought together is powered by purchase interactions the next is um the video on demand application so video on demand optimized recommenders and there's two options there because you watched X and more like why so the first one looks at the watch event and the second one is looking at interactions associated with with a given piece of content so finally to wrap this up we look at user segmentation this is commonly used when our customers are looking to Target messaging to the users that are going to be most interested in a particular item or a particular category so really commonly used when you want to identify which users you're going to send outbound marketing campaigns to it's excellent for highlighting sales and promotions to the individual users who are most likely to participate in that and actually purchase what's on sale and it's great for acquiring users for new products or new categories there's two recipes that we offer for this type of segmentation the first is item Affinity so given a particular item what users will be most interested in it the second is item attribute affinity and this is when you take an attribute about the item so that say that category or the genre and use that to generate a list of users that will be most interested in that recipe that wraps up our use case mapping once we have our use cases we're going to want to bring data to personalize and data preparation is a really important step in the process that we've made it as easy as possible to perform just like any ml model uh data quality is really important to personalize and so personalized has made it as easy as possible to understand the qualities of your data and identify any needs for troubleshooting to see if there's any gaps in the data before going through the process of training your models I'm gonna jump to a uh demo of our product um okay so what I've done here is I've jumped into the Amazon personalized console and what you'll see is I'm doing a little bit of a cooking show demo and I've brought three data sets to the service already so I have our items data set our users data set and our interactions data set what you'll see very shortly is that these data sets were specifically designed to be bath so we know that these data sets are inadequate they're not going to train a good model and what we'll look at is how we can identify that within Amazon personalized from here I'm going to navigate over to our data analysis let me Orient you to what we're looking at first when you jump into Data analysis you'll have the option to run uh run an analysis once that's performed you'll get a set of insights these are rules driven insights based on statistics that we're looking for in your data so we see and have helped customers clean up a lot of different data challenges and so what we've done is we've tried to mechanize that and make it easy for you to do it on your own without requiring any sort of support to sort out what what actions you need to take to sort of improve your data if we go below the insights we'll see statistics about our data sets so our items data set will first see some overall statistics on the data set and we can also go into column level statistics as well so I can look at say Item ID and I can see information about the completeness the number of unique values what type of data set or what type of data column it is so we can see that's a string and what we're going to do here is we really want to make sure that these statistics align with what we expect so if there's anything that doesn't look right if you have 10 000 seems like a really wrong number for the number of items in your data set that's going to be something that we want to identify same with the overall statistics so we see that there's 10 000 rows and 10 000 unique items if we're looking at an items data set and say we had 10 000 rows and only 10 unique items you know there would be something that would be alarming that you know there's something a miss here I'm going to dig into the interactions data set as well here we can see information about the number of rows the number of unique users the number of unique items and the number of unique events and there's some cert there's some interesting statistics in here that we're going to start seeing driven from the insights so the first thing that we're going to see is some warnings about the completeness of our data and particularly we see that the column called description is uh has a lot of sparsity so if we go back to these column statistics for the items data set we can see here to description is only one percent complete and so what we know is that the description is used by Amazon personalized we have an NLP model that will look at the description and inform our model based on the content in that description but the fact that it's uh very sparse means that it likely won't have a strong weight on the model itself so we want to check to make sure that there's no leakage of data there's no reason not our description column is is so uh so sparse the next thing that we're going to see here is a couple insights that are telling us that we're not meeting the minimum requirements for personalize so the first thing is that our interactions data set only has 1 000 interactions the next thing that we're going to see on our list here is that there's not sufficient data to actually train a model in Amazon personalized and the first thing that we see is that the interactions data set doesn't contain enough interactions so Amazon personalized requires a minimum of 1 000 interactions and in our case we only have 885. so there are a couple ways that we can remedy this um one way is to import more historic data so if you've uploaded your data in bulk and only uploaded us uh some more recent data we can look at a longer history and capture more data points another thing is we can look for different sources of data or we can expand the locations where we're tracking users in the interactions data so a couple options to remedy this but we're going to identify early on in the cycle that we need to bring more interactions data to train a sufficient model the next thing that we see here is that our interactions data set only has one unique user with more than two interactions so if we go back to our interactions data set we can see that while we have 27 unique users not all of those unique users have multiple interactions we want to see a string of interactions for each user that's what informs the model and and tells our model how our users behave and so in this case we we want to see at least 25 users that have more than two interactions and again we can think about the same remediation uh approaches to Gathering more data here so we can look at more historical data where we can look for for other sources of data as well if I go to the second page my insights I start with two here and these two uh cover the overlap between our three data sets so if we remember our interactions data set is information about how our users interact with items and what these two insights are telling me is that the interactions don't have strong coverage of the items in the users in those respective data sets what this is telling me is that 99 of the items in the items data set have no interactions in our interactions data set so this is something we see pretty commonly a lot of times it's a mismatching ID so in some cases our customer will have an ID that's used in the items data set that doesn't align with what's in the interactions data set and with something that's this high of a percentage that that's frequently the case so we want to go back and make sure that there's not any data missing from our interactions data set and there's no sort of mismatching or typos that are causing this problem um and what we see here in the second one is that 64 of our users and our users data set have no interactions in the interactions data set so what personalized will do in these cases is those users will receive recommendations for popular items and as they begin interacting with items we'll sort of understand their pattern of interactions and respond with recommendations as a result of those new interactions but before we do that we want to make sure that there's no data missing again that there's no mismatching of IDs between the two data sets because we want to make sure that as many of those users have interactions history as possible to generate a highly performant model um let me skip over a couple of these um one of the interesting ones that we have in here is outliers so in this case we have a um a column called event value that has outliers outliers can be a big issue they can also not be an issue um and so we want to go and check to make sure that this isn't an issue and so I'm going to go look for event value and our interactions data set in this case I'm going to go to our column level statistics look at event value and what I can see is the Min and the max so if we see that the Min here is a negative 56 that's likely something that we wouldn't want to see so if we expect the minimum to be zero or if we expect a certain maximum we want to make sure that these are are in the realm of possibilities um it is okay to have outliers uh frequently customers bring data that has outliers and they'll use that specifically for filtering so it may not have a an exact normal profile but it's something to be aware of and something that you can easily check within the Amazon personalized console let me jump back to our presentation so as you can see the data analysis is an important step in ensuring that personalized is using the data that you expect to be sending to it and it's also important to understand how your data will impact the performance of of personalized models we just demoed this prop this uh feature to one of our customers audio abios a software company that uses personalized to generate product recommendations for Shopify storefronts and during the demo in a matter of minutes they were able to identify and troubleshoot a column of data that was unexpectedly sparse this is something that can go unnoticed if you skip the data analysis step and may have impacts to the the quality of your recommendations going forward so definitely something that you don't want to skip and something that you will not optimize to make sure that your data is as performant as possible um that wraps up our overview of best practices in mapping your business use cases to Amazon personalizes recipes and our coverage of best practices uh getting started with data preparation we encourage you to come try personalize we have an option here on the left that is uh get started for free you can try Amazon personalize with our free tier for the first two months and we have some additional resources on the right here with some additional information more details on getting your data prepared and getting ready to use Amazon personalized uh thank you everyone uh for the attention and your time today have a good day [Music] [Music]
Original Description
Personalization is everywhere. Companies have the opportunity to improve user engagement and increase sales conversions by using predictive personalization. But not all recommendation systems are created equal. Amazon Personalize enables you to deliver highly relevant recommendations using proven Machine Learning (ML) technology. In this tech talk, we discuss best practices when using Amazon Personalize, setting up for success. Join us to discover new feature capabilities and how to get started implementing a custom personalization engine in days—not months—with no ML expertise required.
Learning Objectives:
* Objective 1: Get started with Amazon Personalize and learn how to build your own recommendations
* Objective 2: Learn how to improve the quality of your data when using Amazon Personalize
* Objective 3: Learn about the latest Amazon Personalize features and capabilities
***To learn more about the services featured in this talk, please visit: https://aws.amazon.com/personalize
****To download a copy of the slide deck from this webinar visit: https://pages.awscloud.com/Discover-Recommendation-Engine-Best-Practices-with-Amazon-Personalize_2023_0306-OTT-OD-MCL_OD Subscribe to AWS Online Tech Talks On AWS:
https://www.youtube.com/@AWSOnlineTechTalks?sub_confirmation=1
Follow Amazon Web Services:
Official Website: https://aws.amazon.com/what-is-aws
Twitch: https://twitch.tv/aws
Twitter: https://twitter.com/awsdevelopers
Facebook: https://facebook.com/amazonwebservices
Instagram: https://instagram.com/amazonwebservices
☁️ AWS Online Tech Talks cover a wide range of topics and expertise levels through technical deep dives, demos, customer examples, and live Q&A with AWS experts. Builders can choose from bite-sized 15-minute sessions, insightful fireside chats, immersive virtual workshops, interactive office hours, or watch on-demand tech talks at your own pace. Join us to fuel your learning journey with AWS.
#AWS
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from AWS Developers · AWS Developers · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Using Microsoft Active Directory across On-premises and Cloud Workloads
AWS Developers
What is Cloud Computing with AWS? | Hebrew Webinar
AWS Developers
Best Practices for Getting Started with AWS | Hebrew Webinar
AWS Developers
Best Practices for Using AWS Identity and Access Management (IAM) Roles
AWS Developers
Building Scalable Web Apps | Hebrew Webinar
AWS Developers
Dev & Test on the AWS Cloud | Hebrew Webinar
AWS Developers
Storage & Backup on AWS | Hebrew webinar
AWS Developers
Disaster Recovery on AWS | Hebrew Webinar
AWS Developers
AWS Israel News | Episode 1
AWS Developers
Security Best Practices on AWS | Hebrew Webinar
AWS Developers
Ready: Introduction to AI on AWS | Hebrew Webinar
AWS Developers
Set: What is ML for developers? | Hebrew Webinar
AWS Developers
Go!: Building your own ChatBot with Amazon Lex | Hebrew Webinar
AWS Developers
And Beyond: Amazon Sagemaker | Hebrew Webinar
AWS Developers
Building API-Driven Microservices with Amazon API Gateway - AWS Online Tech Talks
AWS Developers
Understanding AWS Secrets Manager - AWS Online Tech Talks
AWS Developers
Best Practices for Building Enterprise Grade APIs with Amazon API Gateway - AWS Online Tech Talks
AWS Developers
Build, Train and Deploy Machine Learning Models on AWS with Amazon SageMaker - AWS Online Tech Talks
AWS Developers
AWS Israel News | Episode 2 | re:Invent
AWS Developers
AWS Floor28 News - January
AWS Developers
AWS Floor28 News - February - Hebrew
AWS Developers
AWS Floor28 News - March - Hebrew
AWS Developers
AWS Floor28 News - April - Hebrew
AWS Developers
AWS Floor28 News - May - Hebrew
AWS Developers
Authentication for Your Applications: Getting Started with Amazon Cognito - AWS Online Tech Talks
AWS Developers
AWS Floor28 News - June - Hebrew
AWS Developers
AWS Floor28 News - July - Hebrew
AWS Developers
Enriching your app with Image Recognition and AWS AI Services - AWS Webinar - Hebrew
AWS Developers
Personalize, Forcast, and Textract - AWS Webinar - Hebrew
AWS Developers
Managing Your ML Development Lifecycle with Amazon SageMaker - AWS Webinar - Hebrew
AWS Developers
Running your ML code in Amazon Sagemaker - AWS Webinar - Hebrew
AWS Developers
Get Started in Minutes with Amazon Connect in Your Contact Center - AWS Online Tech Talks
AWS Developers
AWS Floor28 News - August - Hebrew
AWS Developers
AWS Floor28 News - September - Hebrew
AWS Developers
Deep Dive on Amazon EventBridge - AWS Online Tech Talks
AWS Developers
Advanced Serverless Orchestration with AWS Step Functions - AWS Online Tech Talks
AWS Developers
Living on the Edge - an Introduction to Amazon CloudFront and Lambda@Edge - Hebrew Webinar
AWS Developers
AWS Floor28 News - October - Hebrew - YouTube
AWS Developers
What's New with AWS Storage - AWS Online Tech Talks
AWS Developers
How to Build a Compelling Migration Business Case Using TSO Logic - AWS Online Tech Talks
AWS Developers
Configuring and Managing Amazon S3 Replication - AWS Online Tech Talks
AWS Developers
AWS Floor28 News - November - Hebrew
AWS Developers
Using Relational Databases with AWS Lambda - Easy Connection Pooling - AWS Online Tech Talks
AWS Developers
AWS Floor28 News - December 2019 - Hebrew
AWS Developers
AWS Floor28 News - January 2020 - Hebrew
AWS Developers
Top 10 Data Migration Best Practices - AWS Online Tech Talks
AWS Developers
How to Use Azure Active Directory with AWS SSO - AWS Online Tech Talks
AWS Developers
AWS Tips & Tricks - Amazon Redshift Advisor - Hebrew
AWS Developers
AWS Tips & Tricks - Amazon Redshift Elastic Resize - Hebrew
AWS Developers
AWS Tips & Tricks - Amazon Redshift Spectrum - Hebrew
AWS Developers
AWS Tips & Tricks - Savings Plans & Cost Explorer - Hebrew
AWS Developers
AWS Tips & Tricks - Amazon Redshift Concurrency Scaling - Hebrew
AWS Developers
AWS Tips & Tricks - Training Models with Amazon SageMaker - Hebrew
AWS Developers
AWS Tips & Tricks - Auto Model Tuning with Amazon SageMaker - Hebrew
AWS Developers
AWS Tips & Tricks - Amazon Comprehend - Hebrew
AWS Developers
Understanding High Availability and Disaster Recovery Features for Amazon RDS for Oracle
AWS Developers
Amazon Forecast – Forecasting - From Months to Days (Hebrew)
AWS Developers
Visualize your data with Amazon QuickSight (Hebrew)
AWS Developers
Amazon Kendra (Hebrew)
AWS Developers
AWS Floor28 News - AI/ML Special Edition
AWS Developers
More on: ML Pipelines
View skill →Related Reads
📰
📰
📰
📰
Terraform Cloudflare DNS Checklist Before Every Apply
Dev.to · Oleksandr Kuryzhev
Building a Windows Laptop Monitoring Agent with Webex and Email Alerts
Dev.to · sam codex
What Is Infrastructure as Code? A Beginner's Guide
Dev.to · Muskan Bandta
I just released SKTR, a deterministic architecture review CLI
Dev.to · Pablo Rubianes 🇺🇾
🎓
Tutor Explanation
DeepCamp AI