IP Library Granted Patent US 10,271,103
Granted Patent B2
US 10,271,103 · App. 15/019,672 · Granted Apr 23, 2019

Relevance table aggregation in a database system for providing video recommendations

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,271,103
App. No.
15/019,672
Granted
Apr 23, 2019
Kind
B2
Abstract

In one embodiment, a method generates a plurality of sub-relevance tables including a first set of relevance values between media programs. Each table models relevance values for a single feature in a plurality of features. Labeling results are received that include a second set of relevance values between the media programs. The method combines the sub-relevance tables into a single relevance table that includes a third set of relevance values between the media programs for the plurality of features. The combining generates weights for each of the sub-relevance tables based on the second set of relevance values for the labeling results and the first set of relevance values of the sub-relevance tables that are used to generate the third set of relevance values. A recommendation is provided to a user using the third set of relevance values from the single relevance table and a characteristic of the user.

Claims (202)

1. A method comprising:

generating, by a computing device, a plurality of sub-relevance tables including a first set of relevance values between a first set of media programs and a second set of media programs being provided by a video delivery service, wherein each table models relevance values relating similarity for a single feature in a plurality of features between the first set of media programs and the second set of media programs;

receiving, by the computing device, labeling results including a second set of relevance values between the first set of media programs and the second set of media programs, the labeling results based on user input;

generating, by the computing device, weights for each of the plurality of sub-relevance tables based on the second set of relevance values for the labeling results and the first set of relevance values of the plurality of sub-relevance tables;

combining, by the computing device, relevance values from the plurality of sub-relevance tables into a single relevance table by applying respective weights for each of the plurality of sub-relevance tables to the relevance values, wherein the single relevance table includes a third set of relevance values relating similarity for the plurality of features between the first set of media programs and the second set of media programs; and

providing, by the computing device, a recommendation to a user using the video delivery service, the recommendation generated using the third set of relevance values from the single relevance table and a characteristic of the user.

2. The method of claim 1 , further comprising:

analyzing at least one sub-relevance table in the plurality of sub-relevance tables to generate a plurality of questions regarding relationships between media programs in the first set of media programs and the second set of media programs; and

receiving the user input answering the plurality of questions, the user input used to generate the labeling results.

3. The method of claim 2 , wherein a question in the plurality of questions comprises tuples including a relationship between three media programs.

4. The method of claim 3 , wherein:

the question asked whether a first media program or a second media program is more relevant to a third media program, and

a selection of the first media program or the second media program is used to generate a labeling result.

5. The method of claim 1 , wherein the weights are generated by using a function that measures a correctness of a sub-relevance table by comparing the relevance values for the sub-relevance table to the labeling results.

6. The method of claim 5 , wherein the function comprises:

L

=

(

k

,

i

,

j

,

)

P

1

1

+

exp

