Video Recommendation System

Part 1

1 - Requirements(Business Objective)
2 - Frame your ML Task
3 - Data Preparation
4 - Model Development
5 - Evaluation
6 - Deployment
7 - Monitoring

1 - Requirements(Business Objective)

Business objective - increase the user engagement

2 - Frame your ML Task

- maximize the number of user clicks
- maximize the number of completed videos
- maximize the total watch time

----->>> maximize the number of relevant videos

user ---> video recommendation system -------->     Video 1, video 2, video 3 .........
                     |
                  videos                                 recommended videos

Types of recommendation system

1 - Content-Based filtering
2 - Collaborative Filtering
3 - Hybrid Flitering

1 - Content Based filtering

pros
- ability to recommend new videos
- ability to capture the unique interests of users

cons
- discover any new users interests
- you need domain knowledge

2 - Collaborative Filtering

->> collaborative filtering do not use video features

pros
- no domain knowledge
- easy to discover users new area of interests
- efficient

cons
- cannot handle niche interests

3 - Hybrid Filtering

3 - Data Preparation

Data Engineering

- video
- users
- user-video interactions

- video

metadata ->

videoID  Length     ManualTags       ManualTitle                  Likes   Views     Language
1          30      Dog, Family       my first day with my dog      151     5000     english

- users

ID Username  Age  Gender  City   Country  Language  Timezone

- user-video interactions

userID  VideoID   InteractionType    InterationValue    location    timestamp
                   imperession          10 seconds

Feature Engineering

video features
- video ID
- duration
- language
- titles and tags

video feature preperation

- video ID - embedding -> [0.1,-0.5,0.2,0.7]
- duration - 130       ->
- language - english   -> embedding
- titles   - pre-trained model like BERT -> [0.1,0.2]
- tags     - Continuous Bag Of Words(CBOW) - lightweight model

User feature preperation

- UserID -> embeddings
- age    -> bucketize and one-hot encoding -> 20-24 (0), 25-30(1), 31-37(2)
- gender -> one-hot
- lagunage
- city
- country

contextual information
- time of the day
- device
- day of the week

user historical interaction
- search history
- liked
- watched video and imperessions