How to implement an empathic and reactive system with TIBCO and AWS AI/ML
This blog-article summarizes the realization of an internal project, an idea born by chance, but which over time made us understand the potential of what we had obtained, actually some "road tests" were enough to understand that the potential and targeting are enough huge, so I decided to release this article to share idea, design, implementation overview and some considerations.
Well, the story begins few months ago, TIBCO HHRR (Human Resources) team they suggested us to arrange an European team to take part in a technical competition; challenge accepted! After some session of Team brainstorming, we decided the principles of the solution and the main capabilities, concretely: 100% TIBCO based, Real-Time Processing, Reactive, Cloud-native, Cost-oriented, Interactive Dashboards and would use AI/ML..so we created an internal TIBCO team, that we called TeamX.
Today the market is very fast, it requires that you react quickly using enterprise COTS (Commercial Off-The-Shelf) tools that help you to reduce the gap with Market Leader if you are a Market Follower and increase the gap with your Makert Followers if you are the Market Leader.
Every business expert would agree that we live now into interconnected era and Socials Media generate contents updated at last-minute, spreading them in real-time with no-stop and high rate. Thousands of public topics are discussed globally across different social platforms and cover the globe in few seconds.
These data become part of the corporate decision-making process; current analyzes are based on cold dimensions such as hard data, quantity and quality, but the data generated by humans includes a valuable part ... the emotional side, a key factor in obtaining an accurate user experience, because emotions contain a personal connection with brands and through social media users share feelings with their messages that could quickly lead to the fall or success of the product.
Organizations to achieve an exhaustive UX need enhance their process with an empathy approach in their enterprise processes with quick-thinking and quick-acting; applies thought data and interact with customers, to produce amazing ideas, disruptive and innovative and delight your customers, but to accomplish to success is important to listen the emotions..understand what is really appreciated .
The spark that ignited our bulb come from a report published by hootsuite on the site wearesocial.com/digital-2020, in particular the data relating to social media use around the world. Today we have 3.8 Billion of active social media users, this means 49% of the world population to date, with a 9% increase in users every year, considering this factor of fixed increase over time, it means that in 10 years we will have a 100 % of coverage. We have a constant data source, always updated and reliable, but currently the data is processed from an analytical point of view .. and this is where our solution is positioned ... EMPATHYX, a Reactive Emotional Artificial Intelligence System
Designed to enhance augmented intelligence applications with the emotional intelligence; Enable the capabilities to understand and react to socio-emotional data around your ecosystem. Tracking real-time business data globally it helps to take decisions based on worldwide metrics considering also the emotional-data, improving the UX bringing and the accuracy of your enterprise decision-making.
It helps to identify behavioral patterns based on emotional data and processing them through real-time processing and visualize them with real-time dashboard to see feelings, entities, subjects, geo-localization info. Additionally, it triggers interactions with potentially influencers users in case of negative feelings around your brand (or organization or social issues) and run an internal case management that progress with a direct conversation with the final user using external and standard tools (email, directs, post)
A Logica View of the solution
Technically speaking, we interconnected the blocks using TIBCO products, each block was implemented using the appropriate TIBCO tool. To use AI / ML we created a lite version of the AWS SDK (2MB library) adapted to use AWS AI / ML services and incorporated into TIBCO BusinessWorks (AWS Comprehend was our decision but you can replace it with Azure Cognitive Services or NLP Annotation from Cogito). INGESTION, INTEGRATION and PROCESSING have been decoupled to increase performance. To exchange streaming events we specifically used Apache Kafka, we used TIBCO Apache Kafka Distribution provided via TIBCO Messaging. For importing social data we have developed a process in TIBCO BusinessWorks that fetch each public Tweet about a specific area of interest (editable via configuration) and publishes it in our Kafka topic. When the Tweet is processed, the initial proprietary structure message takes on a new data structure based on Empathyx CDM Schema (Canonical Data Model) to convert the proprietary structure message into generic structured data; this step is necessary to process any type of Social Media platform to easily extend DATA INGESTION (e.g. Facebook, Instagram, Linkedin and so on) and process the data in an agnostic way, regardless of the source without applying changes to the blocks of MICRO-PROCESSING
The STREAMING and MICRO-BATCH PROCESSING component helps to identify behaviors and patterns in real time by applying mathematics models to find trends and relationships between data. Micro-batch processing is a parallel branch to the real-time process that allows mathematical analyzes on short time windows (Time Based or Samples Based); we have used TIBCO Streaming to implement this feature. The REAL-TIME ANALYTICS was enabled thanks to TIBCO Spotfire X, where all processed data are proposed in Real-Time, actually Real-Time Dashboards available with the solution include:
Map Dashboard: Geo-Location of the messages across the worldwide map in Real-Time, using colored points is possible to understand where there is: negative feeling/opinion (Red Point) or positive feeling/opinion (Green Point) or neutral (Yellow Point) or mixed (Purple Point). The size of the diameter represent the social impact of that specific message
Feelings Dashboard: An histogram chart to group and count the different feelings in real-time (Positive, Negative, Neutral, Mixed)
Entities Dashboard: An histogram chart to group and count the most used key inside the messages (Commercial Item, Person, Quantities, City, Products, and so on) in Real-Time
Countries Dashboard: Used an HeatMap chart, the color scale helps to quickly visualize an overview for each country to understand the general feeling
Key-Word Dashboard: Histogram chart, it helps to identify how the keyword (the search criterion) is used within messages and its occurrences. This is useful to understand the emotional context of our Key-Word (i.e. brand, product, competitors) and detect where are negative. It is also useful to detect Trending Topics.
The HUMAN INTERACTION component enables the reactive empathic behavior, the INTEGRATION and ORCHESTRATION component can establish a direct communication between the individual and the company based on business rules. In the event that a negative message from a user with a large network of Followers, a OneTimeLink is sent to his private inbox of the social network (Private, Direct, Post and so on..) inviting him to participate in a survey to understand if the criticisms are constructive and what remedies the should be taken by the Company. At this step, a corporate workflow is started to follow the case and have constant dialog and feedbacks. Furthermore, this interaction allows us to monitor behaviors and convert negative influencers into positive ones, transforming them into valuable business resources. To implement this part we used TIBCO Project Flogo and TIBCO LiveApps.
The table below summarize the technologies used by category:
In general, at this point we can say that the initial principles and capabilities have been achieved
100% TIBCO based: To implement the main components we used TIBCO Technologies (See table before)
Real-Time: Social Data are processed in real-time and dashboards represents the current situation and the impact.
Reactive: Is possible to interact with users/customers automatically based on the content of their public messages and business rules defined internally that triggers the interaction
Cloud-native: The entire solution is provisioned into CLOUD (AWS for this case), other Components like TIBCO FLOGO, TIBCO LiveApps, TIBCO BusinessWorks are running in TIBCO TCI (TIBCO Cloud Integration) platform.
Cost-oriented: Is possible to scale UP/DOWN each single component and reduce the cost when the messaging rate is low and increase automatically when there is a peak
AI/ML: AWS Comprehend helps to understand the content, using a ML is possible to extend the understanding and refine the NLP with advanced concepts specific to own business reality
To better introduce the solution a demo video shows a realistic user story (MrX Influencer, a professional photograph is unhappy for night focus of his new camera). Suppose that a new product land into the market, it’s a new camera, minutes later the socials start to share opinions and comments; the data flow through different socials; the worldwide community, discusses, post, reacts and sometimes report defect or identify brilliant enhancements. Suppose that an Influencers (with millions of followers) write a negative post; this negative post instantly covers the globe…if you are able to detect this kind of risk you can act quickly and you can monitor the worldwide opinion in realtime and when the business rules are triggered the system reacts interacting with this user sending a OneTimeLink with a private message to his Twitter that include a link that start a customized survey. The data filled by the User we start automatically workflow that enables the fixing chain or create an enhancement ticket. At the same time, the Business Users can see user's reactions and understand the emotional reactions to decide where and how to act to correct or improve the marketing and the products
Lesson learned: The goal was to create an empathic and reactive system that consumes social data, the most valuable resource today because it includes…the feelings. Today, thanks to AI/ML we can integrate into our business application this new dimension of the data and react quickly. It is possible and it is easy, for most of the readers maybe the empathic and reactive system is not a technology epiphany today, but for sure it is clear that using powerful tools such as TIBCO tools a good and complex idea can be implemented quickly...that is a great advantages for the interconnected era
Perhaps, reading this article you might think that to design and implement Empathyx we spent months or weeks and a huge team... absolutely wrong; only 5 smart guys, a good idea, powerful TIBCO tools and 1 week of our free time after our working hours.