Context interpretation in natural language processing using previous dialog acts
US-2015340033-A1 · Nov 26, 2015 · US
US10496905B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10496905-B2 |
| Application number | US-201715657031-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 21, 2017 |
| Priority date | Feb 14, 2017 |
| Publication date | Dec 3, 2019 |
| Grant date | Dec 3, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method for use with a computing device is provided. The method may include executing one or more programs of an intelligent digital assistant system at a processor and presenting a user interface to a user. At the processor, the method may include receiving natural language user input from the user, parsing the user input at an intent handler to determine an intent template with slots, populating the slots in the intent template with information from user input, and performing resolution on the intent template to partially resolve unresolved information. If a slot with missing slot information exists in the partially resolved intent template, a loop may be executed at the processor to fill the slots. The method may include, at the processor, determining that all required information is available and resolved and generating a rule based upon the intent template with all required information being available and resolved.
Opening claim text (preview).
The invention claimed is: 1. A method executed by a computing device, comprising: at a processor: executing one or more programs of an intelligent digital assistant system to present a user interface to a user; receiving natural language user input from the user via the user interface; parsing the user input at an intent handler of the system to determine an intent template with slots for information; performing the following actions in a loop executed for the intent template until all slots required by the intent template are both filled and resolved: populating the slots in the intent template with collected information from the user input; performing resolution on the intent template to at least partially resolve unresolved information, thereby resulting in an at least partially resolved intent template; filling implicitly missing slot information where possible with implicit knowledge derived from previously filled slots and other context information available to the system; if, in the at least partially resolved intent template, not all slots required by the intent template are both filled and resolved, then performing the following actions for each slot required by the intent template: determining a state of each slot that is not both filled and resolved; presenting a query to the user to fill or resolve a selected slot that is not both filled and resolved based on query selection criteria; receiving a user response to the query; based on the user response to the query, altering the state of the selected slot; and re-executing the loop with the user input and the user response to the query; exiting the loop upon a determination that all slots required by the intent template are both filled and resolved; generating a rule based upon the intent template with all required information being available and resolved; and performing a defined action that applies the generated rule. 2. The method of claim 1 , wherein the state of each slot that is not both filled and resolved selected from the group consisting of implicitly missing slot information, explicitly missing slot information, and available and unresolved slot information, and the query selection criteria include at least one criteria selected from the group consisting of random selection of missing or unresolved slot information, an internal order of explicitly missing slot information that is required to be filled, a greatest potential to fill and resolve a highest number of slots, an estimation of a user expected query, and a selection criteria calculated by the one or more programs. 3. The method of claim 1 , wherein the intent template includes a trigger condition definition and an action definition, one or more of the slots being included in each of the trigger condition definition and the action definition, each slot configured to contain information to define the trigger condition or action, respectively, and wherein the rule that is generated is a rule to perform an action defined by the action definition upon an occurrence of a trigger defined by the trigger condition definition. 4. The method of claim 3 , wherein the slots have an information type selected from the group consisting of not required, required and implicitly missing, required and explicitly missing, required and available but unresolved, and required and available and not requiring resolution. 5. The method of claim 1 , wherein the intent template is a first intent template, and wherein the first intent template is selected from among a plurality of candidate intent templates when it is determined, the method further comprising: determining that a second intent template of the plurality of candidate intent templates is a closer match to the user input and the user response to the query, based on slots filled and resolved within the loop; changing the first intent template to the second intent template with slots for information; populating the second intent template based on the user input and the user response to the query; and re-performing resolution on the populated second intent template. 6. The method of claim 1 , further comprising, based on information collected by the system, determining that slot information occupies incorrect slots, and moving slot information to correct slots. 7. The method of claim 1 , further comprising, based on information collected by the system, extracting new information and replacing existing slot information with the new information. 8. The method of claim 1 , wherein implicit knowledge is derived by the system via the processor from data selected from the group consisting of user preferences, past usage of the user, identification of an entity, identification of an environment, placement of the entity in the environment, activities of the entity, placement of other entities in the environment, activities of the other entities, and crowd behavior. 9. The method of claim 1 , wherein performing resolution via the system includes executing lookup resolvers that translate identifiers in the user input into internal representation data. 10. The method of claim 1 , wherein performing resolution via the system includes executing anaphoric resolvers that resolve information based on antecedent or postcedent expression in a context of user input. 11. The method of claim 1 , wherein performing resolution via the system includes executing deixis resolvers that resolve information for words that cannot be interpreted without additional contextual information. 12. A computing system, comprising: at least a processor configured to execute one or more programs of an intelligent digital assistant system, to: receive natural language user input from a user via a user interface; at an intent handler of the system, parse the user input to determine an intent template with slots for information; perform the following actions in a loop executed for the intent template until all slots required by the intent template are both filled and resolved: populate the slots in the intent template with collected information from the user input; perform resolution on the intent template to at least partially resolve unresolved information, thereby resulting in an at least partially resolved intent template; fill implicitly missing slot information where possible with implicit knowledge derived from previously filled slots and other context information available to the system; if, in the at least partially resolved intent template, not all slots required by the intent template are both filled and resolved, then perform the following actions for each slot required by the intent template: determine a state of each slot that is not both filled and resolved; present a query to the user to fill or resolve a selected slot that is not both filled and resolved based on query selection criteria; receive a user response to the query; based on the user response to the query, alter the state of the selected slot; and re-execute the loop with the user input and the user response to the query; exit the loop upon a determination that all slots required by the intent template are both filled and resolved; generate a rule based upon the intent template with all required information being available and resolved; and perform a defined action that applies the generated rule. 13. The computing system of claim 12 , wherein the state of each slot that is not both filled and resolved selected from the group consisting of implicitly missing slot information, explicitly missing slot information, and available and unresolved slot information, and the query selection criteria are at least on
Discourse or dialogue representation · CPC title
Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars · CPC title
in combination with an identity check · CPC title
the pass enabling tracking or indicating presence · CPC title
where the recognised objects include parts of the human body · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.