Recommender Systems and Deep Learning in Python

The most in-depth course on recommendation systems with deep learning, machine learning, data science, and AI techniques

Register for this Course

$29.00 $200.00 USD 86% OFF!

Login or signup to register for this course

Have a coupon? Click here.

Course Data

Lectures: 85
Length: 11h 38m
Skill Level: All Levels
Languages: English
Includes: Lifetime access, 30-day money back guarantee

Course Description

Believe it or not, almost all online businesses today make use of recommender systems in some way or another.

What do I mean by “recommender systems”, and why are they useful?

Let’s look at the top 3 websites on the Internet, according to Alexa: Google, YouTube, and Facebook.

Recommender systems form the very foundation of these technologies.

Google: Search results

They are why Google is the most successful technology company today.

YouTube: Video dashboard

I’m sure I’m not the only one who’s accidentally spent hours on YouTube when I had more important things to do! Just how do they convince you to do that?

That’s right. Recommender systems!

Facebook: So powerful that world governments are worried that the newsfeed has too much influence on people! (Or maybe they are worried about losing their own power... hmm...)


This course is a big bag of tricks that make recommender systems work across multiple platforms.

We’ll look at popular news feed algorithms, like Reddit, Hacker News, and Google PageRank.

We’ll look at Bayesian recommendation techniques that are being used by a large number of media companies today.

But this course isn’t just about news feeds.

Companies like Amazon, Netflix, and Spotify have been using recommendations to suggest products, movies, and music to customers for many years now.

These algorithms have led to billions of dollars in added revenue.

So I assure you, what you’re about to learn in this course is very real, very applicable, and will have a huge impact on your business.

For those of you who like to dig deep into the theory to understand how things really work, you know this is my specialty and there will be no shortage of that in this course. We’ll be covering state of the art algorithms like matrix factorization and deep learning (making use of both supervised and unsupervised learning - Autoencoders and Restricted Boltzmann Machines), and you’ll learn a bag full of tricks to improve upon baseline results.

As a bonus, we will also look how to perform matrix factorization using big data in Spark. We will create a cluster using Amazon EC2 instances with Amazon Web Services (AWS). Most other courses and tutorials look at the MovieLens 100k dataset - that is puny! Our examples make use of MovieLens 20 million.

Whether you sell products in your e-commerce store, or you simply write a blog - you can use these techniques to show the right recommendations to your users at the right time.

If you’re an employee at a company, you can use these techniques to impress your manager and get a raise!

I’ll see you in class!


This course is not "officially" part of my deep learning series. It contains a strong deep learning component, but there are many concepts in the course that are totally unrelated to deep learning.

  • For earlier sections, just know some basic arithmetic
  • For advanced sections, know calculus, linear algebra, and probability for a deeper understanding
  • Be proficient in Python and the Numpy stack (see my free course)
  • For the deep learning section, know the basics of using Keras

TIPS (for getting through the course):
  • Watch it at 2x.
  • Take handwritten notes. This will drastically increase your ability to retain the information.
  • Write down the equations. If you don't, I guarantee it will just look like gibberish.
  • Ask lots of questions on the discussion board. The more the better!
  • The best exercises will take you days or weeks to complete.
  • Write code yourself, don't just sit there and look at my code. This is not a philosophy course!



  1. Introduction (03:10) (FREE preview available)
  2. Outline of the course (04:45)
  3. Where to get the code (05:05)

Simple Recommendation Systems

  1. Section Introduction and Outline (04:20)
  2. Perspective for this Section (03:41)
  3. Basic Intuitions (05:15)
  4. Associations (04:43)
  5. Hacker News - Will you be penalized for talking about the NSA? (07:28)
  6. Reddit - Should censorship based on politics be allowed? (08:55)
  7. Problems with Average Rating & Explore vs. Exploit (part 1) (10:59)
  8. Problems with Average Rating & Explore vs. Exploit (part 2) (07:40)
  9. Bayesian Approach part 1 (Optional) (11:08)
  10. Bayesian Approach part 2 (Sampling and Ranking) (05:58)
  11. Bayesian Approach part 3 (Gaussian) (08:24)
  12. Bayesian Approach part 4 (Code) (12:02)
  13. Demographics and Supervised Learning (07:23)
  14. PageRank (part 1) (11:12)
  15. PageRank (part 2) (11:55)
  16. Evaluating a Ranking (04:40)
  17. Section Conclusion (04:11)

