Everything you need know about ChatBots

The word chatbot is made up of “Chat” and “Bot”, it means chat powered and executed by bot (computer system). ChatBot actually emerged from “Chatterbots” back in 1990s. As it was too early to use them, the usage didn’t come to life until last decade. ChatBots were started to get used by organizations more effectively from 2015 onwards. In past 7 years the usage and industry for chatbots have grown by leaps and bounds.

A ChatBot is a computer software which helps organizations handle their customer queries automatically ay anytime (7×24 hours) anywhere (across the globe) using any device (mobile, tablet, laptop, PC, smart tv etc.) connected to the internet. 

ChatBots interact with diverse customer groups using messaging platforms which are designed to work and act as if a human customer service assistant is answering the queries based on keywords identified in the question and their model answers.

ChatBots require continuous update and learning as they are meant to answer customer queries related to product, organization, compliant, enquiry for information etc. There is also a need of having active human customer service agents behind the ChatBot to step in for situations where it is difficult for the ChatBot to answer further questions.

ChatBots are of many types, they can be very simple keyword based, rule-based Bots as well as sophisticated self-learning artificially intelligent (AI) Bots with built in natural language processing (NLP) capabilities as well as machine learning and deep learning abilities.

Here is a brief overview of Chatbot process and architecture,

ChatBot Process Overview and Logical Architecture

1.     The user generally opens a website or app to search for their need or to get support and guidance.

2.     The ChatBot popups with welcome greetings and either it starts by giving standard options that the user can choose to decide which area he needs help on or it allows the user to ask the query.

3.     User places the query which the ChatBot receives and processes. The processing is done through NLP (natural language processing) service consisting of NLU (natural language understanding) that helps understand users intent of the query based on keywords and phrases asked. The query is processed by the dialog manager and the response is given by Dialog manager to NLU (Natural Language Generation) which answers users query either in written or voice response.

4.     The user can see the response and ask further questions or after a waiting time of 1 minute the ChatBot can do the Thanks greeting to ask further questions and close the chat.

5.     In the background there are multiple technical architecture blocks and systems that operate to make the ChatBot work including storage systems, Knowledge base, API message Interfaces, Business Process Interfaces, IoT interfaces and ChatBot front end as well as back end conversational query engine.

We all are very familiar of ChatBots and use them in our daily lives. Here are some everyday examples of ChatBots including their types,

NLP Based ChatBot Overview

1.     AI based ChatBots – These chatbots are advanced and have NLP (natural language processing) capabilities. Some of them also have built in self learning abilities attached with machine learning and deep learning neural network algorithms.

a.     Siri on Apple Devices – The simplest form of AI ChatBot is NLP based Siri on Apple devices meant to serve our voice commands and answer our queries. Other than answering our queries, it is able to do many of our tasks, remember important events and remind us at the right time.

b.     Amazon Echo and Alexa – Alexa and Echo are voice enabled AI ChatBots and are enabled using NLP (Natural Language Processing) and AI capabilities. Other than answering our queries, it is able to search and order food, groceries and other items we need. Able to recommend the best price and online site to buy from.

c.     Google Home – Google Home is also voice enabled AI ChatBots and are enabled using NLP (Natural Language Processing) and AI capabilities. Other than answering our queries, it is able to search and book flights, movie tickets, hotels as well as suggest what is the best places to visit, with best time and price.

2.     Online Virtual Agent ChatBots – The other simpler form is the virtual assistant popup window we get on most of the websites greeting us and asking how can it help us. These are most common and seen across all business websites. Every sector and industry have their own ChatBots. E.g., Banking, HealthCare, eCommerce, Government Services, Logistics, Retail, social media etc.

3.     SMS Based ChatBots – There are also chatbots that are SMS based which are basically rule-based ChatBots that answer queries based on our questions and answers.

4.     Phone Call Based ChatBots – Phone call based chatbots are similar to SMS based chatbots but with voice enablement for communicating and handling user queries. During Covid Pandemic we have seen the use of these for managing online enquiries. We can also see them in use largely by banking, credit card and government services enquiry lines.

