The project explores a dataset from IBM and builds various recommender systems to recommend articles to new and existing users.
The main file is a Jupyter Notebook called Recommendations_with_IBM.ipynb
. The notebook has four main sections:
- I. Exploratory Data Analysis
- II. Rank Based Recommendations
- III. User-User Based Collaborative Filtering
- V. Matrix Factorization
Various recommendation models was tested and the accuracy of recommendations may not be good as there is a large imbalance in the dataset. Content based recommendations were not included but may provide better recommendations, especially for new users. A/B testing can be used to test the various recommender systems to which ones gives a better click through rate, meaning more relevant recommendations for the users.
Libraries and virtual environment details are located in the Pipfile
which can be used with pipenv
.
Thanks to Sanjeev Yadav for his article on Medium when I got stuck. Also, Purva Huilgol, for her Medium article on Accuracy vs. F1-Score.
Project based on Udacity Data Science Nanodegree.