Building Recommender Systems with Machine Learning and AI

Building Recommender Systems with Machine Learning and AI

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 10 Hours | 4.58 GB

How to create recommendation systems with deep learning, collaborative filtering, and machine learning.

New! Updated for Tensorflow 2, Amazon Personalize, and more.

Learn how to build recommender systems from one of Amazon’s pioneers in the field. Frank Kane spent over nine years at Amazon, where he managed and led the development of many of Amazon’s personalized product recommendation technologies.

You’ve seen automated recommendations everywhere – on Netflix’s home page, on YouTube, and on Amazon as these machine learning algorithms learn about your unique interests, and show the best products or content for you as an individual. These technologies have become central to the largest, most prestigious tech employers out there, and by understanding how they work, you’ll become very valuable to them.

We’ll cover tried and true recommendation algorithms based on neighborhood-based collaborative filtering, and work our way up to more modern techniques including matrix factorization and even deep learning with artificial neural networks. Along the way, you’ll learn from Frank’s extensive industry experience to understand the real-world challenges you’ll encounter when applying these algorithms at large scale and with real-world data.

Recommender systems are complex; don’t enroll in this course expecting a learn-to-code type of format. There’s no recipe to follow on how to make a recommender system; you need to understand the different algorithms and how to choose when to apply each one for a given situation. We assume you already know how to code.

However, this course is very hands-on; you’ll develop your own framework for evaluating and combining many different recommendation algorithms together, and you’ll even build your own neural networks using Tensorflow to generate recommendations from real-world movie ratings from real people. We’ll cover:

  • Building a recommendation engine
  • Evaluating recommender systems
  • Content-based filtering using item attributes
  • Neighborhood-based collaborative filtering with user-based, item-based, and KNN CF
  • Model-based methods including matrix factorization and SVD
  • Applying deep learning, AI, and artificial neural networks to recommendations
  • Session-based recommendations with recursive neural networks
  • Scaling to massive data sets with Apache Spark machine learning, Amazon DSSTNE deep learning, and AWS SageMaker with factorization machines
  • Real-world challenges and solutions with recommender systems
  • Case studies from YouTube and Netflix
  • Building hybrid, ensemble recommenders

This comprehensive course takes you all the way from the early days of collaborative filtering, to bleeding-edge applications of deep neural networks and modern machine learning techniques for recommending the best items to every individual user.

The coding exercises in this course use the Python programming language. We include an intro to Python if you’re new to it, but you’ll need some prior programming experience in order to use this course successfully. We also include a short introduction to deep learning if you are new to the field of artificial intelligence, but you’ll need to be able to understand new computer algorithms.

High-quality, hand-edited English closed captions are included to help you follow along.

What you’ll learn

  • Understand and apply user-based and item-based collaborative filtering to recommend items to users
  • Create recommendations using deep learning at massive scale
  • Build recommender systems with neural networks and Restricted Boltzmann Machines (RBM’s)
  • Make session-based recommendations with recurrent neural networks and Gated Recurrent Units (GRU)
  • Build a framework for testing and evaluating recommendation algorithms with Python
  • Apply the right measurements of a recommender system’s success
  • Build recommender systems with matrix factorization methods such as SVD and SVD++
  • Apply real-world learnings from Netflix and YouTube to your own recommendation projects
  • Combine many recommendation algorithms together in hybrid and ensemble approaches
  • Use Apache Spark to compute recommendations at large scale on a cluster
  • Use K-Nearest-Neighbors to recommend items to users
  • Solve the “cold start” problem with content-based recommendations
  • Understand solutions to common issues with large-scale recommender systems
Table of Contents

Getting Started
1 Udemy 101 Getting the Most From This Course
2 [Activity] Install Anaconda, course materials, and create movie recommendations!
3 Course Roadmap
4 What Is a Recommender System
5 Types of Recommenders
6 Understanding You through Implicit and Explicit Ratings
7 Top-N Recommender Architecture
8 [Quiz] Review the basics of recommender systems.

Introduction to Python [Optional]
9 [Activity] The Basics of Python
10 Data Structures in Python
11 Functions in Python
12 [Exercise] Booleans, loops, and a hands-on challenge

Evaluating Recommender Systems
13 TrainTest and Cross Validation
14 Accuracy Metrics (RMSE, MAE)
15 Top-N Hit Rate – Many Ways
16 Coverage, Diversity, and Novelty
17 Churn, Responsiveness, and AB Tests
18 [Quiz] Review ways to measure your recommender.
19 [Activity] Walkthrough of RecommenderMetrics.py
20 [Activity] Walkthrough of TestMetrics.py
21 [Activity] Measure the Performance of SVD Recommendations

A Recommender Engine Framework
22 Our Recommender Engine Architecture
23 [Activity] Recommender Engine Walkthrough, Part 1
24 [Activity] Recommender Engine Walkthrough, Part 2
25 [Activity] Review the Results of our Algorithm Evaluation.

