AI Based Chatbot: 1136032

Introduction

The technology of Artificial Intelligence is significant in the modern times in respect to the fact that the business systems will be intelligent. This will help the intelligent decisions to be made as well as the performance of the vital actions is performed on behalf of the humans for better personalized experience. The report will potentially deal with the development of the artificial intelligence as well as machine learning based intelligent chatbot that will efficiently help with the enhancement of the business interactions. The technology of machine learning will be effective in respect to the fact that the chatbot will be efficient in respect to the effeteness of interactions. Thus, the further parts of the report will deal with the development of the chatbot, the aspects of the chatbot as well as provide an overview in respect to the development of chatbot with the help of the significant steps.

2.0 Development procedure of Chatbot

2.1 Chatbot

Chatbot is defined as the most common example that is related with the interaction of the human computer. There are significant application sin respect to the usage of the chatbot.

The development of the modern day chatbot does not significantly involve the complex level of algorithms and thus do not possess significant NLP ,modules. In this case they mostly use the technologies of AIML, YAML, XML as well as other pattern recognition modules.

2.2 How human brain works

The significant memory of the human brain is the potentially confusing as well as the complex part of a human body. Thus the basic rules that are adhered by a human brain can be focused and implemented in regards to the development of the artificially intelligent chatbot. The possible predictions in respect to these areas are comparatively less thus helping the overall development of the artificially intelligent chatbot.    

2.3 Road Map for the development

The significant roadmap that are followed in general terms for the development of the Chatbot with the help of the technologies like AI as well as machine learning is stated by the following figure.

(Image: Road Map for Chatbot Development)

(Source: Created by Author)

3.0 Usage of AI and Machine Learning for developing Chatbot

A chatbot, which is, also known as chatterbot is a technological program that helps in stimulating conversations like human being. This implies that the computer is able to provide voice commands also provide messages that follows Artificial Intelligence (AI) that is developed with the help of machine learning. The AI and the machine learning which follows three methods develop the Chatbot. The first type of the method is known as the Pattern match. The Artificial Intelligence Mark-up Language (AIML), which is the part of AI development and Machine language, develops the patterns being a standard structure based model. The patterns are used for matching and grouping the texts so that the machine is able to deliver the exact and appropriate result. The second method is Natural Language Understanding (NLU). The three concepts of NLU, the Entities, Context and Expectations are used for guiding the chatbot during the development period. The entities provide the idea whereas the context part develops the natural language understanding based developed algorithms checks the input sentences. The machine learning structure has developed all the specifications for the usability of the AI in this technology. This also provides the expectation attribute of NLU where the machine is developed for giving appropriate inquiry based replies. The third method is the Natural language processing (NLP).

The effective usage of LSTM is depicted as a useful architecture in respect to the development of the intelligent systems in respect to the chatbot. This framework provides an enhancement in respect to the memory cells that possesses the old value thus adding the new value with respect to the time associated with the overall chatbot. The LTSM unit is mainly composed of cell, input gate, output gate as well as a forget gate. This will be helpful for the effective management of the user data within the platform of AI based Chatbot. These components are duly helpful for the storage of the effective data within the chatbot.

The next concept that is significantly used in respect to natural language processing is identified as spaCy. This concept adheres the fact of the statistical models of neural networks regarding the usage of the different languages within the environment of the chatbot. These models are potentially trained with the help of the machine learning tools that will help the connection of the statistics within the neural network models. This technique uses the languages of Python to develop them effectively. These tends to help the API improvements thus enhancing the overall development of the Chatbot.

The next significant concept associated with the development of the intelligent chatbot system is depicted as the Tf-idf, which means term frequency-inverse document frequency. This is significantly associated with the important factors of information or data retrieval, mining of text as well as the modelling concept of the user. This increases proportionally with the total number of times a specific word is found within a document. This is identified as a central tool that revolves round the fact of retrieving the previous set of information in respect to the overall documents provided in the chatbot. This will potentially help the development as well as enhances the user to efficiently use the chatbot.

