WO2020178626A1 - Systems and methods for adaptive question answering - Google Patents

Systems and methods for adaptive question answering Download PDF

Info

Publication number
WO2020178626A1
WO2020178626A1 PCT/IB2019/053080 IB2019053080W WO2020178626A1 WO 2020178626 A1 WO2020178626 A1 WO 2020178626A1 IB 2019053080 W IB2019053080 W IB 2019053080W WO 2020178626 A1 WO2020178626 A1 WO 2020178626A1
Authority
WO
WIPO (PCT)
Prior art keywords
question
engine
interpretation
user
answering
Prior art date
Application number
PCT/IB2019/053080
Other languages
French (fr)
Inventor
Neha PRABHUGAONKAR
Abhay PARAB
Natwar Mall
Original Assignee
Cuddle Artificial Intelligence Private Limited
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cuddle Artificial Intelligence Private Limited filed Critical Cuddle Artificial Intelligence Private Limited
Priority to JP2019521428A priority Critical patent/JP2022523601A/en
Priority to CN201980000567.XA priority patent/CN111886601B/en
Priority to US16/752,868 priority patent/US11347803B2/en
Publication of WO2020178626A1 publication Critical patent/WO2020178626A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Definitions

  • the invention relates to systems and methods in the field of computer science, including hardware and software, and artificial intelligence.
  • the present disclosure describes an Adaptive Question Answering Engine (AQUAE) system which is adaptive to user’s characteristics, goals and needs by continuously learning from user interactions and adapting both the context and data visualization, thereby improving quality and experience of the user. Furthermore, the natural language interface allows a more natural flow of business queries for non-technical business users who don’t need to face discomfort and difficulty while using technical terminology.
  • AQUAE Adaptive Question Answering Engine
  • One exemplary system embodiment herein provides an adaptive question answering engine system comprising software modules embodied on a computer network, and the software modules comprise an Interpretation Engine, an Answering Engine and a Learning Engine.
  • the Interpretation Engine receives questions in natural language from a user and processes the question for holistic understanding of the user’s question by incorporating semantic and usage knowledge from a Learning Engine.
  • the question understanding is not restricted to question text, but also identifies user’s intent, makes intelligent assumptions in case of insufficiently elucidated questions, performs disambiguation in case of ambiguities.
  • Interpretation Engine generates an Interpretation which is passed to an Answering Engine for generation of relevant answer(s).
  • An Answering Engine formulates various intermediate queries based on the Interpretation and retrieve appropriate answers and metadata associated with the answers for individual intermediate query.
  • the Answering Engine determines visualization preference by incorporating semantic and usage knowledge from a Learning Engine and aggregate and rank answers as appropriate.
  • the Answering Engine also recommends follow-up actions that user can perform to aid user on his information needs and further analysis.
  • Learning Engine augments, adapts and improves knowledge based on user interactions which are fed back to the Learning Engine.
  • User interactions comprise data enquiry, correction of ambiguous entities, actions on interpretation, actions on answer, tracking of answer, drill-down part of data, visualization changes, up-vote/down- vote on answers, actions on suggested analysis, and follow-up on suggested questions.
  • One exemplary method embodiment herein provides a method for adaptive question answering, comprising steps of
  • the Learning Engine augments, adapts and improves knowledge based on user interactions which comprise data enquiry, correction of ambiguous entities, actions on interpretation, actions on answer, tracking of answer, drill-down part of data, visualization changes, up-vote/down-vote on answers, actions on suggested analysis, or follow-up on suggested questions.
  • An additional embodiment herein comprises a computer network for adaptive question answering comprises a first subnetwork for data processing and a second subnetwork for data storage.
  • An embodiment for the first subnetwork for data processing comprises at least one virtual or physical server node for implementing an Interpretation Engine, an Answering Engine, an Learning Engine, data synchronization or other modules.
  • Another embodiment for the first subnetwork for data processing comprises a multi-server-node cluster which gets deployed with Interpretation Engine, Answering Engine, Learning Engine and all other required modules, and a second server node for data synchronization.
  • a further embodiment for the first subnetwork for data processing provides serverless architectures.
  • An embodiment for the second subnetwork for data storage comprises a big data framework and a database system for data inquiry and retrieval.
  • FIG.l shows the high-level process flow of AQUAE.
  • FIG. 2 depicts the hardware details of AQUAE.
  • FIG. 3 shows high-level representation of what constitutes a question.
  • FIG. 4 details high-level building blocks of Analytics specific Meta Ontology (AMO).
  • FIG. 5 details high level user knowledge captured from various user/system interaction.
  • FIG. 6 depicts the details of the Interpretation Engine.
  • FIG. 7 depicts the details of the Answering Engine.
  • FIG. 8 shows high level representation of what constitutes Answer in AQUAE.
  • FIG.l details the high-level process flow of AQUAE.
  • a user can interact with the AQUAE in natural language using any system of interaction, such as mobile applications, desktop applications, web applications, voice-based hardware, etc.
  • the input from the user is captured as a question.
  • the question is further processed by the Interpretation Engine.
  • the Interpretation Engine incorporates organization and usage knowledge for holistic understanding of the user’s question.
  • the question understanding is not restricted to question text, but also identifies user’s intent, makes intelligent assumptions in case of insufficiently elucidated questions, performs disambiguation in case of ambiguities and so on.
  • the semantic understanding of the question context is termed as Interpretation.
  • Answering Engine for generation of relevant answer(s).
  • Answering Engine is also responsible for determining which data source(s), which slice of data user might be interested in. It also retrieves data from underlying data cluster, determine visualization preference based on past interactions, builds on additional contexts as deemed fit. To aid user on his information needs and further analysis, the Answering Engine also recommends follow-up actions that user can perform.
  • FIG. 2 depicts the exemplary hardware details of a computer network of AQUAE.
  • the computer network for adaptive question answering comprises a first subnetwork for data processing and a second subnetwork for data storage.
  • the first subnetwork for data processing comprises a multi-server-node cluster which gets deployed with Interpretation Engine,
  • the second subnetwork for data storage comprises a big data frame work and a database system for data inquiry and retrieval.
  • Table 1 provides the exemplary hardware of AQUAE.
  • Another embodiment for the first subnetwork for data processing comprises at least one virtual or physical server node for implementing an Interpretation Engine, an
  • a further embodiment for the first subnetwork for data processing provides serverless architectures.
  • Serverless architectures are application designs that incorporate third-party“Backend as a Service” (BaaS) services, and/or that include custom code run in managed, ephemeral containers on a“Functions as a Service” (FaaS) platform.
  • Serverless architectures remove much of the need for a traditional always-on server component and may benefit from significantly reduced operational cost, complexity, and engineering lead time.
  • FIG. 3 shows high-level representation of what constitutes a question.
  • BI Analytics is widely used by organizations for providing actionable insights from disparate & complex data landscape. This data would be scattered within and outside of the organization. Moreover, each organization has its own nomenclature and the data is very unique on its own.
  • An organization agnostic Adaptive Question Answering Engine need to understand this organization specific knowledge. Building an organization specific ontology may not suffice to create a domain or organization agnostic AQUAE.
  • FIG. 4 details high-level building blocks of AMO. Each concept would have name, label, glossary, synonym and other relevant properties. This invention captures this understanding of domain and organization specific knowledge in semantic knowledge.
  • semantic knowledge as organization specific ontology derived from AMO. For example,‘Brand’ is an Attribute,‘Colgate’ is an entity of type Brand,‘Total Number of Unit’ is a measure with glossary as“total numbers of items being sold”.
  • FIG. 5 details high-level user knowledge captured from various user/system interaction.
  • User model captures all the user-specific interactions, such as feedback being provided by the user on answers, corrections of assumed entities etc. While organization model captures meta information across organization based on similar feedback.
  • Visualization model captures user’s visualization preferences for a given insight.
  • Insight knowledge is a repository of all the insights which were served to users and links to AMO for all valid contexts.
  • User session keeps track of what users are performing by monitoring interactive information interchanged between user and system. System builds up user specific interest from every user interaction.
  • FIG. 6 depicts the details of the Interpretation Engine.
  • the Interpretation essentially captures the key entities from the question after analysing and understanding the context of the question.
  • Interpretation Engine uses a semantic-parser algorithm to parse the question and identify the key constituent phrases and tokens from the question.
  • Named Entity Identification plays a pivotal role in the interpretation Engine.
  • the examples of named entities can be, person or organization names, locations, dates and times. Named entities can then be organized under predefined categories, such as“period” - relative, specific & periodic,“business objects” - column values,“measure” - numerical columns,“filters & conditions”, and other important features from question and user context.
  • WSD Word Sense Disambiguation
  • words can be polysemous (word having more than one sense) in nature.
  • measures and business objects can be often polysemous in nature. In such cases, we use the context and usage knowledge to disambiguate the entities.
  • the measures are disambiguated and ranked using inferencing algorithm and weighted context similarity approach. For example, in a question -“Sales of Region East for this month”, the word“Sales” have more than two senses (“Total Unit Sales”, “Total Dollar Sales”). In such A scenario, as per usage knowledge and question context,‘Sales’ could be associated with‘Total Dollar Sales”.
  • Disambiguation While lexical disambiguation is all about disambiguating entities at word level, semantic disambiguation deals with disambiguation of entities considering the entire context of the question. This involves disambiguating entities considering the data source information of measures and also with respect to the other entities in the question. Once all the measures and business objects are disambiguated appropriate filters and conditions are applied on the measure entities.
  • Last step in Interpretation Engine is to identify user’s intent which can be further utilized by Answering Engine.
  • the main task of the Answering Engine is to generate appropriate answer(s) using the semantic Interpretation considering the user intent as deduced from the question.
  • FIG. 7 depicts the details of the Answering Engine.
  • the Engine formulates various intermediate queries required to answer the questions.
  • the queries can range from one to many based on the user’s intent.
  • the answers are equivalent to the queries formed.
  • period and measures are inferred using a Bayesian formulation in case they are not mentioned in the question.
  • the Answering Engine consults the enterprise data to obtain the appropriate answer and metadata associated with the answer for individual intermediate query. Using the interpretation, the Answering Engine identifies and recommends the most frequent and relevant information to the user along with the answer(s).
  • the next step is to determine the visualization for the answer. It helps to improve the ability to understand the hidden information in a more constructive way. Business leaders need the ability to easily drill down into the data to see where they can improve, take actions and to grow their business. Data visualization brings business intelligence to life. Depending on the answer data and past user interactions, the AQUAE provides the user with the best visualization along with alternate visualizations supported for the answer(s).
  • Giving answer would trigger next set of questions that user might ask.
  • AQUAE recommends follow-up actions to ease discovery and effective analysis.
  • the user is served with assembled and ranked answer(s) for the question asked.
  • FIG. 8 shows high level representation of what constitutes Answer in AQUAE. Learning Engine & Interactions
  • Learning Engine is responsible for augmentation/adaptation of knowledge based on user interactions. Following user interactions are supported by AQUAE. Learning Engine improves knowledge based on each interaction to make AQUAE smarter.
  • the first interaction starts with user asking a question in natural language.
  • AQUAE considers period entities as a special case and allows user to change the same when answer is being served. This allows user for data exploration with respect to different time frames. Learning Engine learns relevant time period for a given context from this interaction. The knowledge will be later used by AQUAE to infer time periods in case of incomplete questions (for all the users in an organization)
  • Answers can be tracked/untracked based on user’s changing business preferences.
  • Learning Engine captures user’s interest from these interactions. This knowledge helps AQUAE to better rank the answers as well as helps in disambiguating entities.
  • AQUAE enables the same and learns user’s interest areas. Also, these interactions allow AQUAE to predict and pre-empt follow-up questions that users might have, thereby improving suggested analysis based on answers.
  • AQUAE allows user to provide feedback on relevancy and validity of answer using up-vote/down-vote actions. This helps AQUAE to learn and adapt user model, thereby improving experience with subsequent data enquiries (for all the users in an organization)
  • AQUAE pre-empts follow-up questions that user might have when presented with an answer by recommending related analysis. For example,“benchmark across all region” might be recommended for the answer,“sales of West region in 2018”. Invocation or non-invocation of these recommended analyses along with context allows Learning Engine to learn about user’s way of interaction with the data, giving opportunity to improve the same.
  • AQUAE recommends suggested questions to the user, when data is not available for a given context. This recommendation is based on usage knowledge.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention relates to systems and methods for adaptive question answering which is adaptive to user's characteristics, goals and needs by continuously learning from user interactions and adapting both the context and data visualization. The system for adaptive question answering comprises software modules embodied on a computer network, and the software modules comprise an Interpretation Engine, an Answering Engine and a Learning Engine.

