With an increasing amount of information on the internet and a considerable increase in the number of users, it is essential for companies to search, map, and offer relevant information based on the preferences of users. An important functional means of providing personalized service to users is Recommendation System. This system uses Machine Learning algorithms and data analysis techniques to suggest items, content, or services that should be of interest to customers based on their past choices or by analysing the preferences of similar users. Companies like Netflix, Amazon, etc. use recommender systems to help their users to identify the correct product or content for them.
The project aims to create a Book recommendation system that best predicts user interests and recommend the suitable/appropriate books to them, using various approaches.
- Data Preprocessing : Checked for outliers, incorrect values, missing values, duplicate, performed data type correction and string formatting.
- Merging of datasets : In this project, recommender systems were built utilizing only explicit ratings. So finally,a new dataframe by merging the books dataset ,explicit ratings dataset and users dataset is prepared.
- Exploratory Data Analysis : Performed Univariate, Bivariate, and Multivariate analysis with various graphs and plots to better understand the distribution of features and their relationships.
- Model Building: Implementation of various Recommender System approaches like User Based Collaborative Filtering and Item based Collaborative Filtering.
- Language : Python
- IDE : Jupyter Notebook
- Pandas : For loading the dataset and performing data wrangling
- Matplotlib: For data visualization.
- Seaborn: For data visualization.
- NumPy: For some math operations in predictions.
- Sklearn: For the purpose of analysis,prediction and evaluation
Finally, the model is able to recommend books by giving either a user as an input or a book title