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...)

Amazing!

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!

NOTE:

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.

Suggested Prerequisites:

Tips for success:

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.

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

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!

Amazing!

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

We’ll look at

But this course isn’t just about news feeds.

Companies like

These algorithms have led to

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

As a bonus, we will also look how to perform matrix factorization using

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!

NOTE:

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.

Suggested Prerequisites:

- 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 success:

- 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!

- Introduction (03:10) (FREE preview available)
- Outline of the course (04:45)
- Where to get the code (05:06)

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

- Collaborative Filtering Section Introduction (11:39)
- User-User Collaborative Filtering (13:52)
- Collaborative Filtering Exercise Prep (10:21)
- Data Preprocessing (15:27)
- User-User Collaborative Filtering in Code (16:07)
- Item-Item Collaborative Filtering (09:16)
- Item-Item Collaborative Filtering in Code (07:08)
- Collaborative Filtering Section Conclusion (05:35)

- How do I Choose Which Model to Use? (04:03)
- How do I Solve the Cold-Start Problem? (04:30)
- What if I Don't Like Math or Programming? (05:48)

- Matrix Factorization Section Introduction (04:09)
- Matrix Factorization - First Steps (15:28)
- Matrix Factorization - Training (08:57)
- Matrix Factorization - Expanding Our Model (08:05)
- Matrix Factorization - Regularization (06:19)
- Matrix Factorization - Exercise Prompt (01:16)
- Matrix Factorization in Code (06:18)
- Matrix Factorization in Code - Vectorized (10:15)
- SVD (Singular Value Decomposition) (07:49)
- Probabilistic Matrix Factorization (06:07)
- Bayesian Matrix Factorization (05:35)
- Matrix Factorization in Keras (Discussion) (07:33)
- Matrix Factorization in Keras (Code) (07:15)
- Deep Neural Network (Discussion) (02:52)
- Deep Neural Network (Code) (02:44)
- Residual Learning (Discussion) (02:04)
- Residual Learning (Code) (02:00)
- Autoencoders (AutoRec) Discussion (10:15)
- Autoencoders (AutoRec) Code (11:46)

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

- Big Data and Spark Section Introduction (07:16)
- Setting up Spark in your Local Environment (07:37)
- Matrix Factorization in Spark (10:29)
- Spark Submit (06:27)
- Setting up a Spark Cluster on AWS / EC2 (12:39)
- Making Predictions in the Real World (02:47)

- VIP: Making Predictions with a Trained Recommender Model (04:25)

- TF-IDF Theory (09:56)
- TF-IDF Code (09:18)

- Keras Discussion (06:49)
- Keras Neural Network in Code (06:38)
- Keras Functional API (04:27)
- How to easily convert Keras into Tensorflow 2.0 code (01:49)
- TensorFlow Basics: Variables, Functions, Expressions, Optimization (07:27)
- Building a neural network in TensorFlow (09:43)
- Confidence Intervals (10:18)
- Gaussian Conjugate Prior (05:42)

- Windows-Focused Environment Setup 2018 (20:21)
- How to install Numpy, Scipy, Matplotlib, Pandas, IPython, Theano, and TensorFlow (17:33)

- How to Code Yourself (part 1) (15:55)
- How to Code Yourself (part 2) (09:24)
- Proof that using Jupyter Notebook is the same as not using it (12:29)
- Python 2 vs Python 3 (04:38)

- How to Succeed in this Course (Long Version) (10:25)
- Is this for Beginners or Experts? Academic or Practical? Fast or slow-paced? (22:05)
- What order should I take your courses in? (part 1) (11:19)
- What order should I take your courses in? (part 2) (16:07)

- What is the Appendix? (02:48)
- Where to get discount coupons and FREE deep learning material (05:31)

- VIP: Making Predictions with a Trained Recommender Model Notebook