Description

SYSTEMS AND METHODS FOR ADAPTIVE QUESTION ANSWERING
RELATED APPLICATIONS
[0001] This application claims priority benefit of Indian Patent Application No.
201921008186, filed March 1, 2019, which are incorporated entirely by reference herein for all purposes.
FIELD
[0002] The invention relates to systems and methods in the field of computer science, including hardware and software, and artificial intelligence.
BACKGROUND ART
[0003] Data-driven decision-making situations, such as Business Intelligence involves complex high-dimensional data-sets. This often require looking at various data sources, slicing them appropriately, examining results and discovering the most meaningful insights. Business users often spends disproportionate amount of time on inefficient data busywork. They have very simple requirement, being able to ask business queries in most natural way and get relevant business answers without worrying about the query language and other technical part.
[0004] In most Question Answering systems, the output remains independent of the user’s characteristics, goals and needs. Typically, these systems are static and rarely interacts with the users and hence is incapable of learning and adapting answers based on the context of question. Thus, there is a need for an adaptive learning system which adjusts its answers with respect to a user’s characteristics, goals and needs.
SUMMARY OF THE INVENTION
[0005] The present disclosure describes an Adaptive Question Answering Engine (AQUAE) system which is adaptive to user’s characteristics, goals and needs by continuously learning from user interactions and adapting both the context and data visualization, thereby improving quality and experience of the user. Furthermore, the natural language interface allows a more natural flow of business queries for non-technical business users who don’t need to face discomfort and difficulty while using technical terminology. [0006] One exemplary system embodiment herein provides an adaptive question answering engine system comprising software modules embodied on a computer network, and the software modules comprise an Interpretation Engine, an Answering Engine and a Learning Engine. The Interpretation Engine receives questions in natural language from a user and processes the question for holistic understanding of the user’s question by incorporating semantic and usage knowledge from a Learning Engine. The question understanding is not restricted to question text, but also identifies user’s intent, makes intelligent assumptions in case of insufficiently elucidated questions, performs disambiguation in case of ambiguities. The
Interpretation Engine generates an Interpretation which is passed to an Answering Engine for generation of relevant answer(s). An Answering Engine formulates various intermediate queries based on the Interpretation and retrieve appropriate answers and metadata associated with the answers for individual intermediate query. The Answering Engine determines visualization preference by incorporating semantic and usage knowledge from a Learning Engine and aggregate and rank answers as appropriate. The Answering Engine also recommends follow-up actions that user can perform to aid user on his information needs and further analysis. A
Learning Engine augments, adapts and improves knowledge based on user interactions which are fed back to the Learning Engine. User interactions comprise data enquiry, correction of ambiguous entities, actions on interpretation, actions on answer, tracking of answer, drill-down part of data, visualization changes, up-vote/down- vote on answers, actions on suggested analysis, and follow-up on suggested questions.
[0007] One exemplary method embodiment herein provides a method for adaptive question answering, comprising steps of
receiving a question by an Interpretation Engine in natural language from a user;
processing the question by the Interpretation Engine for holistic understanding of the user’s question by incorporating semantic and usage knowledge from a Learning Engine;
generating an Interpretation by the Interpretation Engine passing to an Answering Engine for generation of relevant answers;
formulating various intermediate queries by the Answering Engine based on the
Interpretation;
retrieving appropriate answers and metadata associated with the answers for individual intermediate query; determining visualization preference by the Answering Engine by incorporating semantic and usage knowledge from the Learning Engine;
aggregating and ranking answers as appropriate; and
recommending follow-up actions by the Answering Engine to aid user on his information needs and further analysis;
wherein the Learning Engine augments, adapts and improves knowledge based on user interactions which comprise data enquiry, correction of ambiguous entities, actions on interpretation, actions on answer, tracking of answer, drill-down part of data, visualization changes, up-vote/down-vote on answers, actions on suggested analysis, or follow-up on suggested questions.
[0008] An additional embodiment herein comprises a computer network for adaptive question answering comprises a first subnetwork for data processing and a second subnetwork for data storage. An embodiment for the first subnetwork for data processing comprises at least one virtual or physical server node for implementing an Interpretation Engine, an Answering Engine, an Learning Engine, data synchronization or other modules. Another embodiment for the first subnetwork for data processing comprises a multi-server-node cluster which gets deployed with Interpretation Engine, Answering Engine, Learning Engine and all other required modules, and a second server node for data synchronization. A further embodiment for the first subnetwork for data processing provides serverless architectures. An embodiment for the second subnetwork for data storage comprises a big data framework and a database system for data inquiry and retrieval.
BRIEF DESCRIPTION OF THE DRAWINGS
[0009] The invention will be described in more detail below on the basis of a drawing, which illustrates exemplary embodiments. In the drawing, in each case schematically:
[0010] FIG.l shows the high-level process flow of AQUAE.
[0011] FIG. 2 depicts the hardware details of AQUAE.
[0012] FIG. 3 shows high-level representation of what constitutes a question.
[0013] FIG. 4 details high-level building blocks of Analytics specific Meta Ontology (AMO). [0014] FIG. 5 details high level user knowledge captured from various user/system interaction.
[0015] FIG. 6 depicts the details of the Interpretation Engine.
[0016] FIG. 7 depicts the details of the Answering Engine.
[0017] FIG. 8 shows high level representation of what constitutes Answer in AQUAE.
DETAILED DESCRIPTION OF THE EMBODIMENTS
[0018] It should be understood that this invention is not limited to the particular methodology, protocols, and systems, etc., described herein and as such may vary. The terminology used herein is for the purpose of describing particular embodiments only, and is not intended to limit the scope of the present invention, which is defined solely by the claims.
[0019] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms“a”,“an” and“the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms“comprises” and/or“comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
[0020] The following description and the drawings sufficiently illustrate specific embodiments to enable those skilled in the art to practice them. Other embodiments may incorporate structural, logical, electrical, process, and other changes. Portions and features of some embodiments may be included in, or substituted for, those of other embodiments.
[0021] FIG.l details the high-level process flow of AQUAE. A user can interact with the AQUAE in natural language using any system of interaction, such as mobile applications, desktop applications, web applications, voice-based hardware, etc. The input from the user is captured as a question. The question is further processed by the Interpretation Engine. The Interpretation Engine incorporates organization and usage knowledge for holistic understanding of the user’s question. The question understanding is not restricted to question text, but also identifies user’s intent, makes intelligent assumptions in case of insufficiently elucidated questions, performs disambiguation in case of ambiguities and so on. The semantic understanding of the question context is termed as Interpretation.
[0022] Interpretation is further passed to Answering Engine for generation of relevant answer(s). Answering Engine is also responsible for determining which data source(s), which slice of data user might be interested in. It also retrieves data from underlying data cluster, determine visualization preference based on past interactions, builds on additional contexts as deemed fit. To aid user on his information needs and further analysis, the Answering Engine also recommends follow-up actions that user can perform.
[0023] All these answers would be presented to user on system of interaction in appropriate manner, also providing an opportunity to user to interact with the system. All these user interactions are fed back to the Learning Engine. User interactions can be correction of assumptions made while answering a question, choosing an alternative visualisation or even simple feedback like upvote or downvote on an answer. AQUAE adapts from these interactions thereby enriching the usage knowledge as well as semantic knowledge.
[0024] FIG. 2 depicts the exemplary hardware details of a computer network of AQUAE. The computer network for adaptive question answering comprises a first subnetwork for data processing and a second subnetwork for data storage. The first subnetwork for data processing comprises a multi-server-node cluster which gets deployed with Interpretation Engine,
Answering Engine, Learning Engine and all other required modules, and a second server node for data synchronization. The second subnetwork for data storage comprises a big data frame work and a database system for data inquiry and retrieval. Table 1 provides the exemplary hardware of AQUAE.
Table 1. Exemplary hardware details of AQUAE
Figure imgf000007_0001
[0025] Another embodiment for the first subnetwork for data processing comprises at least one virtual or physical server node for implementing an Interpretation Engine, an
Answering Engine, an Learning Engine, data synchronization or other modules. A further embodiment for the first subnetwork for data processing provides serverless architectures.
Serverless architectures are application designs that incorporate third-party“Backend as a Service” (BaaS) services, and/or that include custom code run in managed, ephemeral containers on a“Functions as a Service” (FaaS) platform. Serverless architectures remove much of the need for a traditional always-on server component and may benefit from significantly reduced operational cost, complexity, and engineering lead time.
Question
[0026] FIG. 3 shows high-level representation of what constitutes a question.
Knowledge
[0027] An Intelligent Business intelligence (BI) system can help you understand the implications of various organizational processes better and enhance your ability to identify suitable opportunities for your organization, thus enabling you to plan for a successful future. BI Analytics is widely used by organizations for providing actionable insights from disparate & complex data landscape. This data would be scattered within and outside of the organization. Moreover, each organization has its own nomenclature and the data is very unique on its own.
An organization agnostic Adaptive Question Answering Engine, need to understand this organization specific knowledge. Building an organization specific ontology may not suffice to create a domain or organization agnostic AQUAE.
Semantic knowledge
[0028] Several efforts have been made in creation of meta-ontology, but were
unsuccessful to cater the analytics need. This invention solves this problem by building Analytics specific Meta Ontology (AMO). FIG. 4 details high-level building blocks of AMO. Each concept would have name, label, glossary, synonym and other relevant properties. This invention captures this understanding of domain and organization specific knowledge in semantic knowledge. Consider semantic knowledge as organization specific ontology derived from AMO. For example,‘Brand’ is an Attribute,‘Colgate’ is an entity of type Brand,‘Total Number of Unit’ is a measure with glossary as“total numbers of items being sold”.
Usage Knowledge
[0029] FIG. 5 details high-level user knowledge captured from various user/system interaction. User model captures all the user-specific interactions, such as feedback being provided by the user on answers, corrections of assumed entities etc. While organization model captures meta information across organization based on similar feedback. Visualization model captures user’s visualization preferences for a given insight. Insight knowledge is a repository of all the insights which were served to users and links to AMO for all valid contexts. User session keeps track of what users are performing by monitoring interactive information interchanged between user and system. System builds up user specific interest from every user interaction.
Interpretation Engine
[0030] The role of the Interpretation Engine is to convert user’s question into an intermediate structured representation called as the Interpretation. FIG. 6 depicts the details of the Interpretation Engine. The Interpretation essentially captures the key entities from the question after analysing and understanding the context of the question.
Entity Identification
[0031] Interpretation Engine uses a semantic-parser algorithm to parse the question and identify the key constituent phrases and tokens from the question. Named Entity Identification plays a pivotal role in the interpretation Engine. The examples of named entities can be, person or organization names, locations, dates and times. Named entities can then be organized under predefined categories, such as“period” - relative, specific & periodic,“business objects” - column values,“measure” - numerical columns,“filters & conditions”, and other important features from question and user context.
Lexical Entity Disambiguation
[0032] Next step after entity identification is the disambiguation of lexical entities or Word Sense Disambiguation (WSD). WSD is the task to determine the correct meaning of an ambiguous word in a given context. In natural language text, words can be polysemous (word having more than one sense) in nature. In business context, measures and business objects can be often polysemous in nature. In such cases, we use the context and usage knowledge to disambiguate the entities. The measures are disambiguated and ranked using inferencing algorithm and weighted context similarity approach. For example, in a question -“Sales of Region East for this month”, the word“Sales” have more than two senses (“Total Unit Sales”, “Total Dollar Sales”). In such A scenario, as per usage knowledge and question context,‘Sales’ could be associated with‘Total Dollar Sales”.
Semantic Disambiguation
[0033] Once we disambiguate ambiguous entities, the next step is Semantic
Disambiguation. While lexical disambiguation is all about disambiguating entities at word level, semantic disambiguation deals with disambiguation of entities considering the entire context of the question. This involves disambiguating entities considering the data source information of measures and also with respect to the other entities in the question. Once all the measures and business objects are disambiguated appropriate filters and conditions are applied on the measure entities.
[0034] Enterprise application without access control is no-go for almost all (if not all) organizations. The access control plays a considerable role in ensuring that user would get access to only authorized information.
[0035] Last step in Interpretation Engine is to identify user’s intent which can be further utilized by Answering Engine.
Answering Engine
[0036] The main task of the Answering Engine is to generate appropriate answer(s) using the semantic Interpretation considering the user intent as deduced from the question. FIG. 7 depicts the details of the Answering Engine.
[0037] Once the question is interpreted, considering the context, the Engine formulates various intermediate queries required to answer the questions. The queries can range from one to many based on the user’s intent. For each query, the answers are equivalent to the queries formed. [0038] As a second step, for individual intermediate query, period and measures are inferred using a Bayesian formulation in case they are not mentioned in the question. Once the period, measures and other entities are in place, the Answering Engine consults the enterprise data to obtain the appropriate answer and metadata associated with the answer for individual intermediate query. Using the interpretation, the Answering Engine identifies and recommends the most frequent and relevant information to the user along with the answer(s).
[0039] The next step is to determine the visualization for the answer. It helps to improve the ability to understand the hidden information in a more constructive way. Business leaders need the ability to easily drill down into the data to see where they can improve, take actions and to grow their business. Data visualization brings business intelligence to life. Depending on the answer data and past user interactions, the AQUAE provides the user with the best visualization along with alternate visualizations supported for the answer(s).
[0040] Giving answer would trigger next set of questions that user might ask. AQUAE recommends follow-up actions to ease discovery and effective analysis. As a last step, the user is served with assembled and ranked answer(s) for the question asked.
Answer
[0041] FIG. 8 shows high level representation of what constitutes Answer in AQUAE. Learning Engine & Interactions
[0042] Learning Engine is responsible for augmentation/adaptation of knowledge based on user interactions. Following user interactions are supported by AQUAE. Learning Engine improves knowledge based on each interaction to make AQUAE smarter.
Data enquiry
[0043] The first interaction starts with user asking a question in natural language.
Learning Engine learns the context for a given user at a given time building user session. This user session along with recent questions plays a considerable role in understanding user’s intent.
Correction of ambiguous entities [0044] As detailed earlier, entities can be ambiguous in nature and in such cases AQUAE make intelligent assumptions in disambiguating entities based on the context and usage knowledge. Corrections of ambiguous entities provides an opportunity for Learning Engine to enrich its knowledge, thereby improving the entity disambiguation for subsequent data enquiries (for all the users in an organization).
Actions on Interpretation
[0045] In case of incomplete questions, system infers necessary & mandatory entities (e.g. measure) using knowledge and context for generation of answers. AQUAE allows the user to change this context. This interaction is considered as feedback for subsequent data enquiries (for all the users in an organization)
Actions on Answers
[0046] AQUAE considers period entities as a special case and allows user to change the same when answer is being served. This allows user for data exploration with respect to different time frames. Learning Engine learns relevant time period for a given context from this interaction. The knowledge will be later used by AQUAE to infer time periods in case of incomplete questions (for all the users in an organization)
Tracking of answer
[0047] Answers can be tracked/untracked based on user’s changing business preferences. Learning Engine captures user’s interest from these interactions. This knowledge helps AQUAE to better rank the answers as well as helps in disambiguating entities.
Drill-down part of data
[0048] Users typically have a need to drill-down part of data for better understanding of business. AQUAE enables the same and learns user’s interest areas. Also, these interactions allow AQUAE to predict and pre-empt follow-up questions that users might have, thereby improving suggested analysis based on answers.
Visualization changes [0049] Change in visualization helps AQUAE to understand what is the preferred visualization for a given answer. This helps AQUAE to learn & recommend the best
visualization for subsequent answers (for all the users in an organization) in case of data enquiry.
Up-vote /down-vote on answers
[0050] AQUAE allows user to provide feedback on relevancy and validity of answer using up-vote/down-vote actions. This helps AQUAE to learn and adapt user model, thereby improving experience with subsequent data enquiries (for all the users in an organization)
Actions on suggested analysis
[0051] AQUAE pre-empts follow-up questions that user might have when presented with an answer by recommending related analysis. For example,“benchmark across all region” might be recommended for the answer,“sales of West region in 2018”. Invocation or non-invocation of these recommended analyses along with context allows Learning Engine to learn about user’s way of interaction with the data, giving opportunity to improve the same.
Follow-up on suggested questions
[0052] AQUAE recommends suggested questions to the user, when data is not available for a given context. This recommendation is based on usage knowledge.

