Machine learning is well-known for its ability to make accurate predictions from large data sets. People are simply not able to go through billions of data entities and convert them into something usable. Machines, on the other hand, can extract insights in a matter of seconds.
You need a deep understanding of machine learning and use cases where it can benefit in order to apply it to your business.The Smartico.ai team recently applied it’s knowledge and expertise in this domain to one of the most important business cases in Marketing Retention.
We developed the AI model predicting the best time of day to send each of their users a mail communication.
It requires some research and planning before starting with implementation of any AI model. In our case the question was what we wanted to predict – exact time of the sending, the period of the day (morning, midday, evening or the night) or specific hours.
After playing with real data that we had in our hands, we have found that in the gambling and related verticals (Casino, Sport Booking, Trading, Lottery) the behaviour of users is much more different compared to retail or other businesses. On a first glance, the game sessions may look sporadic, but when we look at statistical models based on millions of data points, we were able to identify significant enough patterns in almost all players.
Finally we decided to go with the solution of breaking the time of day down into 24 hours and build a prediction for each hour and day of week. As we saw later, such an approach is able to identify multiple sessions during a day that are not fitting to the concept of monday/midday/evening activity periods.
Gaming activities by day and hour of day for particual user
Since we focused on predicting time of day using hours granularity, we added new modules in the Smartico engine that summed the total activity for each hour during a day for every user. Another process was calculating summed activity for each day of the week. These factors aided the pipelines in obtaining a more accurate signal when forecasting the possibility of the user being active at various periods.
We also marked days as working and non-working and adjusted the time of activities according to the user time zone.
Since Smartico.ai is working on different business verticals, the “activities” of users are different in each of them. In order not to guess what will fit better for every client, we left these choices to the clients itself. At the end they are able to select based on which activities to build a prediction model.
Activities were split in 3 general groups:
Since we have built an interface for clients to tune prediction model setup, building models is straightforward when using Smartico – just log into Smartico.ai, create a new model with a few clicks, and wait for the AI model to finish calculation.
There’s no need to be concerned about infrastructure, data preparation, or deciding on the best performing model. All of these processes are automated.
Depending on the user base and number of activities they are producing, first calculation of the AI model may take significant time – on one of our clients it took 7 hours to complete it for 200,000 active users.
But as soon as the model is ready and live, it automatically tracks new users or new activities of existing users and rebuilds it with up to a 5 minutes delay after new information comes.
There’s a catch when it comes to creating hourly prediction models. What if a user is likely to be active in the multiple hours during a day or has few sessions during a day which are identified as best hours for communication?
User with multiple best hours and sessions during a day
Fortunately, Smartico has made the process of comparing output quite simple by treating all predictions as probabilities. Instead of giving one best hour, your model will provide predictive probabilities that can be compared across other hours.
If the end user is active in the multiple hours and/or has multiple sessions, all of them will be marked as best for communication.
Based on use cases of our clients we identified two main approaches of using “Best communication time”.
Short term campaigns
Client is building a communication campaign with a short term goal and is looking for the nearest best time to deliver a message. In such cases, the priority of message delivery is higher than finding the best time during a week.
In such a case, the Smartico engine can send communication in the nearest “best” time that is valid for a particular user.
Using our test user as example for illustration, campaign that is start at 8 AM will send communication to the user at 1PM, as it is the closed best hour for this user
Long term campaigns
Client is building a communication campaign where the time of delivery is the most important and it’s ok to skip a day or even a few if such days are not identified as best days.
Such selection can be done on the resource level in a particular campaign, by knowing which of the approaches are more relevant for specific context.
Again using our test user, in such a setup campaign that is starting at 8 AM on Monday will send communication to this user at 1 PM Tuesday, as only Tuesday and Wednesday are identified as best communication days.
If you don’t approach Machine Learning correctly, it can be a headache for your company. However, as the example above shows, it is becoming increasingly easier to turn what were once extremely difficult problems into something more manageable.
Whether you need help building up machine learning infrastructure, designing the proper features for your models, or presenting the findings, the Smartico.ai platform can help here.
Share this article with your friends!
Want to find out how our event triggered campaigns can raise your customer engagement through the roof? Contact one of our experts for a free demo.