(

α

(

F

(

x

k

,

i

)

-

F

(

x

,

j

)

)

,

where (k, i, j) and P are the labeling results; x k,i is a vector containing the relevance values from media program k to media program i in the sub-relevance tables, x k,j is a vector containing the relevance values from media program k to media program j in the sub-relevance tables s; α is a scaling parameter, and F( )is a scoring function with respect to the single relevance table.

7. The method of claim 1 , wherein combining the plurality of sub-relevance tables into the single relevance table comprises using a linear combination to combine the weights for each of the plurality of sub-relevance tables.

8. The method of claim 7 , wherein the linear combination uses:

F ( x )= w T x,

where w is a weight vector and x is the vector containing the relevance values between the first set of media programs and the second set of media programs.

9. The method of claim 1 , wherein combining relevance values from the plurality of sub-relevance tables into the single relevance table comprises using a non-linear combination to combine the weights for each of the plurality of sub-relevance tables.

10. The method of claim 9 , wherein the non-linear combination uses:

F

(

x

)

=

lim

t

F

t

(

x

)

=

k

=

1

t

β

k

f

k

(

x

)

,

where F t (x) is a scoring function in the t-th iteration with respect to the single relevance table and F(x) is a final scoring function with respect to the single relevance table and β k is the weight of F k(x) .

11. The method of claim 1 , further comprising:

adjusting the single relevance table based on feedback information from users.

12. The method of claim 11 , wherein adjusting comprises:

providing a set of recommendations to the user using the single relevance table; and

receiving the feedback information based on a response from the users for the set of recommendations.

13. The method of claim 1 , wherein combining relevance values from the plurality of sub-relevance tables into the single relevance table comprises modeling a tie in the labeling results using a function that models the tie.

14. A non-transitory computer-readable storage medium containing instructions, that when executed, control a computer system to be configured for:

generating a plurality of sub-relevance tables including a first set of relevance values between a first set of media programs and a second set of media programs being provided by a video delivery service, wherein each table models relevance values relating similarity for a single feature in a plurality of features between the first set of media programs and the second set of media programs;

receiving labeling results including a second set of relevance values between the first set of media programs and the second set of media programs, the labeling results based on user input;

generating weights for each of the plurality of sub-relevance tables based on the second set of relevance values for the labeling results and the first set of relevance values of the plurality of sub-relevance tables;

combining relevance values from the plurality of sub-relevance tables into a single relevance table by applying respective weights for each of the plurality of sub-relevance tables to the relevance values, wherein the single relevance table includes a third set of relevance values relating similarity for the plurality of features between the first set of media programs and the second set of media programs; and

providing a recommendation to a user using the video delivery service, the recommendation generated using the third set of relevance values from the single relevance table and a characteristic of the user.

15. The non-transitory computer-readable storage medium of claim 14 , further configured for:

analyzing at least one sub-relevance table in the plurality of sub-relevance tables to generate a plurality of questions regarding relationships between media programs in the first set of media programs and the second set of media programs; and

receiving the user input answering the plurality of questions, the user input used to generate the labeling results.

16. The non-transitory computer-readable storage medium of claim 14 , wherein the weights are generated by using a function that measures a correctness of a sub-relevance table by comparing the relevance values for the sub-relevance table to the labeling results.

17. The non-transitory computer-readable storage medium of claim 16 , wherein the function comprises:

L

=

(

k

,

i

,

j

,

)

P

1

1

+

exp

(

α

(

F

(

x

k

,

i

)

-

F

(

x

,

j

)

)

,

where (k, i, j) and P are the labeling results; x k,i is a vector containing the relevance values from media program k to media program i in the sub-relevance tables, x k,j is a vector containing the relevance values from media program k to media program j in the sub-relevance tables s; α is a scaling parameter, and F( )is a scoring function with respect to the single relevance table.

18. The non-transitory computer-readable storage medium of claim 14 , wherein combining comprises using a linear combination of:

F ( x )= w T x,

where w is a weight vector and x is the vector containing the relevance values between the media programs.

19. The non-transitory computer-readable storage medium of claim 14 , wherein combining comprises using a non-linear combination of:

F

(

x

)

=

lim

t

F

t

(

x

)

=

k

=

1

t

β

k

f

k

(

x

)

,

where F t (x) is a scoring function in the t-th iteration with respect to the single relevance table and F(x) is a final scoring function with respect to the single relevance table and β k is the weight of F k(x) .

20. An apparatus comprising:

one or more computer processors; and

a non-transitory computer-readable storage medium comprising instructions, that when executed, control the one or more computer processors to be configured for:

generating a plurality of sub-relevance tables including a first set of relevance values between a first set of media programs and a second set of media programs being provided by a video delivery service, wherein each table models relevance values relating similarity for a single feature in a plurality of features between the first set of media programs and the second set of media programs;

receiving labeling results including a second set of relevance values between the first set of media programs and the second set of media programs, the labeling results based on user input;

generating weights for each of the plurality of sub-relevance tables based on the second set of relevance values for the labeling results and the first set of relevance values of the plurality of sub-relevance tables;

combining relevance values from the plurality of sub-relevance tables into a single relevance table by applying respective weights for each of the plurality of sub-relevance tables to the relevance values, wherein the single relevance table includes a third set of relevance values relating similarity for the plurality of features between the first set of media programs and the second set of media programs; and

providing a recommendation to a user using the video delivery service, the recommendation generated using the third set of relevance values from the single relevance table and a characteristic of the user.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 7, 2026
From: HULU, LLC
To: ADEIA MEDIA HOLDINGS INC.
Reel/Frame 075567/0854 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 24, 2016
From: KAYA, LUTFI ILKE; YAO, JINYU; SU, HENG; DING, WENKUI; TANG, BANGSHENG
To: HULU, LLC
Reel/Frame 037817/0821 →