IP Library Granted Patent US 11,687,729
Granted Patent B2
US 11,687,729 · App. 16/924,926 · Granted Jun 27, 2023

Systems and methods for training a model to determine whether a query with multiple segments comprises multiple distinct commands or a combined command

Inventors: Sashikumar Venkataraman (Andover, MA); Ahmed Nizam Mohaideen P (Kovilpatti, IN); Manik Malhotra (Bengaluru KA, IN)
Assignee: ROVI GUIDES, INC.
G06F40/35G06F16/2455G06F40/211G06F40/247G06F40/30G10L15/22G10L15/063
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 11,687,729
App. No.
16/924,926
Granted
Jun 27, 2023
Kind
B2
Abstract

Systems and methods are disclosed herein for training a model to accurately determine whether two phrases are conversationally connected. A media guidance application may detect a first phrase and a second phrase, translate each phrase to a string of word types, append each string to the back of a prior string to create a combined string, determine a degree to which any of the individual strings matches any singleton template, and determine a degree to which the combined string matches any conversational template. Based on the degrees to which the individual and combination strings match the singleton and conversational templates, respectively, strengths of association are correspondingly updated.

Claims (77)

1. A method comprising:

detecting a first phrase and a second phrase;

identifying a first template, of a plurality of templates associated with a first category, that is a closest match to the first phrase, wherein the identifying the first template comprises calculating a first matching score based on the first phrase and the first template;

generating a third phrase by combining the first phrase and the second phrase;

identifying a second template, of a plurality of templates associated with a second category, that is a closest match to the third phrase, wherein the identifying the second template comprises calculating a second matching score based on the third phrase and the second template;

comparing the first matching score to the second matching score;

in response to determining that the first matching score exceeds the second matching score, decreasing, in a graph of related entities stored in a database, a strength of association between the first phrase and the second category by a pre-defined amount;

receiving a fourth phrase, and

generating for display search results for the fourth phrase, wherein the search results are based on the decreasing of the strength of association between the first phrase and the second category by the pre-defined amount.

2. The method of claim 1 , further comprising:

in response to determining that the first matching score exceeds the second matching score, decreasing, in the graph of related entities stored in a database, a strength of association between the second phrase and the second category associated with the second template by the pre-defined amount.

3. The method of claim 2 , further comprising:

generating for display search results for the first phrase; and

generating for display search results for the second phrase.

4. The method of claim 1 , wherein each of the plurality of templates associated with a first category represent a valid search query that requires no further input to be executed.

5. The method of claim 1 , wherein:

the first category is associated with strings of words or word types associated with a single command, and

the second category is associated with strings of words or word types associated with two or more commands.

6. The method of claim 1 , further comprising, in response to determining that the first matching score does not exceed the second matching score:

generating for display search results for the third phrase.

7. The method of claim 1 , wherein the second template is an amalgamation of at least two strings that each, individually, match a respective template associated with the first category, and the matching templates, when juxtaposed, are determined to form a single query.

8. The method of claim 1 , wherein:

determining the first template that is the closest match to the first phrase comprises:

generating a first string of word types based on the first phrase;

generating a second string of word types based on the second phrase;

determining the second template that is the closest match to the third phrase comprises:

generating a third string of word types by appending the second string of word types to the end of the first string of word types;

performing the calculating of the first score comprises comparing the first string of word types to the first template and comparing the second string of word types to a template associated with the first category; and

performing the calculating of the second score comprises comparing the third string of word types to the second template.

9. The method of claim 8 , wherein generating the first string of word types based on the first phrase and the second string of word types based on the second phrase comprises:

extracting a word from either the first phrase or the second phrase;

comparing the word to database entries that indicate word types of known words;

determining whether a word type is known based on the comparing; and

in response to determining that the word type is known, replacing the word with the word type indicated in a database entry, of the database entries, corresponding to the word.

10. The method of claim 9 , further comprising, in response to determining that the word type is unknown:

comparing the word to entries of a dictionary database to determine a grammatical category of the word;

determining a high-level category corresponding to the word; and

extrapolating a word type based on the grammatical category and the high-level category.

