IP Library Granted Patent US 9,858,265
Granted Patent B1
US 9,858,265 · App. 15/176,516 · Granted Jan 2, 2018

Systems and methods for determining context switching in conversation

Inventors: Ahmed Nizam Mohaideen P (Kovilpatti, IN); Sashikumar Venkataraman (Andover, MA); Manik Malhotra (Bengaluru KA, IN)
Assignee: Rovi Guides, Inc.
G06F17/279G06F17/277G06F17/30401G06F17/30554G10L15/16
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,858,265
App. No.
15/176,516
Granted
Jan 2, 2018
Kind
B1
Abstract

Systems and methods are described to address shortcomings in a conventional conversation system via a novel technique utilizing artificial neural networks to train the conversation system whether or not to continue context. In some aspects, an interactive media guidance application determines a type of conversation continuity in a natural language conversation comprising first and second queries. The interactive media guidance application determines a first token in the first query and a second token in the second query. The interactive media guidance application identifies entity data for the first and second tokens. The interactive media guidance application retrieves, from a knowledge graph, graph connections between the entity data for the first and second tokens. The interactive media guidance application applies this data as inputs to an artificial neural network. The interactive media guidance application determines an output that indicates the type of conversation continuity between the first and second queries.

Claims (127)

1. A method for determining a type of conversation continuity in a natural language conversation comprising a first query and a second query to refine search results in response to the first query and the second query based on the type of conversation continuity, the method comprising:

receiving, via a user input device, the first query from a user;

retrieving, from a database, a first search result for the first query;

generating for display, using control circuitry, the first search result;

receiving, via the user input device, the second query from the user;

determining, using control circuitry, a first token in the first query;

determining, using the control circuitry, a second token in the second query;

identifying, using the control circuitry, first entity data for the first token, wherein the first entity data includes:

a first entity type for the first token,

a first probability that the first entity type corresponds to the first token,

a second entity type for the first token, and

a second probability that the second entity type corresponds to the first token;

identifying, using the control circuitry, second entity data for the second token, wherein the second entity data includes:

a third entity type for the second token,

a third probability that the third entity type corresponds to the second token,

a fourth entity type for the second token, and

a fourth probability that the fourth entity type corresponds to the second token;

transmitting a request including an indication of the first entity data and the second entity data for connections between the first entity data and the second entity data;

in response to the transmitted request, receiving one or more graph connections between the first entity data and the second entity data obtained by a search of a knowledge graph, the search based on the indication of the first entity data and the second entity data;

applying, using the control circuitry, the first token, the second token, the first entity data, the second entity data, and the one or more graph connections as inputs to an artificial neural network;

determining, using the control circuitry, an output from the artificial neural network that indicates the type of conversation continuity between the first query and the second query;

updating, using the control circuitry, the second query based on the type of conversation continuity;

retrieving, from the database, a second search result for the updated second query; and

generating for display, using control circuitry, the second search result.

2. The method of claim 1 , wherein determining the first token in the first query comprises:

identifying, using the control circuitry, a first term and a second term in the first query;

determining, using the control circuitry, the first term is a filler word;

determining, using the control circuitry, the second term is not a filler word; and

assigning, using the control circuitry, the second term to be the first token.

3. The method of claim 1 , wherein retrieving the one or more graph connections between the first entity data and the second entity data comprises:

retrieving, from the knowledge graph, a first graph connection between the first token being the first entity type and the second token being the third entity type;

retrieving, from the knowledge graph, a second graph connection between the first token being the second entity type and the second token being the third entity type;

retrieving, from the knowledge graph, a third graph connection between the first token being the first entity type and the second token being the fourth entity type; and

retrieving, from the knowledge graph, a fourth graph connection between the first token being the second entity type and the second token being the fourth entity type.

4. The method of claim 1 , wherein applying the first token, the second token, the first entity data, the second entity data, and the one or more graph connections as inputs to the artificial neural network comprises:

multiplying, using the control circuitry, a first value for the first token with a first weight of an input layer of the artificial neural network;

multiplying, using the control circuitry, a second value for the second token with a second weight of the input layer of the artificial neural network;

multiplying, using the control circuitry, one or more values for the first entity data with one or more weights of the input layer of the artificial neural network;

