Taking a smarter approach to notifications through ML and AI
Notifications were created to help us work better and more productively – but in today’s world, they can often do the exact opposite. Businesses need to be incredibly dynamic, as opportunities arise fast, and disruptions appear from everywhere. Only those best equipped digitally can take advantage of – and protect themselves against – the fluid, exciting, ever-changing world of notifications we live in.
But what does this mean for people who are the backbone of all businesses, the staff? Besides doing the physical work, they are also expected to be incredibly dynamic and react to business situations fast. For that to happen, they need software that best supports them in getting their work done and adapting to the challenges they face. But often, software is anything but adaptive.
In this article, we will explore how Machine Learning (ML) and Artificial Intelligence (AI) models improve the efficiency and relevance of notifications for users, to ensure better and more effective use of technology while maintaining productivity and reducing distractions.
Take notifications, for example, those red bubbles on your phone or the popups that slide into your computer while you’re working. Each application is shouting for attention, but not all notifications are created equal. Some are vital and should be addressed quickly, while others may be less important or only relevant in certain situations. In today’s digital world, it is critical for members to be able to sift through the constant stream of alerts to avoid overlooking vital information or missing out on key opportunities.
Our research at Emergn ML Lab shows that each interruption caused by a notification can negatively influence a user’s productivity, requiring additional time to return to their original task and regain focus. This can cause a dramatic loss in daily workforce productivity.
So how can we improve? Let’s start by looking at the three main groups responsible for configuring notification rules.
Although users can create notification rules themselves, they rarely do. So, they don’t have much control when it comes to how and when notifications are delivered. The effort needed for users to configure their own notifications often outweighs the perceived benefit they would receive. Most of the time, users can’t predict accurately which notification will be useful to them and which will not. Content, circumstance, and sentiment all play an important role in determining notification importance, which is difficult for users to express. As a result, there is not a lot of configuration flexibility available inside applications or centralized notification platforms. At most, users can decide to turn notifications on or off, either as a block or by type; any further ways are quite limited.
However, the truth is, end-users are the ones with the highest perception of context and value of each notification.
Pre-prioritizing notifications through smarter developer tools
A critical metric for determining the usefulness of a notification is the relation between the context of the user – what they’re currently doing – and what the notification is about. In other words, it is in the understanding of how a particular notification relates to actual user context parameters – like time, place, device, and business situation. Does the user really need to see this notification right now? How important is the notification to this person? Business users who create notifications and prioritize them do it from the perspective of the notification’s importance to the business.
We believe it’s within the core application software where the balance between user and business priority should be made. We want to give developers the tools for implementing notifications that yield the most relevance for users. A higher relevance for each notification in a given situation the user faces will reduce distractions and increase productivity. It will also increase the value of notifications, and the users will rely on them more. In this case, smart but universal – one for all configuration – is not an option. Contextual notifications from a business process perspective will push guidance to the correct handling of the business situation.
User feedback is the key
The question remains: how do we determine the proper context to receive and act on the notifications for the individual user versus the business need? Each user will have their own context and determination of whether the notification is useful. Therefore, the notification configuration must consider user feedback on notifications themselves.
Putting metadata to work on notifications
A notification contains meta-data that the system could use for settings, like Time, System, Business Object, Customer, Location, Device, etc. If the user marks the notification as distractive or useful, developers could create an ML model of individual configurations based on their preferences. For example, if a user is in a meeting, the notification is restricted or sent after the meeting has finished. Or, if the user has always responded to notifications about Business Object X and Customer Y, any new notification about that topic or customer should be shown immediately, even if the user is in a meeting.
Right message, right time – an individual approach to notification classes
To build a scalable solution for individualized notifications, we need to use AI and ML techniques. This type of ML task is called classification or trying to predict the class (category) of given objects. An ML model uses an object’s attributes to delineate between different classes. This is what developers want to know when creating notifications about things like status updates and then deciding whether to send them during a meeting or after work hours. In the previous scenario, the objects are notifications, their attributes are the notifications’ meta-data (Time, Business Object, etc.), and the classes that should be predicted could be, for example, ‘show’ and ‘not show.’ Classes are difficult to quantify as just ‘show’ and ‘not show’ states because those words do not describe the most optimal notification configuration. The goal of a successful notification is to inform the user of something without distracting or interrupting their workflow.
Alternatively, showing the notification in a less intrusive form could be more optimal than simply not showing it.
The question arises: if the notification is classified as ‘not shown,’ then when is the right time to show it? How long would an appropriate delay be? This is an important question to ask when creating an ML model. For now, we assume that ‘show’/ ‘not show’ are the most effective classes to prove our ideas. The essential part of an ML model is that it helps us learn. We can look at logs of notifications that have already occurred alongside the meta-data of each notification. To determine the notification class, we need to know the user’s reaction to the notifications and whether they provided any feedback. In the first case, we determine if the user has looked at or clicked on the notification. In the second case, in a post-notification survey, we would ask the user if they have found the notification useful or distractive. We can assume that if the user never looked at or clicked on the notification that they did not find it effective. With this basis, we will be able to use the predicted outcome to automatically configure the notifications.
One important detail to remember: the ML model should be trained for each user individually because each user will have a different preference. For some people, receiving notifications about their timesheets not being filed at the end of the workday will be distracting. For others, it will serve as an effective reminder. When the ML model is trained, it is time to put the system to use and start predicting user reactions to notifications. But before that, it would be beneficial to measure the accuracy or effectiveness of the trained model. We predict that taking into consideration the user’s individual behavior will increase the usefulness of the notification. One of the ways to do that is to configure the new notifications using the ML model and start sending the user “smart” notifications, tracking their reactions, or conducting a survey. If the user is clicking the notifications more, ignoring them less, or starting to find them more effective and less distractive, that is a sign that the system has learned the individual user preferences.
We envision that the solution could be a centralized notification platform in which notifications, not only from Enterprise resources planning (ERP) processes but also from other systems, could be collected and shown to the users. Our automatic notification configuration tool could help developers of all systems use an API for the classification of the notification at an individual user level. Users will receive optimized, prioritized, non-disruptive notifications across their business, right inside the system, increasing overall productivity.
Before you go
ML approach allows us to build effective business processes that increase productivity by allowing systems to know more about users’ preferences and working styles. Notifications are just the beginning. Imagine software that can: learn which data points you prefer when making decisions; prioritize those in dashboards, UIs, and across your business; and adapt how it displays business-critical information to you, based on your way of working.
Our data scientists and ML experts are working closely to explore how to improve productivity for ourselves and to our clients, and there are many more exciting research projects and findings of Emergn ML Lab that we will be sharing in the future!