Recommendations Manual

This manual will help you understand:

General introduction to recommendations

Our product recommendations are a modern web-experience technique to customers browsing the client’s website. Good recommendation systems deliver personalized and relevant content to customers at every step of their journey. This technology is based on automatic analyses of customer behavior and product catalogs either using statistics, rules or using modern machine learning methods. The product recommendations help deliver a personalized shopping experience that drives engagement, brand loyalty, up-sell or cross-sell of products.

Example of using recommendations on a website showing a panel with related products.

Example of using recommendations on a website showing a panel with related products.

Dictionary

In the rest of this manual, we use the following phrases:

  • User - Visitor, potential customer or customer of client’s web-page generating events
  • Item - Product users can buy (these terms will be used as synonyms)
  • Personalization - Effect of treating each user individually, e.g. designing texts/colors using Jinja or recommending relevant items to users according to preference.
  • Recommender system - any approach for choosing items to users, usually in a personalized way. Also known as the “recommendation model” or the “recommender system”. We will use the abbreviation RS in further texts.
  • Placement - Location within the webpage where we can integrate recommendations (e.g. homepage, product detail, basket,…).
  • Engine - Deployed RS as a service with a unique ID. This ID can be found in as the last part of the URL when viewing RS model in Exponea (process of designing is explained later). For more information see Where to find the ID campaign_id.
  • Fallback - any (usually non-personalised) recommendation strategy when the main engine fails. A typical situation is when the engine is broken or a completely new user appears (so we have no tracked data).
  • Similarity score - a number between 0 and 1 expressing the similarity between two items.
  • Top N items - ordered list of top N items according to their similarity score to a given item.
  • Interaction - Connection between user and item represented as foursome {user, item, time, action}.

An example of interaction would look like this:

user
item
time
action

user_123

item_45

2019-01-01-12:00:00

view_item

Formal introduction

Formally, we can define the recommendation problem in an e-commerce world as the following:
“Given all data about users and items (metadata, interactions), find the best items for a given user to recommend that will maximize metric relevant for the business.”

Most of our algorithms in Exponea are based either on catalog metadata (like description, categories, etc.) or collected user-item interactions (events like purchase_item or view_item).

Recommendation systems can be roughly divided into four segments according to their ability of personalization and whether they are based on some simple heuristics (rule-based) or machine learning algorithm (AI model). You can see the table below:

Rule-based
Artificial Intelligence (AI) / Machine learning (ML) models

Non-personalised

Simple statistical methods of searching for the best items suitable for everyone.
E.g. top selling, brand-new items.

Trained AI model mostly on catalog metadata.
E.g. attributes matching, text model, image model.

Personalised

Simple statistical methods executed individually for each customer.
E.g. last seen items, bought together items, etc.

Trained AI model on user-item interactions, usually in combination with other RS.
E.g. collaborative filtering,
factorization.


Recommendations Manual


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.