Skip to main content

CHATBOTS

How many of you get frustrated while shopping ?Looking for something but not able to find it. How about Finding the right item via "Conversation" ?Not with humans but a service that stays with you all throughout ?  Is this what you are looking for ? If your answer is yes ,then welcome to the world of Chatbots .

Chatbots are software programs , that are meant for interaction between a human and machine in the best possible natural manner i.e. with the use of natural language . So, basically a bot with intelligent quotient as good as a human qualifies to be called as  good Chatbot , so that it simulates the responses that would generally be given while interacting with a human . For a Chatbot to qualify as a intelligent chatbot it has to pass through  "Turing test". Turing test involves the conversation with judges and this conversation goes as long as 5 minutes .All those who generate 30% correct answers pass the test .

Combination of Machine Learning Techniques , Artificial Intelligence , Deep learning , Neural networks and Natural Language Processsing have made chatbots realistic.
  Chatbots are already a part of many messenger platforms such as Facebook messenger ,etc. Google assistants also make use of chatbots . Weather bots ,Grocery bot ,news bot ,are already a part of our lives and have received a heartily welcome . 

Flight Bot 

What is the structure of a Chatbot ?
             In general all parsers have three major components. A parser to understand the human input , knowledge for processing this input and  replying back in a natural manner , so that it gives the feel as if a human is replying .

What models can be used for Building a chatbot ?
1)    Retrieval Based model – 
                 This model picks up a response from the repository based upon some heuristics. Rule based , expression matching and machine learning classifiers are few in the list .The response, finally generated by the chatbot is directly picked from the repository and goes as it is without any modification and is grammatically correct .ELIZA and A.L.I.C.E. are few examples of chatbots that were developed long back and use retrieval based model by using pattern matching techniques .They, don’t have intelligence embedded in them .
A.L.I.C.E archtitecture

      2)    Generative Based Model –
                    In this model , an all together new response is generated from scratch using Machine Learning , Deep Learning and NLP techniques .NLP provides a way of understanding a input given in any language and then responding back accordingly .
                   For such models the very generic approach that is used is , as soon as a user submits a query to the chatbot , the query is forwarded to a Natural language processing Engine . With the help of NLP, entities are identified and then relevant data is retrieved. Once we get the data that has to returned as a response to the user, again NLP comes into picture which results in formation of proper response which can be returned back to the user.
            Microsoft’s Tay is an example of chatbot using generative model .


      NLP Engine Capabilities



Entity Extraction                                                                                 Intent Recognition

Does a Bot Need Natural Language Processing? 
The biggest challenge that Chatbot’s face today is understanding what the user is actually trying to say. This is where Natural Language Processing comes into picture. Conventionally, they used to match against keywords and return a response. The NLP segment enables the computer to decipher the query from the user end, comprehend what's being stated, process everything and return response back like normally humans do .
NLP is really helpful and is able to provide solutions for some of the really hard to solve problems that chatbots are facing today . To quote a few , separation of words into morphemes depending upon the language . Understanding the semantics of the sentences is another place where natural language understanding and natural language generation comes into picture .Understanding the structure of text which varies language wise and analysing users sentiment are few others in the list .

What are the Challenges faced by ChatBots Today ?
1)Incorporating Context – Understanding the user’s intent is the greatest challenge . For eg . a user queried “What are the best places for eating ?” .In this case the bot should be able to respond back with the name of the best hotels rather than returning the name of places . So , this adult intelligence needs to be embedded in chatbots.
            Recently , microsoft’s bot TAY was put publically for one day user interaction .  Unfortunately , it gave outrageous comments , and  out of context replies and they had to finally take it offline . One of the replies from Tay -
                              Asked “Do you support genocide?”
                                Tay's reply “i do indeed.”
