Inspiration

In today's digital landscape, recommendation systems are ubiquitous, permeating every facet of our lives from grocery shopping to dining experiences, movie selections to fashion choices. Currently, a product with a 5-star rating from 10 customers provides less reliable information than one with a 4.8-star rating from 1000 users, as a larger number of reviews offers a more comprehensive perspective.

What it does

To address this issue, we have developed a collaborative filtering model that allows users to filter similar products based on minimum review counts and to only consider ratings from users who have provided at least a specified number of reviews.

How we built it

We are tackling the problems in the current recommendation systems. In today's digital landscape, recommendation systems are ubiquitous, permeating every facet of our lives from grocery shopping to dining experiences, movie selections to fashion choices. The first task we did after ideating on the topic was finding a relevant dataset. Kaggle's Book Recommendation Dataset was selected due to its alignment with our objective. Subsequently, we constructed a flowchart outlining the proposed model's functionality and interface design. The fundamental model was then implemented utilizing basic CSV file manipulation. Pandas was leveraged to generate a data frame and implement the various filtering parameters, refining the ratings and books. The pivot table was then created for collaborative filtering, employing a cosine similarity algorithm to compute the most closely related books. The front end of our system is engineered using a diverse set of tools, including HTML, CSS, JavaScript, and some bootstrap libraries, to provide user interface. To power the backend, SQLite and Django are leveraged. The dataset's CSV files are incorporated into the SQLite database, while Django offers an administration panel for user management and access. In accordance with best practices, user passwords are securely stored using SHA256 hashing. An efficient login functionality allows users to view book recommendations tailored to their previous readings and ratings. The auto-complete feature enhances the search functionality, enhancing the search functionality and providing users with an expedient means of selecting their desired books. Despite the large volume of books, approximately 2.5 lakh, the search function is remarkably efficient, employing binary search to rapidly produce relevant results. Users can curate a personalized list of books resembling their desired choices by selecting their preferred filters, enabling an engaging user experience.

Challenges we ran into

Linking of the backend and front end
Inputting Csv into database
Making the carousel

Accomplishments that we're proud of

Autocomplete Search
A recommendation system that works

What we learned

Connecting database to pandas
More django, html, css, js
Bug Resolution

What's next for Mind Bogglers

Adding User Ability to rate books or update existing ratings
Creating a seller users to enable selling/buying on this website

Share this project:

Updates