Claims

1. An adaptive question answering engine system comprising software modules embodied on a computer network, wherein the software modules comprise:
an Interpretation Engine for receiving a question in natural language from a user, processing the question for holistic understanding by incorporating semantic and usage knowledge from a Learning Engine, and generating an Interpretation which is passed to an Answering Engine;
the Answering Engine for formulating various intermediate queries based on the Interpretation, retrieving answers and metadata associated with the answers for individual intermediate query, determining visualization preference by incorporating semantic and usage knowledge from the Learning Engine, recommending follow-up actions that the user can perform to aid the user on his information needs and further analysis, aggregating and ranking answers; and
the Learning Engine for augmenting, adapting and improving knowledge based on user interactions which are fed back to the Learning Engine.
2. The adaptive question answering engine system of claim 1 , wherein the user interactions comprise data enquiry, correction of ambiguous entities, actions on interpretation, actions on answer, tracking of answer, drill-down part of data, visualization changes, up-vote/down-vote on answers, actions on suggested analysis, and follow-up on suggested questions.
3. The adaptive question answering engine system of claim 1, wherein the holistic understanding of the question comprises question text and use’s intent.
4. The adaptive question answering engine system of claim 1 , wherein the Interpretation Engine uses a semantic-parser algorithm to parse the question and identify entities from the question.
5. The adaptive question answering engine system of claim 4, wherein the identification of entities comprises period identification, business object identification, measure inference, condition identification, and other important features from question and user context.
6. The adaptive question answering engine system of claim 1 , wherein the holistic understanding of the question makes intelligent assumptions in case of insufficiently elucidated questions and performs disambiguation in case of ambiguities.
7. The adaptive question answering engine system of claim 6, wherein the disambiguation comprises Lexical entity disambiguation and semantic disambiguation.
8. The adaptive question answering engine system of claim 1, wherein the computer network comprises a first subnetwork for data processing and a second subnetwork for data storage.
9. The adaptive question answering engine system of claim 8, wherein the first subnetwork for data processing comprises at least one virtual or physical server node for implementing the Interpretation Engine, the Answering Engine, the Learning Engine, data synchronization or other modules.
10. The adaptive question answering engine system of claim 8, wherein the first subnetwork for data processing comprises serverless architectures.
11. The adaptive question answering engine system of claim 8, wherein the first subnetwork for data processing comprises a multi-server-node cluster which gets deployed with the
Interpretation Engine, the Answering Engine, the Learning Engine and all other required modules, and a second server node for data synchronization.
12. The adaptive question answering engine system of claim 8, wherein the second subnetwork for data storage comprises a big data frame work and a database system for data inquiry and retrieval.
13. A method for adaptive question answering, comprising steps of
receiving a question by an Interpretation Engine in natural language from a user;
processing the question by the Interpretation Engine for holistic understanding of the user’s question by incorporating semantic and usage knowledge from a Learning Engine;
generating an Interpretation by the Interpretation Engine passing to an Answering Engine for generation of relevant answers;
formulating various intermediate queries by the Answering Engine based on the
Interpretation;
retrieving appropriate answers and metadata associated with the answers for individual intermediate query;
determining visualization preference by the Answering Engine by incorporating semantic and usage knowledge from the Learning Engine;
recommending follow-up actions by the Answering Engine to aid user on his information needs and further analysis; and
aggregating and ranking answers as appropriate;
wherein the Learning Engine augments, adapts and improves knowledge based on user interactions which comprise data enquiry, correction of ambiguous entities, actions on interpretation, actions on answer, tracking of answer, drill-down part of data, visualization changes, up-vote/down-vote on answers, actions on suggested analysis, or follow-up on suggested questions.
14. The method of claim 13, wherein the holistic understanding of the question comprises question text and use’s intent.
15. The method of claim 13, wherein the Interpretation Engine uses a semantic -parser algorithm to parse the question and identify entities from the question.
16. The method of claim 13, wherein the identification of entities comprises period identification, business object identification, measure inference, condition identification, and other important features from question and user context.
17. The method of claim 13, wherein the holistic understanding of the question makes intelligent assumptions in case of insufficiently elucidated questions and performs disambiguation in case of ambiguities.
18. The method of claim 17, wherein the disambiguation comprises Lexical entity disambiguation and semantic disambiguation.
PCT/IB2019/053080 2019-03-01 2019-04-15 Systems and methods for adaptive question answering WO2020178626A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019521428A JP2022523601A (en) 2019-03-01 2019-04-15 Systems and methods for adaptive question answering
CN201980000567.XA CN111886601B (en) 2019-03-01 2019-04-15 System and method for adaptive question-answering
US16/752,868 US11347803B2 (en) 2019-03-01 2020-01-27 Systems and methods for adaptive question answering

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN201921008186 2019-03-01
IN201921008186 2019-03-01

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US201916383934A Continuation 2019-03-01 2019-04-15

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US201916383934A Continuation 2019-03-01 2019-04-15
US16/752,868 Continuation US11347803B2 (en) 2019-03-01 2020-01-27 Systems and methods for adaptive question answering

