Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/lasithaamarasinghe/movie-recommender-system

This ML model recommends movies that may align with the user's preferences based on TF-IDF matrix.
https://github.com/lasithaamarasinghe/movie-recommender-system

jupyter-notebook machine-learning movie-recommendation movielens-dataset numpy pandas python regex scikit-learn tf-idf-vectorizer

Last synced: 6 days ago
JSON representation

This ML model recommends movies that may align with the user's preferences based on TF-IDF matrix.

Awesome Lists containing this project

README

        

# Movie-Recommender-System

![](https://github.com/LasithaAmarasinghe/Movie-Recommendation-System/assets/106037441/67844ce1-e550-43c6-a98d-f0801243a1ea)

## Overview

- When a user enters a movie title into the input box, this recommendation system swiftly generates suggestions for other movies that may align with the user's preferences.
- This repository contains all the codes and resources used to build and utilize the recommendation system.

## Key Features

- **Data Exploration**: Comprehensive analysis to understand the MovieLens 25M dataset's structure and distribution.
- **Search Engine**: Building a search engine to find a specific movie title in the dataset.
- **Recommendation Engine**: Creating a recommendation engine to suggest specific movies based on user preferences and movie ratings.

## Steps

* Reading in movie data with pandas.
* Cleaning movie titles with regex.
* Creating a [TF-IDF](https://www.geeksforgeeks.org/understanding-tf-idf-term-frequency-inverse-document-frequency/) matrix. (Time Frequency-Inverse Document Frequency)
* Creating a search function.
* Building an interactive search box with Jupyter.
* Reading in movie ratings data.
* Finding users who liked the same movie.
* Finding how much all users like movies.
* Creating a recommendation score.
* Building a recommendation function.
* Creating an interactive recommendation widget.

## Code

You can find the code for this project here:
- [Movie-Recommendation.ipynb](https://github.com/LasithaAmarasinghe/Movie-Recommendation/blob/main/Movie%20Recommendation.ipynb)

## Technologies/Tools

* Jupyter Notebook / [Google Colab](https://colab.research.google.com/)
* Python 3.10.12
* Python packages
* Pandas - `pip install pandas`
* Numpy - `pip install numpy`
* Scikit-learn - `pip install scikit-learn`
* Regex - `pip install regex`

![Python](https://img.shields.io/badge/python-3670A0?logo=python&logoColor=FFFF00)
![Jupyter Notebook](https://img.shields.io/badge/jupyter-%23FA0F00.svg?logo=jupyter&logoColor=white)
![Pandas](https://img.shields.io/badge/pandas_-%20green?logo=pandas)
![NumPy](https://img.shields.io/badge/numpy-%23013243.svg?logo=numpy&logoColor=white)
![scikit-learn](https://img.shields.io/badge/scikit--learn-F7931E?logo=scikit-learn&logoColor=FFFFFF)
![regex](https://img.shields.io/badge/regex_-%20purple)

## Data

You can download the dataset files used in this project here:
* [MovieLens 25M dataset.](https://grouplens.org/datasets/movielens/25m/)