IP Library Granted Patent US 9,892,208
Granted Patent B2
US 9,892,208 · App. 14/243,826 · Granted Feb 13, 2018

Entity and attribute resolution in conversational applications

Inventors: Tasos Anastasakos (San Jose, CA); Alexandre Rochette (Montreal, CA); Ruhi Sarikaya (Redmond, WA)
Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
G06F17/30917G06F17/27G06F17/28G06F17/30539G06F17/30864G06F17/30952
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 9,892,208
App. No.
14/243,826
Granted
Feb 13, 2018
Kind
B2
Abstract

User input expressed as text may be analyzed for determining a type of response, such as an application response, and/or determining a type of task that is requested by the user input. Entity representations may be identified, classified and/or or tagged based on a type of response, type of task and/or a set of entity types. A surface form of an entity, ambiguous entity representation and/or other type of expression within the user input may be resolved, normalized and/or mapped to a normalized value. Normalizing entities and/or entity attributes may involve using a set of normalization rules, a lookup table, one or more machined learned methods, and/or an entity normalization index that associates entities with alternate surface forms derived from web corpora. The normalized value may be used to construct a request to a structured knowledge source and/or an application.

Claims (55)

1. A computer-implemented method, comprising:

converting verbal user input into text at a computing device that includes a plurality of applications stored in a memory device;

analyzing, by the computing device, the text to determine a type of response that is requested by the verbal user input;

identifying, by the computing device, an entity representation that includes a phrase contained in the text;

determining, by the computing device, a set of entity types utilized by a structured knowledge source to provide the type of response;

determining, by the computing device, one or more requirements of the structured knowledge source;

tagging, by the computing device, the entity representation that includes the phrase with an entity type from the set of entity types;

detecting, by the computing device, whether the entity representation that includes the phrase is a surface form of an entity and requires normalization to comply with the one or more requirements of the structured knowledge source;

when it is determined that the surface form of the entity requires normalization, mapping, by the computing device, the surface form of the entity to a normalized value that complies with the one or more requirements of the structured knowledge source; and

constructing, by the computing device, a request, wherein the request includes the normalized value instead of the entity representation.

2. The computer-implemented method of claim 1 , wherein analyzing the text to determine the type of response that is requested by the verbal user input includes one or more of:

detecting a domain of the verbal user input, and

detecting an intent of the verbal user input.

3. The computer-implemented method of claim 1 , wherein the set of entity types corresponds to a set of domain-dependent entity attributes.

4. The computer-implemented method of claim 1 , further comprising:

tagging one or more words contained in the phrase with a different entity type from the set of entity types.

5. The computer-implemented method of claim 1 , wherein:

mapping the surface form to the normalized value is performed deterministically using a set of normalization rules to normalize one of a temporal expression, a geographic expression, or a numerical expression to a canonical format.

6. The computer-implemented method of claim 1 , wherein mapping the surface form to the normalized value is performed using a lookup table to normalize a variant of the entity to a canonical name.

7. The computer-implemented method of claim 1 , wherein mapping the surface form to the normalized value is performed using one or more machined learned methods to map a natural language expression to a normalized condition.

8. The computer-implemented method of claim 1 , wherein mapping the surface form to the normalized value is performed using an entity normalization index that associates entities with alternate surface forms derived from web corpora.

9. The computer-implemented method of claim 8 , further comprising:

extracting a set of entities from an entity knowledge source;

extracting related links that are relevant to the set of entities from a knowledge graph;

data mining one or more web search logs using the related links to discover related queries; and

building the entity normalization index by associating the related queries with the set of entities as alternate surface forms of the entities.

10. The computer-implemented method of claim 1 , further comprising:

receiving, by the computing device, a response to the request that includes information from the structured knowledge source.

11. The computer-implemented method of claim 1 , wherein the normalized value is used to construct a request that causes a task-based application to perform a particular task.

12. A computer-readable storage medium storing computer-readable instructions that, when executed by a processor of a computing device, causes the computing device to perform a method, comprising:

converting verbal user input into text;

analyzing the text to determine a type of response that is requested by the verbal user input;

identifying an entity representation that includes a phrase contained in the text;

determining a set of entity types utilized by a structured knowledge source to provide the type of response;

tagging the entity representation that includes the phrase with an entity type from the set of entity types;

detecting whether the entity representation that includes the phrase is a surface form of an entity and requires normalization to comply with one or more determined requirements of the structured knowledge source;

when it is determined that the surface form of the entity requires normalization, mapping the surface form of the entity to a normalized value that complies with the one or more determined requirements of the structured knowledge source; and

constructing a request, wherein the request includes the normalized value instead of the entity representation.

13. The computer-readable storage medium of claim 12 , wherein mapping the surface form of the entity to the normalized value comprises using a set of normalization rules, a lookup table, a machine learned method, and an index that associates entities with alternate surface forms derived from web corpora.

14. The computer-readable storage medium of claim 12 , wherein the surface form is one or more of: a temporal expression, a geographic expression, a numerical expression, or a natural language expression.

15. The computer-readable storage medium of claim 12 , wherein the request is configured for causing an application to perform a particular task that involves querying a remote resource for information related to the verbal user input.

16. The computer-readable storage medium of claim 12 , wherein the set of entity types corresponds to a set of domain-dependent entity attributes.

17. A computing device, comprising:

a processor coupled to memory storing a plurality of applications and computer-readable instructions configured to:

convert verbal user input into text;

analyze the text to determine a type of response that is requested by the verbal user input;

identify an entity representation that includes a phrase contained in the text;

determine a set of entity types utilized by a structured knowledge source to provide the type of response;

tag the entity representation that includes the phrase with an entity type from the set of entity types;

detect whether the entity representation that includes the phrase is a surface form of an entity and requires normalization to comply with one or more determined requirements of the structured knowledge source;

when it is determined that the surface form of the entity requires normalization, map the surface form of the entity to a normalized value that complies with the one or more requirements of the structured knowledge source; and

construct a request for the structured knowledge source, wherein the request includes the normalized value instead of the entity representation.

18. The computing device of claim 17 , wherein the computer-executable instructions stored in the memory implement a conversational intelligent personal assistant that communicates with an application.

19. The computing device of claim 17 , wherein the surface form is one or more of: a temporal expression, a geographic expression, a numerical expression, or a natural language expression.

20. The computing device of claim 17 , wherein the application response is one or more of: answering a question, playing a media item, or scheduling an event.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 039025/0454 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2014
From: ANASTASAKOS, TASOS; ROCHETTE, ALEXANDRE; SARIKAYA, RUHI
To: MICROSOFT CORPORATION
Reel/Frame 032587/0730 →
Continuity (1)
Related Publication 20150286747A1 · Oct 8, 2015