Ready to Start Learning?

Sign in to check if you already have access, or get started with a purchase or membership.

Recommender

Build a recommendation engine using Django & a Machine Learning technique called Collaborative Filtering.
A project like this is really a collection of 3 parts:
  • Web Process: Setup up Django to collect user's interest and provide recommendations once available.
  • Machine Learning Pipeline: Extract data from Django, transform it, and train a Collaborative Filtering model.
  • Worker Process: This is the glue. We'll use Celery to schedule/run the trained model predictions and update data for Django-related user recommendations.
Recommended Experience
Optional but helpful
Resources
Recommender

Lifetime access to this course

or get access to 500+ courses with a membership

Lessons

1

Welcome

2:45

2

Walkthrough & Requirements

15:34

3

Where to get help

2:00

4

Setup Project

9:57

5

Django as a ML Pipeline Orchestration Tool

2:58

6

Generate Fake User Data

6:38

7

Django Management Command to add Fake User Data

11:27

8

Our Collaborative Filtering Dataset

7:50

9

Load The Movies Dataset into the Movie Django Model

13:06

10

Create Ratings Model with Generic Foreign Keys

13:29

11

Calculate Average Ratings

12:37

12

Generate Movie Ratings

14:40

13

Handling Duplicate Ratings with Signals

14:00

14

Calculate Movie Average Rating Task

12:07

15

Setup Celery for Offloading Tasks

15:22

16

Converting Functions into Celery Tasks

16:35

17

Movie List & Detail View, URLs and Templates

15:33

18

Django AllAuth

9:23

19

Update the Movie Ratings Task

16:55

20

Rendering Rating Choices

8:20

21

Dislay a User's Ratings

18:05

22

Dynamic Requests with HTMX

15:50

23

Rate Movies Dynamically with HTMX

16:16

24

Infinite Rating Flow with Django & HTMX

14:14

25

Rating Dataset Exports Model & Task

23:33

26

Using Jupyter with Django

7:50

27

Load Real Ratings to Fake Users

15:29

28

Update Movie Data

29:39

29

Recommendations by Popularity

16:27

30

What is Collaborative Filtering

13:14

31

Collaborative Filtering with Surprise ML

9:50

32

Surprise ML Utils & Celery Task For Surprise Model Training

24:58

33

Batch User Prediction Task

15:22

34

Storing Predictions in our Suggestion Model

14:43

35

Updating Batch Predictions Based on Previous Suggestions

13:54

36

ML-Based Movies Recommendations View

17:58

37

Trigger ML Predictions Per User Activity

9:55

38

Position Ranking for Movie Querysets

10:44

39

Movie Embedding Idx Field and Task

12:31

40

Movie Dataset Exports

17:31

41

Schedule for ML Training, ML Inference, Movie IDX Updates, and Exports

12:50

42

Overview of a Neural Network Colab Filtering Model

21:01

43

Thank you and next steps

2:17

Recommender - Coding for Entrepreneurs