I built a simple movie recommender tool using the MovieLens 100k dataset. My goals for this project were:
- Learn about recommendation systems
- Refresh my memory of Python for data as I don’t use it often at work anymore
- Build something interactive with Streamlit
This is truly a simple recommendation system and it isn’t all that useful. At a high level, my methodology was:
- Create a matrix of moves and users indexed on the user. Each movie title gets a column and the user rating is filled in where available.
- For the selected movie, find the correlation coefficient for all other available titles.
- Display a list of titles with the highest correlation to the selected title. This list is filtered to movies with more than 100 ratings by default to reduce the number of false positives, but this can be adjusted using the slider at the top of the app.