multiplying, using the control circuitry, one or more values for the second entity data with one or more weights of the input layer of the artificial neural network; and

multiplying, using the control circuitry, one or more values for the one or more graph connections with one or more weights of the input layer of the artificial neural network.

5. The method of claim 1 , wherein determining the output from the artificial neural network that indicates the type of conversation continuity between the first query and the second query comprises:

multiplying, using the control circuitry, one or more inputs to a hidden layer in the artificial neural network with corresponding one or more weights in the hidden layer; and

adding, using the control circuitry, resulting values from the multiplying to determine the output value.

6. The method of claim 1 , wherein updating the second query based on the type of conversation continuity comprises:

identifying, using the control circuitry, the type of conversation continuity to be a merge type;

merging, using the control circuitry, the second query with the first query based on identifying the type of conversation continuity to be the merge type.

7. The method of claim 1 , wherein updating the second query based on the type of conversation continuity comprises:

identifying, using the control circuitry, the type of conversation continuity to be a replacement type; and

based on identifying the type of conversation continuity to be the replacement type:

determining, using the control circuitry, a portion of the second query that replaces a portion of the first query; and

determining, using the control circuitry, the second query to be the first query with the portion of the first query replaced with the portion of the second query.

8. The method of claim 1 , wherein updating the second query based on the type of conversation continuity comprises:

identifying, using the control circuitry, the type of conversation continuity to be a clarification type; and

based on identifying the type of conversation continuity to be the clarification type:

determining, using the control circuitry, an alternative entity type for the first token in the first query based on the second query; and

determining, using the control circuitry, the second query to be the first query with the first token being the alternative entity type.

9. The method of claim 1 , wherein updating the second query based on the type of conversation continuity comprises:

identifying, using the control circuitry, the type of conversation continuity to be a no continuity type; and

based on identifying the type of conversation continuity to be the no continuity type, assigning, using the control circuitry, the second query to be the updated second query.

10. The method of claim 1 , further comprising:

receiving, from the user input device, an indication that the determined type of conversation continuity is incorrect and a corrected type of conversation continuity; and

updating, using the control circuitry, one or more weights in the artificial neural network based on the corrected type of conversation continuity.

11. A system for determining a type of conversation continuity in a natural language conversation comprising a first query and a second query to refine search results in response to the first query and the second query based on the type of conversation continuity, the system comprising:

a memory storing at least one of a database and a knowledge graph;

a user input device in communication with control circuitry;

the control circuitry configured to:

receive, via the user input device, the first query from a user;

retrieve, from the database, a first search result for the first query;

generate for display the first search result;

receive, via the user input device, the second query from the user;

determine a first token in the first query;

determine a second token in the second query;

identify first entity data for the first token, wherein the first entity data includes:

a first entity type for the first token,

a first probability that the first entity type corresponds to the first token,

a second entity type for the first token, and

a second probability that the second entity type corresponds to the first token;

identify second entity data for the second token, wherein the second entity data includes:

a third entity type for the second token,

a third probability that the third entity type corresponds to the second token,

a fourth entity type for the second token, and

a fourth probability that the fourth entity type corresponds to the second token;

transmit a request including an indication of the first entity data and the second entity data for connections between the first entity data and the second entity data;

in response to the transmitted request, receive one or more graph connections between the first entity data and the second entity data obtained by a search of a knowledge graph, the search based on the indication of the first entity data and the second entity data;

apply the first token, the second token, the first entity data, the second entity data, and the one or more graph connections as inputs to an artificial neural network;

determine an output from the artificial neural network that indicates the type of conversation continuity between the first query and the second query;

update the second query based on the type of conversation continuity;

retrieve, from the database, a second search result for the updated second query; and

generate for display the second search result.

12. The system of claim 11 , wherein the control circuitry configured to determine the first token in the first query comprises the control circuitry configured to:

identify a first term and a second term in the first query;

determine the first term is a filler word;

determine the second term is not a filler word; and

assign the second term to be the first token.

13. The system of claim 11 , wherein the control circuitry configured to retrieve the one or more graph connections between the first entity data and the second entity data comprises the control circuitry configured to:

