If you visit a Singapore government website in the near future, chances are you’ll be using a chatbot to access the services you need, as part of the country’s Smart Nation initiative. In Australia, Deakin University students now access campus services using its ‘Genie’ virtual assistant platform, made up of chatbots, artificial intelligence (AI), voice recognition and predictive analytics.
Along with the continued development of our avatars, we are also investigating machine learning and deep learning techniques, and working on the creation of a short term memory for our bots. This will allow humans interacting with our AI to develop genuine human-like relationships with their bot; any personal information that is exchanged will be remembered by the bot and recalled in the correct context at the appropriate time. The bots will get to know their human companion, and utilise this knowledge to form warmer and more personal interactions.
Endurance is a companion chatbot that uses neurolinguistics programming (better known as NLP) to have friendly conversations with suspected patients with Alzheimer’s and other forms of dementia. It uses AI technology to maintain a lucid conversation while simultaneously testing the human user’s ability to remember information in different ways. The chatbot encourages the user to talk about their favorite activities, memories, music, etc. This doesn’t just test the person’s memory but actively promotes their ability to recall.
In a bot, everything begins with the root dialog. The root dialog invokes the new order dialog. At that point, the new order dialog takes control of the conversation and remains in control until it either closes or invokes other dialogs, such as the product search dialog. If the new order dialog closes, control of the conversation is returned back to the root dialog.

However, chatbots are not just limited to answering queries and providing basic knowledge. They can work as an aid to the teacher/instructor by identifying spelling and grammatical mistakes with precision, checking homework, assigning projects, and, more importantly, keeping track of students' progress and achievements. A human can only do so much, whereas a bot has virtually an infinite capacity to store and analyse all data.
[…] But how can simple code assimilate something as complex as speech in only the span of a handful of years? It took humans hundreds of generations to identify, compose and collate the English language. Chatbots have a one up on humans, because of the way they dissect the vast data given to them. Now that we have a grip on the basics, we’ll understand how chatbots work in the next series. […]

I will not go into the details of extracting each feature value here. It can be referred from the documentation of rasa-core link that I provided above. So, assuming we extracted all the required feature values from the sample conversations in the required format, we can then train an AI model like LSTM followed by softmax to predict the next_action. Referring to the above figure, this is what the ‘dialogue management’ component does. Why LSTM is more appropriate? — As mentioned above, we want our model to be context aware and look back into the conversational history to predict the next_action. This is akin to a time-series model (pls see my other LSTM-Time series article) and hence can be best captured in the memory state of the LSTM model. The amount of conversational history we want to look back can be a configurable hyper-parameter to the model.
Once the chatbot is ready and is live interacting with customers, smart feedback loops can be implemented. During the conversation when customers ask a question, chatbot smartly give them a couple of answers by providing different options like “Did you mean a,b or c”. That way customers themselves matches the questions with actual possible intents and that information can be used to retrain the machine learning model, hence improving the chatbot’s accuracy.
A chatbot (also known as a talkbots, chatterbot, Bot, IM bot, interactive agent, or Artificial Conversational Entity) is a computer program or an artificial intelligence which conducts a conversation via auditory or textual methods.[1] Such programs are often designed to convincingly simulate how a human would behave as a conversational partner, thereby passing the Turing test. Chatbots are typically used in dialog systems for various practical purposes including customer service or information acquisition. Some chatterbots use sophisticated natural language processing systems, but many simpler systems scan for keywords within the input, then pull a reply with the most matching keywords, or the most similar wording pattern, from a database.
The evolution of artificial intelligence is now in full swing and chatbots are only a faint splash on a huge wave of progress. Today the number of users of messaging apps like WhatsApp, Slack, Skype and their analogs is skyrocketing, Facebook Messenger alone has more than 1.2 billion monthly users. With the spread of messengers, virtual chatterbots that imitate human conversations for solving various tasks are becoming increasingly in demand. Chinese WeChat bots can already set medical appointments, call a taxi, send money to friends, check in for a flight and many many other.

