This repository demonstrates various types of recommendation systems using both Collaborative Filtering and Content-Based Filtering. The project includes user-based collaborative filtering, item-based collaborative filtering, matrix factorization techniques like SVD (Singular Value Decomposition) and NMF (Non-negative Matrix Factorization), as well as a content-based recommendation system.
Recommendation systems are used to predict the preferences or ratings that a user would give to an item. They are widely used in platforms like Netflix, Amazon, and Spotify to recommend movies, products, or music. This project showcases multiple approaches to building a recommendation system:
Dataset This project uses a book dataset containing user ratings, book titles, and book authors. You can replace the dataset with any other that fits the requirements for building recommendation systems. The dataset should have the following columns:
Each algorithm was evaluated using two common metrics in recommendation systems:
Hyperparameter tuning was performed using GridSearchCV to find the best parameters for the models. The following parameters were tuned:
The performance of each algorithm was evaluated before and after hyperparameter tuning. The results showed improvements in the accuracy of the models after tuning, as measured by RMSE and MAE.