Saturday, November 19, 2016

Intro to Recommender systems - Personalized & non-personalized

Hello everybody, happy to see you back. In this post I will focus on the most high level distinction of recommendations: Personalized and non-personalized

Non-personalized

Usually people think a recommendation has to always be tailored to each single individual but that is not entirely true. When we come back to the first post to the example about librarian recommending you a book to read, in one example they may say "this book has been super popular among readers within the last month". This is naturally a recommendation because the librarian is advising (recommending) you what to read.  But this recommendation is not specific for your person. Everybody walking into that library can hear the same sentence.

Non-personal recommendation, as the name says, are the same for everybody and usually they are put together as some form of aggregated statistics. This can be: most bough, most viewed, most shared, most talked about etc. As you can see there are particular areas where these make sense. If you go to a vacation you might want to welcome a recommendation that says "this is the top most bought location for people from your city". Or when you are looking at hotels you may welcome seeing the hotels with best ratings on the top. If you want to find more details on non-personalized here is a course course on it.

Personalized

On the other hand, as this name says, this group of recommendations is particularly tailored to each individual. So every person sees different recommendations. How this groups is technically composed is usually looking at each person's history of behavior. We do that in normal life as well. When you know that your friend has bough their last 10 shirts of a particular brand you can easily recommend them a new t-shirt from this same brand because you know the history what they bought.

Because we look at person's history there is one assumption that has to hold: People's past has to be able to predict their future. In other words if you like a t-shirt today there is a very high chance you will like it tomorrow. Of course, people's taste evolves over time but it is not jumping from positive to negative back and forth in a course of days. If this does not hold you cannot use people's history to give them recommendations. And that makes sense even in normal life, if I buy t-shirts at complete random (just because I find it enjoyable), you will not be able to recommend me with a repetitive success a t-shirt that I would end up liking and buying it.

How to do it?

When we know that the basic assumption that I said above holds, what approaches we can actually take? Let's take t-shirts as an example. The first approach is, we can be looking at features of the t-shirts that I bough in the past. The features would be, for example, color, size, brand, style, material, quality etc. So if you observe from my buying history that I like blue sport shirts that are cotton made with good quality you can then easily decide if to recommend to me (or not) any other t-shirt you come across. One important thing I have to mention is that we have to decide and pick which features are actually important for people when buying t-shirts and then we have to track these feature. If we happen to track wrong features, like we would only track what the t-shirt label color is, we would never be able to make a good recommendation.

The other approach that you can take is looking just purely at similar behavior of people. When we stay with the t-shirt example, if you know that me and my brother bought in the past the same t-shirts in 90% of the cases, then you can safely recommend to me a t-shirt that my brother just bought and I have not came across it. We need to realize that this approach is based purely on similar history of behavior of people. And because the assumption holds there is a very good likely hood that if we have bought same t-shirts quite often in the past we will continue doing so in near future.

In the field of recommender systems these two approaches are called:
  1. Content based (the one looking at features of the t-shirt)
    1. This method is based on anything related to the actual item. Be it metadata like genre, main actor, or the actual content like written text for books.
  2. Collaborative filtering (the other one looking at behavior of people)

I will talk about each of them in more details in the coming posts.

 

Conclusion

Non personalized approach is based on aggregated statistics like most popular, most watched, most bought etc. In non-personalized category of recommendations everybody sees the same. Personalized approach is tailoring recommendations to each individual and it can be based on features of items or on the behavior of people in connection to the items.

No comments:

Post a Comment