“I believe the dreamers come first, and the builders come second. A lot of the dreamers are science fiction authors, they’re artists…They invent these ideas, and they get catalogued as impossible. And we find out later, well, maybe it’s not impossible. Things that seem impossible if we work them the right way for long enough, sometimes for multiple generations, they become possible.”
However, since Magic simply connects you with human operators who carry our your requests, the service does not leverage AI to automate its processes, and thus the service is expensive and thus may lack mainstream potential. The company recently launched a premium service called Magic+ which gets you higher level service for $100 per hour, indicating that it sees its market among business executives and other wealthy customers.
WeChat combines a chat-based interface with vast library of add-on features such as a mobile wallet, chat-based transactions, and chat-based media and interactive widgets, and exposes it all to businesses through a powerful API that enables businesses from mom and pop noodle shops to powerhouses such as Nike and Burberry to “friend” their customers and market to them in never before imaginable ways. Over 10MM businesses in China have WeChat accounts, and it is becoming increasingly popular for small businesses to only have a WeChat account, forgoing developing their own website or mobile app completely. US technology firms, in particular Facebook, are taking note.
Logging. Log user conversations with the bot, including the underlying performance metrics and any errors. These logs will prove invaluable for debugging issues, understanding user interactions, and improving the system. Different data stores might be appropriate for different types of logs. For example, consider Application Insights for web logs, Cosmos DB for conversations, and Azure Storage for large payloads. See Write directly to Azure Storage.
Note — If the plan is to build the sample conversations from the scratch, then one recommended way is to use an approach called interactive learning. We will not go into the details of the interactive learning here, but to put it in simple terms and as the name suggests, it is a user interface application that will prompt the user to input the user request and then the dialogue manager model will come up with its top choices for predicting the best next_action, prompting the user again to confirm on its priority of learned choices. The model uses this feedback to refine its predictions for next time (This is like a reinforcement learning technique wherein the model is rewarded for its correct predictions).
On the other hand, early adoption can be somewhat of a curse. In 2011, many companies and individuals, myself included, invested a lot of time and money into Google+, dubbed to be bigger than Facebook at the time. They acquired over 10 million new users within the first two weeks of launch and things were looking positive. Many companies doubled-down on growing a community within the platform, hopeful of using it as a new and growing acquisition channel, but things didn't exactly pan out that way.
2017 was the year that AI and chatbots took off in business, not just in developed nations, but across the whole world. Sage have reported that this global trend is boosting international collaboration between startups across all continents, such as the European Commission-backed Startup Europe Comes to Africa (SEC2A) which was held in November 2017.
Companies use internet bots to increase online engagement and streamline communication. Companies often use bots to cut down on cost, instead of employing people to communicate with consumers, companies have developed new ways to be efficient. These chatbots are used to answer customers' questions. For example, Domino's has developed a chatbot that can take orders via Facebook Messenger. Chatbots allow companies to allocate their employees' time to more important things.[10]
However, the revelations didn’t stop there. The researchers also learned that the bots had become remarkably sophisticated negotiators in a short period of time, with one bot even attempting to mislead a researcher by demonstrating interest in a particular item so it could gain crucial negotiating leverage at a later stage by willingly “sacrificing” the item in which it had feigned interest, indicating a remarkable level of premeditation and strategic “thinking.”
Short for chat robot, a computer program that simulates human conversation, or chat, through artificial intelligence. Typically, a chat bot will communicate with a real person, but applications are being developed in which two chat bots can communicate with each other. Chat bots are used in applications such as ecommerce customer service, call centers and Internet gaming. Chat bots used for these purposes are typically limited to conversations regarding a specialized purpose and not for the entire range of human communication.
Need a Facebook bot? Well, look no further, as Chatfuel makes it easy for you to create your own Facebook and Telegram Chatbot without any coding experience necessary. It works by letting users link to external sources through plugins. Eventually, the platforms hope to open itself to third-party plugins, so anyone can contribute their own plugins and have others benefit from them.
The classification score produced identifies the class with the highest term matches (accounting for commonality of words) but this has limitations. A score is not the same as a probability, a score tells us which intent is most like the sentence but not the likelihood of it being a match. Thus it is difficult to apply a threshold for which classification scores to accept or not. Having the highest score from this type of algorithm only provides a relative basis, it may still be an inherently weak classification. Also the algorithm doesn’t account for what a sentence is not, it only counts what it is like. You might say this approach doesn’t consider what makes a sentence not a given class.

