How far are we from building systems with commonsense? One often-heard answer is: not in the near future, while the realistic answer is: we don’t know. Last year, I spent some time trying to build a system that can do better than an information retrieval baseline in taking fourth-grade science exam (which still has a ways to go to gain a passing score of 65%). I failed hard. Here’s an example to get a sense of the difficulty of these questions.
SEO has far less to do with content and words than people think. Google ranks sites based on the experience people have with brands. If a bot can enhance that experience in such a way that people are more enthusiastic about a site – they share it, return to it, talk about it, and spend more time there, it will affect positively how the site appears in Google.
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.
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).
As digital continues to rewrite the rules of engagement across industries and markets, a new competitive reality is emerging: “Being digital” soon won’t be enough. Organizations will use artificial intelligence and other technologies to help them make faster, more informed decisions, become far more efficient, and craft more personalized and relevant experiences for both customers and employees.
The market shapes customer behavior. Gartner predicts that “40% of mobile interactions will be managed by smart agents by 2020.” Every single business out there today either has a chatbot already or is considering one. 30% of customers expect to see a live chat option on your website. Three out of 10 consumers would give up phone calls to use messaging. As more and more customers begin expecting your company to have a direct way to contact you, it makes sense to have a touch point on a messenger.
The NLP system has a wide and varied lexicon to better understand the complexities of natural language. Using an algorithmic process, it determines what has been asked and uses decision trees or slot-based algorithms that go through a predefined conversation path. After it understands the question, the computer then finds the best answer and provides it in the natural language of the user.
If you are looking for another paid platform, Beep Boop may be your next stop. It is a hosting platform that is designed for developers looking to make apps for Facebook Messenger and Slack specifically. First, set up your code using Github, the popular version control repository and Internet hosting service, then input it into the Beep Boop platform to link it with your Facebook Messenger or Slack application. The bots will then be able to interact with your customers with real-time chat and messaging.
From any point in the conversation, the bot needs to know where to go next. If a user writes, “I’m looking for new pants,” the bot might ask, “For a man or woman?” The user may type, “For a woman.” Does the bot then ask about size, style, brand, or color? What if one of those modifiers was already specified in the query? The possibilities are endless, and every one of them has to be mapped with rules.
The bot itself is only part of a larger system that provides it with the latest data and ensures its proper operation. All of these other Azure resources — data orchestration services such as Data Factory, storage services such as Cosmos DB, and so forth — must be deployed. Azure Resource Manager provides a consistent management layer that you can access through the Azure portal, PowerShell, or the Azure CLI. For speed and consistency, it's best to automate your deployment using one of these approaches.
“To be honest, I’m a little worried about the bot hype overtaking the bot reality,” said M.G. Siegler, a partner with GV, the investment firm formerly known as Google Ventures. “Yes, the high level promise of what bots can offer is great. But this isn’t going to happen overnight. And it’s going to take a lot of experimentation and likely bot failure before we get there.”
Kunze recognises that chatbots are the vogue subject right now, saying: “We are in a hype cycle, and rising tides from entrants like Microsoft and Facebook have raised all ships. Pandorabots typically adds up to 2,000 developers monthly. In the past few weeks, we've seen a 275 percent spike in sign-ups, and an influx of interest from big, big brands.”
“Bots go bust” — so went the first of the five AI startup predictions in 2017 by Bradford Cross, countering some recent excitement around conversational AI (see for example O’Reilly’s “Why 2016 is shaping up to be the Year of the Bot”). The main argument was that social intelligence, rather than artificial intelligence is lacking, rendering bots utilitarian and boring.
1. Define the goals. What should your chatbot do? Clearly indicate the list of functions your chatbot needs to perform. 2. Choose a channel to interact with your customers. Be where your clients prefer to communicate — your website, mobile app, Facebook Messenger, WhatsApp or other messaging platform. 3. Choose the way of creation. There are two of them: using readymade chat bot software or building a custom bot from scratch. 4. Create, customize and launch. Describe the algorithm of its actions, develop a database of answers and test the work of the chatbot. Double check everything before showing your creation to potential customers.
There are obvious revenue opportunities around subscriptions, advertising and commerce. If bots are designed to save you time that you’d normally spend on mundane tasks or interactions, it’s possible they’ll seem valuable enough to justify a subscription fee. If bots start to replace some of the functions that you’d normally use a search engine like Google for, it’s easy to imagine some sort of advertising component. Or if bots help you shop, the bot-maker could arrange for a commission.
As the above chart (source) illustrates, email click-rate has been steadily declining. Whilst open rates seem to be increasing - largely driven by mobile - the actual engagement from email is nosediving. Not only that, but it's becoming more and more difficult to even reach someone's email inbox; Google's move to separate out promotional emails into their 'promotions' tab and increasing problems of email deliverability have been top reasons behind this.
The process of building, testing and deploying chatbots can be done on cloud based chatbot development platforms offered by cloud Platform as a Service (PaaS) providers such as Yekaliva, Oracle Cloud Platform, SnatchBot and IBM Watson.   These cloud platforms provide Natural Language Processing, Artificial Intelligence and Mobile Backend as a Service for chatbot development.
ELIZA's key method of operation (copied by chatbot designers ever since) involves the recognition of cue 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".
This importance is reinforced by Jacqueline Payne, Customer Support Manager at Paperclip Digital, who says ‘Customer service isn’t a buzzword. But too many businesses treat it like it is. As a viable avenue from which to lower customer acquisition costs and cultivate a loyal customer base, chat bots can play a pivotal role in driving business growth.’
Can we provide a better way of doing business that transforms an arduous “elephant-in-the-room” process or task into one that allows all involved parties to stay active and engaged? As stated by Grayevsky, “I saw a huge opportunity to design a technology platform for both job seekers and employers that could fill the gaping ‘black hole’ in recruitment and deliver better results to both sides.”
In a traditional application, the user interface (UI) consists of a series of screens, and a single app or website can use one or more screens as needed to exchange information with the user. Most applications start with a main screen where users initially land, and that screen provides navigation that leads to other screens for various functions like starting a new order, browsing products, or looking for help.
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.
Back to our earlier example, if a bot doesn’t know the word trousers and a user corrects the input to pants, the bot will remember the connection between those two words in the future. The more words and connections that a bot is exposed to, the smarter it gets. This process is similar to that of human learning. Our capacity for memory and synthesis is part of what makes us unique, and we’re teaching our best tricks to bots.
Build a bot directly from one of the top messaging apps themselves. By building a bot in Telegram, you can easily run a bot in the application itself. The company recently open-sourced their chatbot code, making it easy for third-parties to integrate and create bots of their own. Their Telegram API, which they also built, can send customized notifications, news, reminders, or alerts. Integrate the API with other popular apps such as YouTube and Github for a unique customer experience.
We need to know the specific intents in the request (we will call them as entities), for eg — the answers to the questions like when?, where?, how many? etc., that correspond to extracting the information from the user request about datetime, location, number respectively. Here datetime, location, number are the entities. Quoting the above weather example, the entities can be ‘datetime’ (user provided information) and location(note — location need not be an explicit input provided by the user and will be determined from the user location as default, if nothing is specified).
Pop-culture references to Skynet and a forthcoming “war against the machines” are perhaps a little too common in articles about AI (including this one and Larry’s post about Google’s RankBrain tech), but they do raise somewhat uncomfortable questions about the unexpected side of developing increasingly sophisticated AI constructs – including seemingly harmless chatbots.
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.
H&M’s consistent increased sales over the past year and its August announcement to launch an eCommerce presence in Canada and South Korea during the fall of 2016, along with 11 new H&M online markets (for a total of 35 markets by the end of the year), appear to signify positive results for its chatbot implementation (though direct correlations are unavailable on its website).
At this year’s I/O, Google announced its own Facebook Messenger competitor called Allo. Apart from some neat features around privacy and self-expression, the really interesting part of Allo is @google, the app’s AI digital assistant. Google’s assistant is interesting because the company has about a decades-long head start in machine learning applied to search, so its likely that Allo’s chatbot will be very useful. In fact, you could see Allo becoming the primary interface for interacting with Google search over time. This interaction model would more closely resemble Larry Page’s long-term vision for search, which goes far beyond the clumsy search query + results page model of today:
Regardless of which type of classifier is used, the end-result is a response. Like a music box, there can be additional “movements” associated with the machinery. A response can make use of external information (like weather, a sports score, a web lookup, etc.) but this isn’t specific to chatbots, it’s just additional code. A response may reference specific “parts of speech” in the sentence, for example: a proper noun. Also the response (for an intent) can use conditional logic to provide different responses depending on the “state” of the conversation, this can be a random selection (to insert some ‘natural’ feeling).