Content-Based Filtering
26 Content-Based Recommendations, and the Cosine Similarity Metric
27 K-Nearest-Neighbors and Content Recs
28 [Activity] Producing and Evaluating Content-Based Movie Recommendations
29 A Note on Using Implicit Ratings.
30 [Activity] Bleeding Edge Alert! Mise en Scene Recommendations
31 [Exercise] Dive Deeper into Content-Based Recommendations

Neighborhood-Based Collaborative Filtering
32 Measuring Similarity, and Sparsity
33 Similarity Metrics
34 User-based Collaborative Filtering
35 [Activity] User-based Collaborative Filtering, Hands-On
36 Item-based Collaborative Filtering
37 [Activity] Item-based Collaborative Filtering, Hands-On
38 [Exercise] Tuning Collaborative Filtering Algorithms
39 [Activity] Evaluating Collaborative Filtering Systems Offline
40 [Exercise] Measure the Hit Rate of Item-Based Collaborative Filtering
41 KNN Recommenders
42 [Activity] Running User and Item-Based KNN on MovieLens
43 [Exercise] Experiment with different KNN parameters.
44 Bleeding Edge Alert! Translation-Based Recommendations

Matrix Factorization Methods
45 Principal Component Analysis (PCA)
46 Singular Value Decomposition
47 [Activity] Running SVD and SVD++ on MovieLens
48 Improving on SVD
49 [Exercise] Tune the hyperparameters on SVD
50 Bleeding Edge Alert! Sparse Linear Methods (SLIM)

Introduction to Deep Learning [Optional]
51 Important note about Tensorflow 2
52 Important Tensorflow setup note!
53 Deep Learning Introduction
54 Deep Learning Pre-Requisites
55 History of Artificial Neural Networks
56 [Activity] Playing with Tensorflow
57 Training Neural Networks
58 Tuning Neural Networks
59 Activation Functions More Depth
60 Introduction to Tensorflow
61 [Activity] Handwriting Recognition with Tensorflow, part 1
62 [Activity] Handwriting Recognition with Tensorflow, part 2
63 Introduction to Keras
64 [Activity] Handwriting Recognition with Keras
65 Classifier Patterns with Keras
66 [Exercise] Predict Political Parties of Politicians with Keras
67 Intro to Convolutional Neural Networks (CNN’s)
68 CNN Architectures
69 [Activity] Handwriting Recognition with Convolutional Neural Networks (CNNs)
70 Intro to Recurrent Neural Networks (RNN’s)
71 Training Recurrent Neural Networks
72 [Activity] Sentiment Analysis of Movie Reviews using RNN’s and Keras
73 Tuning Neural Networks
74 Neural Network Regularization Techniques

Deep Learning for Recommender Systems
75 Intro to Deep Learning for Recommenders
76 Restricted Boltzmann Machines (RBM’s)
77 [Activity] Recommendations with RBM’s, part 1
78 [Activity] Recommendations with RBM’s, part 2
79 [Activity] Evaluating the RBM Recommender
80 [Exercise] Tuning Restricted Boltzmann Machines
81 Exercise Results Tuning a RBM Recommender
82 Auto-Encoders for Recommendations Deep Learning for Recs
83 [Activity] Recommendations with Deep Neural Networks
84 Clickstream Recommendations with RNN’s
85 [Exercise] Get GRU4Rec Working on your Desktop
86 Exercise Results GRU4Rec in Action
87 Bleeding Edge Alert! Deep Factorization Machines
88 More Emerging Tech to Watch

Scaling it Up
89 [Activity] Introduction and Installation of Apache Spark
90 Apache Spark Architecture
91 [Activity] Movie Recommendations with Spark, Matrix Factorization, and ALS
92 [Activity] Recommendations from 20 million ratings with Spark
93 Amazon DSSTNE
94 DSSTNE in Action
95 Scaling Up DSSTNE
96 AWS SageMaker and Factorization Machines
97 SageMaker in Action Factorization Machines on one million ratings, in the cloud
98 Other Systems of Note (Amazon Personalize, RichRelevance, Recombee, and more)
99 Recommender System Architecture

Real-World Challenges of Recommender Systems
100 The Cold Start Problem (and solutions)
101 [Exercise] Implement Random Exploration
102 Exercise Solution Random Exploration
103 Stoplists
104 [Exercise] Implement a Stoplist
105 Exercise Solution Implement a Stoplist
106 Filter Bubbles, Trust, and Outliers
107 [Exercise] Identify and Eliminate Outlier Users
108 Exercise Solution Outlier Removal
109 Fraud, The Perils of Clickstream, and International Concerns
110 Temporal Effects, and Value-Aware Recommendations

Case Studies
111 Case Study YouTube, Part 1
112 Case Study YouTube, Part 2
113 Case Study Netflix, Part 1
114 Case Study Netflix, Part 2

Hybrid Approaches
115 Hybrid Recommenders and Exercise
116 Exercise Solution Hybrid Recommenders

Wrapping Up
117 More to Explore
118 Bonus Lecture More courses to explore!