IP Library Granted Patent US 10,631,057
Granted Patent B2
US 10,631,057 · App. 14/808,354 · Granted Apr 21, 2020

System and method for natural language driven search and discovery in large data sources

Inventors: Peter Yeh (Milpitas, CA); William Jarrold (San Francisco, CA); Adwait Ratnaparkhi (San Jose, CA); Deepak Ramachandran (Sunnyvale, CA); Peter Patel-Schneider (Westfield, NJ); Benjamin Douglas (San Francisco, CA)
Assignee: Nuance Communications, Inc.
H04N21/4828G06F16/3329G06F16/7343G06F16/78G06F17/278G06F17/2785H04N21/4126H04N21/42203H04N21/4665H04N21/4722H04N21/4821H04N21/4826
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,631,057
App. No.
14/808,354
Granted
Apr 21, 2020
Kind
B2
Abstract

Presenting natural-language-understanding (NLU) results can include redundancies and awkward sentence structures. In an embodiment of the present invention, a method includes, responsive to receiving a result to a NLU query, loading a matching template of a plurality of templates stored in a memory. Each template has mask fields associated with at least one property. The method compares the properties of the mask fields of each of the templates to properties of the query and properties of the result, and selects the matching template. The method further completes the matching template by inserting fields of the result into corresponding mask fields of the matching template. The method may further suppress certain mask fields of the matching template to increase brevity and improve the naturalness of the response when appropriate based on the results of the NLU query. The method further presents the completed matching template to a user via a display.

Claims (34)

1. A computer-implemented method comprising:

responsive to receiving a result from a natural language understanding system that generated the result as a response to a natural language query received from a user via a user interface:

selecting a matching template of a plurality of templates stored in a memory by comparing one or more properties associated with one or more mask fields of one or more of the plurality of templates with (a) one or more properties of the natural language query and (b) one or more properties of the result of the natural language query;

completing the matching template by inserting fields of the result received in response to the query into corresponding mask fields of the matching template; and

outputting the matching template completed to present the matching template to the user via the user interface.

2. The computer-implemented method of claim 1 , wherein the properties of the result correspond with respective fields of the result.

3. The computer-implemented method of claim 1 , wherein properties of the query correspond with respective fields of the query.

4. The computer-implemented method of claim 1 , wherein selecting the matching template further includes assigning a score to the properties of the mask fields respective to properties of the query and properties of the result, and combining the scores of the mask fields of each of the plurality of templates, and

wherein selecting the matching template further includes selecting a highest scoring template of the plurality of templates.

5. The computer-implemented method of claim 1 , further comprising suppressing a redundant or extraneous mask field of the completed matching template.

6. The computer-implemented method of claim 5 , wherein suppressing a redundant or extraneous mask field further includes identifying redundant information in the result and identifying a matching template using the identified redundant information once.

7. The computer-implemented method of claim 5 , wherein suppressing a redundant or extraneous mask field further includes blocking insertion of a field of the result into the corresponding masked field of the matching template when the values of the blocked field of the result is determined to contain information above a particular threshold.

8. The computer-implemented method of claim 1 , wherein loading the matching template includes providing a score bonus to templates suppressing the redundant mask field in the result.

9. A computer system comprising:

a processor; and

a memory with computer code instructions stored thereon, the processor and the memory, with the computer code instructions being configured to:

responsive to receiving a result from a natural language understanding system that generated the result as a response to a natural language query received from a user via a user interface, select a matching template of a plurality of templates stored in a memory by comparing one or more properties associated with one or more mask fields of one or more of the plurality of templates with (a) one or more properties of the natural language query and (b) one or more properties of the result of the natural language query;

complete the matching template by inserting fields of the result received in response to the query into corresponding mask fields of the matching template; and

output the matching template completed to present the matching template to the user via the user interface.

10. The computer system of claim 9 , wherein the properties of the result correspond with respective fields of the result.

11. The computer system of claim 9 , wherein properties of the query correspond with respective fields of the query.

12. The computer system of claim 9 , wherein the computer code instructions are further configured to cause the processor to select the matching template further by assigning a score to the properties of the mask fields respective to properties of the query and properties of the result, and combine the scores of the mask fields of each of the plurality of templates, and wherein selecting the matching template further includes a highest scoring template of the plurality of templates.

13. The computer system of claim 9 , wherein the computer code instructions are further configured to cause the processor to suppress a redundant or extraneous mask field presented in the completed matching template.

14. The computer system of claim 13 , wherein the computer code instructions are further configured to cause the processor to suppress a redundant mask field by identifying redundant information in the result and identifying a matching template using the identified redundant information once.

15. The computer system of claim 13 , wherein computer code instructions are further configured to cause the processor to suppress a redundant mask field by blocking insertion of a field of the result into the corresponding masked field of the matching template when the values of the blocked field of the result is determined to contain information above a particular threshold.

16. The computer system of claim 9 , wherein loading the matching template includes providing a score bonus to templates suppressing redundant information in the result.

17. A non-transitory computer-readable medium configured to store instructions for selecting a grammar from among multiple grammars, the instructions, when loaded and executed by a processor, cause the processor to:

responsive to receiving a result from a natural language understanding system that generated the result as a response to a natural language query received from a user in a user interface:

select a matching template of a plurality of templates stored in a memory by comparing one or more properties associated with one or more the mask fields of one or more of the plurality of templates with (a) one or more properties of the natural language query and (b) one or more properties of the result to the natural language query;

complete the matching template by inserting fields of the result received in response to the query into corresponding mask fields of the matching template; and

output the matching template completed to present the matching template to the user via the user interface.

18. The non-transitory computer-readable medium of claim 15 , wherein the properties of the result correspond with respective fields of the result.

19. The non-transitory computer-readable medium of claim 15 , wherein properties of the query correspond with respective fields of the query.

20. The non-transitory computer-readable medium of claim 15 , wherein selecting the matching template further includes assigning a score to the properties of the mask fields respective to properties of the query and properties of the result, and combining the scores of the mask fields of each of the plurality of templates, and wherein selecting the matching template further includes selecting a highest scoring template of the plurality of templates.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2023
From: NUANCE COMMUNICATIONS, INC.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 065552/0934 →
CORRECTIVE ASSIGNMENT TO CORRECT THE SECOND CONVEYING PARTY'S NAME PREVIOUSLY RECORDED AT REEL: 036533 FRAME: 0903. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 16, 2015
From: YEH, PETER; JARROLD, WILLIAM; RATNAPARKHI, ADWAIT; RAMACHANDRAN, DEEPAK; PATEL-SCHNEIDER, PETER; DOUGLAS, BENJAMIN
To: NUANCE COMMUNICATIONS, INC.
Reel/Frame 036617/0929 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2015
From: YEH, PETER; JARROD, WILLIAM; RATNAPARKHI, ADWAIT; RAMACHANDRAN, DEEPAK; PATEL-SCHNEIDER, PETER; DOUGLAS, BENJAMIN
To: NUANCE COMMUNICATIONS, INC.
Reel/Frame 036533/0903 →
Continuity (1)
Related Publication 20170026705A1 · Jan 26, 2017
Cited By (1)
US 12,457,389