But, as any human knows, no question or statement in a conversation really has a limited number of potential responses. There is an infinite number of ways to combine the finite number of words in a human language to say something. Real conversation requires creativity, spontaneity, and inference. Right now, those traits are still the realm of humans alone. There is still a gamut of work to finish in order to make bots as person-centric as Rogerian therapists, but bots and their creators are getting closer every day.
To envision the future of chatbots/virtual assistants, we need to take a quick trip down memory lane. Remember Clippy? Love him or hate him, he’s ingrained in our memory as the little assistant who couldn’t (sorry, Clippy.).  But someday, this paper clip could be the chosen one. Imagine with me if you will a support agent speaking with a customer over the phone, or even chat support. Clippy could be listening in, reviewing the questions the customer is posing, and proactively providing relevant content to the support agent. Instead of digging around from system to system, good ‘ole Clippy would have their back, saving them the trouble of hunting down relevant information needed for the task at hand.
In business-to-business environments, chatbots are commonly scripted and used to respond to frequently asked questions or perform simple, repetitive calls to action. In sales, for example, a chatbot may be a quick way for sales reps to get phone numbers. Chatbots can also be used in service departments, assisting service agents in answering repetitive requests. For example, a service rep might provide the chatbot with an order number and ask when the order was shipped. Generally, once a conversation gets too complex for a chatbot, the call or text window will be transferred to a human service agent.
It's fair to say that I'm pretty obsessed with chatbots right now. There are some great applications popping up from brands that genuinely add value to the end consumer, and early signs are showing that consumers are actually responding really well to them. For those of you who aren't quite sure what I'm talking about, here's a quick overview of what a chatbot is:
There are NLP services and applications programming interfaces that are used to build the chatbots and make it possible for all type of businesses, small. Medium and large scale. The main point here is that Smart Bots have the potential to help increase your customer base by improving the customer support services and as a result boosts the sales as well as profits. They are an opportunity for many small and mid-sized companies to reach a huge customer base.
At a high level, a conversational bot can be divided into the bot functionality (the "brain") and a set of surrounding requirements (the "body"). The brain includes the domain-aware components, including the bot logic and ML capabilities. Other components are domain agnostic and address non-functional requirements such as CI/CD, quality assurance, and security.
“They’re doing things we’re simply not doing in the U.S. Imagine if you were going to start a city from scratch. Rather than having to deal with all the infrastructure created 200 years ago, you could hit the ground running on the latest technology. That’s what China’s doing — they’re accessing markets for the first time through mobile apps and payments.” — Brian Buchwald, CEO of consumer intelligence firm Bomoda
There are NLP services and applications programming interfaces that are used to build the chatbots and make it possible for all type of businesses, small. Medium and large scale. The main point here is that Smart Bots have the potential to help increase your customer base by improving the customer support services and as a result boosts the sales as well as profits. They are an opportunity for many small and mid-sized companies to reach a huge customer base.
The educators or class organizers can opt for chatbots to simplify daily routine tasks. Chatbots may serve as a helping hand to the teacher in dealing with the daily queries by allowing bots to answer the questions of students on a daily basis, or perhaps even check their homework. Eventually, they offer teachers more time to work with their students on a one-by-one basis.
You can structure these modules to flow in any way you like, ranging from free form to sequential. The Bot Framework SDK provides several libraries that allows you to construct any conversational flow your bot needs. For example, the prompts library allows you to ask users for input, the waterfall library allows you to define a sequence of question/answer pair, the dialog control library allows you to modularized your conversational flow logic, etc. All of these libraries are tied together through a dialogs object. Let's take a closer look at how modules are implemented as dialogs to design and manage conversation flows and see how that flow is similar to the traditional application flow.
As I tinker with dialog systems at the Allen Institute for Artificial Intelligence, primarily by prototyping Alexa skills, I often wonder what AI is still lacking to build good conversational systems, punting the social challenge to another day. This post is my take on where AI has a good chance to improve and consequently, what we can expect from the next wave of conversational systems.
Jabberwacky learns new responses and context based on real-time user interactions, rather than being driven from a static database. Some more recent chatbots also combine real-time learning with evolutionary algorithms that optimise their ability to communicate based on each conversation held. Still, there is currently no general purpose conversational artificial intelligence, and some software developers focus on the practical aspect, information retrieval.
×