A Movie Recommendation System Based on User Rating Similarity Using Matrix Factorization

Raswidhyantoro, Satya Agni Prema (2026) A Movie Recommendation System Based on User Rating Similarity Using Matrix Factorization. Undergraduate thesis, UPN Veteran Jawa Timur.

[img] Text (Cover)
19081010109.-cover.pdf

Download (2MB)
[img] Text (Bab 1)
19081010109.-bab1.pdf

Download (150kB)
[img] Text (Bab 2)
19081010109.-bab2.pdf
Restricted to Repository staff only until 22 July 2029.

Download (237kB)
[img] Text (Bab 3)
19081010109.-bab3.pdf
Restricted to Repository staff only until 22 July 2029.

Download (1MB)
[img] Text (Bab 4)
19081010109.-bab4.pdf
Restricted to Repository staff only until 22 July 2029.

Download (1MB)
[img] Text (Bab 5)
19081010109.-bab5.pdf

Download (145kB)
[img] Text (Daftar Pustaka)
19081010109.-daftarpustaka.pdf

Download (120kB)
[img] Text (Lampiran)
19081010109.-lampiran.pdf
Restricted to Repository staff only

Download (291kB)

Abstract

The growth of streaming platforms and digital entertainment services has increased the number of available movies, making it difficult for users to identify movies that match their preferences. This research aims to develop a movie recommendation system based on user rating similarity using the Matrix Factorization algorithm. The system is designed to allow users to input a desired rating and select a movie genre, after which the system generates a Top-N recommendation list according to those preferences. The dataset used in this research is MovieLens, consisting of 100,836 rating records, 610 unique users, and 9,724 unique movies. The dataset has a sparsity level of 98.30%, making Matrix Factorization suitable for learning latent patterns between users and movies from an incomplete rating matrix. The model was trained using training data and monitored using validation data with an early stopping mechanism. The training process achieved a Best Val MSE of 0.7243 and stopped at the 19th epoch. Evaluation on the test data produced an RMSE of 0.8657 and an MAE of 0.6617, indicating that the average rating prediction error is below one point on the MovieLens rating scale. The recommendation mechanism uses the input rating to find historical users whose average ratings are close to the user’s preference within a selected genre. Genre information is used as a movie candidate filter to ensure that the recommendations remain aligned with the selected category. In addition, the application provides an advanced exploration feature through clickable recommendation cards, allowing the selected movie to serve as an additional reference for the next recommendation process. The system is implemented as a Flask-based web application that displays recommendations in movie cards containing the title, genre, predicted rating, recommendation score, poster or placeholder, and score visualization. Based on the implementation and testing results, the system is able to generate movie recommendations that match the user’s rating and genre inputs while presenting the results in an informative and interactive interface.

Item Type: Thesis (Undergraduate)
Contributors:
ContributionContributorsNIDN/NIDKEmail
Thesis advisorIdhom, MohammadNIDN0010038305idhom@upnjatim.ac.id
Thesis advisorSihananto, Andreas NugrohoNIDN0012049005andreas.nugroho.jarkom@upnjatim.ac.id
Subjects: Q Science > QA Mathematics > QA76.6 Computer Programming
T Technology > T Technology (General)
Divisions: Faculty of Computer Science > Departemen of Informatics
Depositing User: Satya Agni Prema Raswidhyantoro
Date Deposited: 23 Jul 2026 02:16
Last Modified: 23 Jul 2026 02:52
URI: https://repository.upnjatim.ac.id/id/eprint/57829

Actions (login required)

View Item View Item