In this project I built Movie-Recommender using memory/neighborhood-based and model-based methods.
Using Non-negative matrix factorization (NMF) algorithm, I decomposed the data into two non-negative matrices P(user-matrix) and Q(movie matrix) with an inner dimension of 20(number of components) to find latent features. Recommendations for a new user were derived by calculating the dot product of new user's ratings vector and Q matrix, that represents the strength of the associations between movies and the features. 5 random unseen movies from the highest rated movies in the last 10 years(grouped by year) and 5 unseen highest rated of all time movies are given as recommendations.
In Neighborhood-Based Collaborative Filtering, recommendations for a new user were derived by calculating cosine similarity between all users (user-based filtering), selecting users that showed similar activity and recommending 10 movies that they have liked and that the new user hasn’t seen yet.
Finally, I built a Flask recommender app to visualize the results.
-
Notifications
You must be signed in to change notification settings - Fork 0
Movie-Recommender system using Non-negative matrix factorization (NMF) and Neighborhood-Based Collaborative Filtering methods.
License
dashnak90/Movie_recommender
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About
Movie-Recommender system using Non-negative matrix factorization (NMF) and Neighborhood-Based Collaborative Filtering methods.
Topics
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published