A System that recommends movies based on user data and content data.
We exist in a technological era where there is far too much content (movies, news articles, shopping products, websites, etc.) for individual items to each receive our personal consideration.
For example, consider that the average Google search returns well over 1 million results, yet when last did you look at the websites past the first page?. The truth is that a user simply doesn't know of each item which exists, nor has the time to inspect each item even if it were known.
Simply put, a recommender system functions by predicting a user's rating or preference for an item. This allows a service provider to build up a catalog of items which it believes the user will want to examine - thereby increasing their engagement with the service and allowing a wider array of content to be considered.
Movie Data was collected, analyzed and feature-engineered to ensure that there were no errors or irregularities in the data. Visual Studio Code was used for this.
Python was used to create two filter algorithms(Content-based filter & Collaborative-based filter) that will be used to build predictive models that'll do the recommendation.
Machine Learning Models(eg: "K-nearest Neighbors", "Singular Vector Decomposition", "Non-negative Matrix Factorization" e.tc) were created to predict and recommend movies based on the Content and Collaborative filters
Streamlit was used to convert the recommender system into a user-friendly web app where you can get accurate movie recommendations.
Amazon Web Services(AWS) was used to deploy the app on the internet to ensure seamless availability.
uMovies®
A user-friendly interactive web application where users can input up to 3 of their favorite movies and get at least 10 movie recommendations with an option to use either content-based filter or collaborative-based filter.
GitHub Repository
A Repository containing information and resources used in the execution of the project. It also includes a Jupyter Notebook that was used to document the details of the project.
Presentation
A Presentation slide was prepared to report the outcomes of the project to a technical and non-technical crowd.