UI.mp4
- Download virtual Environment Module
pip install virtualenv
- Locate base directory and use this command to create virtual environment
virtualenv <environment_name>
- Download dataset, and then put all .csv files inside Dataset folder
pip install -r requirements.txt
python manage.py runserver
-
Simple Recommender: The Simple Recommender offers generalized recommnendations to every user based on movie popularity and (sometimes) genre. The basic idea behind this recommender is that movies that are more popular and more critically acclaimed will have a higher probability of being liked by the average audience. This model does not give personalized recommendations based on the user. The implementation of this model is extremely trivial. All you have to do is sort our movies based on ratings and popularity and display the top movies of our list. As an added step, we can pass in a genre argument to get the top movies of a particular genre.
-
Content Based Recommender: The recommender we built in the previous section suffers some severe limitations. For one, it gives the same recommendation to everyone, regardless of the user's personal taste. If a person who loves romantic movies (and hates action) were to look at our Top 15 Chart, s/he wouldn't probably like most of the movies. If s/he were to go one step further and look at our charts by genre, s/he wouldn't still be getting the best recommendations.
For instance, consider a person who loves Dilwale Dulhania Le Jayenge, My Name is Khan and Kabhi Khushi Kabhi Gham. One inference we can obtain is that the person loves the actor Shahrukh Khan and the director Karan Johar. Even if s/he were to access the romance chart, s/he wouldn't find these as the top recommendations.
To personalise our recommendations more, we build an engine that computes similarity between movies based on certain metrics and suggests movies that are most similar to a particular movie that a user liked. Since we will be using movie metadata (or content) to build this engine.
- Hybrid Recommender: In this section, We build a simple hybrid recommender that brings together techniques we have implemented in the content based and collaborative filter based engines.
This is how it will work: Input: User ID and the Title of a Movie Output: Similar movies sorted on the basis of expected ratings by that particular user.