/tf_movie_recommender

A machine learning-powered movie recommendation system.

Primary LanguagePythonMIT LicenseMIT

tf_movie_recommender (alpha)

A machine learning-based movie recommendation system built with TensorFlow. It uses a deep neural network to learn the user's movie preferences and predicts ratings for movies the user has not yet seen.

Features

  • Connect to a TMDb account and use the list of rated movies as labelled input data
  • Connect to IMDb and use a CSV-formatted file containing labelled movies as input data
  • Interactive command-line interface
  • Predict movie ratings (between 0 and 9) for any movie that can be found on IMDb (or TMDb, depending on the backend)

Dependencies

Due to some of the dependencies, this project requires Python 2.7. I installed the following into a dedicated virtualenv:

Usage

If applicable, activate the virtualenv, cd into the movie_recommender directory inside the repository and launch python movie_recommender.py. The CLI will guide you through everything else.

To Do

  • Feature inference using an autoencoder. This can considerably reduce the dimensionality of the feature space and improve prediction accuracy.
  • Test and improve model serialization/deserialization.
  • Functionality for updating the model incrementally: Do not retrain the classifier from scratch if a new movie was added to the data set.