11. A system comprising:

input/output (I/O) circuitry configured to:

detect a first phrase and a second phrase;

control circuitry configured to:

identify a first template, of a plurality of templates associated with a first category, that is a closest match to the first phrase, wherein the identifying the first template comprises calculating a first matching score based on the first phrase and the first template;

generate a third phrase by combining the first phrase and the second phrase;

identify a second template, of a plurality of templates associated with a second category, that is a closest match to the third phrase, wherein the identifying the second template comprises calculating a second matching score based on the third phrase and the second template;

calculate a second matching score based on the third phrase and the second template;

in response to determining that the first matching score exceeds the second matching score, decrease, in a graph of related entities stored in a database, a strength of association between the first phrase and the second category by a pre-defined amount;

receiving a fourth phrase, and

generating for display search results for the fourth phrase, wherein the search results are based on the decreasing of the strength of association between the first phrase and the second category by the pre-defined amount.

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

in response to determining that the first matching score exceeds the second matching score, decrease, in the graph of related entities stored in a database, a strength of association between the second phrase and the second category associated with the second template by the pre-defined amount.

13. The system of claim 12 , wherein the control circuitry is further configured to:

generate for display search results for the first phrase; and

generate for display search results for the second phrase.

14. The system of claim 11 , wherein each of the plurality of templates associated with a first category represent a valid search query that requires no further input to be executed.

15. The system of claim 11 , wherein:

the first category is associated with strings of words or word types associated with a single command, and

the second category is associated with strings of words or word types associated with two or more commands.

16. The system of claim 11 , wherein the control circuitry is further configured to, in response to determining that the first matching score does not exceed the second matching score, generate for display search results for the third phrase.

17. The system of claim 11 , wherein the second template is an amalgamation of at least two strings that each, individually, match a respective template associated with the first category, and the matching templates, when juxtaposed, are determined to form a single query.

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

in determining the first template that is the closest match to the first phrase:

generate a first string of word types based on the first phrase;

generate a second string of word types based on the second phrase;

in determining the second template that is the closest match to the third phrase:

generate a third string of word types by appending the second string of word types to the end of the first string of word types;

perform the calculating of the first score by comparing the first string of word types to the first template and comparing the second string of word types to a template of the first category; and

perform the calculating of the second score by comparing the third string of word types to the second template.

19. The system of claim 18 , wherein the control circuitry is further configured to, in generating the first string of word types based on the first phrase and the second string of word types based on the second phrase:

extract a word from either the first phrase or the second phrase;

compare the word to database entries that indicate word types of known words;

determine whether a word type is known based on the comparing; and

in response to determining that the word type is known, replace the word with the word type indicated in a database entry, of the database entries, corresponding to the word.

20. The system of claim 19 , wherein the control circuitry is further configured to, in response to determining that the word type is unknown:

compare the word to entries of a dictionary database to determine a grammatical category of the word;

determine a high-level category corresponding to the word; and

extrapolate a word type based on the grammatical category and the high-level category.

Assignments (3)
CHANGE OF NAME Recorded Oct 2, 2024
From: ROVI GUIDES, INC.
To: ADEIA GUIDES INC.
Reel/Frame 069085/0731 →
SECURITY INTEREST Recorded May 3, 2023
From: ADEIA GUIDES INC.; ADEIA IMAGING LLC; ADEIA MEDIA HOLDINGS LLC; ADEIA MEDIA SOLUTIONS INC.; ADEIA SEMICONDUCTOR ADVANCED TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR BONDING TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR INC.; ADEIA SEMICONDUCTOR SOLUTIONS LLC; ADEIA SEMICONDUCTOR TECHNOLOGIES LLC; ADEIA SOLUTIONS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 063529/0272 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2020
From: VENKATARAMAN, SASHIKUMAR; MOHAIDEEN P, AHMED NIZAM; MALHOTRA, MANIK
To: ROVI GUIDES, INC.
Reel/Frame 053166/0697 →
Continuity (3)
Continuation 16158247 · Oct 11, 2018
Continuation 15055868 · Feb 29, 2016
Related Publication 20200342180A1 · Oct 29, 2020