5.     Offline ChatBots – These are ChatBots used within organizations boundaries (E.g., HR, IT) and in some case for educational purposes by schools and universities. These ChatBots operate within specific knowledge domain to help manage queries from employees and students.

Now that we understand the type of ChatBots, Let’s understand the Pros (Benefits) and Cons (Downsides) of using them. 

Here are the benefits of using ChatBots,

1.     Improved 7×24 Customer Service – saving time and efforts for customers to find answers to their queries anytime anywhere with any device connected to internet.

2.     Standardized and automated processes – ChatBots make the respective customer service or query handling process fully optimized and automated for all possible scenarios. The process also undergoes continuous improvements and ChatBots continue to learn and feedback for corrections. Eventually making the organization more efficient and effective.

3.     Cost Savings – ChatBots can handle 1000s of customer queries at once using the same standard mechanism. This results in cost savings for the organizations’ operational costs as they will not need so many customer service agents working in multiple shifts and locations.

4.     Ability to Gather Customer Needs and Information – ChatBots can help gather customer needs and information through the questions and answers. The information gathered can then be used by sales, marketing and customer service divisions to engage with respective customers.

5.     Ability to generate leads – ChatBots can also help in generating leads on campaign sites and company websites by collecting interests and information of customers.

6.     Ability to Upsell and even cross sell – ChatBots can be setup to identify customer needs for products and services. Based on the identification, they can upsell and even cross sell products and services that can complement and better fit for the customer.

7.     Ability to sell extended warranty, accessories and CRP (customer replaceable parts) – ChatBots can be setup to identify customer needs for products and accessories. Based on the identification, they can sell extended warranty, accessories and parts to increase sell.

8.     Improved Compliance – ChatBots unlike humans are always well behaved in their answers to customer queries and every step of the discussion is recorded and audit log can be easily emailed to customers and stored in company logs for compliance purposes.

Here are some downsides and limitations of ChatBots,

1.     Limited Knowledge base – ChatBots can only handle limited set of queries and questions, as they are setup with a fixed set of keywords and questions identification and answers.

2.     Handle One Query at a time – In most cases ChatBots can only handle one question at a time. So if a user asks multiple questions the ChatBot will be able to answer only 1 question impacting user experience.

3.     Limited number of instances – ChatBots efficiency depends on the load and number of instances running parallelly. So organization must be vigilant to ramp up computing capacity for ChatBots based on their usage threshold.

4.     Complex Scenarios – There are complex scenarios in customer chat which ChatBot won’t be able to understand, answer and resolve. For such case the human service agents must keep a check on ChatBot discussions and step in to takeover such discussions.

5.     Need for Human Agent – It is normal that most humans would like to speak to a human services agent instead of ChatBots as conversing with ChatBots could take longer time especially on SMS and Phone based conversations.

6.     Language and Slangs – ChatBots understand normal language with correct grammar and slangs. They would not recognize certain slangs and language shortcuts that we normally use as humans.

7.     Over Loading – ChatBots can be attacked and kept loaded by hacking bots putting a lot of load on system capacity by opening many instances and asking many types of questions. Eventually impacting efficiency and effectiveness of the system and in some cases even crashing the system.

8.     Hacking – ChatBot platforms can be prone to hacking and hackers can alter the answers and language which can impact organization’s brand image as ChatBots are front face of organizations online presence.

There are many ChatBot software and platforms. Some of the famous ones are Hubspot, Zendesk, Intercom, Tidio, Mobile Monkey, Drift, IBM Watson and QlikSense. In addition, social media platforms like Facebook (Meta) also offer their rule based chatbots for business pages and ecommerce. Similarly, eCommerce Hubs like Shopee also offer their own ChatBot for online shops running on their own platforms. The top 3 Cloud providers Amazon (Amazon ChatBot), Microsoft Azure (Azure ChatBot) and Google (Google Dialog Flow) also have their own pay for use ChatBot platform offerings that can be easily built-up using scenario-based conversation flow configurations without any need of complex coding and development.

ChatBots are very much in use across the world by all industries and sectors. They are here to stay and they will become much more artificially intelligent in the upcoming years. AI based ChatBots combined with Deep Learning will open many more opportunities for their use to make our lives far more advanced, efficient and effective.

