This repository contains the code for a movie recommendation system. The project is built upon the analysis of movie ratings data and the development of a recommendation system using machine learning techniques. Key highlights of the project include:
Data Analysis: Exploration of temporal rating trends, the impact of different movie genres on ratings, and comparison of machine learning models for rating prediction.
Model Selection: Evaluation and implementation of the XGBoost model with optimal parameters for recommendation generation.
Personalized Recommendations: The system provides personalized movie recommendations to users based on their individual movie preferences and tastes. The system analyzes past user ratings and predicts the top 5 recommendations for each user, ranking them by the highest score.
Usage: The generated model can be integrated into an application or web service to provide recommendations to users. Users can receive personalized recommendations based on their movie preferences.
Data processing:
- NumPy
- Pandas
Data Visualization:
- Matplotlib
- Seaborn
Machine Learning:
- Scikit-learn
- Catboost
- LGBM (LightGBM)
- XGBoost
This project has successfully developed and implemented a movie recommendation system that analyzes users' past ratings and offers them personalized recommendations. The results have demonstrated the model's ability to accurately predict user preferences and effectively rank recommendations. This enhances the movie selection process, making it more convenient and enjoyable for users, ultimately increasing overall satisfaction with the viewing experience.
-
Classification Instead of Regression: Consider transitioning from regression to classification tasks to achieve more accurate predictions of user preferences and improve model quality.
-
Application of Collaborative Approaches: Implement alternative collaborative filtering approaches based on similar users and similar movies. This may lead to a more precise identification of dependencies between users and movies, thereby enhancing the relevance of recommendations.