System and method for efficiently providing a recommendation
First Claim
Patent Images
1. A method for applying filters to a plurality of items in a data processing system comprising:
- receiving a recommendation request;
specifying a constraint filter that selects items satisfying a constraint;
determining an order of the filters based on a cost of applying the filters, including;
applying the constraint filter first when a cost of applying the filters when the constraint filter is applied first is lower than a cost of applying the filters when a recommendation filter is applied first, wherein the constraint filter determines if each item satisfies the constraint, andapplying the recommendation filter first when the cost of applying the filters when the recommendation filter is applied first is lower than the cost of applying the filters when the constraint filter is applied first, wherein the recommendation filter assigns a predicted enjoyment value to each item.
7 Assignments
0 Petitions
Accused Products
Abstract
A system and method for applying a first filter and a second filter, such as a recommendation and a constraint filter, to a plurality of items, including determining a cost of applying the first filter and the second filter to the plurality of items, and determining an order of applying the first and second filters based on the cost of applying the first and second filters.
-
Citations
31 Claims
-
1. A method for applying filters to a plurality of items in a data processing system comprising:
-
receiving a recommendation request; specifying a constraint filter that selects items satisfying a constraint; determining an order of the filters based on a cost of applying the filters, including; applying the constraint filter first when a cost of applying the filters when the constraint filter is applied first is lower than a cost of applying the filters when a recommendation filter is applied first, wherein the constraint filter determines if each item satisfies the constraint, and applying the recommendation filter first when the cost of applying the filters when the recommendation filter is applied first is lower than the cost of applying the filters when the constraint filter is applied first, wherein the recommendation filter assigns a predicted enjoyment value to each item. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method, comprising:
-
determining an order for applying a constraint filter and a recommendation filter to a plurality of items, comprising; calculating a cost of applying the constraint filter and the recommendation filter in a first order based at least on (i) a number of results required, (ii) a probability that a randomly selected item of the plurality of items will pass a second applied filter of the constraint filter and the recommendation filter, (iii) a cost of applying a first applied filter of the constraint filter and the recommendation filter to generate a single item, and (iv) a cost of applying the second applied filter of the constraint filter and the recommendation filter to the single item; and generating a recommendation list, comprising applying the constraint filter and the recommendation filter to the plurality of items according to the determined order, wherein the constraint filter determines if each item satisfies a constraint and the recommendation filter assigns a predicted enjoyment value to each item. - View Dependent Claims (9, 10, 11)
-
-
12. A system, comprising:
a recommendation server comprising a processing device configured to; receive a recommendation request, determine an order for applying a constraint filter and a recommendation filter to a plurality of items based on a cost of applying the constraint filter and the recommendation filter, wherein the constraint filter determines if each item satisfies a constraint and the recommendation filter assigns a predicted enjoyment value to each item, and generate a recommendation list, the generating comprising applying the constraint filter and the recommendation filter in the determined order. - View Dependent Claims (13, 14, 15, 16)
-
17. A computer program product comprising a non-transitory computer readable storage medium having control logic stored therein, the control logic, when executed, causing a processor to perform operations comprising:
-
receiving a recommendation request; determining an order for applying a constraint filter and a recommendation filter to a plurality of items based on a cost of applying the constraint filter and the recommendation filter, wherein the constraint filter determines if each item satisfies a constraint and the recommendation filter assigns a predicted enjoyment value to each item; and generating a recommendation list, the generating comprising applying the constraint filter and the recommendation filter in the determined order. - View Dependent Claims (18)
-
-
19. A system, comprising:
-
means for receiving a recommendation request from a user; means for determining an order for applying a constraint filter and a recommendation filter to a plurality of items based on a cost of applying the constraint filter and the recommendation filter, wherein the constraint filter determines if each item satisfies a constraint and the recommendation filter assigns a predicted enjoyment value to each item; and means for generating a recommendation list, comprising applying the constraint filter and the recommendation filter in the determined order. - View Dependent Claims (20)
-
-
21. A method, comprising:
-
sending a recommendation request to a server; and receiving a recommendation list generated by the server of a constraint filter and a recommendation filter in an order based on a cost of applying the constraint filter and the recommendation filter, wherein the constraint filter determines if each of a plurality of items satisfies a constraint and the recommendation filter assigns a predicted enjoyment value to each item. - View Dependent Claims (22)
-
-
23. A method, comprising:
-
setting parameters for a constraint filter and a recommendation filter based on a received recommendation request; determining respective costs of applying the constraint filter and the recommendation filter to items in a data processing system, the costs being associated with a probability a selected one of the items will pass both the constraint filter and the recommendation filter; applying a first one of the constraint or recommendation filter having a lower one of the costs; and applying a second one of the constraint or recommendation filter having a higher one of the costs. - View Dependent Claims (24, 25, 26, 27, 28, 29)
-
-
30. A non-transitory computer readable medium having instructions stored thereon, execution of which, by a computing device, causes the computing device to perform operations comprising:
-
setting parameters for a constraint filter and a recommendation filter based on a received recommendation request; determining respective costs of applying the constraint filter and the recommendation filter to items in a data processing system, the costs being associated with a probability a selected one of the items will pass both the constraint filter and the recommendation filter; applying a first one of the constraint or recommendation filter having a lower one of the costs; and applying a second one of the constraint or recommendation filter having a higher one of the costs.
-
-
31. A system, comprising:
-
means for setting parameters for a constraint filter and a recommendation filter based on a received recommendation request; means for determining respective costs of applying the constraint filter and the recommendation filter to items in a data processing system, the costs being associated with a probability a selected one of the items will pass both the constraint filter and the recommendation filter; means for applying a first one of the constraint or recommendation filter having a lower one of the costs; and means for applying a second one of the constraint or recommendation filter having a higher one of the costs.
-
Specification