Recommender Systems in Machine Learning

Learn via video courses
Topics Covered

Overview

Machine learning algorithms used in recommendation systems suggest related products to the target user. By providing users with a customized experience and assisting them in connecting with the product to their preferences, these systems hope to boost the product's popularity and ratings.

For example, streaming services like Netflix, Hotstar, Hulu, and Youtube or online shopping services like Amazon, Myntra, and Flipkart use recommender systems.

What are Recommender Systems?

recommander-systems-in-ml

Recommender systems are a subset of data filtering systems that suggest similar products to the user based on previous products using Machine Learning algorithms.

Recommender Systems in Machine Learning work with a huge amount of data to filter out suggestions efficiently. They can be considered the most profitable application of Machine Learning for businesses because of the user-specific approach and their potential to expand in various categories like text, videos, movies, books, e-commerce products, etc.

For example:

You are using Spotify and listening to One Direction. Now, based on this, your daily mix will have songs from One Direction along with similar artists like 5 Seconds of Summer, Harry Styles, Zayn Malik, etc.

Use-Cases Of Recommendation System

  1. User-Specific Content:
    Since the suggestions are based on users' likes and dislikes, the content generated will be different and personalized for each user.
  2. Categorisation:
    Based on the kind or features of the product, it can be categorized accordingly, and it can have more than one tag.
  3. Automated Results:
    While using search engines or similar platforms recommender systems suggest similar searches. This, in turn, increases the time spent on the platform because of the curiosity generated by automated results, as depicted in the below picture. recommander-systems-in-ml-1

How do User, and Item Matching Done?

Extending the previous Spotify example:

  1. You are the targeted listener, and currently, your interest is in the artist One Direction.

  2. Let us consider that One Direction is in your Top 50 plays, making it the target artist.

  3. Now, the Spotify Recommender system will look at other users having the same target artist. These users are similar users.

  4. The similar users chosen will have varied top artists like Taylor Swift, Zayn Malik, Niall Horan, Harry Styles, etc.

  5. Based on the most number of common or most liked artists by the similar users, a new dataset is curated for the targeted listener. Let us consider that the users have liked Taylor Swift 5 times, Harry Styles 3 times, and Zayn Malik 1 times.

  6. The top artists, i.e. Taylor Swift and Harry Styles are chosen as the suggested artists to the targeted listener.

    recommander-systems-in-ml-2

Types of Recommendation System

  • Popularity-Based Recommendation System:
    As the name suggests, this recommender system in machine learning uses popular products and recommends them to the users. It is not necessary for the specific user to be interested in it. Popularity Based Recommender System is based on the global interests of the users.

    The advantage of this is that if a big population like a certain product, then it can be assumed that the entire population might like it too. This gives it visibility and reach and in turn, increases popularity. The only drawback is that it is not personalized.

    For example, Spotify has curated Top Charts for users.

    recommander-systems-in-ml-3

  • Classification Model:
    Classification Models extract features of products to be suggested to the target user and compare them to the features of the products liked by the user. After comparing, the products with the most similarities will be recommended, or else they will be discarded. This Model always comes up with a binary output for all products to be compared.

    Classification Model requires big data to work on to identify the target users' likes and dislikes.

  • Content-Based Filtering:
    Content-Based Recommender System works with previously searched user content to generate new suggestions. In this scenario, content can be product features, attributes, or tags.

    For example, if we are looking for Blue Cotton Shorts on Myntra, then here the content or tags are 'blue', 'cotton', and 'shorts'. Here, the recommender system will pick up any one or more attributes and suggest clothes accordingly. recommander-systems-in-ml-4

  • Collaborative-Based Filtering:
    Collaborative Filtering recommender systems in machine learning work on two parameters - Similarity between users and similarity between products. Based on these results, suggestions are drawn to the user. recommander-systems-in-ml-5

  • User-Based Collaborative Filtering:
    User-Based Collaborative Filtering in machine learning is a method to predict the products that a user may like based on the ratings submitted to that produced by other users whose preferences are similar to the target users. recommander-systems-in-ml-6

Evaluation of a Recommender System

To measure the success of a model, we need evaluation metrics. Based on the evaluation parameter, we can decide if the model can be used or not.

Let us look at the types of evaluation metrics:

  1. Metrics-based evaluation:
    We can evaluate the quality of the outputs if our recommender system is built on a model that generates quantitative data like score prediction or probability using Metrics based evaluation.

    • Similarity Metrics:
      When using Similarity metrics for evaluation, the metadata for an item is known, and we can easily recommend new products to the user. For example, if we watch movie A, the recommender then suggests another movie based on the metadata tags and the similarity between the suggested movie and movie A. recommander-systems-in-ml-7 Cosine Similarity, Jaccard similarity, Manhattan Distance, Euclidean distance, and Pearson correlation coefficient are subsets of similarity metrics.

    • Predictive Metrics:
      When we have non-binary parameters, and we have to compare the ratings by a recommender system to generate suggestions, we use Predictive Metrics.

      Mean Squared Error (MSE), Root Mean Squared Error (RMSE), and Mean Absolute Error(MAE) come under Predictive Metrics.

    • Classification Metrics:
      Classification metrics determine the ability of recommender systems to make decisions. They are a strong choice for operations like judging if products are significant to the user or not. Classification Metrics can be categorized into Decision Support Metrics and Matthews correlation coefficient (MCC). recommander-systems-in-ml-8

    • Ranking-based metrics:
      When we have a model that returns values according to rank or a sequential list of items, we use Ranking based metrics.

      The types of Ranking based metrics are - Average precision (AP), Mean average precision (MAP), mean reciprocal rank (MRR), etc.

  2. Human-based evaluation:
    Even if the values in the metric system are high, we need to know the compatibility of our model to build it and whether it aligns with our interests or not.

    We need the model to have diversified and accurate results. Another aspect to be considered while evaluating is the relevance to the user and how they understand it.

    These parameters can be judged by humans only.

Conclusion

  • Recommender Systems in Machine Learning suggest similar products to users based on their browsing history.
  • Recommender Systems can be Content-based, Collaborative, Item Based, User-based, or Popularity based.
  • Evaluating based on metrics or human judgment determines the success of the recommender system.