These Are the Popular Techniques for Recommendation Engine

Muhammad Danish Farooq
Virtual Force Inc.
Published in
8 min readDec 5, 2022

This blog is a continuation of my previous blog regarding recommendation engines. It discusses most commonly used techniques to generate recommendations.

Contents:

Below tree describe an overview of the blog as well as methods of filtering Techniques & their analysis.

  • Content Based recommendation engine
    - Example
    - Pros
    - Cons
    - Limitations
    - Application of social web(Content Based Filtering)
    - Find Similarity between items
  • Collaborative Filtering Techniques
    - Memory Based
    - —User-User
    - — — Advantages
    - — — Problems
    - — Item-Item
    - — — Advantages
    - — — Problems
    - — Difference between User-User and Item -Item Based f.t
    - Model Based
    - — Analysis Techniques
    - Application of social web (Collaborative Filtering)
  • Difference between Content and Collaborative Techniques
  • Hybrid Filtering Techniques
    - Types of hybrid filtering techniques
  • Difference between Collaborative and hybrid Techniques

Filtering Techniques of Recommender System:

Previously, we have learnt about basic concept and history and working of Recommendation engine, now in this blog we are going to learn about many techniques that are being used by current recommendation engines to filter useful information, depending upon the need and requirements. If you haven’t read previous blog, It is suggested to read it first.

Fig 1. Recommend to choose right path on the basis of filtering the data:(source)
Fig 2. Among so many options, recommend the right one. (Source)

There are three main techniques to filter Data used in recommendation systems.

  • Content Based filtering techniques
  • Collaborative filtering techniques
  • Hybrid filtering techniques
Fig 3. A brief summary of Filtering techniques. (source)

Content based recommendations

Below is quick and dirty definition and illustration of content based filtering.

Fig 4. Needs of content Based recommendation engine:(source)

When documents such as web content, publications and news are to be recommended, content-based filtering technique is the most self-made. In content-based filtering technique, recommendation is formed based on the user profiles victimization options extracted from the content of the things the user has evaluated within the past; things that are largely associated with the completely rated items are recommended to the user.

Fig 5. Recommend article on the content base .(source)

Measured by content attribute of preference and as stability.

Fig 6. Generating recommendations on the basis of preference :( source)

Examples:

News — I prefer stories on Fashion , restaurant reviews

Movies — I prefer Spiritual, comedy

Clothing — I prefer cotton , Green, cheap, casual

Fig 7. Content Based recommendation process:(source)

Pros:

  • No need the data of other Users, No ColdStart and Sparsity
  • Able to recommend item to unique users
  • Able to Recommend New and unpopular items
  • Can provide explanation for recommendation

Cons:

  • Depends on the availability of descriptive data.
  • Content overspecialization
  • Users are restricted to getting recommendations similar to items already defined in their profile.

Content Based RS — Limitations:

  • Not all content is well depicted by Keywords, e.g. images
  • Items represented by same set of features are indistinguishable
  • Overspecialization: unrated items not shown
  • Users with thousands of purchases is a problem
  • New user: No history available
  • Shouldn’t show items that are too different, or too similar

Application of social web:

  • News Dude ( news system ) users. TF-IDF model is then compared with the Cosine Similarity Measure and finally supplied to a learning algorithm (NN).
  • CiteSeer( research paper repository) used heuristics and ML algorithms
  • LIBRA( book recommendation) used a Naıive Bayes classifier

How can you find the similarity between items?

TF-IDF is within the sub-area of Natural Language Processing(NLP). It’s utilized in info retrieval for the purpose of feature extraction in text. Tally the prevalence of every word in an exceeding document and weigh the importance of every word, and calculate a score for that document.

W(i,j) = for the word i in document j

TF = f(i,j ) = Term Frequency = frequency of “i” document ” j” = just count the frequency & it normalize that for a bigger document

IDF = Inverse Document Frequency = Tries to being forward the important word in each document

Fig8. TF-IDF formula :(source)

Collaborative Filtering:

Below visual describe the high level definition of collaborative filtering. As you can see, it relies on other users to make a prediction or recommendation.

Fig 9. High lever visual of collaborative filtering (source)
Fig10. Recommendation on the basis of Analysis of users rating:(source)

Collaborative filtering is commonly used for recommender systems. These techniques aim to fill in the missing entries of a user-item association matrix. We are going to use a collaborative filtering (CF) approach. CF is based on the idea that the best recommendations come from people who have similar tastes. In other words, it uses historical item ratings of like-minded people to predict how someone would rate an item.

