A general understanding of Recommendation Systems and their techniques

B Babu
Machine Learning Reply DACH
5 min readFeb 24, 2023

Recommendation systems have gained significant importance in the e-commerce industry where a wide range of options is generated for users. It is basically an information filtering system that uses feedback and user details to predict the preference of a user towards an item. A recommendation system can utilize users’ past behavior or specifications to provide them with personalized content and services.

Implicit and explicit feedback

For a recommendation system to perform better, it should be allowed to collect and integrate required feedback from its users. This data is related to individual specifications of the users and items, the data generated by the interaction of users with items in the past, and ratings provided by users to an item.

Explicit feedback is in the form of item ratings, which are explicitly given by a user. This data can be represented in terms of numeric ratings or in a boolean like-dislike format. Ratings are profoundly used in collaborative filtering as they are quantifiable and convey the user’s positive or negative preference towards an item. One of the major disadvantages of explicit rating is that it is not easily obtainable and hence recommendation system usually relies on implicit feedback.

A lot of user behavior, which is not explicitly expressed by the user, is considered implicit feedback. Even though implicit feedback is more readily available, compared to explicit feedback, it cannot give any information about the negative preferences of users. If a user has not interacted with an item, it is not conclusive that the user dislikes it.

Both implicit and explicit feedback have their own pros and cons. It depends on the machine learning algorithm and the availability of data to opt for the right feedback for your recommendation system.

Recommendation system techniques

Figure 1: Different techniques to build a recommendation system

The most common approaches to build a recommendation system are shown in Figure 1 above, namely collaborative filtering, content-based filtering, and hybrid approach. The collaborative filtering is divided into memory-based and model-based approaches. The memory-based approach is further classified into user-based and item-based approaches. When content and collaborative filtering are used in arecommendation systems, then it forms a hybrid system. A combination of memory-based and model-based approaches in a recommendation system is called a hybrid approach in collaborative filtering.

Content-based filtering

Figure 2: Content based recommendation system

Content based filtering uses user and item descriptions or features to filter the information and provide recommendations to the users. It is assumed that, if a user likes an item, then other items with similar attributes might also be of interest to the user. A simple depiction of the content-based filtering is displayed in Figure 2 above. Here Item A and Item B are similar due to their specification and hence grouped together. Since User X has preferred Item A in the past, the similar Item B is recommended to the user. Usually, a user profile is created based on the items liked in the past and then compared with the specification of other items. If the similarity between the user profile and a particular item is strong enough, then the item is recommended to the user.

Collaborative filtering

Figure 3: Collaborative filtering recommendation system

The collaborative filtering approach is one of the most popular techniques in the recommender system. The items are recommended to users based on the likeness of user preference. Collaborative filtering analyses different users and their preferences towards an item and tries to identify the correlation among them. If users have given similar ratings and prefer the same set of items in similar way, then they are considered similar users. Here it is assumed that if two users highly prefer the same set of items, then there is a high probability that they may like other items in a similar manner. The similar users are grouped together, and the items preferred by them are recommended to each other. This method is depicted in Figure 3, where Item A and Item B are preferred by both users, User X and User Y, and hence considered similar users. Now the Item C, which has not been rated by the User Y but highly rated by similar User X, is recommended to the User Y.

Memory and model-based filtering

The memory-based approach can be classified into user-based, and item-based approaches. In a user-based approach, the users are grouped based on their preferences forming a user neighborhood. An item is recommended to the user if it is highly preferred by users in the same group. The similarity between the users in the same group is calculated using the correlation between the rating vector of the main user and other users. In the item-based approach, similar items are grouped together and form the neighborhood. A user is recommended with items that are in the same group as a highly preferred item.

In model-based filtering, machine learning algorithms are used, and the model is trained to predict the possible user rating by a user on an item. One of the methods is the latent factor model, which gives the rating based on latent factors which are inferred from the rating pattern. One of the most common methods to implement a latent factor model is by using matrix factorization. It represents items and users in vector format of latent factor. Matrix factorization can be used for both implicit and explicit Feedback.

Hybrid recommendation system

A hybrid recommender system combines collaborative and content-based filtering approaches to recommend items to the users with improved accuracy and efficiency. This approach overcomes the shortcoming of other techniques used in the recommender system. For instance, the hybrid approach handles the cold start and sparsity problem of collaborative filtering by providing recommendations using content-based filtering. On the other hand, it also solves the overspecialization problem.

Conclusion

In recent years, recommendation systems have generated a large number of benefits such as assisting users with improved decision-making processes in reduced time, enhancing customer experience and increasing conversion rate and revenue for online businesses. Excessive information and choices in today’s digital world has necessitated the implementation of an intelligent system that can recommend items to users based on their preferences, saving time and cost.

Recommendation systems come with several limitations such as scalability, sparsity, cold start and overspecialization problems. These limitations can cause inaccuracies and poor performance of the recommender system and hence need to be handled and evaluated carefully.

--

--