The Good and Bad perspectives of Deepfakes

Deepfakes have emerged strongly only in the past few years. The name comes from Deep (Deep Learning) and Fakes (virtual, imaginary computer visuals). Deepfakes are an existing image or video created using artificial intelligence (AI), machine learning (ML) and deep learning techniques by the computer system that can mimic to look & feel 98% similar to our actual image and videos.

Deepfakes are created using AI and ML to create visual and audio content that can easily deceive people. The key technology and learning methods used come from deep learning and involve use of generative neural network architecture for training machine and generating output. It uses autoencoders, decoders and generative adversarial networks (GANs) from deep learning. 

Here is a brief overview of the Deepfakes are created and operated,

Deepfakes Creation

1.     Deepfakes work based on an autoencoder which is part of neural network in deep learning architecture. 

2.     The autoencoder reduces a person’s image to a low dimensional latent space. 

3.     The latent space captures the key features of person’s face and body postures etc. 

4.     This is then used by the decoder to reconstruct the image from its latent representations.

5.     The decoder works as part of generative adversarial network (GAN). The GAN trains the output generator consisting of the decoder and discriminator.

6.     The generator constructs the image from the latest representation while the discriminator checks and determines if the image constructed is matching to the source.

7.     The model then places the reconstructed image and features on top of the person’s video or image to mimic like the real person itself.

8.     As the entire architecture is functioning with AI, ML and Deep learning the model continues to take feedback, learn and evolve and it becomes so perfect that it’s almost impossible to differentiate between original source and deepfake reconstruct.

Now that we understand how deepfakes are created and operated, let’s understand why they are worse than good for society and organizations.

Deepfakes are not just be used on image and videos but also for mimicking audio. Deepfakes are not just be used for one person but even the entire group of people can be mimicked in an image, audio and visual. This is what makes them very dangerous as we can’t easily interpret fake Vs real on our electronic devices.

Deepfakes are generally used for mimicking others. They are often used by bad people targeting celebrities and leaders. The internet is full of bad examples of deepfakes. Some are even so shameful that we can’t even imagine.

There are some good sides of Deepfakes too. On the good end deepfakes can be used for,

1.     Reviving memories of people who have left the world and bringing them to life with virtual images and videos of them.

2.     Reviving memories of patients with short memory and memory loss.

3.     Marketing and Creative agencies are using deepfake to save time and costs on advertisements where the celebrity can shoot the ad just once and the audio content of the ad can then be mimicked and targeted towards respective target audience in their language making it more personalized and effective.

E.g., one such ad was from the leading food delivery company that is targeting its customers in different states and cities in different language using the Deepfake technology. The Deepfake celebrity is mimicked so clearly and accurately that the viewers can’t make out any difference and ad became very personalized and highly successful.

4.     Mobile Phone and website based apps for online learning of concepts by mimicking the actual creators of those concepts. 

E.g., Einstein teaching his theories to school and college students using online learning videos.

Deepfakes require strong internet connections and generally with weaker connection the lag can easily show up that the video is fake. But as the technology improves and countries move from 4G to 5G as well as the AI platforms and solutions becoming stronger along with Metaverse possibilities, it can lead to serious problems for many areas.

The solution to protect ourselves from bad sides of Deepfakes is to be careful,

1.     Using your photos, voice and videos on social media and storage platforms openly.

2.     We must ensure everything is well encrypted and securely stored. 

3.     Always be vigilant in day-to-day life and be alert and aware while using internet. 

4.     Stay away from using open (unsecured) and free access wireless network points. 

5.     Ensure you always use strong password on all your devices and change it periodically this will ensure your devices and accounts are always secured.

6.     Stay away from mobile apps and websites offering Deepfake free trial or even paid trials.

Artificial Intelligence (AI), Machine Learning (ML), Deep Learning (DL) and many other new technologies have many benefits for organizations, society and people. But its very important to have a solid and secured good governance on how these new technologies can be used for the greater good of all.

Understanding Machine Learning and It’s How’s!

