Extracting domain-specific actions and entities in natural language commands

US10565986B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10565986-B2
Application numberUS-201715654955-A
CountryUS
Kind codeB2
Filing dateJul 20, 2017
Priority dateJul 20, 2017
Publication dateFeb 18, 2020
Grant dateFeb 18, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

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.

First claim

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

Assignees

Inventors

Classifications

  • 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

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10565986B2 cover?
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 com…
Who is the assignee on this patent?
Intuit Inc
What technology area does this patent fall under?
Primary CPC classification G10L15/1822. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 18 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).