retrieve, from the knowledge graph, a first graph connection between the first token being the first entity type and the second token being the third entity type;

retrieve, from the knowledge graph, a second graph connection between the first token being the second entity type and the second token being the third entity type;

retrieve, from the knowledge graph, a third graph connection between the first token being the first entity type and the second token being the fourth entity type; and

retrieve, from the knowledge graph, a fourth graph connection between the first token being the second entity type and the second token being the fourth entity type.

14. The system of claim 11 , wherein the control circuitry configured to apply the first token, the second token, the first entity data, the second entity data, and the one or more graph connections as inputs to the artificial neural network comprises the control circuitry configured to:

multiply a first value for the first token with a first weight of an input layer of the artificial neural network;

multiply a second value for the second token with a second weight of the input layer of the artificial neural network;

multiply one or more values for the first entity data with one or more weights of the input layer of the artificial neural network;

multiply one or more values for the second entity data with one or more weights of the input layer of the artificial neural network; and

multiply one or more values for the one or more graph connections with one or more weights of the input layer of the artificial neural network.

15. The system of claim 11 , wherein the control circuitry configured to determine the output from the artificial neural network that indicates the type of conversation continuity between the first query and the second query comprises the control circuitry configured to:

multiply one or more inputs to a hidden layer in the artificial neural network with corresponding one or more weights in the hidden layer; and

add resulting values from the multiplying to determine the output value.

16. The system of claim 11 , wherein the control circuitry configured to updating the second query based on the type of conversation continuity comprises the control circuitry configured to:

identify the type of conversation continuity to be a merge type;

merge the second query with the first query based on identifying the type of conversation continuity to be the merge type.

17. The system of claim 11 , wherein the control circuitry configured to update the second query based on the type of conversation continuity comprises the control circuitry configured to:

identify the type of conversation continuity to be a replacement type; and

based on identifying the type of conversation continuity to be the replacement type:

determine a portion of the second query that replaces a portion of the first query; and

determine the second query to be the first query with the portion of the first query replaced with the portion of the second query.

18. The system of claim 11 , wherein the control circuitry configured to update the second query based on the type of conversation continuity comprises the control circuitry configured to:

identify the type of conversation continuity to be a clarification type; and

based on identifying the type of conversation continuity to be the clarification type:

determine an alternative entity type for the first token in the first query based on the second query; and

determine the second query to be the first query with the first token being the alternative entity type.

19. The system of claim 11 , wherein the control circuitry configured to update the second query based on the type of conversation continuity comprises the control circuitry configured to:

identify the type of conversation continuity to be a no continuity type; and

based on identifying the type of conversation continuity to be the no continuity type, assign the second query to be the updated second query.

20. The system of claim 11 , wherein the control circuitry is further configured to:

receive, from the user input device, an indication that the determined type of conversation continuity is incorrect and a corrected type of conversation continuity; and

update one or more weights in the artificial neural network based on the corrected type of conversation continuity.

Assignments (7)
CHANGE OF NAME Recorded Oct 2, 2024
From: ROVI GUIDES, INC.
To: ADEIA GUIDES INC.
Reel/Frame 069085/0731 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053481/0790 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: HPS INVESTMENT PARTNERS, LLC
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053458/0749 →
SECURITY INTEREST Recorded Jun 1, 2020
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS INC.; VEVEO, INC.; INVENSAS CORPORATION; INVENSAS BONDING TECHNOLOGIES, INC.; TESSERA, INC.; TESSERA ADVANCED TECHNOLOGIES, INC.; DTS, INC.; PHORUS, INC.; IBIQUITY DIGITAL CORPORATION
To: BANK OF AMERICA, N.A.
Reel/Frame 053468/0001 →
PATENT SECURITY AGREEMENT Recorded Nov 25, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 051110/0006 →
SECURITY INTEREST Recorded Nov 22, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: HPS INVESTMENT PARTNERS, LLC, AS COLLATERAL AGENT
Reel/Frame 051143/0468 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 8, 2016
From: MOHAIDEEN P, AHMED NIZAM; VENKATARAMAN, SASHIKUMAR; MALHOTRA, MANIK
To: ROVI GUIDES, INC.
Reel/Frame 038844/0559 →