2) Understanding User’s way of texting – Everyone has a unique texting style . Some like to be precise and concise framing short sentences while on the other hand some people prefer writing long sentences , while some will use multiple short sentences . So , now it gets difficult for the chat bot to understand user’s intention . To quote a few , how long it should wait before generating a response or how many chats to be combined together to understand the request and then generate a response .
3) Understanding Human Mood – We humans keep on changing our mood frequently . Their may be instances when user requests the chatbot to do something and all of  a sudden because of change in mood request it to do something else .In such scenarios , the user might expect the chatbot to give some sort of recommendation or some sort of convincing . Now , this is only and only possible when the chatbot understands the user well. Analysis of User Behavioural data can play a great role handling this .
4) Understanding kind of language one uses – Each human has a unique style and so differs the usage of slangs , cool words that keep coining everyday , use of abbreviations , etc. This varies from person to person and this a great challenge .
5)Generating consistent Answers-  Consistent answers should be produced for queries which are semantically similar . Consider the following two queries -
                                         “How old are you ?” 
                                         “What is your age ?” 
The response generated from both the queries should be same . But , this is difficult to achieve considering present scenario. Majority systems are trained to return linguistically correct answer but not semantically consistent .

References :
-         Vibhor Sharma, Monika Goyal , Drishti Mali , An Intelligent Behaviour Shown by Chatbot System  In  International Journal of New Technology and Research (IJNTR)
-         Aditya Deshpande1, Alisha Shahane 2, Darshana Gadre3, Mrunmayi Deshpande4, Prof. Dr. Prachi M. Joshi, A survey of various chatbot implementation techniques In International Journal of Computer Engineering and Applications
-         Iulian V. Serban, Alessandro Sordoni,Yoshua Bengio,1 Aaron Courville, Joelle Pineau , Building End-to-End Dialogue Systems Using Generative Hierarchical Neural Network Models In Proceedings of the Thirtieth AAAI Conference on Artificial Intelligence (AAAI-16)
-         https://chatbotsmagazine.com

Comments

Post a Comment

Popular posts from this blog

NLP in Video Games

From the last few decades, NLP (Natural Language Processing) has obtained a high level of success in the field  of Computer Science, Artificial Intelligence and Computational Logistics. NLP can also be used in video games, in fact, it is very interesting to use NLP in video games, as we can see games like Serious Games includes Communication aspects. In video games, the communication includes linguistic information that is passed either through spoken content or written content. Now the question is why and where can we use NLP in video games?  There are some games that are related to pedagogy or teaching (Serious Games). So, NLP can be used in these games to achieve these objectives in the real sense. In other games, one can use the speech control using NLP so that the player can play the game by concentrating only on visuals rather on I/O. These things at last increases the realism of the game. Hence, this is the reason for using NLP in games.  We can use NLP to impr

Discourse Analysis

NLP makes machine to understand human language but we are facing issues like word ambiguity, sarcastic sentiments analysis and many more. One of the issue is to predict correctly relation between words like " Patrick went to the club on last Friday. He met Richard ." Here, ' He' refers to 'Patrick'. This kind of issue makes Discourse analysis one of the important applications of Natural Language Processing. What is Discourse Analysis ? The word discourse in linguistic terms means language in use. Discourse analysis may be defined as the process of performing text or language analysis, which involves text interpretation and knowing the social interactions. Discourse analysis may involve dealing with morphemes, n-grams, tenses, verbal aspects, page layouts, and so on. It is often used to refer to the analysis of conversations or verbal discourse. It is useful for performing tasks, like A naphora Resolution (AR) , Named Entity Recognition (NE

Coreference Resolution and Applications in NLP

In computational linguistics and natural language processing coreference resolution (CR) is an avidly studies problem in discourse which has managed to be only partially solved by the state of the art and consequently remain one of the most exciting open problems in this field. Introduction and Definition The process of linking together mentions of a particular entity in a speech or text excerpt that related to real world entities is termed as coreference resolution. This process identifies the dependence between a phrase with the rest of the sentence or other sentences in the text.  This is an integral part of natural languages to avoid repetition, demonstrate possession/relation etc. A basic example to illustrate the above definition is given below : Another example which uses elements from popular fiction literature : Harry  wouldn’t bother to read “ Hogwarts: A History ” as long as  Hermione  is around.  He  knows  she  knows  the book  by heart. The different type