It has become an everyday experience: I log into an e-commerce site, having a quite precise idea of what I want to buy in mind; I consider a couple of possibilities, and with a certain amount of satisfaction (the price is really good!) my cart is filled up. At this point, I am about to conclude my shopping when…
…the last obstacle! A number of products appear on the screen: it seems that other customers, similar to me, have purchased them, therefore I could do it too, and since I have bought a mobile phone, it would only be logical to buy also its cover…
A bit annoyed, I scroll down this customised virtual shop-window and… surprise, surprise…I find out that it really interests me!
In Aton, you know, we are deeply interested in recommendation systems. It is our DNA: it is evident that the success they have in the B2C sphere can be reflected into a B2B environment, and we are strongly attracted by their win-win feature: they are a useful tool for the salesperson, improving at the same time the final user’s experience.
Here to you a quick overview of what we are doing.
First of all, it is interesting to note that not everything is.. artificial intelligence! It is possible to create a recommendation system by simply analysing users’ cart history at a statistical level (it is indeed called basket analysis), by counting up the number of presences of given product pairs or groups and identifying purchase patterns to be proposed to final users in the checkout phase. It is in fact a very powerful tool, and many apply it successfully.
To build up a more “sophisticated” model it is obviously fundamental to possess a great amount of data regarding sales history, in order to entirely profit from IA algorithms potentialities. Among these stands out collaborative filtering, whose objective is to calculate similarities among system users to generate advice based on their affinities and the products they have not yet acquired.
In this sphere, we find NCF (Neural Collaborative Filtering) algorithms promising, as they exploit “classical” deep learning as well as neural networks learning architecture, ALS (Alternating Least Squares), applying a matrix factoring (that is, information understanding) to users’ shopping history, and allowing to predict that a certain user will buy something even if he has never done it before; and, above all, RBM (Restricted Boltzmann Machine) which, altough created in 1986 and having a very simple structure, in practice obtains excellent results.
After having composed a recommendation system… another one is made up. There are many parameters that may vary and a good recommendation system is an algorithm composition: it is hard to get all eggs into the same basket; using different algorithms allows having a more varied set of suggestions which will more probably meet the user’s tastes.
In order to assess which system may be better, other statistical tecniques are then applied, the so-called ranking metrics and rating metrics, which allow us to compare previsions with real cases, to assess what to apply on the field later.
Our recommendation system is therefore ready, but not definitive: at least. It must be adapted to the company’s marketing strategy; besides, after some months it will probably be necessary to re-modify parameters to adapt them to “market fluctuations” or to new technologies…
To sum up, this is a complex and fastinating world, like so many other issues regarding computing nowadays. But we do believe in it, as it can really provide important added value. As usual, we are really curious to find out what the future has in store for us!