Competition entryProgramme final project (optional)

Movie Recommendation Project

Predicting unseen movie ratings from about 10 million user ratings

A hybrid recommender built for an ExploreAI Academy community competition on Kaggle, as the optional final project of the ALX Data Science programme. It combines 50-factor SVD with LightGBM on the full dataset and improved the public-leaderboard RMSE from 1.21 to 0.82 over eight submissions.

At a glance

Status
Competition entry
Type of work
Programme final project (optional)
Context
ALX Data Science · ExploreAI Academy community competition on Kaggle
Years
2026
Categories
Machine Learning & Data

Technology

  • Python
  • LightGBM
  • SVD (matrix factorisation)
  • scikit-learn
  • Pandas
  • NumPy
  • SciPy

Problem

Predict the rating a user would give a film they have not rated yet, using their rating history and information about the films.

Who it’s for

A course competition scored by RMSE. The same approach applies to recommendation features in streaming and e-commerce catalogues.

What I built

  • A 50-factor SVD model that captures user and movie latent factors from the rating matrix.
  • A LightGBM model that takes SVD outputs together with engineered features, making it a hybrid of collaborative and content signals.
  • A feature set reported at 156 features, covering collaborative signals, content-based encodings and temporal patterns.
  • Training on the full dataset of about 10 million ratings, without sampling.
  • Eight leaderboard submissions, each tested against the previous best.

Architecture

  1. DataAbout 10 million user–movie ratings plus movie metadata.
  2. Collaborative filtering50-factor SVD on the rating matrix.
  3. FeaturesSVD outputs combined with engineered collaborative, content and temporal features.
  4. ModelLightGBM gradient-boosted regressor predicting the rating.
  5. EvaluationRMSE, checked through public-leaderboard submissions.

Engineering challenges

Working at full scale

The models trained on all of the roughly 10 million ratings rather than a sample.

Combining two modelling families

SVD factors become inputs to a gradient-boosted model, so the model can learn from both collaborative and content signals.

Results

Results for Movie Recommendation Project with their evidence source
MeasureValueEvidence
RMSE (baseline)1.21Kaggle public leaderboard
RMSE (best)0.82Kaggle public leaderboard, 8 submissions

Limitations

  • The 0.82 figure is a public-leaderboard score. It is not a final private-leaderboard result or a production metric.
  • How much each feature group contributed to the final score has not been broken down here.