Skip to content
Make a recommendation engine using ranked based, user-user based collaborative filtering, content based, and matrix factorization
HTML Jupyter Notebook Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
data
.gitignore
LICENSE
README.md
Recommendations_with_IBM.html
Recommendations_with_IBM.ipynb
project_tests.py
top_10.p
top_20.p
top_5.p
user_item_matrix.p

README.md

Recommendation-with-IBM

Make a recommendation engine using ranked based, user-user based collaborative filtering, content based, and matrix factorization

In this project I have analyzed the interactions that users have with articles on the IBM Watson Studio platform, and made recommendations to them about new articles that I think they will like.

Your Tasks Your project will be divided into the following tasks

I. Exploratory Data Analysis

Before making recommendations of any kind, I explored the data that I was working with for the project. I Dove in to see what I could find. There are some basic, required questions that I answered about the data I am working with throughout the rest of the notebook.

II. Rank Based Recommendations

To get started in building recommendations, I first found the most popular articles simply based on the most interactions. Since there are no ratings for any of the articles, it was easy to assume the articles with the most interactions are the most popular. These are then the articles we might recommend to new users (or anyone depending on what we know about them).

III. User-User Based Collaborative Filtering

In order to build better recommendations for the users of IBM's platform, I looked at users that are similar in terms of the items they have interacted with. These items were then recommended to the similar users. This would be a step in the right direction towards more personal recommendations for the users.

IV. Content Based Recommendations

Given the amount of content available for each article, there are a number of different ways in which someone might choose to implement a content based recommendations system. Using NLP skills, I came up with some extremely creative ways to develop a content based recommendation system.

V. Matrix Factorization

Finally, I completed a machine learning approach to building recommendations. Using the user-item interactions, I built out a matrix decomposition. Using the decomposition, I got an idea of how well I can predict new articles an individual might interact with (spoiler alert - it isn't great). I finally discussed which methods I used moving forward, and how to test how well the recommendations are working for engaging users.

Citations:

  1. https://github.com/wenshihao1993/Udacity-DSND/blob/master/Experimental%20Design%20%26%20Recommandations/IBM%20Recommendation%20System%20Project/Recommendations_with_IBM.ipynb

  2. https://github.com/karthiktsaliki/IBM_Recommendations/blob/master/Recommendations_with_IBM.ipynb

You can’t perform that action at this time.