One of the most important concept in respect to the development of the chatbot also includes the fact of sentence synthesis. This potentially helps the human speech to be produced artificially for the development of chatbot. This is eventually developed with the help of the sentence synthesizer. These tools uses the methodology of the text to speech that helps in the processing of the normal text to the efficient speech. These can be created with the help of the concatenation of the normal speech that will significantly help in the synthesis of the text. The text engine that will be associated for the synthesis of the text will be using linguistic approaches in respect to the sentence synthesis. These speeches are recorded in the databases of the normal language concatenation for developing a machine based sentence approach.

Thus, the usage of these tools as well as techniques in respect to the associated development of the intelligent chatbot will significantly help the users to easily access the chatbot. Moreover, there are certain steps associated with the development which are provided in the next section.

The development of the chatbot primarily includes the stated steps. These steps are depicted to be important in respect to the overall designing as well as the execution of the chatbot with the help of the effective methodologies as well as the significant instances.

1. Front end: This is depicted as the main display or the screen in respect to the chatbot where the end-user will be able to interact with the overall system. This part will be developed with the help of the angular js platform.

2. Middleware: This significant part will be dealing with the overall input as well as the output that are provided by the system with the help of the chatbot. This helps with the internal query operations in respect to the functioning of the chatbot. The potential design that this module will deal with is provided with the help of the figure below.

3. Static Content System: This is the significant module that deals with the overall usage of the AIML. This modules enhances the performance of the chatbot and potentially deals with the communication of the middleware with the overall system. This system will be developed with the help of JAVA. This module can be explained with the help of the provided figure below:

4. NLP Adapter Unit: This is depicted as the important sector of the overall chatbot as this deals with the knowledge associated with the NLP algorithms. This module carries out the functional part of synthesizing the text or sentence. This potentially receives the data from the CPM thus transferring them into an important and meaningful sentence. This possess the language recognition facility. This is identified to be a complex module. The below figure depicts the explanation of the overall module.

5. Core Processing Module: This is depicted as the central memory or the main part of the overall chatbot. This deals with the relational as well as the graph based systems within the databases. This possesses an interface that deals with the data provided on the NLP module and the significant algorithm present within this module changes the overall knowledge within the graph as well as relational databases. This section deals with the effective scheme of the knowledge representation. This module also puts an emphasis on the various cognitive memories associated with the overall module. These cognitive memories will significantly process as well as provide efficient responses with the help of CPM thus updating the overall databases. The below figure depicts the overall core processing module.

6. Cognitive memories as well as external sources: The overall working memory will be designed within this module. The design flows within this module will be described as provided in the given figure:

The design can be elaborated with the help of the below stated examples:

1. When the user entered a very simple obvious or introductory statement: In the case of middleware the statement is to be sent to both of the systems and it is also obvious that the statements will be answered quickly in regards to the static system of content, therefore the middleware cancels the significant operation thus providing response in respect to the front end. However, the front end will significantly open a session regarding the brain-inspired memory. Thus, it will start recognizing the overall language as well as the learning of the overall perspectives and the potential user intentions, which could be used in the near future.

2. When user entered a reasonably complex statement: In respect to this case the static content system will not be capable to provide any response, however the CPM will provide response in respect to the available knowledge as well as the context that are present within the short term memory.

3. When user entered a significant complex statement that is out of the system scope: In respect to this case, the CPM will not be capable to provide any response exactly. However, it will significantly send the most relatable knowledge or else try to ask another question in a significant way that will tend to engage the user and on the same; it will tend to request the external source module to provide the data. The module will then tend to try with the processing of data thus to attain knowledge as quickly as possible so that it might be able to answer the prominent query in the near future.

3.1 Example code for the development of chatbot

This section will efficiently deal with the significant example code that is to be used for the potential development of the chatbot. The development of chatbot in this modern days uses the significant language of Python in most of the case that will help the various organizations to deal with the effective automated chat stated by the client. The potential figures of the example code written in python language is depicted as follows:

This figure depicts the example code that is used for the development of chatbot within the python language.

Moreover, the development of the chatbot follows a series of steps and in each step some significant code are depicted to be used for the enhanced development of the chatbot:

The necessary steps as well as the different coding steps that are followed in python while developing a chatbot is stated as follows:

Firstly, the Corpus or the knowledge resource is to be taken from where the overall chatbot will provide answers. Secondly, the data would be read and the corpus will be provided with a significant list.

Now the preprocessing of the text is performed via defining a function that is depicted as LemTokens.

Now the significant step that is carried out is the keyword matching which is provided in the figure below:

Now the overall work that is to be carried out is depicted as the generation of response which adheres the import of the responses in respect to the questions asked by them. The overall import procedures are provided below:

Thus, the overall codes are depicted to be an example for the development of the chatbot using python language.

4.0 Different aspects of chatbot

The chatbot is used and is utilized for the purpose of solving or assisting in the human complexities. The aspect of the chatbot are developed on the basis of the functionalities tat are required or the functions that are required to be solved by the chatbot.

The different type of the chatbot or the different aspects of the chatbot are as follows:

a) Support Chatbot: The development of the support chatbot are done for gaining more knowledge on a single domain. They are used for gaining only a single source based knowledge and that is why it is used in the organization, as the chatbot will be able to answer to the questions that are based on only the particular organization. Support chatbot require possessing personality, context awareness along with the attribute of multi-turn capability in the system. They are expected to give the user an experience that will let them know about all the major business concerns of the organization and answer to the questions that have been raised by the users. In this attribute, the text to speech delivery of the bot is not a necessary aspect as in this case the user generally sits on the computers and start figuring their answers to their questions.

b) Assistant Chatbot: The assistant chatbot are the mixture of the skill bots and the support chatbot. In this case the chatbot works on those questions too where they have little ground of knowledge. This type of chatbot is needed to be conversational where the chatbot is able to speak to the support bot for gaining the answer and providing the answer to the user. They are not based on any single source of information collection or activity log. They tend to gain the information from the other aspects of the bots. It is designed in the way where the bot is able to answer to all kinds of problem and when it fails it replies with answers that tend to amuse the user.

c) Skills Chatbot: the skills chatbot are based on the single turn type bots which have no need of huge amount of contextual based awareness. In this case, the chatbot are developed by some definite set of commands. The commands ate likely to make human life easier. The speech functionality is ideal for the kind of the chatbot where the user does not require pressing buttons for switching on the device. The voice control recognition system will enable to switch the chatbot on or off as and when required by the user. They need tom follow the command s in real time and in a very fast pace.

5.0 Conclusion

Thus, the overall report deals with the significant implications of the artificial intelligence as well as machine learning in respect to the development of the chatbot that will significantly help the client as well as the significant target audience with a better information gathering. Moreover, the overall road map for the potential development of the chatbot are also provided which tends to enhance the development of the chatbot. In addition to this, the overall example code for a potential development of chatbot is also provided in the report. The potential aspects of the different chatbot are also provided in the report. Thus, it may be concluded that the potential development of the chatbot with the help of artificial intelligence as well as the machine learning is depicted to be effective for the target consumers or people.

6.0 References

Bahja, Mohammed, Rawad Hammad, and Mohammed Hassouna. “Talk2Learn: A Framework for Chatbot Learning.” In European Conference on Technology Enhanced Learning, pp. 582-586. Springer, Cham, 2019.

Brandtzaeg, Petter Bae, and Asbjørn Følstad. “Chatbots: changing user needs and motivations.” interactions 25, no. 5 (2018): 38-43.

Brandtzaeg, Petter Bae, and Asbjørn Følstad. “Why people use chatbots.” In International Conference on Internet Science, pp. 377-392. Springer, Cham, 2017.

