Skip to content
signature case study

Movie Recommendation Project

Hybrid recommender system and competition project

Status
Competition entry
Engagement
Programme final project (optional)
Role
Sole ML engineer
Movie Recommendation Project evaluation visual

The problem

Viewers need personalised movie recommendations, and public-leaderboard scores do not translate directly to real-world KPIs.

What was built

A hybrid content-based and collaborative-filtering recommender built on about 10 million ratings, using SVD matrix factorisation and LightGBM. Public-leaderboard RMSE improved from 1.21 to 0.82 across eight submissions.

Architecture and engineering decisions

Python data preparation and feature engineering over roughly 10 million ratings, a 50-factor SVD representation, LightGBM prediction, and offline evaluation against the competition’s public leaderboard.

Audience

Portfolio and competition demonstration; not a commercial product.

Technical highlights

  • 50-factor SVD matrix factorisation
  • LightGBM prediction layer
  • About 10 million ratings
  • Public-leaderboard RMSE 1.21 → 0.82 across eight submissions

My responsibilities

  • Data preparation
  • Feature engineering
  • Model training
  • Evaluation and submissions

Why it matters for a client

Shows measured model iteration and honest evaluation boundaries for a data/ML engagement.

Constraints and trade-offs

Public-leaderboard metric only; do not extrapolate to customer KPIs or production adoption.

Privacy and accessibility

Uses a public movie-rating dataset; no personal user data.

Verified evidence

Public source at github.com/rayklanderman/mrp-2026. Public-leaderboard RMSE 1.21 → 0.82 across eight submissions, as reported on the owner portfolio.

Limitations

Competition and prototype scope; not a production recommender; leaderboard context only.

Technology

PythonLightGBMSVDscikit-learnPandas
View source (opens in a new tab)Discuss a project like this

Updated 2026-11-06. Independent work unless otherwise noted. Links, status and claims are qualified where they have not been independently verified.