Publications (1)

Publication Number Publication Date
WO2020178626A1 true WO2020178626A1 (en) 2020-09-10

Family

ID=66248549

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2019/053080 WO2020178626A1 (en) 2019-03-01 2019-04-15 Systems and methods for adaptive question answering

Country Status (3)

Country Link
JP (1) JP2022523601A (en)
CN (1) CN111886601B (en)
WO (1) WO2020178626A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112507089A (en) * 2020-11-25 2021-03-16 厦门渊亭信息科技有限公司 Intelligent question-answering engine based on knowledge graph and implementation method thereof
CN113297361A (en) * 2021-05-24 2021-08-24 陕西合友网络科技有限公司 Intelligent question-answer interaction system and method based on visual flow chart
WO2023058944A1 (en) * 2021-10-08 2023-04-13 삼성전자주식회사 Electronic device and response providing method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020059069A1 (en) * 2000-04-07 2002-05-16 Cheng Hsu Natural language interface
US20060112029A1 (en) * 2002-05-22 2006-05-25 Estes Timothy W Knowledge discovery agent system and method
WO2007147166A2 (en) * 2006-06-16 2007-12-21 Quantum Leap Research, Inc. Consilence of data-mining
US7480640B1 (en) * 2003-12-16 2009-01-20 Quantum Leap Research, Inc. Automated method and system for generating models from data
US20160132787A1 (en) * 2014-11-11 2016-05-12 Massachusetts Institute Of Technology Distributed, multi-model, self-learning platform for machine learning

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101630314B (en) * 2008-07-16 2011-12-07 中国科学院自动化研究所 Semantic query expansion method based on domain knowledge
US9122744B2 (en) * 2010-10-11 2015-09-01 Next It Corporation System and method for providing distributed intelligent assistance
CN102479223B (en) * 2010-11-25 2014-06-04 中国移动通信集团浙江有限公司 Data query method and system
US8935277B2 (en) * 2012-03-30 2015-01-13 Sap Se Context-aware question answering system
US10380105B2 (en) * 2013-06-06 2019-08-13 International Business Machines Corporation QA based on context aware, real-time information from mobile devices
EP2821943A1 (en) * 2013-07-03 2015-01-07 Accenture Global Services Limited Query response device
US10586156B2 (en) * 2015-06-25 2020-03-10 International Business Machines Corporation Knowledge canvassing using a knowledge graph and a question and answer system
CN106844368B (en) * 2015-12-03 2020-06-16 华为技术有限公司 Method for man-machine conversation, neural network system and user equipment
CN105701253B (en) * 2016-03-04 2019-03-26 南京大学 The knowledge base automatic question-answering method of Chinese natural language question semanteme
CN106649786B (en) * 2016-12-28 2020-04-07 北京百度网讯科技有限公司 Answer retrieval method and device based on deep question answering
CN106649878A (en) * 2017-01-07 2017-05-10 陈翔宇 Artificial intelligence-based internet-of-things entity search method and system
US11120344B2 (en) * 2017-07-29 2021-09-14 Splunk Inc. Suggesting follow-up queries based on a follow-up recommendation machine learning model
CN108984778A (en) * 2018-07-25 2018-12-11 南京瓦尔基里网络科技有限公司 A kind of intelligent interaction automatically request-answering system and self-teaching method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020059069A1 (en) * 2000-04-07 2002-05-16 Cheng Hsu Natural language interface
US20060112029A1 (en) * 2002-05-22 2006-05-25 Estes Timothy W Knowledge discovery agent system and method
US7480640B1 (en) * 2003-12-16 2009-01-20 Quantum Leap Research, Inc. Automated method and system for generating models from data
WO2007147166A2 (en) * 2006-06-16 2007-12-21 Quantum Leap Research, Inc. Consilence of data-mining
US20160132787A1 (en) * 2014-11-11 2016-05-12 Massachusetts Institute Of Technology Distributed, multi-model, self-learning platform for machine learning

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112507089A (en) * 2020-11-25 2021-03-16 厦门渊亭信息科技有限公司 Intelligent question-answering engine based on knowledge graph and implementation method thereof
CN113297361A (en) * 2021-05-24 2021-08-24 陕西合友网络科技有限公司 Intelligent question-answer interaction system and method based on visual flow chart
CN113297361B (en) * 2021-05-24 2022-11-18 陕西合友网络科技有限公司 Intelligent question-answer interaction system and method based on visual flow chart
WO2023058944A1 (en) * 2021-10-08 2023-04-13 삼성전자주식회사 Electronic device and response providing method