Collaborative Filtering

  1. Collaborative Filtering Section Introduction (11:38)
  2. User-User Collaborative Filtering (13:51)
  3. Collaborative Filtering Exercise Prep (10:21)
  4. Data Preprocessing (15:26)
  5. User-User Collaborative Filtering in Code (16:06)
  6. Item-Item Collaborative Filtering (09:16)
  7. Item-Item Collaborative Filtering in Code (07:08)
  8. Collaborative Filtering Section Conclusion (05:35)

Matrix Factorization and Deep Learning

  1. Matrix Factorization Section Introduction (04:09)
  2. Matrix Factorization - First Steps (15:28)
  3. Matrix Factorization - Training (08:57)
  4. Matrix Factorization - Expanding Our Model (08:05)
  5. Matrix Factorization - Regularization (06:18)
  6. Matrix Factorization - Exercise Prompt (01:16)
  7. Matrix Factorization in Code (06:17)
  8. Matrix Factorization in Code - Vectorized (10:14)
  9. SVD (Singular Value Decomposition) (07:48)
  10. Probabilistic Matrix Factorization (06:07)
  11. Bayesian Matrix Factorization (05:34)
  12. Matrix Factorization in Keras (Discussion) (07:32)
  13. Matrix Factorization in Keras (Code) (07:15)
  14. Deep Neural Network (Discussion) (02:51)
  15. Deep Neural Network (Code) (02:43)
  16. Residual Learning (Discussion) (02:03)
  17. Residual Learning (Code) (01:59)
  18. Autoencoders (AutoRec) Discussion (10:14)
  19. Autoencoders (AutoRec) Code (11:45)

Restricted Boltzmann Machines (RBMs) for Collaborative Filtering

  1. RBMs for Collaborative Filtering Section Introduction (02:09)
  2. Intro to RBMs (08:22)
  3. Motivation Behind RBMs (06:51)
  4. Intractability (03:11)
  5. Neural Network Equations (07:44)
  6. Training an RBM (part 1) (11:35)
  7. Training an RBM (part 2) (06:19)
  8. Training an RBM (part 3) - Free Energy (07:21)
  9. Categorical RBM for Recommender System Ratings (11:32)
  10. RBM Code pt 1 (07:27)
  11. RBM Code pt 2 (04:17)
  12. RBM Code pt 3 (11:43)
  13. Speeding up the RBM Code (07:53)

Big Data Matrix Factorization with Spark Cluster on AWS / EC2

  1. Big Data and Spark Section Introduction (07:16)
  2. Setting up Spark in your Local Environment (07:36)
  3. Matrix Factorization in Spark (10:28)
  4. Spark Submit (06:27)
  5. Setting up a Spark Cluster on AWS / EC2 (12:39)
  6. Making Predictions in the Real World (02:47)

Basics Review

  1. Keras Discussion (06:49)
  2. Keras Neural Network in Code (06:38)
  3. Keras Functional API (04:26)
  4. Tensorflow Basics (07:27)
  5. Tensorflow Neural Network in Code (09:43)
  6. Confidence Intervals (10:17)
  7. Gaussian Conjugate Prior (05:42)


  1. What is the Appendix? (02:48)
  2. Windows-Focused Environment Setup 2018 (20:21)
  3. How to How to install Numpy, Theano, Tensorflow, etc... (17:33)
  4. Is this for Beginners or Experts? Academic or Practical? Fast or slow-paced? (22:04)
  5. How to Succeed in this Course (Long Version) (10:25)
  6. How to Code by Yourself (part 1) (15:55)
  7. How to Code by Yourself (part 2) (09:23)
  8. Proof that using Jupyter Notebook is the same as not using it (12:29)
  9. What order should I take your courses in? (part 1) (11:19)
  10. What order should I take your courses in? (part 2) (16:07)
  11. Python 2 vs Python 3 (04:38)
  12. Where to get discount coupons and FREE deep learning material (02:21)