Recommender
- 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.
- Python 3.6+ (such as 30 Days of Python)
- Django 3.2+ (such as Your First Django Web Project or Try Django 3.2)
- Celery with Django (such as Time & Tasks 2 or this blog post)
Lessons
Welcome
2:45
Walkthrough & Requirements
15:34
Where to get help
2:00
Setup Project
9:57
Django as a ML Pipeline Orchestration Tool
2:58
Generate Fake User Data
6:38
Django Management Command to add Fake User Data
11:27
Our Collaborative Filtering Dataset
7:50
Load The Movies Dataset into the Movie Django Model
13:06
Create Ratings Model with Generic Foreign Keys
13:29
Calculate Average Ratings
12:37
Generate Movie Ratings
14:40
Handling Duplicate Ratings with Signals
14:00
Calculate Movie Average Rating Task
12:07
Setup Celery for Offloading Tasks
15:22
Converting Functions into Celery Tasks
16:35
Movie List & Detail View, URLs and Templates
15:33
Django AllAuth
9:23
Update the Movie Ratings Task
16:55
Rendering Rating Choices
8:20
Dislay a User's Ratings
18:05
Dynamic Requests with HTMX
15:50
Rate Movies Dynamically with HTMX
16:16
Infinite Rating Flow with Django & HTMX
14:14
Rating Dataset Exports Model & Task
23:33
Using Jupyter with Django
7:50
Load Real Ratings to Fake Users
15:29
Update Movie Data
29:39
Recommendations by Popularity
16:27
What is Collaborative Filtering
13:14
Collaborative Filtering with Surprise ML
9:50
Surprise ML Utils & Celery Task For Surprise Model Training
24:58
Batch User Prediction Task
15:22
Storing Predictions in our Suggestion Model
14:43
Updating Batch Predictions Based on Previous Suggestions
13:54
ML-Based Movies Recommendations View
17:58
Trigger ML Predictions Per User Activity
9:55
Position Ranking for Movie Querysets
10:44
Movie Embedding Idx Field and Task
12:31
Movie Dataset Exports
17:31
Schedule for ML Training, ML Inference, Movie IDX Updates, and Exports
12:50
Overview of a Neural Network Colab Filtering Model
21:01
Thank you and next steps
2:17