Fig 11. Collaborative filtering (recommend items on the same user’s preferences) :(source)

Collaborative filtering has two sub-categories that are generally called memory based and model-based approaches.

Fig 12. Difference between Collaborative Techniques :(source)

Memory Based Filtering technique

User-User Collaborative Filtering:

Finds a set of users who liked the same items by answering the following questions.

  • How Do We Measure Similarity?
  • How many neighbors should we Consider?
  • How do we generate a prediction from the neighbors rating?
Fig 13: recommend to User a on the similarity rating Items of U3:(source)

A popular similarity measured in U.B.C.F is Pearson’s Correlation

Advantages:

  • No knowledge about item features needed

Problems:

  • New user cold start problem, means to have some data for the user to get started.
  • New item cold start problem: items with few rating cannot easily be recommended
  • Sparsity problem: if there are many items to be recommended,
  • User/rating matrix is sparse and it is hard to find the users who have rated the same item.
  • Popularity Bias: tend to recommend only popular items.
  • it is limited to recommending items that are of the same type.
  • It will never recommend products which the user has not bought or liked in the past. So if a user has watched or liked only action movies in the past, the system will recommend only action movies. It’s a very narrow way of building an engine.

Item-Item Collaborative Filtering:

Use the similarity between items (and not users) to make predictions

Fig 14. Item based similarity Metric and Prediction Function : (source)
Fig 15. Recommend items on the basis of rating similarity between Items I and I5 :(source)

Advantages:

  • No knowledge about item features needed
  • Better scalability, because of correlations
  • limited number of items instead of very large number of users
  • Reduced Sparsity problem

Problems:

  • New user cold start problem
  • New item cold start problem

e.g. Amazon, eBay

Difference Between User and Item-Based filtering techniques:

Fig16. Difference between user and item based filtering :(source)

Model-based collaborative filtering system

These methods are based on machine learning and data mining techniques. The goal is to train models to be able to make predictions. For example, we could use existing user-item interactions to train a model to predict the top-5 items that a user might like the most. One advantage of these methods is that they are able to recommend a larger number of items to a larger number of users, compared to other methods like memory based approaches. They have large coverage, even when working with large sparse matrices

Model-based analysis techniques:

Fig17 . Model Based Analysis techniques :(source)

Below are some popular methods being used for this technique.

  1. Association rule mining: Association rules capture the relationships between items based on their patterns of co-occurrence across transactions.
  2. Clustering : K-means and Self-Organizing Map ( SOM ) are the most commonly used among the different clustering methods.
  3. Decision trees
  4. Artificial Neural network
  5. Link Analysis
  6. Regression analysis
  7. Bayesian Classifiers
  8. Matrix completion techniques

Collaborative Filtering Application of social web

some good examples of collaborative filtering found on the social web are below.

  • Ringo ( music albums and artists )
  • GroupLens ( client/server architecture )
  • Amazon ( Product Recommendation )
  • Reddit ( social news aggregation, web content rating, and discussion website )
  • YouTube ( online video sharing and social media platform )
  • Last.fm ( music website )

Difference between Content and collaborative:

Fig18. Difference between Content and collaborative :(source)

Below table provides quick comparison of collaborative & content based approaches.

Fig19. Difference between Advantages and Disadvantages :(source)

3. Hybrid Approaches:

This system approach is to combine collaborative filtering, content-based filtering and alternative approaches in order to achieve higher system optimization to avoid some limitations and issues of pure recommendation systems. The idea behind hybrid techniques is that a combination of algorithms rules can offer additional accurate and effective recommendations than a single algorithm as the disadvantages of one algorithm rule may be overcome by another algorithm. Using multiple recommendation techniques will suppress the weaknesses of a private technique in an exceedingly combined model.

Fig20. A Hawk Eye overview Hybrid recommendation :(Source)

The combination of approaches may be exhausted any of the subsequent ways:

separate implementation of algorithms and combining the result, utilizing some content-based filtering in collaborative approach, utilizing some collaborative filtering in content-based approach, making a unified recommendation system that brings along each approach.

Types of Hybrid Filtering Techniques:

  • Weighted hybridization
  • Switching hybridization
  • Cascade hybridization
  • Mixed hybridization
  • Feature-combination
  • Feature-augmentation
  • Meta-level

Can be explore further from this site.

Difference between Collaborative and hybrid techniques:

At the end, Below table provides and comprehensive summary of Collaborative filtering techniques & Hybrid recommendations.

Fig21. Difference between Collaborative and Hybrid :(source)

--

--