Skip to content

ZR2100/recommender-system_MF_KNN_SVR

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

Recommender System Project

This project implements various recommender system algorithms, including KNN, SVM, Decision Tree, and Matrix Factorization. The main focus is on Matrix Factorization for providing personalized movie recommendations.

Table of Contents

Introduction

This project explores different algorithms for building a recommender system. The primary goal is to compare the performance of various methods and highlight the effectiveness of Matrix Factorization.

Dataset

The project uses the MovieLens dataset for training and evaluating the recommender system.

Algorithms Implemented

  • K-Nearest Neighbors (KNN)
  • Support Vector Machine (SVM)
  • Decision Tree
  • Matrix Factorization

Matrix Factorization

Matrix Factorization is the main focus of this project. It involves decomposing the user-item interaction matrix into lower-dimensional matrices representing latent factors of users and items.

Key Steps:

  1. Data Preparation: Encoding user and movie IDs, creating the rating matrix.
  2. Normalization: Centering ratings around the mean for each movie.
  3. Model Training: Using TensorFlow to optimize the cost function.
  4. Evaluation: Assessing the model using RMSE, MSE, MAE, R2 score, and relative MAE.

Evaluation Metrics

  • Root Mean Squared Error (RMSE)
  • Mean Squared Error (MSE)
  • Mean Absolute Error (MAE)
  • R2 Score
  • Relative MAE

Results

The results section should include a summary of the performance of each algorithm, with a focus on the Matrix Factorization model. Include plots of training and validation losses, and a comparison of evaluation metrics. Results Table:

image

Installation

To run this project, you need to have Python and the following libraries installed:

  • numpy
  • pandas
  • scikit-learn
  • tensorflow
  • matplotlib

You can install the required libraries using:

pip install numpy pandas scikit-learn tensorflow matplotlib

Usage

  1. Clone the repository:
git clone https://github.com/yourusername/recommender-system-project.git
  1. Navigate to the project directory:
cd recommender-system-project
  1. Run the main script:
python main.py

Contributing

Contributions are welcome! Please open an issue or submit a pull request for any improvements or bug fixes.

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

Recommender System Project This repository contains the implementation of various recommender system algorithms, including KNN, SVM, Decision Tree, and Matrix Factorization. The primary focus is on Matrix Factorization to provide personalized movie recommendations using the MovieLens dataset.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors