{"id":18048,"date":"2018-06-06T07:41:35","date_gmt":"2018-06-06T07:41:35","guid":{"rendered":"https:\/\/developer.kore.ai\/v10-3\/?post_type=docs&#038;p=14269"},"modified":"2023-04-24T14:43:12","modified_gmt":"2023-04-24T13:43:12","slug":"nlp-guide","status":"publish","type":"post","link":"https:\/\/developer.kore.ai\/v10-3\/docs\/bots\/chatbot-overview\/nlp-guide\/","title":{"rendered":"Natural Language Processing (NLP)"},"content":{"rendered":"<section class=\"l-section wpb_row height_auto\"><div class=\"l-section-h i-cf\"><div class=\"g-cols vc_row type_default valign_top\"><div class=\"vc_col-sm-12 wpb_column vc_column_container\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\"><div class=\"ult-spacer spacer-6ae8c5e591037\" data-id=\"6ae8c5e591037\" data-height=\"12\" data-height-mobile=\"12\" data-height-tab=\"12\" data-height-tab-portrait=\"\" data-height-mobile-landscape=\"\" style=\"clear:both;display:block;\"><\/div>\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<h1><span class=\"ez-toc-section\" id=\"Prerequisites\"><span style=\"font-weight: 400\">Prerequisites<\/span><\/span><\/h1>\n<p><span style=\"font-weight: 400\">Key NLP concepts such as utterance, intent, or dialog task are discussed in the <\/span><a href=\"https:\/\/developer.kore.ai\/v10-3\/docs\/bots\/chatbot-overview\/chatbot-overview\/#\"><span style=\"font-weight: 400\">Virtual Assistants Overview<\/span><\/a><span style=\"font-weight: 400\">.<\/span><\/p>\n<h1><span class=\"ez-toc-section\" id=\"Introduction\"><span style=\"font-weight: 400\">Introduction<\/span><\/span><\/h1>\n<p><span style=\"font-weight: 400\">Conversational VAs are all about enabling a machine to have natural conversations with users. The key for a conversational VA to understand human interactions lies in its ability to identify the user&rsquo;s intention (Intent Detection), extract useful information (Entity Extraction), and map them to relevant actions or tasks (Dialog Task execution).&nbsp;<\/span><\/p>\n<p><span style=\"font-weight: 400\">NLP is the science of deducing the intention and related information from natural conversations. The conversation flow in Kore.ai virtual assistants passes through various Natural Language Understanding (NLU) engines and conversation engines before the VA decides upon action and response.<\/span><\/p>\n<p><span style=\"font-weight: 400\">This article provides an overview of the NLP flow within a Kore.ai virtual assistant and shows how you, as a developer, can leverage its features to build an efficient and accurate VA.<\/span><\/p>\n<h1><span class=\"ez-toc-section\" id=\"Koreais_NLP_Approach\"><span style=\"font-weight: 400\">Kore.ai&rsquo;s NLP Approach<\/span><\/span><\/h1>\n<p><span style=\"font-weight: 400\">The Kore.ai Experience Optimization (XO) Platform employs a multi-engine approach to natural language, which combines the following three models for optimal outcomes:<\/span><\/p>\n<ol>\n<li><strong>Fundamental Meaning (FM):<\/strong><span style=\"font-weight: 400\"> A computational linguistics approach that is built on ChatScript. The model analyzes the structure of a user&rsquo;s utterance to identify each word by meaning, position, conjugation, capitalization, plurality, and other factors;<\/span><\/li>\n<li><strong>Machine Learning (ML):<\/strong><span style=\"font-weight: 400\"> Kore.ai uses state-of-the-art NLP algorithms and models for machine learning to enable VAs to be trained and to gradually improve their intelligence;<\/span><\/li>\n<li><strong>Knowledge Graph Engine (KG):<\/strong><span style=\"font-weight: 400\"> The Knowledge Graph helps you turn your static FAQ text into an intelligent and personalized conversational experience.<\/span><\/li>\n<\/ol>\n<p><span style=\"font-weight: 400\">With its three-fold approach, the Kore.ai XO Platform enables you to accelerate the Natural Language Understanding (NLU) performance of the virtual assistant and achieve optimal accuracy with relatively less training data. Kore.ai automatically enables the trained NLP capabilities to all built-in and custom VAs, and powers the way they communicate, understand, and respond to a user request.<\/span><\/p>\n<h1><span class=\"ez-toc-section\" id=\"NLP_Building_Blocks\"><span style=\"font-weight: 400\">NLP Building Blocks<\/span><\/span><\/h1>\n<p><span style=\"font-weight: 400\">When a virtual assistant built on the Kore.ai XO Platform receives a user utterance, it is processed to identify the user intent, extract any additional information (entities), and then answer the user via a task execution. NLP is mostly concerned with the first two &ndash; intent detection and entity extraction.<\/span><\/p>\n<p><a ref=\"magnificPopup\" href=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-3\/wp-content\/uploads\/sites\/43\/20230424144221\/nlp_building_blocks-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1376\" height=\"602\" src=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-3\/wp-content\/uploads\/sites\/43\/20230424144221\/nlp_building_blocks-1.png\" alt=\"\" class=\"alignnone size-medium wp-image-56817\" srcset=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-3\/wp-content\/uploads\/sites\/43\/20230424144221\/nlp_building_blocks-1.png 1376w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-3\/wp-content\/uploads\/sites\/43\/20230424144221\/nlp_building_blocks-1-300x131.png 300w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-3\/wp-content\/uploads\/sites\/43\/20230424144221\/nlp_building_blocks-1-1024x448.png 1024w\" sizes=\"auto, (max-width: 1376px) 100vw, 1376px\" \/><\/a><\/p>\n<h1><span class=\"ez-toc-section\" id=\"Steps_in_a_Conversation_Flow\"><span style=\"font-weight: 400\">Steps in a Conversation Flow<\/span><\/span><\/h1>\n<p><span style=\"font-weight: 400\">The Conversation Flow involves going through the following steps:<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400\"><strong>NLP Analysis<\/strong><span style=\"font-weight: 400\">: The user utterance goes through a series of NLP engines for entity extraction and intent detection. (You can extend the out-of-the-box NLP functionality to use your own engine. You can install the <\/span><a href=\"https:\/\/developer.kore.ai\/v10-3\/docs\/bots\/sdks\/using-the-botkit-sdk\/\"><span style=\"font-weight: 400\">Bot Kit SDK<\/span><\/a><span style=\"font-weight: 400\"> and easily integrate the virtual assistant with any 3rd party NLP engine. The output from the 3rd party NLP engine complements the outputs from Kore.ai thus adding to the efficiency and accuracy of the engine.) The engines provided by the Kore.ai XO Platform are as follows:<\/span><\/li>\n<ul>\n<li style=\"font-weight: 400\"><strong>Fundamental Meaning Engine<\/strong><span style=\"font-weight: 400\"> which breaks up the utterances based on the grammar constructs;<\/span><\/li>\n<li style=\"font-weight: 400\"><strong>Machine Learning Engine<\/strong><span style=\"font-weight: 400\"> which classifies individual words in the utterance, using an example-based, auto-learning training process;<\/span><\/li>\n<li style=\"font-weight: 400\"><strong>Knowledge Collection Engine<\/strong><span style=\"font-weight: 400\"> which mostly deals with FAQ type user queries. It can also be configured to trigger tasks in response to the user query;<\/span><\/li>\n<li style=\"font-weight: 400\"><strong>Traits Engine<\/strong><span style=\"font-weight: 400\"> which is a multiclass classifier and can identify multiple categories in user utterances thus aiding in refining user intent detection;<\/span><\/li>\n<li style=\"font-weight: 400\"><strong>Small Talk Engine<\/strong><span style=\"font-weight: 400\"> which adds human flavor to the conversations;<\/span><\/li>\n<li style=\"font-weight: 400\"><strong>Ranking and Resolver<\/strong><span style=\"font-weight: 400\"> to score the results from the above engines and rank them according to the set business rules, with the purpose of deciding on the winning intent.<\/span><\/li>\n<\/ul>\n<li style=\"font-weight: 400\"><strong>Task Execution<\/strong><span style=\"font-weight: 400\">: The winning intent along with the entities extracted then passes through the conversation engine for the actual task execution. This engine maintains the state or context of the conversation with information like user details, the previous intents requested by the user, and any other information as tagged by the business rules. This helps provide a near-human conversation experience. The conversation engine uses this state information along with the following conditions to accept or reject the intent identified by the NLU engines<\/span><\/li>\n<ul>\n<li style=\"font-weight: 400\"><strong>Pre-conditions<\/strong><span style=\"font-weight: 400\"> &ndash; if an intent has a set of predefined conditions configured and if any of these conditions are not satisfied the winning intent is then rejected. For example, a <\/span><em><span style=\"font-weight: 400\">booking payment<\/span><\/em><span style=\"font-weight: 400\"> intent should have the <\/span><em><span style=\"font-weight: 400\">payee<\/span><\/em><span style=\"font-weight: 400\"> details available.<\/span><\/li>\n<li style=\"font-weight: 400\"><strong>Negative patterns<\/strong><span style=\"font-weight: 400\"> capture the presence of a pattern that should not identify a particular intent. For example &ldquo;<\/span><em><span style=\"font-weight: 400\">I lost my bag, how do I retrieve it<\/span><\/em><span style=\"font-weight: 400\">&rdquo; should, not assume that the user wants to be provided with information about baggage, and instead attempt to track their bag, based on the presence of the phrase &ldquo;lost my bag&rdquo;<\/span><\/li>\n<li style=\"font-weight: 400\"><strong>Event handling<\/strong><span style=\"font-weight: 400\"> &ndash; events defined for a welcome message, sentiment analysis, etc<\/span><\/li>\n<\/ul>\n<li style=\"font-weight: 400\"><strong>Interruptions handling<\/strong><span style=\"font-weight: 400\">: Other conditions such as Interruption settings (to handle situations where another intent is identified during the course of an ongoing task) or Sentiment Analysis settings (user sounds angry and hence should be transferred to an agent) are crucial for the action to be taken.<\/span><\/li>\n<li style=\"font-weight: 400\"><strong>Response Generation<\/strong><span style=\"font-weight: 400\">: A response is generated and presented to the user based on the channel of interaction. The response could be a success message, information as requested by the user, prompt for missing information or message concerning their transfer to a human agent.<\/span><\/li>\n<\/ol>\n<p><a ref=\"magnificPopup\" href=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-3\/wp-content\/uploads\/sites\/43\/20220919153415\/multiple-nLP-engine-approach-of-kore-V2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-3\/wp-content\/uploads\/sites\/43\/20220919153415\/multiple-nLP-engine-approach-of-kore-V2-1024x352.png\" alt=\"\" width=\"640\" height=\"220\" class=\"alignnone size-large wp-image-45012\" srcset=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-3\/wp-content\/uploads\/sites\/43\/20220919153415\/multiple-nLP-engine-approach-of-kore-V2.png 1024w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-3\/wp-content\/uploads\/sites\/43\/20220919153415\/multiple-nLP-engine-approach-of-kore-V2-300x103.png 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/p>\n<h1><span class=\"ez-toc-section\" id=\"NLP_Training\"><span style=\"font-weight: 400\">NLP Training<\/span><\/span><\/h1>\n<p><span style=\"font-weight: 400\">In the previous section, we have seen the NLP process of the Kore.ai virtual assistant, but it needs some training on your part to ensure that the process proceeds as per your requirements. So, how do you train a fully functional VA to achieve the best results? How do you make maximum use of the features above?<\/span><\/p>\n<p><span style=\"font-weight: 400\">We will see some basic guidelines for NLP training in this section, before going into the details of each of the NLU engines.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"The_NLP_Training_Process\"><span style=\"font-weight: 400\">The NLP Training Process<\/span><\/span><\/h2>\n<p><span style=\"font-weight: 400\">Morphology is the underlying principle behind NLP. Morphology is the study of words, how they are formed, and their relationship to other words in the same language. It analyzes the structure of words and parts of words, such as stems, root words, prefixes, and suffixes. Morphology also looks at parts of speech, intonation, and stress, and the ways the context can change a word&rsquo;s pronunciation and meaning.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Based on this, a user utterance undergoes the following preprocessing before an attempt at entity extraction and intent detection:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400\"><strong>Tokenization<\/strong><span style=\"font-weight: 400\"> &ndash; Splitting of utterances into sentences (Sentence tokenization) and Splitting of Sentence(s) into words. Kore.ai NLP uses TreeBank Tokenizer for English. Each language might have its own tokenizer<\/span><\/li>\n<li style=\"font-weight: 400\"><strong>toLower()<\/strong><span style=\"font-weight: 400\"> &ndash; Convert all the text into lower (Not done for German, since the word meaning changes based on the case). This process is done only by ML and KG engines.<\/span><\/li>\n<li style=\"font-weight: 400\"><strong>StopWord removal<\/strong><span style=\"font-weight: 400\"> &ndash; Each language has its own set of stop words that can be edited by the developer. Removes words that may not contribute to improving the learning. This process is done only in ML and KG engines. This setting is optional, but is disabled by default.<\/span><\/li>\n<li style=\"font-weight: 400\"><strong>Lemmatization or Stemming<\/strong><span style=\"font-weight: 400\"> depending on the language&nbsp;<\/span><\/li>\n<ul>\n<li style=\"font-weight: 400\"><strong>Stemming<\/strong><span style=\"font-weight: 400\"> &ndash; Retains the stem of the word like &ldquo;Working&rdquo;-&gt;&rdquo; work&rdquo;, &ldquo;Running&rdquo;-&gt;&rdquo; Run&rdquo;, &ldquo;housing&rdquo;-&gt;&rdquo;hous&rdquo;. It basically cuts the words. The output word may not be a valid language word<\/span><\/li>\n<li style=\"font-weight: 400\"><strong>Lemmatization<\/strong><span style=\"font-weight: 400\"> &ndash; Converts the word to its base form using the dictionary. Like in earlier examples &ldquo;Working&rdquo;-&gt;&rdquo; work&rdquo;, &ldquo;Running&rdquo;-&gt;&rdquo; Run&rdquo; however,&nbsp; &ldquo;housing&rdquo;-&gt;&rdquo; house&rdquo;.&nbsp;<\/span><\/li>\n<\/ul>\n<li style=\"font-weight: 400\"><strong>N-grams<\/strong><span style=\"font-weight: 400\"> &ndash; Helps in combining co-occurring words. For example, &ldquo;New York City&rdquo; and &ldquo;Internet Explorer&rdquo;. Each word has its own meaning. But when we take tri-gram in the first case and bi-gram in the second case, it actually results in a more meaningful word. N-grams also help in getting some context before or after a word.<\/span><\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"Scoping\"><span style=\"font-weight: 400\">Scoping<\/span><\/span><\/h2>\n<p><span style=\"font-weight: 400\">The first step in NLP training is to define the scope of the VA, narrowing down the problem the Virtual Assistant will need to solve. This helps in configuring the various training nuances you will require. This involves brainstorming sessions with various stakeholders like SMEs\/BAs, Conversation Experience Designers, VA Developers, NLP Analysts\/Data Engineers, NLP Trainers, and Testers.<\/span><\/p>\n<p><span style=\"font-weight: 400\">The basic guidelines we suggest to keep in mind while scoping the VA are the following:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400\"><strong>Start with a problem to solve<\/strong><span style=\"font-weight: 400\"> &ndash; get a clear idea of what the VA is supposed to accomplish. Talk to business analysts and VA developers to understand the requirements and the actual functionality of the Virtual Assistant.<\/span><\/li>\n<\/ul>\n<ul>\n<li><strong>Create a list of Intents &ndash; <\/strong><span style=\"font-weight: 400\">this will streamline the entire process<\/span><\/li>\n<\/ul>\n<ul>\n<ul>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">For each intent, identify the key results that the VA is aiming to accomplish;<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">The focus should be on the needs of the user, not the platform requirements.<\/span><\/li>\n<\/ul>\n<\/ul>\n<\/ul>\n<ul>\n<li><strong>Detail out example conversations &ndash; <\/strong><span style=\"font-weight: 400\">both user utterances and responses<\/span><\/li>\n<\/ul>\n<ul>\n<ul>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Create user personas and think about the conversations they might engage in with your VA.&nbsp;<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Think through edge cases, follow-ups, and clarifying questions;<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">You can leverage the Storyboard feature of the platform if it has not been already used for the VA development phase.<\/span><\/li>\n<\/ul>\n<\/ul>\n<li><strong>Brainstorm what an end user might ask as part of achieving their intent &ndash; <\/strong><span style=\"font-weight: 400\">these would be the alternate utterances for every intent. Try to also include idioms and slang.<\/span><\/li>\n<\/ul>\n<h1><span class=\"ez-toc-section\" id=\"Koreais_NLU_Engines_and_When_to_Use_Them\"><span style=\"font-weight: 400\">Kore.ai&rsquo;s NLU Engines and When to Use Them<\/span><\/span><\/h1>\n<p><span style=\"font-weight: 400\">We have seen above that the Kore.ai XO Platform offers three main engines for NLU:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Machine Learning (ML)<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Fundamental Meaning (FM)<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Knowledge Collection&nbsp; \/ Knowledge Graph (KG)<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400\">When do you use each engine? Each of these engines has settings and configurations. Our article on <\/span><a href=\"https:\/\/developer.kore.ai\/v10-3\/docs\/bots\/nlp\/optimizing-bots\/\"><span style=\"font-weight: 400\">Optimizing NLP to Improve VA Performance<\/span><\/a><span style=\"font-weight: 400\"> discusses this in more detail. Here we will list out some broad guidelines as to which engine to use when.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Machine_Learning_Engine\"><span style=\"font-weight: 400\">Machine Learning Engine<\/span><\/span><\/h2>\n<p><span style=\"font-weight: 400\">Machine Learning (ML) is the recommended engine for training a VA. The reason for this is its flexibility and auto-learn feature. Given a few examples, the engine learns and is capable of understanding similar new utterances. The training utterances need not be full sentences, as the ML can learn from phrases too.<\/span><\/p>\n<p><span style=\"font-weight: 400\">If you have a large corpus for each intent that you are planning to implement, then use Machine Learning. If you don&rsquo;t have a corpus it would be a good idea to develop one. In the long run, it is better to spend time building a large corpus and use ML rather than going for the other less time-consuming, easier options.<\/span><\/p>\n<p><span style=\"font-weight: 400\">The way you define a large corpus could differ depending on the intents. For example, if the intentions are very different from each other and can be understood using their sample data like &ldquo;Find Flight&rdquo; or &ldquo;Change Sear&ldquo;, then a corpus of 200-300 for each intent is sufficient. However, if intents are closer to each other (and usually start with a similar utterance, such as &ldquo;Change Seat&rdquo; and &ldquo;Change Flight&rdquo;, then the corpus should be in 1000s.<\/span><\/p>\n<p><span style=\"font-weight: 400\">Similarly, if you are planning to use Deep Neural Networks, you need a higher number of samples for better predictions of both True Positives and True Negatives, as these networks are data-hungry. <a href=\"https:\/\/developer.kore.ai\/v10-3\/docs\/bots\/nlp\/user-utterances\/\"><span style=\"font-weight: 400\">Learn more about the ML Engine<\/span><\/a>.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Knowledge_Graph_Engine\"><span style=\"font-weight: 400\">Knowledge Graph Engine<\/span><\/span><\/h2>\n<p><span style=\"font-weight: 400\">If your intents are more query-like in nature than transactional tasks or if the content is in documents and you want the VA to answer user queries from documents, then use Knowledge Collection. This engine can also be used to trigger dialog tasks in response to user queries thus incorporating other features available within the Kore.ai XO Platform.<\/span><\/p>\n<p><span style=\"font-weight: 400\">If you have a lot of Intents and do not have time to prepare alternate utterances, but you are able to manually annotate some important terms, use Knowledge Collection. It is advisable to spend some time building a corpus and going for Machine Learning since annotation in the Knowledge Graph works in a similar way to ML&rsquo;s auto-learning process. <a href=\"https:\/\/developer.kore.ai\/v10-3\/docs\/bots\/nlp\/knowledge-graph\/\"><span style=\"font-weight: 400\">Learn more about the Knowledge Graph<\/span><\/a>.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Fundamental_Meaning_Engine\"><span style=\"font-weight: 400\">Fundamental Meaning Engine<\/span><\/span><\/h2>\n<p><span style=\"font-weight: 400\">If you have cases where users employ idiomatic sentences or command-like sentences or if you are not too strict about some false positives then use the Fundamental Meaning (FM) engine. <a href=\"https:\/\/developer.kore.ai\/v10-3\/docs\/bots\/nlp\/fundamental-meaning\/\"><span style=\"font-weight: 400\">Learn more about the FM Engine<\/span><\/a>.<\/span><\/p>\n<h1><span class=\"ez-toc-section\" id=\"NLP_Organization_within_the_XO_Platform\"><span style=\"font-weight: 400\">NLP Organization within the XO Platform<\/span><\/span><\/h1>\n<p><span style=\"font-weight: 400\">To get started optimizing your VA&rsquo;s NLP, you need to select the VA you&rsquo;re working with, then access&nbsp; <\/span><strong>Build &gt;<\/strong> <strong>Natural Language<\/strong><span style=\"font-weight: 400\">. The NLP options are categorized under various headings for your convenience:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400\"><strong>Training<\/strong><span style=\"font-weight: 400\"> &ndash; In the Training section, you can define how the NLP interpreter recognizes and responds to the user input for a VA, and then train the interpreter to recognize the correct user intent.<\/span><\/li>\n<li style=\"font-weight: 400\"><strong>Thresholds &amp; Configurations<\/strong><span style=\"font-weight: 400\"> &ndash; In this section, you can define the recognition confidence levels required for minimum recognition actions, the confidence range for asking a user to choose from a list of possible matches, and a recognition confidence level for a positive match for the knowledge graph.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Modify <\/span><strong>Advanced Settings<\/strong><span style=\"font-weight: 400\"> like auto training settings for user utterances and negative intent patterns.<\/span><\/li>\n<\/ul>\n<p><\/a><\/li>\n<p><a ref=\"magnificPopup\" href=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-3\/wp-content\/uploads\/sites\/43\/20220919153753\/access-nlp.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-3\/wp-content\/uploads\/sites\/43\/20220919153753\/access-nlp.png\" alt=\"\" width=\"263\" height=\"645\" class=\"alignnone size-full wp-image-45015\" srcset=\"https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-3\/wp-content\/uploads\/sites\/43\/20220919153753\/access-nlp.png 263w, https:\/\/kore-wordpress.s3.us-east-2.amazonaws.com\/developer.kore.ai\/v10-3\/wp-content\/uploads\/sites\/43\/20220919153753\/access-nlp-122x300.png 122w\" sizes=\"auto, (max-width: 263px) 100vw, 263px\" \/><\/a><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Related_Links\">Related Links<\/span><\/h3>\n<ul>\n<li style=\"font-weight: 400\"><a href=\"https:\/\/developer.kore.ai\/v10-3\/docs\/bots\/nlp\/advanced-nlp-configurations\/\"><span style=\"font-weight: 400\">Optimizing NLP Engines<\/span>\n<li style=\"font-weight: 400\"><a href=\"https:\/\/developer.kore.ai\/v10-3\/docs\/bots\/nlp\/additional-notes-nlp-settings-guidelines\/\"><span style=\"font-weight: 400\">NLP Settings and Guidelines<\/span><\/a><\/li>\n<\/ul>\n<div class=\"w-separator size_medium with_line width_default thick_1 style_solid color_border align_center\"><div class=\"w-separator-h\"><\/div><\/div>\n<div class=\"w-post-elm post_navigation layout_simple inv_false\">\n\t<a class=\"post_navigation-item order_first to_prev\" href=\"https:\/\/developer.kore.ai\/v10-3\/docs\/bots\/chatbot-overview\/chatbot-overview\/\"><\/p>\n<div class=\"post_navigation-item-arrow\"><\/div>\n<div class=\"post_navigation-item-meta\">Previous Post<\/div>\n<div class=\"post_navigation-item-title\"><span>Virtual Assistants Overview<\/span><\/div>\n<p><\/a><br \/><a class=\"post_navigation-item order_second to_next\" href=\"https:\/\/developer.kore.ai\/v10-3\/docs\/bots\/chatbot-overview\/about-bots\/\"><\/p>\n<div class=\"post_navigation-item-arrow\"><\/div>\n<div class=\"post_navigation-item-meta\">Next Post<\/div>\n<div class=\"post_navigation-item-title\"><span>Virtual Assistant Concepts and Terminology<br \/><\/span><\/div>\n<p><\/a><\/div>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/div><\/div><\/div><\/div><\/div><\/section>\n","protected":false},"excerpt":{"rendered":"Prerequisites Key NLP concepts such as utterance, intent, or dialog task are discussed in the Virtual Assistants Overview. Introduction Conversational VAs are all about enabling a machine to have natural conversations with users. The key for a conversational VA to understand human interactions lies in its ability to identify the user&rsquo;s intention (Intent Detection), extract...","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[68],"tags":[],"class_list":["post-18048","post","type-post","status-publish","format-standard","hentry","category-chatbot-overview"],"_links":{"self":[{"href":"https:\/\/developer.kore.ai\/v10-3\/wp-json\/wp\/v2\/posts\/18048","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/developer.kore.ai\/v10-3\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/developer.kore.ai\/v10-3\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v10-3\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/developer.kore.ai\/v10-3\/wp-json\/wp\/v2\/comments?post=18048"}],"version-history":[{"count":33,"href":"https:\/\/developer.kore.ai\/v10-3\/wp-json\/wp\/v2\/posts\/18048\/revisions"}],"predecessor-version":[{"id":56820,"href":"https:\/\/developer.kore.ai\/v10-3\/wp-json\/wp\/v2\/posts\/18048\/revisions\/56820"}],"wp:attachment":[{"href":"https:\/\/developer.kore.ai\/v10-3\/wp-json\/wp\/v2\/media?parent=18048"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/developer.kore.ai\/v10-3\/wp-json\/wp\/v2\/categories?post=18048"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/developer.kore.ai\/v10-3\/wp-json\/wp\/v2\/tags?post=18048"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}