ELIZA's key method of operation (copied by chatbot designers ever since) involves the recognition of clue words or phrases in the input, and the output of corresponding pre-prepared or pre-programmed responses that can move the conversation forward in an apparently meaningful way (e.g. by responding to any input that contains the word 'MOTHER' with 'TELL ME MORE ABOUT YOUR FAMILY'). Thus an illusion of understanding is generated, even though the processing involved has been merely superficial. ELIZA showed that such an illusion is surprisingly easy to generate, because human judges are so ready to give the benefit of the doubt when conversational responses are capable of being interpreted as "intelligent".
Artificial neural networks, invented in the 1940’s, are a way of calculating an output from an input (a classification) using weighted connections (“synapses”) that are calculated from repeated iterations through training data. Each pass through the training data alters the weights such that the neural network produces the output with greater “accuracy” (lower error rate).
For designing a chatbot conversation, you can refer this blog — “How to design a conversation for chatbots.” Chatbot interactions are segmented into structured and unstructured interactions. As the name suggests, the structured type is more about the logical flow of information, including menus, choices, and forms into account. The unstructured conversation flow includes freestyle plain text. Conversations with family, colleagues, friends and other acquaintances fall into this segment. Developing scripts for these messages will follow suit. While developing the script for messages, it is important to keep the conversation topics close to the purpose served by the chatbot. For the designer, interpreting user answers is important to develop scripts for a conversational user interface. The designer also turns their attention to close-ended conversations that are easy to handle and open-ended conversations that allow customers to communicate naturally.
To be more specific, understand why the client wants to build a chatbot and what the customer wants their chatbot to do. Finding answers to this query will guide the designer to create conversations aimed at meeting end goals. When the designer knows why the chatbot is being built, they are better placed to design the conversation with the chatbot.
In one particularly striking example of how this rather limited bot has made a major impact, U-Report sent a poll to users in Liberia about whether teachers were coercing students into sex in exchange for better grades. Approximately 86% of the 13,000 Liberian children U-Report polled responded that their teachers were engaged in this despicable practice, which resulted in a collaborative project between UNICEF and Liberia’s Minister of Education to put an end to it.
The bot (which also offers users the opportunity to chat with your friendly neighborhood Spiderman) isn’t a true conversational agent, in the sense that the bot’s responses are currently a little limited; this isn’t a truly “freestyle” chatbot. For example, in the conversation above, the bot didn’t recognize the reply as a valid response – kind of a bummer if you’re hoping for an immersive experience.
Several studies accomplished by analytics agencies such as Juniper or Gartner  report significant reduction of cost of customer services, leading to billions of dollars of economy in the next 10 years. Gartner predicts an integration by 2020 of chatbots in at least 85% of all client's applications to customer service. Juniper's study announces an impressive amount of $8 billion retained annually by 2022 due to the use of chatbots.
Do the nature of our services and size of our customer base warrant an investment in a more efficient and automated customer service response? How can we offer a more streamlined experience without (necessarily) increasing costly human resources? Amtrak’s website receives over 375,000 daily visitors, and they wanted a solution that provided users with instant access to online self-service.
The process of building a chatbot can be divided into two main tasks: understanding the user's intent and producing the correct answer. The first task involves understanding the user input. In order to properly understand a user input in a free text form, a Natural Language Processing Engine can be used. The second task may involve different approaches depending on the type of the response that the chatbot will generate.
A malicious use of bots is the coordination and operation of an automated attack on networked computers, such as a denial-of-service attack by a botnet. Internet bots can also be used to commit click fraud and more recently have seen usage around MMORPG games as computer game bots. A spambot is an internet bot that attempts to spam large amounts of content on the Internet, usually adding advertising links. More than 94.2% of websites have experienced a bot attack.
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.
When we open our news feed and find out about yet another AI breakthrough—IBM Watson, driverless cars, AlphaGo — the notion of TODA may feel decidedly anti-climatic. The reality is that the current AI is not quite 100% turnkey-ready for TODA. This will soon change due to two key factors: 1) businesses want it, and 2) businesses have abundant data, the fuel that the current state-of-the-art machine learning techniques need to make AI work.
Utility bots solve a user's problem, whatever that may be, via a user-prompted transaction. The most obvious example is a shopping bot, such as one that helps you order flowers or buy a new jacket. According to a recent HubSpot Research study, 47% of shoppers are open to buying items from a bot. But utility bots are not limited to making purchases. A utility bot could automatically book meetings by scanning your emails or notify you of the payment subscriptions you forgot you were signed up for.
Magic, launched in early 2015, is one of the earliest examples of conversational commerce by launching one of the first all-in-one intelligent virtual assistants as a service. Unique in that the service does not even have an app (you access it purely via SMS), Magic promises to be able to handle virtually any task you send it — almost like a human executive assistant. Based on user and press accounts, Magic seems to be able to successfully carry out a variety of odd tasks from setting up flight reservations to ordering hard-to-find food items.
Another reason is that Facebook, which has 900 million Messenger users, is expected to get into bots. Many see this as a big potential opportunity; where Facebook goes, the rest of the industry often follows. Slack, which lends itself to bot-based services, has also grown dramatically to two million daily users, which bot makers and investors see as a potentially lucrative market.
Conversational bots work in a similar way as an employee manning a customer care desk. When a customer asks for assistance, the conversational bot is the medium responding. If a customer asks the question, “What time does your store close on Friday?” the conversational bot would respond the same as a human would, based on the information available. “Our store closes at 5pm on Friday.”
Feine, J., Morana, S., and Maedche, A. (2019). “Leveraging Machine-Executable Descriptive Knowledge in Design Science Research ‐ The Case of Designing Socially-Adaptive Chatbots”. In: Extending the Boundaries of Design Science Theory and Practice. Ed. by B. Tulu, S. Djamasbi, G. Leroy. Cham: Springer International Publishing, pp. 76–91. Download Publication
A chatbot (also known as a spy, conversational bot, chatterbot, interactive agent, conversational interface, Conversational AI, talkbot or artificial spy entity) is a computer program or an artificial intelligence which conducts a conversation via auditory or textual methods. 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 chatbots use sophisticated natural language processing systems, but many simpler ones scan for keywords within the input, then pull a reply with the most matching keywords, or the most similar wording pattern, from a database.