Skip to content

Movie recommender system with content based filtering

Notifications You must be signed in to change notification settings

sujoung/MovieRecommender

Repository files navigation

Movie Recommender system

  • Language : python3
  • Source : tmdb 5000 database from kaggle, movielens data(ml-latest-small)
  • Description : This is a movie recommender system. When you execute program, system asks you what movie you like and dislike and based on your preference, it recommends similar movies. For evaluation, actual users' ratings dataset is used. Using Pearson correlation coefficient, the missing parts of the rating data are filled.
  • This is an indivisual project in Uppsala University's Information Retrieval Course.

There are two types of models (Choose one)

  • cosine similarity model : extract features, find N most similar movies, concatenate
  • k-means clustering model : integrate feature information into one string, clustering

There are two types of evaluation

  • Precision, Recall, F1 score
  • Mean average precision

If you have only ".py" files

  1. Please download .csv files from
  1. Type commands below on terminal
python3 doc2vec_features.py
python3 train_kmeans.py
python3 make_dummy_eval.py
python3 fill_dummpy.py
  • It takes quite long time, prepare a movie and watch it...
  1. Execute the main file
python3 sujoungs_recommender.py

If you already have everything (.model, .pkl)

simply execute the main file

python3 sujoungs_recommender.py

Make sure that you have all the .csv files needed

  • tmdb_5000_movies.csv
  • tmdb_5000_credits.csv
  • ratings.csv
  • links.csv

Packages used:

  • numpy
  • pandas
  • json
  • gensim
  • scikit-learn
  • nltk
  • heapq
  • yellowbrick

About

Movie recommender system with content based filtering

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages