With the transition of businesses online due to the pandemic, there is a significant rise in the users using various web services/apps for formerly offline performed tasks. For example, grocery and medicine supplies were obtained from the local market, while Movies were all about theaters Post pandemic, the grocery/medicine purchase has transitioned to e-commerce websites like Flipkart Grocery, Net meds and streaming movies have moved on to various OTT platforms like Amazon Prime Video, Netflix and others. On a more relatable note, courses have moved from offline tutorials to online platforms like EdX, Coursera, and the rest.
We are often awed by the accuracy of products recommended by e-commerce websites like Amazon or Flipkart that sometimes even accuse these companies of spying on their users. However, these features are a brainchild of a Machine Learning branch called Recommender Systems, a fascinating aspect, comes under the User Interface/User Experience of a web application.
Recommender Systems are Machine Learning algorithms aimed at suggesting relevant items to users. These items range from movies to watch to fun fidget toys. They are both beneficial for the companies as well as the users. From the user’s perspective, they save lots of time since they do not have to browse through the entire web store to find relevant things Often, products are displayed to the user even without them being entered into the search bar. This level of accuracy of the system is obtained with a group map. On the counter side, companies use recommender systems to improve the UI/UX drastically.
Many companies have gained a competitive edge in the market due to the relevant auto-suggestions made by these apps to the users. Some such websites include Netflix and Spotify. Though there are tons of other streaming providers, these led the industry due to the auto-suggestions.
Now the real question that comes up is: HOW EXACTLY DO THESE SYSTEMS WORK?
This blog aims to outline a basic idea regarding the work of these systems, describe their theoretical basis, and discuss their strengths and weaknesses.
There are TWO major paradigms of Recommender Systems:
A)COLLABORATIVE FILTERING METHOD
A collaborative recommendation method uses the past interactions between users and items to generate new recommendations. It is a simple method wherein we make a logical assumption that the pattern detected from the past user-item interactions will be followed religiously by the user. Ther user-item interactions might also contain numerous other parameters like cost, supplier, delivery time, offers, and season of purchase (festive seasons, winter wear in winters, and others). As the number of parameters involved increases, the complexity of the model also increases.
In general, collaborative filtering algorithms fall into two categories: memory-based and model-based approaches. Memory-based approaches directly work with values of recorded interactions, assuming no model, and are essentially based on nearest neighbors search (for example, find the closest users from a user of interest and suggest the most popular items among these neighbors). Model-based approaches assume an underlying “generative” model that explains the user-item interactions and tries to discover them to make new predictions.
When user-item interactions increase, the model may have an edge, but it is unpredictable in the initial stages. It leads to a Cold start problem wherein systems can no longer recommend anything to new users. Although one can overcome using a random strategy where we recommend random items to random users, the user-item relationship builds quickly.
B)CONTENT BASED METHOD
It is a much more comprehensive method of the recommender system wherein we consider additional information about the user to predict what item is relevant for them. Here, we do not use the user-item interactions directly. Instead, we use some features of the item to make predictions. Most of the items in any web store or streaming platform or any other web app for that matter are tagged and later be used to reference other tags and other items.
Read more from below links: