Join Lillian Pierson, P.E. for an in-depth discussion in this video Introducing core concepts of recommendation systems, part of Introduction to Python Recommendation Systems for Machine Learning.
- [Instructor] We'll start first by looking at the fundamentals of recommendation systems. The fundamental purpose of a recommendation system is to find and recommend items that a user is most likely to be interested in. I'm sure you've used recommendation systems if you've used sites like Amazon, Apple Music, or Netflix. Recommendation systems are used to make product recommendations at sites like Amazon.com and Etsy. Netflix uses recommendation systems to make movie recommendations.
If you're an Apple Music user, then you've probably used its recommendation system to find new songs and artists that you like. There's also social connection recommendations like the ones you see on Facebook, LinkedIn, or even Instagram. In this course you're going to learn about collaborative filtering. Collaborative filtering systems recommend items based on how well users prefer those items over others. It's based on crowdsourced user preference data.
There are two approaches of collaborative filtering, user based and item based. On this slide, you can see an example of item-based collaborative filtering. You can think of item-based collaborative filtering as in when you go on an ecommerce website and you see items recommended to you in terms of people who liked this product also liked X, Y, or Z product. Item-based systems are known as item-to-item systems.
They generate recommendations based on similarity between items with respect to user ratings of those items. Let's look at this drawing. We can see here both user D and user B have given high ratings of four stars to the cellphone and the cellphone case. And if we look over at user A, we see that A has given a four-star rating to the cellphone. So based on the similarity of preferences between user B and user D and the fact that we know user A really likes the cellphone, we'll recommend to her the cellphone case as well.
In this course, you're going to see how to use Pearson correlation as the driver for an item-based recommender. User-based collaborative filtering systems are systems that recommend items based on similarity between users. For our example where an ecommerce site wants to recommend an item for purchase, the recommendation would come in terms of customers who are similar to you liked X, Y, or Z product so you might like this also. Let's look at this drawing here. If you look at the attributes of age, net worth, and martial status, you can see that user B and user D are quantitatively the most similar.
When it was offered to him, user D accepted the offer for his life insurance policy. So based on this fact and the similarity between him and user B, we're going to recommend the life insurance policy to user B as well. This is an example of how user-based systems might work. In chapter two, you'll learn how to build a user-based collaborative filtering model by using logistic regression as a classifier. Separate and apart from collaborative filtering, there are content-based recommenders.
These recommenders recommend items based on their features and how similar those are to features of other items in a dataset. So if you look at this example here on the screen, you can see that Austin and Miami are more similar to one another than either of them are to Spokane, Washington. So we could conclude that a person who loves Miami might also love Austin based on the similarities between temperature, cost of living, and WiFi speeds of both places.
Pandora Radio uses content-based filtering to make its music recommendations. Later on, you're going to see how to make content-based recommendations using the nearest neighbor algorithm. But first let's look at the most simple type of recommender there is out there, those are popularity-based recommendation systems.
- Working with recommendation systems
- Evaluating similarity based on correlation
- Building a popularity-based recommender
- Classification-based recommendations
- Making a collaborative filtering system
- Content-based recommender systems
- Evaluating recommenders