At first glance, the differences between eCommerce product search and product recommendations seem fairly obvious. However similar they may seem in terms of underlying technology, conventional search engines are quite different from product recommendation engines. Behaviour is typically at the center of a recommender system, while it is an added dimension for the search engine.
You don’t have to look very hard to find lots of different eCommerce recommendation systems with varying characteristics and qualities. You have most likely encountered many types already. They range from highly specialised, proprietary solutions for specific websites or applications, to generic and rather simple variants.
Some good recommendation engines take advantage of Big Data to deliver personalised recommendations based on a visitor's previous activities and those of other similar customers.
Amazon provides a good example of a more sophisticated recommendation system (built in-house), which (among other things) suggests accessories for products the visitor is about to purchase, based on what other customers have bought together with the item. This is of course a powerful tool to increase average order values, but requires significant amounts of customer data to function automatically. An amount of data most retailers - aside from Amazon - don't have, and most third party recommendation engines can't handle.
Most 3rd party recommendation engines will make suggestions by analysing shopping behaviour alongside the relationships between products and product categories. It uses a large amount of behaviour data to draw conclusions about a single product or a small set of products.
In order to create customer segments and use those segments to predict what a visitor may be interested in, the recommender engine uses a technigque called "collaborative filtering", which is made up of the following steps:
The engine then offers a series of recommendation lists to be used at different points in the customer journey (e.g. product page, checkout page, search results page, category page, post-visit-emails, etc.). These separate recommendation lists are typically based on the following data:
Most recommendation solutions will also provide a configuration interface for creating IF-Then business logic filters that help to promote sale, high-margin, low-priced etc. items more prominently in recommendation lists.
Finally, nearly all proprietary recommendation solutions will provide functionality for promoting those recommended products through email campaigns as well as through on-site banners and navigation. The better tools will include a way to use the recommended items in display advertising.
Conventional product search engines barely require a detailed introduction. Basic site-search is available as a standard plugin for, or built into, all modern eCommerce platforms. Most of them are relatively simple and easy to use, featuring basic text-matching. They typically support indexing of product titles, descriptions and category structure, auto-correct, fuzzy-match (handle plural queries and stemming) and recognise synonyms (often through a configurable dictionary).
The classic search problem involves things such as language processing (tokenization, stemming etc), indexing, query expansion, product ranking and so on. Advanced search engines can focus on word similarities and word clustering.
The most basic search algorithms available do something like the following:
What happens when a recommendation engine uses a "search-like" method to solve a recommendation problem
While a recommender engine could use a method to find similar products that resembles a search algorithm, the input for such a system is completely different than what an actual search engine uses as an input (i.e. search engines use text string as input, not products).
What happens is the recommender system will treat the recommendation problem as a search for related items - using the product being viewed or bought by the visitor as the input. So, given the product as an input, the algorithm creates a search query with a set of query rules to find other products by the same brand, within the same category or with similar keywords.
Unfortunately, this search-based recommender system scales poorly for customers with numerous purchases and typically offers either too broad or to narrow recommendations. Since recommendations are designed to help visitors find and discover new, relevant, and interesting items, products from the same brand or category found through a search-like method don't often meet this objective.
Providing a list of popular items, high-margin or sale items as search results hardly leads to a "relevant search experience". Searching visitors have something specific in mind and expect search results to reflect that intent exactly. This is a very different customer journey than a visitor simply browsing.
Unlike recommender systems that use behaviour data to draw conclusions about a single product or small set of products, search systems must find and rank all products against a text string (i.e. the search query), not against a product or set of products.
So although the difference between the query string 'blue hat ' and an actual Blue Hat product seem small at first, they are completely different input.
This retailer's recommended sale items have no connection to the search query "blue hat" and therefore lead to completely irrelevant search results.
If the search results page includes a secondary list of popular items from the same category as the top search results, it's a nice bonus and can help increase basket size. But it's not likely to have any bonus affect if the search results aren't relevant to begin with.
In this instance, the visitor is likely to assume the retailer does not carry what they are looking for and leave the site altogether.
Unfortunately, more often then not, the only reason the search returned irrelevant or null results is because the visitor made a small typo in their query or they used a different taxonomy than what the retailer uses.
When using the default solutions provided by eCommerce platforms like Magento, product recommendations and product search are separate features, both of which often require manual configuration and maintenance to function properly.
Even with a moderate product range, countless hours can be spent on tweaking and redirecting search results, or adding related products on the individual product level. It often becomes time-consuming up to a point where the functionality is partly or entirely neglected, which in turn leads to lower conversion rates and a sub-par user experience.
Fortunately, opting for a quality third-party provider can mitigate all of these issues. But it is important to keep in mind that search engines and recommendation engines are very different beasts - the algorithms function very differently.
While recommender systems tend to focus on solving problems such as:
Search engines typically focus on things like:
One of the most critical differences between these two types of engines is that visitor behaviour is at the center of a recommender system, but is an added dimension for a search engine.
In advent of Machine Learning, search algorithms have been able to make great strides when it comes to using behaviour data. Allowing click, add-to-cart and purchase behaviour to influence the sorting of results (i.e. no more sorting based only on where the text-match was found in the product metadata).
Machine Learning has brought forward the ability for search engines to understand the relationships between products - before any query has been made or any behaviour data has been gathered. In this way, the search engine can locate similar or related products beyond a basic shared category or brand. It can identify complex patterns within all the metadata and build a deep architecture to the product catalogue.
From this foundation, a Machine Learning search engine can produce a list of recommended products that have no relation to the actual search query. Although these recommended products are generated differently than those generated by classic recommender systems, they can have the same affect on the customer experience.
Providing a list of 'recommended products' that are similar to the product being looked at or searched for can - and will - lead to increased conversion rates and basket size.
Machine Learning enables a search engine to map relationships between products that never existed before. In doing so, it can produce an intelligent, self-optimising list of 'recommended results' that are completely unlike those provided by recommender systems.
Moreover, this type of engine requires basically zero behaviour data to function - nearly eliminating the cold start problem (note: behaviour data should be added to the engine to help refine the sorting of products for greater relevancy).
Loop54 does precisely this. Our Related Search Results (named as such to avoid confusing our service with Product Recommendations), are a list of products that have nothing to do with actual search query. They are instead related to the products found through search.
Our Related Results typically relate the direct search results in one of three ways:
Not only can our Machine Learning search engine identify related or similar items automatically (i.e. no more manual backend If Then rule setting), it can also use much smaller amounts of behavioural data to refine the relevancy and order of products in the list.
How can it do that? Well, because each behavioural data point is attached to a network of products, not a single SKU.
This example shows how even a single behavioural data point can influence the sorting of all results. A purchase of women's shoes out of a list of results dominated by men's shoes influences the sorting of results for the next search. Putting more women's shoes at the top of results (i.e. not just the that one pair of shoes that was previously purchased). This allows for behaviour to influence relevance at the general level (i.e. popularity) and the personal level (i.e. personalisation).
Watch how Loop54 works and how it can generate "recommended" search results (what we call: Related Results).