Sorting Algorithms play an important role in recommendation engines. By the end of the project, the following questions should be answered : - What role is played by sorting algorithms in recommendation engine. - Which sorting algorithm is used in this project and why?
In this project, i have implemented Recommendation Engine for Movies.
Different approaches, choosing an approach and why. To understand the role of sorting algorithms and make a choice, one should know the different types of filtering algorithms present. They are:
- Content-based filtering - In this, content is recommended to a user based on the past content-interaction of the same user.
- Collaborative filtering - In this, content is recommended to a user based on the similarity of that user's content-interaction to another user's content-interaction. Users with similar activities are recommeded similar contents.
- Hybrid filtering - This is a combination of Content-based and Collaborative filtering.
My objective was to implement an approach that would be :
- relevant to the user (content similarity)
- avoid cold start to the problem Therefore, content-based filtering approach has been used in this project.
Home
Movies & TV series catlog
Details
Recommendation App has the following features:
- Recommends movies using Content based Recommendation engine.
- Movies and TV shows section.
- Categories wise movies.
- Movies and TV shows details view.
- Search suggestions.
- Movies trailer feature is restricted to sign in.
- Responsiveness to mobile, tablet and pc views.
Link to the dataset: https://www.kaggle.com/datasets/tmdb/tmdb-movie-metadata/discussion?select=tmdb_5000_movies.csv The datasets are also available with this repo, in a folder titled api_utils
The following were the factors kept in mind while selecting the dataset :
- Relevant and useful data
- Different and diverse attributes (to facilitate content-based filtering approach)
- Manageable computational load
- Dataset Analysis
- Data Pre-processing
- Model Building (using text vectorization and cosine similarity)
- Model Testing
- Establishing web connection (using Reactjs and Flask Api)
You must have the following installed:
To run the web app in your local device, run the following commands in your terminal:-
Clone the GitHub repository into your local device by running the following command:
git clone https://github.com/AshishUjjwal/Recommendation-Engine-Movie-Website
cd Recommendation-Engine-Movie-Website
In the project directory: You need to switch on two terminals.
Terminal 1:
cd 'FrontEnd- React'
npm install
npm start
Terminal 2:
cd 'BackEnd- Flask'
python -m venv venv
venv/scripts/activate
pip install -r requirements.txt
python app.py
Then you are good to go!!