Machine Learning (ML) is part of artificial intelligence. In the background of most AIs there is machine learning at play. The term machine learning emerged in 1980s when computers started gaining their grounds. As the them name suggests machine learning, it is programs that help the machines learn and do statistical analysis and give results on probabilities and possible outcomes based on data.

Machine learning (ML) helps analyze large volumes of data based on several mathematical algorithms and share possible probabilities and possible outcomes within minutes. ML gives results based on algorithms and the results vary based on conditional variables and algorithm types we apply.

The results can’t be always called accurate because a lot varies based on what parameters and algorithms are applied to the data set. It also varies based on amount and quality of data used.

ML is used on large volumes of data which are impossible for humans to analyze with speed and accuracy. Machines can do this based on rules and programs set to produce results with speed. We can run the data through multiple algorithms and collect all the insights. Based on the insights collected further slice and dice can be performed and then we can decide the based way forward.

ML can also be used on any type of data, so not just text and numbers but also images and videos. In general, the ML process starts with,

1.     Cleaning the data set to ensure its consistency and no missing data. 

2.     Dividing the data set into training data set and data set for analysis.

3.     The training data set is used to train the machine learning algorithm on how to identify and what results to be expected. 

4.     The outcome of training data set is the trained model. To this model we feed the test data set to get the desired results. 

5.     The systems classify the test data set based on the patterns learned and logic used as part of the trained model.

6.     The prediction results can be verified with the trained model outcome to see the consistency. Based on the consistency the results and prediction outcomes can be accepted.

The machine learning is of 3 types. Namely Supervised Learning (SL), Unsupervised Learning (UL) and Reinforcement Learning (RL).

Supervised Learning (SL), as the name suggests, it is supervised means its trained with the labelled data set for identifying data sets and patterns to produce results based on the trained data set and other rules and algorithms to produce predictions. Supervised Learning (SL) works best for the classification problems, E.g., if we feed orange and other fruit images to the model as test data set along with the label specifying ‘its orange’ and for other fruits we ask it to label as “not orange”. Once the model is trained, we feed in the test data set with all fruits to check if it can identify and categorize fruits correctly in the outcomes.

Unsupervised Learning (UL), as the name suggests, it is unsupervised means it learns on its own from unlabeled data set. The algorithm automatically identifies various patterns in the data set and share the prediction outcomes based on the same. The full dataset if fed as input in the Unsupervised Learning (UL). UL identifies and creates its own group of data set based on various data attributes. E.g. if we feed multiple images of fruits to the data set, it can identify and group them based on attributes, like color, shape, weight, size etc. It will not know that this is a fruit or not but it will still efficiently group it and share the predictions and outcomes based on the data set attributes.

There is hybrid approach of combining Supervised and Unsupervised learning as Semi-Supervised learning where both SL and UL are used as certain attributes of dataset can be classified and trained while other remain unclassified and predicted using unsupervised learning. E.g. in the dataset if we know oranges clearly then we can train the model for identifying oranges accurately under supervised learning while all unknowns can be fed to unsupervised learning and that can group it and give predictions based on other attributes and features available in the data set.

Reinforcement Learning (RL), this works through a reward system where the system is rewarded for all right predictions and outcomes. This allows the system to learn based on its own actions that lead to rewards or penalties. Rewards are given for right predictions and penalties for wrong predictions. E.g., in a robotics factory every right action done by robot gets the reward and wrong actions gets the penalty. This allows the robotic system to learn the right and wrong actions based on the incentives (feedback) received.

Machine Learning (ML) has several algorithms and methods that are applied on the data set to build the complete model and share predictions that are impossible for human brain to manually achieve with in time limit of minutes and even hours.

Machine Learning (ML) is used for seemingly difficult predictions and probabilities to make effective decisions based on patterns identified by machine. Decisions like, 

1.     How many customers we must keep and which customer segment is most important for an organization in long term.

2.     Based on trends of past 2 decades when will be the predicted stock market crash.

3.     What age group purchases similar set of products

4.     We should tie up with which brand to combine our product bundles to increase sales

5.     Will Heart attacks increase and by what percentage

The results of the ML model can be verified using various performance metrics scores. In general, 6 performance metrics scores are checked to make a decision on viability of outcomes. The methods used are confusion matrix, F1 score, accuracy, precision, recall, and specificity.