Also Published As

Publication number Publication date
JP2022523601A (en) 2022-04-26
CN111886601A (en) 2020-11-03
CN111886601B (en) 2024-03-01

Similar Documents

Publication Publication Date Title
US11748641B2 (en) Temporal topic machine learning operation
US11755933B2 (en) Ranked insight machine learning operation
US12001439B2 (en) Information service for facts extracted from differing sources on a wide area network
US11347803B2 (en) Systems and methods for adaptive question answering
US20210264303A1 (en) Hierarchical Topic Machine Learning Operation
US11188581B2 (en) Identification and classification of training needs from unstructured computer text using a neural network
Salehi et al. Personalized recommendation of learning material using sequential pattern mining and attribute based collaborative filtering
US20180260856A1 (en) Managing a set of offers using a dialogue
US20120041769A1 (en) Requests for proposals management systems and methods
US20170242919A1 (en) Analysis of Unstructured Computer Text to Generate Themes and Determine Sentiment
US20170052761A1 (en) Expert signal ranking system
Khalid et al. A literature review of implemented recommendation techniques used in massive open online courses
EP3855320A1 (en) Systems and methods for adaptive question answering related applications
Strobbe et al. Interest based selection of user generated content for rich communication services
US20210233029A1 (en) Technology for candidate insight evaluation
WO2020178626A1 (en) Systems and methods for adaptive question answering
Ikemoto et al. Tuning a conversation strategy for interactive recommendations in a chatbot setting
WO2021260431A1 (en) Advance text tagging using key phrase extraction and key phrase generation
Kaveri et al. A framework for recommending health-related topics based on topic modeling in conversational data (Twitter)
Raghavendra et al. Personalized recommendation systems (pres): a comprehensive study and research issues
EP3113042A1 (en) A method for providing contextual information, an information processing system and a computer program product
Saputro et al. Measuring service quality in the telecommunications industry from customer reviews using sentiment analysis: a case study in PT XL Axiata
Stanica et al. How to choose one’s career? a proposal for a smart career profiler system to improve practices from romanian educational institutions
Shaw et al. A study of the application of ontology to an FAQ automatic classification system
Liu et al. Personalized recommendation with adaptive mixture of markov models

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2019521428

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19917933

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19917933

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 19917933

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 24.10.2022)

122 Ep: pct application non-entry in european phase

Ref document number: 19917933

Country of ref document: EP

Kind code of ref document: A1