How recommendation systems influence our consumption
Reading time: 7 min
“Customers who bought this also bought that” – almost everyone knows them, the suggestions that various online stores make to us as soon as we look at a product. As one of the earlier artificial intelligences, the so-called recommender systems are one of the best-known examples in the field of e-commerce. But how do these systems work, what are the differences, and have they evolved since then? Our guest author Mirko Ulrich, mmmake AI Engineer, gives a first introduction in his article about this topic.
Content
- Recommendations in reality vs. recommendations online
- Recommendations through feedback: explicit & implicit
- Recommender systems – different approaches, similar results?
- Content-based recommendations
- Recommendations through collaborative filtering
- The solution: The best of all worlds
- More information, more good!
Recommendation systems, also known as recommendation engines or recommender systems, are an integral part of many online services. What would Amazon, Netflix or Spotify be without the recommendations for their respective products?
Recommendations in reality vs. recommendations online
If you imagine the perfect retailer from the customer’s point of view, the following characteristic is probably not missing: A knowledgeable person who knows their products inside out and can recommend just the right jewels from their repertoire. It does not matter whether they are regular or new customers. The well-versed eye of the ideal dealer reads the wishes of the rummagers from the lips.
But how do we integrate this feature into digital services? We simply imitate this ideal sales person!
People with similar tastes will make similar decisions in similar situations. This premise forms the basis of recommender systems. A:e user:in of a service is in a certain situation – so the need is already defined. Based on the history of this and all other users and taking into account the knowledge of the offered products (items), a reasonable suggestion can be made to the user.
There are four different approaches to recommender systems, which differ in the way they define when users or items are considered “similar”.
Recommendations through feedback: explicit & implicit
The taste of a user:in is explained by the feedback of the same. Here we divide into two categories: explicit and implicit feedback.
Explicit feedback, for example in the form of the ubiquitous 1-to-n star ratings, is the most valuable information here. The User:in indicates on a scale how satisfied he/she was with the selection or recommendation. However, this form of feedback requires commitment from the user, which is often lacking. The reasons may be many and varied, but the result is clear: only a fraction of customers give ratings – when asked – about the products they have consumed.
There is nothing providers:inside can do about that. However, they can take advantage of implicit feedback! Every interaction of a user with an item provides information: Which items were viewed, in which categories were they searched, what ended up in the shopping cart before which item was finally purchased? In the simplest case, this implicit feedback can be reduced to the binary statement: Did a:user:in interact with an item?
If one visualizes the image of the ideal Krämer:in, then, for example, based on the observation of a browsing customer:in, exactly the right recommendation is made or, based on the customer:in’s evaluations, that object is selected which perfectly complements the previous experience.
Recommender systems – different approaches, similar results?
To elaborate on the different approaches of recommender systems and explain them in a simpler way, the following example serves:
User Alex is looking for a movie on a streaming platform. Alex’s history reveals that “Reservoir Dogs,” “Pulp Fiction” and “Kill Bill” have been well received.
Content-based recommendations
Here, items are recommended that have a high similarity to items and could therefore appeal to the user. There doesn’t even need to be a record of the user:in for this to happen. When queried about movie tastes, Alex gives a “Fand-ich-quite-nice” for movies like “Pulp Fiction” and “Reservoir Dogs.” The system then focuses on these items and delivers similar content.
But when are items similar? This question can be answered in various ways – mostly using different technologies: With the movies given by Alex, the assumption is that movies by Quentin Tarantino might fit quite well. Or maybe movies from the nineties? Or other works produced by Lawrence Bender? These are examples of rule-based recommendations. In most cases it is intuitively understandable by which connection an item was recommended. But this can be done by a well-informed user alone.
Embeddings can be used to describe items as vectors – so-called feature vectors. Here, properties of the items are expressed by numerical values. The described vectors are used to find similar items. Embeddings can be created, for example, using natural language processing methods on the summary or description. Deep learning models, a flavor of machine learning, can be trained on large data sets to make such embeddings based on the actual content.
Regardless of how these embeddings are created, ultimately it is possible to determine how similar works are to an intuitive group through a metric. And even more important: Which (possibly unexpected) items can be presented to the user:in. In this way, Alex could learn about “Natural Born Killer”, whose basic story also comes from Tarantino, but was realized by Oliver Stone.
The big disadvantage: With the approach described so far, the user:in is almost completely ignored, apart from the initial query about what he/she liked. The next approach changes this.
Recommendations through collaborative filtering
In collaborative filtering approaches, the focus is on the users and their history. The records of the user:ins allow to describe them by embedding as well. Once the vectorial representation is available, a:e similar:er other:user:in can again be determined using various metrics. Items that this:user:in was satisfied with are likely to please the original user:in as well. In this way, Alex could become aware of Robert Rodriguez.
Based on the usage behavior of the users, it can be determined which users are similar. However, this approach can also be applied in more detail. Let’s get back to Alex in the (virtual) video store: Even though the soft spot for Tarantino is well known, it probably wouldn’t be the right time to suggest “Django Unchained” to him while he’s watching “Toy Story”, “Ratatouille” and “Finding Nemo”.
So it is always worthwhile to consider the current user:inside behavior in a session. By comparing the sessions, the current need of the user:in can then be captured. By cleverly combining the global history of a User:in with the current session, it is possible to convey to the User:in that both common and acute needs are being addressed.
In this way, you might find that Alex is looking for something to watch with his nieces and nephews. Thus, “Zoomania” would probably be a wonderful recommendation.
Gray sheep and cold machine – the drawbacks of collaborative filtering
Of course, every approach has its weaknesses:
The chosen example with Alex’s preference for Tarantino movies is quite a thankful scenario. The preference is so specific that it is pretty clear what the user:in can be picked up with. There are also nearby next addresses, such as Rodriguez or the Hong Kong cinema of the 1970s and 1980s. But what do we know about a user:in with a penchant for romantic comedies, MCU and Michael Bay? These are so few specific references that the user:in stands out by nothing – inconspicuous like a gray sheep.
This is a serious problem, as such user:ins are drawn to the mainstream through collaborative filtering. If many such mainstream-centric records are collected over a long period of time, there is a danger that a clever system will degenerate into a banal top ten list.
Further, there is the question of how the system should handle new items. In the case of strict collaborative filtering, the new offers are practically invisible. Since no one has interacted with it yet, it cannot be recommended. New customers can pose similar challenges to the system, because if there is no history, what is there to match against? This phenomenon, known as“cold start,” must be overcome so that recommendations can be relevant to all customers.
The solution: the best of all worlds
Although content-based approaches ignore user:inside history, they may be the key to solving the cold-start problem. Assuming that a product line’s information was sufficient to measure the similarity of individual items via a metric, new items could be recommended along with the items to which they are most similar. This would allow user:inside behavior to be taken into account and new offers to be incorporated.
The gray sheep issue could be addressed by combining multiple subsystems for recommendations. In addition to all-time favorites, there are also, for example, genre-specific recommendations or those that are precisely not in the top n products. This provides the user:in with a broader offer and at the same time gives the system new information to respond more precisely to personal needs in the future.
More information, more good!
The approaches described so far show a development path in which the focus is initially on the product and then shifts to the user. However, collaborative filtering uses only the obvious history. The more information about the user and their context, the more specific the recommendations. It could also respond to anomalies in usage behavior. For example, if an unusual context of use (time, scope, …) indicates new circumstances of the user:s life or a problem with the security of the account.
Time does not pass anyone by without leaving a trace. No one is the same person they were ten years ago – or ten weeks ago? Nowadays, the world is changing much faster and so is consumption. Which consumption was formative for personal taste, what can be attributed merely to a phase or a trend? To stay with the example user Alex: What is the time span between a conspicuous accumulation of romantic films and the regular consumption of children’s films? The class of time-aware recommender systems deals with such questions.
“You had my curiosity, now you have my attention.”
Large multi-category stores and streaming providers have established themselves, among other things, by providing useful recommendations to their users in a convenient way. Every provider of products or services is faced with the question of what exactly their customers want when they come to them. What other items would be best to propose? With our Data Science Services we support and advise you with individual solutions for recommendation systems of your online services and implement them. Talk to our experts!
How recommendation systems are technically implemented and what you need to consider, you will soon learn in Mirko’s next article.