Skip to content

Latest commit

 

History

History
61 lines (39 loc) · 1.77 KB

README.md

File metadata and controls

61 lines (39 loc) · 1.77 KB

Book Recommendation System

Overview

A book recommendation system that uses collaborative filtering to suggest books to users based on their reading preferences. This system is built using Python and has a Streamlit frontend for easy interaction.

Features

  • Collaborative Filtering: Recommends books based on user similarities.
  • Streamlit Frontend: Interactive web interface to get book recommendations.
  • Dataset: Uses book ratings, book information, and user information for recommendations.

Dataset Description

The dataset contains three files:

  1. Books: Information about books (author, title, publication year, etc.).
  2. Users: Information about users (user id, location).
  3. Ratings: Ratings given by users to books.

Preprocessing

  • Removed unnecessary columns.
  • Renamed columns for easier use.
  • Filtered users with at least 200 ratings and books with at least 50 ratings.

Building the Model

  • Created a pivot table with user ids as columns, book titles as rows, and ratings as values.
  • Converted the pivot table to a sparse matrix.
  • Trained a Nearest Neighbors model using the sparse matrix.

Streamlit Interface

Installation

How to Run

  1. Clone the repository:

    git clone https://github.com/yourusername/Book-Recommendation.git
    cd Book-Recommendation

Running the Application

  1. Run the Streamlit app:
    streamlit run main.py

Usage

  • Select a book from the dropdown menu.
  • Click the "Show Recommendation" button to get recommended books along with their images.

Conclusion

This book recommendation system efficiently recommends books based on user preferences using collaborative filtering and provides an interactive interface for users to get book recommendations.