Skip to content

kuneus/Matrix-Factorization-Book-Recommendation-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 

Repository files navigation

Matrix-Factorization-Book-Recommendation-System

Introduction

This notebook is part of the submission for WGU's C964 - Computer Science Capstone. This project implemented a book recommendation system using matrix factorization under the collaborative filtering model. Collaborative filtering is the most common model for recommendation systems, which uses data from a similar user to generate recommendations for the user of interest. This filtering method requires a dataset that includes user IDs, book titles, and user ratings.

Matrix factorization is an algorithm used in recommendation systems to reduce large user-item interaction matrices into smaller components that reveal hidden patterns. In this case, the user-item matrix has the users as rows, book titles as columns, and the table values as user ratings.

For this model, I used a specific type of matrix factorization called singular value decomposition (SVD). This technique decomposes the user-item matrix into smaller matrices, capturing the most essential relationships between users and items. By reducing the matrix's dimensionality, SVD can generate highly accurate recommendations.

Features

  • No installation necessary.
  • Search up to 400,000 user IDs.
  • Generate top N book recommendations.
  • Up to ~94% predictive accuracy.
  • Low predictive error rate below 1.0 on a 1-5 rating scale.

Documentation

See the wiki for documentation detailing the following sections:

  1. Data Science Methodology
  2. Data Summary
  3. Machine Learning Solution
  4. Model Evaluation
  5. References

User Guide

This recommendation system is a Python-based application running in Google Colab, a cloud-based Jupyter Notebook environment. This means no local installation is required to start executing the application. Follow the steps below to run the application and begin generating book recommendations.

  1. Open your preferred internet browser.
  2. Click the following link to open the notebook or paste it into your browser: https://colab.research.google.com/drive/1w_u59ZLrNhSKKFYgIc7NlyHs2MGXXpPj?usp=sharing
  3. If you are not already signed in to your Google account, sign in at the top right.
  4. At the top menu bar, click the dropdown option ‘Runtime,’ then click ‘Run all.’
image
  1. A warning message will appear indicating that Google did not author this notebook. Click ‘Run anyway’.
image
  1. This may take a few minutes; wait until all cells have run.
  2. After all the cells have run, the user interface will be loaded at the bottom of the page. Go to the bottom.
  3. Enter an integer from 1 to 400,000 (without commas) in the input field. This will search a user by ID number.
  4. Once a valid ID has been entered, enter another integer for the desired number of recommendations. Try inputting 10 to get a top 10 book recommendation.
  5. Once the book recommendations have been returned, it will return to the initial input screen for user ID—input ‘q’ to exit the program.

About

This is a Python-based book recommendation system developed on Google Colab. This recommendation system utilizes matrix factorization as its machine learning implementation.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published