Machine Learning

What is Machine Learning?

Machine learning is the study of user's behaviour under various circumstances which helps in presenting suitable findings and content to the users in the future. Let's start with an example: Let's assume that tablet users in Bavaria regularly buy leather pants in the afternoon more often than iPhone users in Berlin during the same period. The machine learning now learns that tablet users from Bavaria are much more likely to search for leather pants than our Berlin customers, for example. If the tracking data of a whole year is available, it is also decided here whether it is a seasonal business and leather pants should only be displayed further in front in certain periods or whether the behavior is to be observed throughout the year. If leather pants in Bavaria are no longer in fashion for some reason, this will of course also be detected by machine learning and the search engine will be adjusted accordingly. Such trend changes do not happen from one day to the next, of course, and so the machine learning will slowly adapt here.

What is evaluated?

Non-Personal User Data:

  • Browser (Chrome, Firefox, Internet Explorer)
  • Device type (desktop computer, tablet, smartphone)
  • Time of day (morning, afternoon)
  • Location (Nielson areas - coherent market economy areas )
  • Season/Season

Data in the search index:

  • Product data
  • Main category
  • Manufacturer

How does it work?

In colloquial terms, machine learning generates knowledge from experience. In our case, the experience is tracking data, which is analyzed by the machine learning model. This makes it possible to find correlations and patterns between user data and purchased products, categories and manufacturers. With the "experience" gained in this way, the machine learning model can improve the order of the search and list views for the individual user.

How does machine learning stay current?

Tracking is always running and continuously collecting data. After an initial stabilization phase, the search, modified by Machine Learning, can be switched on. The machine learning continues to run in the background and constantly adapts to the current trends of the customers. Once a week, the changed data situation is then transferred to the search engine, ensuring the right mix between stability and adaptation.


How long does the learning phase last?

It all depends on how much traffic the store has and how many products are offered. We monitor the learning phase at the beginning and enable the modified search if the statistical significance is sufficient. Typical learning periods are 8-12 weeks.

Which period is considered?

Typically, we use data going back up to one year. However, depending on the customer and recurring periods, longer periods can also be considered here.

What is influenced by machine learning?


Attention: As soon as Machine Learning is activated, manual sorting within categories from the product data ("category": [{"pos"}]) will no longer be considered.

The order of products in searches and manufacturer/category lists. The better personalized order positively influences the customer's shopping experience and thus his buying behavior.

Which regions and countries are considered?

Here, a customer-specific division into shopping areas is made, which is based on the Nielson areas. In general, only those areas are taken into account for which sufficient data is available to maintain statistical significance. For example, for one customer the individual cantons in Austria may be taken into account, while for others the whole of Austria is used as one area.

What impact do my search settings have in the Makaira backend?

The store owner is an expert for the domain of his store and should therefore make the appropriate search settings in the Makaira backend alone or in cooperation with the Makaira team. The search settings and the selected ranking mix form the basis from which the Makaira search determines the most relevant results. These results are re-sorted for the respective user based on his tracking data, but no new results are added.


How is the result monitored?

Once the learning phase is over, the feature goes online using A/B testing. The users are divided into a 50% group with and a 50% group without machine learning. After a sufficiently long period of time, which ensures that the goals such as sales and conversion rate in the store improve, the store can then be converted to 100% machine learning.

What will change in the future? What new features can we expect?

The Machine Learning feature will continue to be developed and improved in the future. The changes go in two directions:

  • Increasing the amount of data/ tracking features: What impact does the weather have on the user? Are searches different on special holidays? Inference from set filters to the current user?
  • Computer algorithm: We continue to work on improving the evaluation and the concrete model that provides the results. After extensive testing, the machine learning is thus actively improved without the user's intervention.


There are 3 possible settings for machine learning:

  • Disable Machine Learning
  • Enable Machine Learning
  • Machine learning in A/B testing mode

The first two options permanently enable or disable machine learning. To better check the effectiveness of machine learning, there is the A/B testing mode.

If A/B testing mode is enabled, the value query.machine_learning = true MUST be set in the CONSTRAINT node of a search or auto-suggest request for machine learning to be active within that request. If this value is false or not present, machine learning within this request will be considered inactive.