The internet is evolving day by day, and when users shop online, they are flooded with thousands of results, leaving them in a dilemma to choose the best possible product that suits their requirements. Have you ever thought of how Google Ads precisely knew what you need and display all those products in their ads or how Netflix gives you movie recommendations you might be interested? Yes, everything is made possible through an exciting concept called recommender systems.
What is a Recommender System?
A recommender system gathers every bit of information about the users, sorts them out, studies, and helps in providing an immersive user experience. Say, for example, if your recent online activity shows that you have purchased NYY accessories including T-shirt, cap, keychain, etc. or searched for the best NYY moments or bought tickets to the next NYY match, then it all sums up one conclusion that you are a hard-core New York Yankees fan.
A recommender system knows you want to go to the next New York Yankees (NYY) baseball match.
So next time you visit an online store like Amazon, you’ll be shown all the deals and offers related to NYY merchandise, and you’ll also start receiving all the latest news about the Yankees. This is all possible because of the recommender system. The main aim of a recommender system is to provide users with a meaningful recommendation for products and services based on their interests.
How Are Recommendation Systems Build?
Today most of the modern methodologies used to build these recommender system models are mainly based on collaborative filtering and content-based filtering along with incorporating the other recent advancements in machine learning space for enhanced user experience.
Collaborative filtering is one of the most popular filtering techniques that recommend products based on an opinion from other users having a similar taste. On the other hand, the content-based filtering mainly relies on the purchase or search history of that particular user. To find common ground between these two filtering techniques, another filtering technique called hybrid filtering was introduced, which brilliantly combines different filtering techniques to increase the accuracy of the recommendations made.
Because proper tooling and a plan are always essential.
How Does A Recommendation System Work?
The modus operandi behind the recommender system is simple to understand and is as follows:
1. At the fundamental level, it collects user data
2. Sort, analyze the data and identify the common patterns
3. Extract insights and meaningful, relevant information from the data
4. Mix and match data to calculate the probabilities based on the patterns
5. Provide the best recommendations to end users
There are plenty of articles covering the basics of how popular filtering algorithms work if interested, a good read for example is the recent article of Baptiste Rocca in Towards Data Science (link). However, the filtering is just the start of a complete recommender system design. For example, among the many other aspects to consider are the evaluation mechanisms, interface design, and functional design considerations.
The popularity of Canvas for Supporting Design Tasks
It was the release of the business model canvas in 2008 by Osterwalder that brought the concept of designing canvas into the limelight and today they are being used for developing various applications including gamification models etc.
The main reason that canvases are so popular and can prove to be very helpful while creating design tasks is because they describe complex objects visually instead of simple text documents. A canvas structures every component in several blocks, hence, taking a look at the chart will give some sense about the gist of the project.
The Recommender Canvas (Template)
Why Should You Use the Recommender System Canvas?
The recommender system canvas model is based on Osterwalder Business Model released, and it helps design engineers, project managers in identifying the areas that are relevant to the design of the system. The model is divided into six different blocks that form the core of the recommender system design. It provides system engineers with the first critical entry point in developing a full-fledged business model. A recommender system canvas is a base from which people design intriguing business models and system designs for online news websites, computer games, social media channels, and even stock trading support systems.
The main reasons a recommender canvas should be used are:
· The recommender system analyses the user behaviors, choices and opinions and hence creates a personalized experience for the customer
· The recommendations help the customer in taking the right decision, and this consumer satisfaction leads to customer retention.
· It helps to find out how similar products are ‘similar’ or ‘different’ to each other, and eventually, they might appeal to the same users who bought it earlier.
· In the end, a good recommendation system helps to generate more revenue by customer retention and sometimes results in additional or more frequent buying.
Recommendation System Design
The recommender system design is built based on six areas of research as described below:
ii. Domain Characteristics
iii. Functional Design Consideration
iv. Filtering Technique
v. Interface Design
vi. Evaluation & Optimization
Let’s look at a detailed description of each area:
The Recommender Canvas (Guide)
This is where the recommender system goals are identified and prioritized based on the use-cases that are constructed in collaboration with the key stakeholders. For example, if you are building a recommender system for an eCommerce website, then the apparent goal is to provide recommendations to the users based on their taste or based on other people purchase decisions who have a similar feeling. These goals also help in increasing direct sales and keeps the user engaged all the time. It also helps in creating a direct connection with the customer and in building a loyal community bounded to the organization. But there might be multiple goals in one system (e.g., consider also objectives such as accuracy, coverage, confidence, trust, novelty, serendipity, diversity, utility, risk, robustness, privacy, adaptability, scalability, and behavioral change).
ii. Domain Characteristics
This section identifies the characteristic which may influence the design of the recommender system. For example, the role of system users, along with the type of data available and the stability of the data will influence the recommendations to a great extent. The main reason for identifying the role of system users is to ensure that the recommendations are aligned based on user preferences. Next, the data sources need to be identified and tested thoroughly for the integrity, availability, and quality of the data. Data collected includes the purchase information of the user, social information, demographic information, and context-based data. The two main challenges in sourcing the data are the sparse data problem and cold-start issues. A sparse data problem is nothing but when you have a large number of users and products and when you have data for only a few reviews, ratings and purchase history. Which leaves a more significant problem of not able to provide the best recommendations to the users. The cold start problem is another issue where you need to handle the lack of data problem when you introduce a new product or new users added to the system.
iii. Functional Design Consideration
This section determines the kind of functionality being built into the recommender system model and should take into account every aspect of the design including the degree of personalization, degree of user control, interactivity with the customers along with the restrictions that need to be enforced, etc. This section purely defines the functionality relationship between the user and the recommender system.
The degree of personalization should be identified as to whether the system is going to provide a personalized recommendation to individuals or sector-based recommendation or provide a standard recommendation for everyone. The next important aspect is the degree of user-control to be provided to the user to influence the operation of the recommender system. The users can be either allowed to choose the way they need to receive the recommendations or allowing them to maintain a preference profile that would define their recommendation preferences.
Another design consideration to be taken note of in this section is about the level of interactivity needed while providing a recommendation. Generally, recommender systems only knew that a user likes a product, but don’t have information about why he wants or like that product. This is where an interactive approach would enable the system to fine-tune its recommendations to a great extent. Say, for example, if the user is allowed to provide feedback over the recommendation, it will enable the system to narrow down the results based on his inputs effectively.
iv. Technique selection
Based on the goals set for the recommender system, an appropriate filtering technique need to be chosen for the system. It can be either collaborative filtering, content-based filtering, demographic and context-based filtering, knowledge-based filtering, or hybrid filtering.
Consider whether the selected filtering techniques can scale up, and then the dimensionality reduction techniques (e.g., singular value decomposition) are valued accordingly before choosing a technique for the system under consideration.
In the case of a hybrid filtering technique, the implementer may also choose to apply a hybrid model. Finally, implement some soliciting techniques as well that will help you to elicit preference data from users.
v. Interface Design
This section best describes how the recommendations are presented to the user. Care should be taken to define the type of recommendations to be provided, single recommendation list, or multiple separate recommendation lists. The success of a recommendation system primarily lies on how the recommendations are presented to the user, which includes presentation modularity, item organization, the notification context, content, and the explanation provided.
vi. Evaluation & Optimization
The success of a recommender system can be determined only through proper evaluation and optimization. In this section, the evaluation metrics are chosen that will help in evaluating how the system has performed over the set goals. Optimization parameters are also chosen that help in fine-tuning the system based on the response from the users. Finally, the section also concentrates on the security aspect as well as it provides recommendations for the protective measures that need to be implemented to safeguard the recommender system from hackers.
A Word Of Advice To Potential End-Users Of The System
In case if you want to build a recommender system of your own, then it takes a lot of time and effort to build as you need skilled Data Scientists, Data Engineers, and Web developers to build from scratch.
But many eCommerce and retail companies are making use of these recommender systems to provide their end users with recommendations that are based on their interests. Recommender systems can be an enhanced experience for any end users who want to use it for many of the following applications:
· Any Knowledge-Based information systems
· Developers & Sellers of Computer Games
· Intelligent Stock Trading Systems
· E-Commerce Platforms
· New Social Media Platforms
· Business Owners Developing State-of-art Websites & Web apps
· Technology-driven smart buyer platforms
How To Apply The Model?
· Never assume that you will be right in the first time, and hence, evaluation and testing are critical before you put the model into action.
· Make sure to put the model to the test with some users and evaluate the results obtained from the analysis of the test results.
· Tweak the model until you get the desired results, and only when you are satisfied that the model is fit to go live, you can launch the model into action.
The Final Word
Recommender systems open the door for new opportunities to aggregate, analyze, and present suggestions to users based on their area of interest. In this article, we have presented a recommender system canvas that will help managers, engineers, and businesses in building a high-level structured overview of a recommender system to boost their sales.
Recommender systems are proving to be an indispensable tool that businesses cannot avoid. One of the significant advantages of a recommender system is that it avoids dumping all the data over the customer’s shoulder but only show content that is relevant to the user. Information overload is a significant factor that caused the downfall of many websites.
Get Ready To Work With The Recommender Canvas
- Buy some post-it notes and schedule your conference room.
- Download an empty sheet of the Recommender Canvas Template v1.0 (Download).
- Download the Recommender Canvas Template Guide v1.0 (Download).
- Download the full original scientific research article upon which this blog article is based for a full reference description:
van Capelleveen, G., Amrit, C., Yazan, D. M., & Zijm, H. (2019). The recommender canvas: a model for developing and documenting recommender system design. Expert systems with applications, 129, 97–117.
5. Start brainstorming on your recommender system design.
Any feedback is appreciated. Enjoy.