/Book_Recommendation

We are proud to introduce our new book recommendation system, book.io. This system uses the user-to-user collaborative filtering model to recommend books to users based on their preferences and ratings.

Primary LanguageJupyter Notebook

Book_Recommendation

We are proud to introduce our new book recommendation system, book.io. This system uses the user-to-user collaborative filtering model to recommend books to users based on their preferences and ratings.

Our system recommends 10 books to each user: 5 based on the user's geographical area and 5 based on the user's age group. For each of these categories, we have built 6 different models to cater to different segments of users. For example, in the area-based category, we have models for the USA, Canada, UK, Australia, Germany, and other countries. Similarly, in the age-based category, we have models for adults, teenagers, younger, elder, children, and other age groups.

Our system aims to provide personalized and relevant book recommendations to our users, by leveraging the similarities between users and items simultaneously. We hope you enjoy using book.io and discover new books that match your interests and tastes.

Live demo here

Table of Contents

General Information

We are proud to introduce book.io, a book recommendation system that uses the user-to-user collaborative filtering model. Here are some features of our system:

  • It recommends 10 books to each user, based on their preferences and profile.
  • It uses two criteria to select the books: the user's geographic area and age group.
  • It has six different models for each criterion, covering various regions and demographics. For example,
    • It has models for the USA, Canada, UK, Australia, Germany, and other countries for the area-based criterion.
    • It has models for adults, teenagers, younger, elder, children, and other age groups for the age-based criterion.
  • It updates the recommendations regularly based on the user's feedback and

Technologies Used

  • Language Used : Jupyter Notebook(Python), CSS

  • libraries used

    • Data Preprocessing & EDA :numpy, pandas, matplotlib, seaborn, re
    • Model Building :numpy, pandas, pickle, sklearn.metrics(pairwise_distances)
    • Deployment : pickle, pandas, streamlit
    • Server Deployment : https://share.streamlit.io/

Screenshots

Top mid bottom

Setup

  • For Online click here

  • For Offline download everything in requirements.txt and then open the anaconda / python terminal and run this line of code :

cd file path
streamlit run main.py

Project Status

Project is: Deployed

Room for Improvement

Room for improvement:

  • Creating New Model
  • Improving UI
  • Creating Search Feature

Acknowledgements

Contact

Created by @kunal - feel free to contact me!