Model used:
Collaborative filtering: Recommends items based on
similarity measures between users and/or items.
Measuring Similarity
User-item matrix
/*we can see that User 1 and User 2 give nearly similar ratings to the
movie, so we can conclude that Movie 3 is also going to be averagely liked
by User 1 but Movie 4 will be a good recommendation to User 2, like this
we can also see that there are users who have different choices like User 1
and User 3 are opposite to each other. One can see that User 3 and User 4
have a common interest in the movie, on that basis we can say that Movie
4 is also going to be disliked by User 4. */
Cosine Similarity
Use the cosine similarity between the users to find
out the users with similar interests, larger cosine
implies that there is a smaller angle between two
users, hence they have similar interests.
Weighted average formula:
U is User
i is the movie to predict
N is the set of users who have rated the movie
sim(u,v) is the cosine similarity between User
Example: Recommend a movie for User 2
Step 1: Identify Unrated Movies
o User 2 has not rated Movie 2 and Movie 4 (values are
0).
Step 2: Predict Ratings
Retrieve Similarity Scores with User 2
Result:
User 2 & User 1: 0.492
User 2 & User 3: 0.0
User 2 & User 4: 0.358
Predict rating for movie 2 (using Weighted average
formula)
Predict rating for movie 4
Movie 4: 5.0 > Movie 2: 3.16
->Movie 4 recommend to User 2 (User-Based
filtering)
🔹 Advantages
No Need for Content Metadata
Discovers Hidden Patterns
Adapts to Trends & User Behavior
🔹 Disadvantages
Struggles with the "cold start" problem (hard to
recommend movies to new users with no history).
Sparsity Problem (huge datasets, but each user
interacts with only a small fraction of items.)
Popularity Bias (recommend popular items more
often, ignoring niche items.)
/-----------------------------------------------------------------------------
------/
Content-Based filtering: Content-based filtering uses
item features (attributes) to recommend other items
similar to what the user likes, based on their previous
actions
We can represent each movie as a feature vector in a
matrix:
(1 = the movie belongs to that genre, 0 = it doesn’t).
If user feature vector is: (Action = 1, Sci-Fi = 1,
Romance = 0)
Using Cosine Similarity:
Mad Max(1,1,0) / The Matrix(1,1,0) = 1.00
Inception(0,1,0) / Interstellar(0,1,0) = 0.71
Titanic(0,0,1) = 0.00
Final Recommendations: Mad Max & The Matrix
🔹 Advantages
Provides accurate recommendations when rich movie
metadata is available.
Does not require data from other users (not
dependent on a large user base).
🔹 Disadvantages
Struggles with the "cold start" problem (hard to
recommend movies to new users with no history).
Limited exploration (users may only see
recommendations similar to what they've already
watched).
/-----------------------------------------------------------------------------
------/
Trending Analysis: suggest popular and emerging
content based on recent user interactions. Instead of
just relying on past preferences, the system boosts
trending items to keep recommendations fresh and
relevant.
Collect User Interaction Data
Track various engagement metrics:
Views / Clicks – How many users watched a movie?
Likes / Ratings – How many users liked or rated it
highly?
Shares / Comments – How many users shared or
discussed it?
Watch Time / Completion Rate – Did users watch it
fully or drop off early?
/-----------------------------------------------------------------------------
------/
Top Rated Movie: suggests movies with the highest
ratings based on user reviews
Weighted Rating Formula (IMDB's Approach):
R = Average rating of the movie
v = Number of votes for the movie
m = Minimum votes required for ranking
C = Mean rating across all movies
🔹 Advantages
Ensures high-quality content is recommended.
Works well when a user has no prior watch history.
Simple & effective for new users.
🔹 Disadvantages
May not match personal preferences
Favors older, established movies
/-----------------------------------------------------------------------------
------/
Hybrid Recommendation System: Combines multiple
recommendation techniques (e.g., Collaborative
Filtering, Content-Based Filtering, Popularity,
Trending Analysis) to improve accuracy.
w: Weight parameters to balance the importance of
each factor.
S: Recommendation model
Condition: