Authors: Anuj Patil
Certificate: View Certificate
Healthcare as one of the vital spheres of human life is badly falling behind technological progress. While e-commerce, hospitality, and the food industry are advanced and augmented with various technological solutions, healthcare still sticks to the traditional way of doing things. Why can you order a pizza in ten seconds but must wait for an appointment with a doctor for days and weeks? How can you make sure that urgent medical help is indeed urgent? Why finding a credible answer to an important question about your health is so annoyingly difficult? I am also deeply concerned about the lack of attention that the healthcare industry receives. And the first and easiest solution I can offer to change it is to implement chatbot technology in healthcare. Healthcare chatbots will never substitute doctors. But they provide plenty of opportunities to facilitate their job or to improve their performance. The medical chat-bots functioning depends on Natural Language Processing which helps users to submit their problems about their health. The user can ask any personal query related to health care through the chatbot without being out physically available to the hospital. By using Google API for voice-text and text-voice conversion query is sent to the chatbot and gets a related answer and displays the answer on the android app. The system’s major concern behind developing this web-based platform is analyzing customers’ sentiments.
A chatbot is a computer program or Artificial Intelligence software that simulates a conversation or chat through audio or texts. The conversation with the user is done through messaging applications, websites, mobile applications, telephones, etc. Chatbots are designed to simplify the interaction between humans and computers.
Nowadays most chatbots are accessed by virtual assistants (Google Assistant and Amazon Alexa), messaging applications (Facebook Messenger, Telegram, etc.), or individual organizations’ apps and websites. Technically, a chatbot represents the natural evolution of a Question-Answer system leveraging Natural Language Processing (NLP).
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.
Chatbots can be classified into usage categories such as conversational commerce (e-commerce via chat), analytics, communication, customer support, design, developer tools, education, entertainment, finance, food, games, health, HR, marketing, news, personal, productivity, shopping, social, sports, travel, and utilities
Text-based messaging services are “cheap, fast, democratic and popular” and, especially for young people, the preferred way of communication.
The main purpose of the scheme is to build the language gap between the user and health providers by giving immediate replies to the Questions asked by the user. Today’s people are more likely addicted to the internet, but they are not concerned about their health. They avoid going to the hospital for problems that may become a major disease in the future. Establishing question-answers forums is becoming a simple way to answer those queries rather than browsing through the list of potentially relevant documents from the web. Many of the existing systems have some limitations such as there is no instant response given to the patients, and they must wait for experts’ acknowledgment for a long time. Some of the processes may charge the amount to perform live chat or telephony communication with doctors online.
This system allows the computer to communicate with the human computer by using natural language processing (NLP). Three analyses understand natural language i.e., identification of main linguistic relations is completed to parse subject into an object of the sentences. After that description of the texts is done. The semantic interpretation uses knowledge of word meaning.
A chatbot is an Entity that imitates human discussion in its accepted set-up together with a text or vocal language with techniques such as Natural Language Processing (NLP).
This system aims to replicate a person’s discussion. The development of a chatbot application can be done by making a user interface to send input and receive a response. It is a system that interacts with the user by keeping the track of the state of interaction and recollecting the preceding commands to give functionality.
Medical chatbots can be developed by using artificial algorithms that scrutinize users’ queries, recognize them, and give replies to related queries. A big disease can start from small problems such as headache which feels normal, but it may begin with diseases such as brain tumors most diseases can be identified by common symptoms so the disease can be predicted if the patient’s body is analyzed periodically.
Medical chatbots can be developed by using artificial algorithms that scrutinize users’ queries, recognize them, and give replies to related queries. A big disease can start from small problems such as headache which feels normal but it may begin with big diseases such as brain tumors most diseases can be identified by common symptoms so the disease can be predicted if the patient’s body is analyzed periodically.
IV. LITERATURE SURVEY
The paper gives the information regarding products which is useful for consumers to obtain what they want exactly. Question Answering (QA) systems can be identified as information accessing systems that try to answer natural language queries by giving answers suitable answers making use of attributes available in natural language techniques.
The system takes plain text as input and answering all types of questions output by the qualified user is the output. The purpose is to provide a generic solution to this problem. this paper helps in recognizing the reality in texts and giving the past content for developing a conversation that is used in middle-school CSCL scenarios. A smart chatbot for customer care by using Software as a Service which analyzes the message of each application server.
It helps the user to resolve the issue by providing human-way interactions using LUIS and cognitive services which are implemented on AWS public cloud. Admin feeds the input to the machine so that the machine can identify the sentences and take a decision itself as a response to a question.
The database used in the project is MySQL. The illustration and execution of SQL in the pattern matching operation are required. The conversation can be done so that it can add some knowledge to the database as it has not been modeled before. If in case the input sentences in the database did not match, then it will be remodeled. The evaluation of sentence equivalence is completed with a bigram that splits the input sentence into two parts. The data of the chatbot are deposited in the database. The database is appointed as information storage and a predictor is used for storing the function and performing pattern matching. This application can be developed by using the programming language of Pascal and Java.
Paper uses artificial intelligence to predict diseases based on symptoms and give the list of available treatments. It can facilitate us to figure out the problem and validate the solution.
The author gives chatterbot which is based on the AIML (Artificial Intelligent Markup Language) structure for training the model and uses a Microsoft voice synthesizer for identification of the word spoken by the user. Natural language processing is used for understanding and Microsoft speech recognition is used in speech recognition and speech synthesis for speech-to-text and text-to-speech, so people get along with it easily.
V. PROPOSED MODEL
A. Principle of RASA NLU
As presented before, RASA NLU is used to understand language for chatbots and AI assistants, especially focusing on intent classification and entity extraction. Pipeline "spacy_sklearn" is composed of different components using some NLP libraries such as spaCy, sci-kit-learn, and sklearn-crfsuite. With these components, RASA NLU can analyze messages. The three basic principles in the process are described as follows.
First, the "tokenizer_spacy" component promotes a tokenization process using spaCy, a library for advanced natural language processing written in Python and Cython. And parts of speech (POS) are annotated using the library. In spaCy, strings, word vectors, and lexical attributes are stored in containers. To grant efficiency compared with the standard BiLSTM solution, special neural models are designed and developed from scratch specifically for spaCy in which convolutional layers are deployed with residual connections, batch normalization, and max out non-linearity. From the work of Joakim Nivre about the transition-based framework, the arc-eager transition system, and the imitation learning objective, the foundation of the parser is built.
Then, the GloVe vectors extracted from each token are concatenated to form the feature vector of a whole sentence. This representation of a sentence is used to train a multiclass support vector machine (SVM) and recognize user intents by the "intent_classifier_sklearn" component.
Finally, the "ner_crf" component provides a conditional random field (CRF) classifier to train on the sentence tokens and POS tags to extract entities in the training data. CRFs use words as the time steps and entity classes as the states if it is an undirected Markov chain. By recognizing features (capitalization, POS tagging, etc.) of the words, the most likely set of tags is then calculated and returned. The intent classifier and entity extractor are trained using the sci-kit-learn library and the sklearn-crfsuite library, respectively.
B. Rasa Architecture
As soon as Rasa receives a message from the end user, it tries to predict to extract the “intents” and “entities” present in the message. This part is handled by Rasa NLU. Once the user intent is identified, the Rasa stack performs an action called action/utter. Rasa then tries to predict what it should do next. This decision is taken considering multiple factors and is handled by Rasa Core.
???????C. Pipeline in Rasa
The pipeline is like a sequence of procedures (in rasa known as Components) that are executed one by one in a Queue. To specify the pipeline, we need to change the current working directory to our project directory and edit the config.yml file.
To specify the Pipeline for rasa we can append the Components i.e., pipeline:
- name: “SpacyNLP”
- name: “SpacyTokenizer”
- name: “SpacyFeaturizer”
- name: “RegexFeaturizer”
- name: “CRFEntityExtractor”
- name: “EntitySynonymMapper”
- name: “SklearnIntentClassifier”
We can also specify the Custom Pipelines to this, the above pipeline is inbuilt in the rasa NLU model that is:
Both of the above pipelines are the same, in case we need to add a custom component then the upper one can be used so that it would not disturb the other components.
???????D. Training Data Format
We can provide training data as markdown or JSON.
???????E. Rasa Core
Rasa core is the dialog flow model in rasa it manages conversations and their flow. To do so we also need to train the Core model of rasa. For which we have some training data files.
???????F. Actions in Rasa
Actions are python code that is executed when they are called, Templates are also actions, but all actions are not templates.
Custom Actions: These are the actions that run on the developer python script. Custom actions can be especially useful in writing our python code. We can integrate third-party APIs and other logic.
By reviewing the literature, we come to know that this system gives accurate results. As we are using a large dataset which will ensure better performance compared to earlier. Thus, we build up a system that is useful for medical institutes or hospitals to help the users freely ask medical dosage-related queries by voice. The system gets output for medicine API and speaks out and displays all medicine names. We are using NLP because we want a computer to communicate with users on their terms. So, using the SVM algorithm and disease symptoms system can predict disease. Users can get related answers displayed on the android application refer to this answer for analysis. Natural language processing is a vital component of intelligent Chatbot systems. In this paper, a function framework is designed, and the principle of RASA NLU is introduced for the Chatbot system. The designed system integrates RASA NLU and neural network (NN) methods and implements the system based on entity extraction after intent recognition. This paper has compared our methods in recognition accuracy and integrities of entities or sentences and has also validated the developed system in realistic situations. In the future, this system will be further improved the recognition accuracy of entity extraction for longer sentences and more complicated entities. The methods in this paper are only used for academic research and not for commercial purposes.
 Agnese Augello, Giovanni Pilato, Alberto Machi\' ICAR Istituto di Calcolo e Reti ad Alte Prestazioni CNR – Consiglio Nazionale delle Ricerche Viale delle Scienze , 978-0-7695- 4859-3/12 $26.00 © 2012 IEEE . \"An Approach to Enhance Chatbot Semantic Power and Maintainability: Experiences within the FRASI Project\".  “Real World Smart Chatbot for Customer Care using a Software as a Service (SaaS) Architecture\"Godson Michael D’silva1, *, Sanket Thakare2, Sharddha More1, and Jeril Kuriakose1, International conference on I-SMAC (IoT in Social, Mobile, Analytics, and Cloud)  Chatbot Using A Knowledge in Database, \"Bayu Setiaji, Ferry Wahyu Wibowo\",2016 7th International Conference on Intelligent Systems, Modelling and Simulation.2016 IEEE.  Bocklisch T, Faulkner J, Pawlowski N, and Nichol A 2017 Rasa: Open-Source Language Understanding and Dialogue Management arXiv: Computation and Language  Desertsot T, Raimondo S, Mishakova A, Portet F and Vacher M 2018, September Towards a French Smart-Home Voice Command Corpus: Design and NLU Experiments C. text speech and dialogue.  Hannibalbal M and Montani I 2017 spacy 2: Natural language understanding with bloom embeddings, convolutional neural networks, and incremental parsing to appear.  Goldberg Y and Nivre J 2012 A Dynamic Oracle for Arc-Eager Dependency Parsing C.international conf. on computational linguistics  Segura C, Palau A, Luque J, Costa-just M and Banchs R 2018 Chatbol, a chatbot for the Spanish “La Liga  Abadi M, Barham P, Chen J, Chen Z, Davis A, Dean J, ... and Zheng X 2016 TensorFlow: a system for large-scale machine learning J. operating systems design and implementation p265-283  Pennington J, Socher R and Manning C D 2014 Glove: Global Vectors for Word Representation C. empirical methods in natural language proc.
Copyright © 2022 Anuj Patil. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.