Extracting domain-specific actions and entities in natural language commands
US-2019042561-A1 · Feb 7, 2019 · US
US10565986B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10565986-B2 |
| Application number | US-201715654955-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 20, 2017 |
| Priority date | Jul 20, 2017 |
| Publication date | Feb 18, 2020 |
| Grant date | Feb 18, 2020 |
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.
The present disclosure relates to processing domain-specific natural language commands. An example method generally includes receiving a natural language command. A command processor compares the received natural language command to a corpus of known commands to identify a probable matching command in the corpus of known commands to the received natural language command. The corpus of known commands comprises a plurality of domain-specific commands, each of which is mapped to a domain-specific action. Based on the comparison, the command processor identifies the domain-specific action associated with the probable matching command to perform in response to the received command and executes the identified domain-specific action.
Opening claim text (preview).
What is claimed is: 1. A method for processing natural language commands, comprising: receiving a natural language command; identifying a probable matching command in a corpus of known commands based on the received natural language command by attempting to identify an exact match between the received natural language command and a command in the corpus of known commands, wherein: the corpus of known commands comprises a plurality of domain-specific commands representing commands having a specific meaning in a software application, and each of the plurality of domain-specific commands are mapped to a function in the software application invoked by a respective domain-specific command of the plurality of domain-specific command; upon failing to identify an exact match between the received natural language command and a command in the corpus of known commands: generating a number, edition error, and recognition error (NER) scores between at least a portion of the received natural language command and each known command in the corpus of known commands, and identifying the probable matching command in the corpus of known commands based on the generated NER scores, wherein the probable matching command in the corpus of known commands comprises a command having a highest generated NER score; identifying a function to execute in the software application in response to the received natural language command based on the identified probable matching command; and executing the identified function to perform a domain-specific action in the software application. 2. The method of claim 1 , wherein a mapping between a domain-specific command in the plurality of domain-specific commands to a function in the software application comprises a mapping between an action word in the domain-specific command and the function in the software application. 3. The method of claim 1 , wherein the identified probable matching command comprises an exact matching command in the corpus of known commands to the received natural language command, and wherein the function to execute is mapped to the exact matching command. 4. The method of claim 1 , wherein the identified probable matching command comprises an inexact match between the received natural language command and a command in the corpus of known commands. 5. The method of claim 4 , further comprising: identifying the probable matching command from a set of inexact matching commands, each respective inexact matching command being associated with a probability score indicating a likelihood that the received natural language command matches the respective inexact matching command, wherein the identified probable matching command comprises one of the set of inexact matching commands with a highest probability score. 6. The method of claim 5 , further comprising: upon determining that the probability score associated with the identified probable matching command with the highest probability score exceeds a threshold probability score, executing the domain-specific action associated with the identified probable matching command. 7. The method of claim 5 , further comprising: upon determining that the probability score associated with the identified partial matching command is less than a threshold probability score: prompting a user to indicate whether the function mapped to the identified probable matching command matches a user intent; and upon receiving an indication that the function matches the user intent, executing the function mapped to the identified probable matching command. 8. The method of claim 5 , wherein the probability score is based, at least in part, on error rates calculated from comparisons between the received natural language command and each of the known commands in the corpus of known commands. 9. The method of claim 1 , further comprising: receiving a training data set including a plurality of domain-specific commands annotated with information identifying functions associated with each of the plurality of domain-specific commands; and generating one or more rules to identify functions in received commands based on the training data set. 10. A system, comprising: a processor; and a memory having instructions stored thereon which, when executed by the processor, performs an operation for processing natural language commands, the operation comprising: receiving a natural language command; identifying a probable matching command in a corpus of known commands based on the received natural language command by attempting to identify an exact match between the received natural language command and a command in the corpus of known commands, wherein: the corpus of known commands comprises a plurality of domain-specific commands representing commands having a specific meaning in a software application, and each of the plurality of domain-specific commands are mapped to a function in the software application invoked by a respective domain-specific command of the plurality of domain-specific command; upon failing to identify an exact match between the received natural language command and a command in the corpus of known commands: generating a number, edition error, and recognition error (NER) scores between at least a portion of the received natural language command and each command in the corpus of known commands, and identifying a probable matching command in the corpus of known commands based on the generated NER scores, wherein the probable matching command in the corpus of known commands comprises a command having a highest generated NER score; identifying a function to execute in the software application in response to the received natural language command based on the identified probable matching command; and executing the identified function to perform a domain-specific action in the software application. 11. The system of claim 10 , wherein a mapping between a domain-specific command in the plurality of domain-specific commands to a function in the software application comprises a mapping between an action word in the domain-specific command and the function in the software application. 12. The system of claim 10 , wherein the identified probable matching command comprises an exact matching command in the corpus of known commands to the received natural language command, and wherein the function to execute is mapped to the exact matching command. 13. The system of claim 10 , wherein the identified probable matching command comprises an inexact match between the received natural language command and a domain-specific command in the corpus of known commands. 14. The system of claim 13 , further comprising: identifying the probable matching command from a set of inexact matching commands, each respective inexact matching command being associated with a probability score indicating a likelihood that the received natural language command matches the respective inexact matching command, and wherein the identified probable matching command comprises one of the set of inexact matching commands with a highest probability score. 15. The system of claim 14 , further comprising: upon determining that the probability score associated with the identified probable matching command with the highest probability score exceeds a threshold probability score, executing the domain-specific action associated with the identified probable matching command. 16. The system of claim 14 , further comprising: upon determining that the probability score associated with the identified partial matching command is less than a threshold probability score: pr
Training · CPC title
Parsing for meaning understanding · CPC title
Recognition of textual entities · CPC title
Audio in a user interface, e.g. using voice commands for navigating, audio feedback · CPC title
of application context · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.