Cameron, Gillian, David Cameron, Gavin Megaw, Raymond Bond, Maurice Mulvenna, Siobhan O’Neill, Cherie Armour, and Michael McTear. “Towards a chatbot for digital counselling.” In Proceedings of the 31st British Computer Society Human Computer Interaction Conference, p. 24. BCS Learning & Development Ltd., 2017.

Chandel, Sonali, Yuan Yuying, Gu Yujie, Abdul Razaque, and Geng Yang. “Chatbot: efficient and utility-based platform.” In Science and Information Conference, pp. 109-122. Springer, Cham, 2018.

Chung, Kyungyong, and Roy C. Park. “Chatbot-based heathcare service with a knowledge base for cloud computing.” Cluster Computing 22, no. 1 (2019): 1925-1937.

Chung, Minjee, Eunju Ko, Heerim Joung, and Sang Jin Kim. “Chatbot e-service and customer satisfaction regarding luxury brands.” Journal of Business Research (2018).

Greff, Klaus, Rupesh K. Srivastava, Jan Koutník, Bas R. Steunebrink, and Jürgen Schmidhuber. “LSTM: A search space odyssey.” IEEE transactions on neural networks and learning systems 28, no. 10 (2016): 2222-2232.

Io, H. N., and C. B. Lee. “Chatbots and conversational agents: A bibliometric analysis.” In 2017 IEEE International Conference on Industrial Engineering and Engineering Management (IEEM), pp. 215-219. IEEE, 2017.

Kim, Ji-Ho, JongWon Park, Ji-Bum Moon, Yulim Lee, and Andy Kyung-yong Yoon. “Primary Study for dialogue based on Ordering Chatbot.” Journal of Multimedia Information System 5, no. 3 (2018): 209-214.

Mohammed, Mohssen, Muhammad Badruddin Khan, and Eihab Bashier Mohammed Bashier. Machine learning: algorithms and applications. Crc Press, 2016.

Okuda, Takuma, and Sanae Shoda. “AI-based Chatbot Service for Financial Industry.” Fujitsu Scientific and Technical Journal 54, no. 2 (2018): 4-8.

Ostrom, Amy L., Darima Fotheringham, and Mary Jo Bitner. “Customer acceptance of AI in service encounters: understanding antecedents and consequences.” In Handbook of Service Science, Volume II, pp. 77-103. Springer, Cham, 2019.

Patel, Neelkumar P., Devangi R. Parikh, Darshan A. Patel, and Ronak R. Patel. “AI and Web-Based Human-Like Interactive University Chatbot (UNIBOT).” In 2019 3rd International conference on Electronics, Communication and Aerospace Technology (ICECA), pp. 148-150. IEEE, 2019.

Rahman, A. M., Abdullah Al Mamun, and Alma Islam. “Programming challenges of chatbot: Current and future prospective.” In 2017 IEEE Region 10 Humanitarian Technology Conference (R10-HTC), pp. 75-78. IEEE, 2017.

Raj, Sumit. “Natural Language Processing for Chatbots.” In Building Chatbots with Python, pp. 29-61. Apress, Berkeley, CA, 2019.

Shin, Minchul, Sungguen Kim, and Cheul Rhee. “Development of Chatbot Using Q&A Data of SME (Small and Medium Enterprise).” Journal of Information Technology Services 17, no. 3 (2018): 17-36.

Vijayakumar, R., B. Bhuvaneshwari, S. Adith, and M. Deepika. “AI Based Student Bot for Academic Information System using Machine Learning.” (2019).

Wu, Shih-Hung, Liang-Pu Chen, Ping-Che Yang, and Tsun Ku. “Automatic Dialogue Template Synthesis for Chatbot by Story Information Extraction.” In 2018 IEEE International Conference on Information Reuse and Integration (IRI), pp. 485-490. IEEE, 2018.

Yu, Zhou, Ziyu Xu, Alan W. Black, and Alexander Rudnicky. “Chatbot evaluation and database expansion via crowdsourcing.” In Proceedings of the chatbot workshop of LREC, vol. 63, p. 102. 2016.