As far as the tools are considered many of the ML capabilities are built in MS Excel. There are also standardized tools like Microsoft Azure ML, Google ML, IBM and many other preoperatory software tools. ML can be also managed using Python, R, Java, Julia, LISP programming languages.

Machine learning (ML) is heavily used in our day-to-day AI applications. ML is used by many market research, commercial, industrial organizations for identifying patterns and making difficult decisions. 

There is a lot of room for organisations for using ML to its fullest to make decisions. Opportunities are immense for all organizations and possibilities are wide spread across industries as we have big data available.

Understanding Artificial Intelligence and where it’s leading us!

It’s been almost a decade since we started recognizing the word artificial intelligence (AI) in our day-to-day life. AI has been around since many decades already but as it was more in the form known to us as computers and super computers only.

In the last decade it started to emerge more strongly as we started using artificial intelligence more widely in the form of search which after some years became voice enabled and even image enabled.

Artificial intelligence in simple terms is intelligence exhibited by machines and computers to do human like thinking, calculations, understanding and even day to day activities we carry out.

As the name suggests, artificial means not real human but it can more or less do everything that a human can do. Although we are still far from having 100% human like AI machines and robots but we are fast progressing in the direction of having it.

Artificial intelligence is of three types or we can call them having three different phases. The first one is Artificial Narrow Intelligence (ANI) followed by Artificial General Intelligence (AGI) and lastly Artificial Super Intelligence (ASI).

The ANIs (Artificial Narrow Intelligence) are initial use systems that perform normal tasks in one or two areas purely based on programmed rules. They can’t self-learn and can only execute specific tasks as per programmed. All their decisions and actions are pre-determined based on various options assigned to them. E.g., Google Translate, Email spam filter software, Chess app., Speech recognition etc.

The AGIs (Artificial General Intelligence) are more advanced than ANIs (Artificial Narrow Intelligence) and work seamlessly across multiple functional areas for problem solving, decision support and reasoning. E.g., Siri, Automatic Stock trading software that decide on multiple factors, statistics and news on when to buy and when to sell stocks for higher gains.

The ASIs (Artificial Super Intelligence) are not yet fully ready. As the name suggest super intelligence means human like abilities to multitask, decide, act, learn and relate things like humans do. There are trials ongoing and robots as well super computers are being made that can achieve this but we are still not full there and it might take still 1 to 2 decades to reach this level of AI solutions.

Artificial intelligence (AIs) solutions are very helpful in improving efficiency and effectiveness for almost all functions. Here are some examples,

1.     For industrial site solutions of robotics help improve production significantly. 

2.     For innovation and development, the solutions on product development, test automations and statistics decision-making help prepare viable solutions for meeting customer needs.

3.     For Commercial organizations, the solutions on robotics process automation, machine learning based statistical analysis for accurate decision making and real time dashboard with built automated decision guidance.

4.     For Consumers and Customers, the solutions on recommending right products based on their choices and know how in various areas and stages of life.

5.     For Customer Support, the solutions on full detailed understanding of their customer base and how to keep them as well as engage them to increase sales.

Similarly, there are also solutions based on industry specific needs. E.g., Your MD, Google DeepMind, Netflix, Snapchat, Apple Siri, Google Tools, Autonomous vehicles etc.

Artificial intelligence is used almost all of us in various shapes and forms. Simply put all our day-to-day apps we used in mobile phone and computers have AI built in to support us by enhancing our productivity and decision making.

AI has many positive sides but it also has worrying negative sides to it. The negatives are related to ethics and deception. How do we know that the AI is ethically deciding and making decisions as its all programmed, it can be designed to deceive. AIs can also be prone to hacking and manipulations of decisions and actions. There are still many open ends to AIs safe & secure usage and reliability. 

The other major worry for people is, if we automate everything with AIs and Robotics, then what will happen to current job market. There will be a significant shift of jobs needed as almost all of current manual jobs can be taken up by AIs with in this decade.

Possibilities are immense and when computers came there was a huge transition of jobs, a similar transition will take place in this decade with AIs becoming fully operational and even more when they evolve to Super Intelligence level in the coming decade.