Recommendations are everywhere and they are fundamental to essentially every business on the planet. From providing the shows and movies you should watch, the books and articles you should read, the products you should purchase, or the people you should date making good recommendations can make or break your business. Netflix wants to recommend you movies and shows you will watch. Stitch Fix wants to recommend you clothes you will wear. NerdWallet wants to recommend you financial products that will improve your life and that you will be approved for, Tinder wants to recommend you a significant other, and Amazon wants to recommend you... well everything. In this course, we will take a look at what should be considered when building your own recommendation system and how you can get started building your own recommendation systems using Python.
Josh Bernhard has been sharing his passion for data science with others for more than a decade. He found his passion for teaching while pursuing a PhD in Statistics at Iowa State University. He then went on to teach graduate and undergraduate courses as a part of the Business Analytics program at the University of Colorado. Before jumping full time into industry, he worked as the Curriculum Lead for the School of Data Science at Udacity, where he built data science courses that train data scientists around the world.
You will understand the different methods you might use to make recommendations
Understand common difficulties with building effective recommendation systems
How to deploy your recommendations
How to evaluate whether your recommendations are effective
Module 1: Getting Started
- What is a recommendation system?
- Types of recommender systems.
- Collaborative Filtering Recommenders
- Demographic Recommenders
- Content Based Recommenders
- Utility Based Recommenders
- Knowledge Based Recommenders
- Business Cases for Recommendations
- Increased Diversity
- The Cold Start Problem Module
Module 2: What data should I use?
- Data Sources
- User-item data (ratings)
- User data (surveys)
- Item data (text, product, etc.)
- Knowledge data (user filters)
- Feature Engineering
- Sparse vs. Dense Matrix Representations
- Standardizing and Normalizing
- Encoding Categorical Data
- Encoding Text Data
- Missing Values
- Outliers Module
Module 3: How do I find relevant recommendations?
- Measures of Similarity
- Pearson's Correlation Coefficient
- Cosine Similarity
- Spearman's Correlation Coefficient
- Jaccard Similarity
- Collaborative Filtering
- User-user collaborative filtering
- Item-item collaborative filtering
- Matrix Factorization
- Latent Factors
- FunkSVD Module
Module 4: How do I know if my recommendations are good?
- Evaluating your recommendations
- train-test split
- classification metrics
- regression metrics
- offline vs. online evaluation methods
- The cold start problem
- Storing your model(s) for future use
This course is for current and aspiring Data Scientists, Data Analysts Machine Learning Engineers and AI Product Managers
Knowledge of following tools and concepts is useful:
Familiarity with Jupyter notebooks and
Basics of pandas dataframes
Understanding of matplotlib and numpy