=Paper=
{{Paper
|id=Vol-2721/paper603
|storemode=property
|title=Unscripted Conversation through Knowledge Graph
|pdfUrl=https://ceur-ws.org/Vol-2721/paper603.pdf
|volume=Vol-2721
|authors=Roshni Ramnani,Shubhashis Sengupta,Ankur Gakhar,Sarvesh Maheshwari,Sayantan Mitra
|dblpUrl=https://dblp.org/rec/conf/semweb/RamnaniSGMM20
}}
==Unscripted Conversation through Knowledge Graph==
Unscripted Conversation through Knowledge Graph Roshni R Ramnani, Shubhashis Sengupta, Ankur Gakhar, Sarvesh Maheshwari, and Sayantan Mitra Accenture Technology Labs Abstract. In this paper, we introduce “unscripted conversation” - free form dialog over a domain knowledge graph. We describe a use case around Luggage handling for a commercial airline where we answer users queries regarding various policies such as luggage dimensions, restrictions on carry-on items, travel routes etc. We have encoded the domain en- tities, relationships, processes and polices in the knowledge graph and created a generic semantic natural language processing engine to process user queries and retrieve the correct results from a knowledge graph. Keywords: Conversational AI · Knowledge Graph · Natural Language Processing 1 Introduction The conventional approach for building chatbots requires explicit conversational modelling involving manual scripting of dialog flows and extensive training for intent classification. For use cases involving complex organizational processes and rules like a Luggage Handler, changes in the rules / policies at the backend necessitates changes in the encoded flows and training data. We believe issues regarding rigid design and maintenance signal a need for a shift in conversational systems design. Hence, we look to use Knowledge graphs which are easy to understand by a human expert, amiable for customization, and easy to maintain. Knowledge graphs for answering users queries has been used previously [1] [2], however our approach is different from existing approaches in the sense that we build an interactive dialog system rather than a pure Question and Answer system, we handle complex queries involving multiple clauses / sentences and we execute multi-hop queries against the graph. Figure 1 depicts query types with examples that are handled. 2 High level Approach Our approach centres around the building of a domain graph using a domain agnostic semantic schema and a semantic parsing layer that processes a user utterance and performs a multi-hop graph walk to retrieve the result. 0 Copyright c 2020 for this paper by its authors. Use permitted under Creative Com- mons License Attribution 4.0 International (CC BY 4.0). 2 R. Ramnani et al. 2.1 Graph Schema The domain graph follows a flat structure where attributes of a entity are the leaf nodes. Essentially all nodes of the graph inherit from a set of 6 distinct node types namely Person (for people or roles), Process (for organizational processes), Math ( for handing math formulas ), Decision ( for if-then-else rules / rule expressions ), Generic ( for all other domain entities), Value Property ( for attributes ). In addition, hierarchies defined in ConceptNet are used to map their other real world concepts to entities modelled in the graph.[3] 2.2 Semantic Parsing Layer The semantic natural language layer consists of 4 parts : Query Classifier which classifies the query as info / question and identifies the result type ( affirmation, process, calculation, attribute retrieval, etc ) , the Sentence Splitter which splits a complex sentence into its component clauses, the Base Layer which performs dependency parsing and semantic role labelling, the Custom Layer which builds on previous layers to identify the main clause, focus entities, verbs and the constraints as shown in Figure 2.The entities and verbs are compared with the nodes and relations in the graph using a combination of levenshtein distance and word vectors. The answer is retrieved by finding the shortest path(s) between the start node and the focus node. In scenarios where multiple answers exist (multiple valid identified paths / multiple valid focus nodes), a dialog with the user is initiated to retrieve the entities which lead to the selection of a single path. The response is presented to the user via template based natural language generation techniques. Fig. 1. Query Types Fig. 2. Semantic Parsing References 1. Moon, Seungwhan, et al. “Opendialkg: Explainable conversational reasoning with attention-based walks over knowledge graphs.” Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics. 2019. 2. Zheng, Weiguo, et al. “Question answering over knowledge graphs: question under- standing via template decomposition.” Proceedings of the VLDB Endowment 11.11 (2018): 1373-1386. 3. ConceptNet : An Open Multilingual Knowledge graph : https://conceptnet.io/