Recommendation system with cluster-based filtering of recommendations
First Claim
1. A computer-implemented method, comprising:
- maintaining a collection of items in association with a user, said collection comprising items rated by the user;
applying a clustering algorithm to said collection of items to subdivide the collection into multiple clusters, wherein the clusters are generated based, at least in part, on calculated distances between the items;
classifying at least a first cluster of said multiple clusters, based at least partly on the user'"'"'s ratings of items therein, as representing an area in which the user lacks interest;
classifying at least a second cluster of said multiple clusters, based at least partly on the user'"'"'s ratings of items therein, as representing an area of interest to the user;
obtaining a set of recommended items for the user from a recommendation engine;
filtering the set of recommended items based, at least in part, on distances between the recommended items and one or more of said clusters of items, wherein filtering the set of recommended items comprises filtering out at least one item from the set of recommended items based on a determination that the recommended item corresponds to an area in which the user lacks interest, said determination based at least partly on both (1) a calculated distance between the recommended item and said first cluster, and (2) a calculated distance between the recommended item and the second cluster, said filtering producing a filtered set of recommended items, said filtering performed automatically by a computer system; and
outputting the filtered set of recommended items for presentation to the user.
1 Assignment
0 Petitions
Accused Products
Abstract
Computer-implemented processes are disclosed for clustering items and improving the utility of item recommendations. One process involves applying a clustering algorithm to a user'"'"'s collection of items. Information about the resulting clusters is then used to select items to use as recommendation sources. Another process involves displaying the clusters of items to the user via a collection management interface that enables the user to attach cluster-level metadata, such as by rating or tagging entire clusters of items. The resulting metadata may be used to improve the recommendations generated by a recommendation engine. Another process involves forming clusters of items in which a user has indicated a lack of interest, and using these clusters to filter the output of a recommendation engine. Yet another process involves applying a clustering algorithm to the output of a recommendation engine to arrange the recommended items into cluster-based categories for presentation to the user.
-
Citations
22 Claims
-
1. A computer-implemented method, comprising:
-
maintaining a collection of items in association with a user, said collection comprising items rated by the user; applying a clustering algorithm to said collection of items to subdivide the collection into multiple clusters, wherein the clusters are generated based, at least in part, on calculated distances between the items; classifying at least a first cluster of said multiple clusters, based at least partly on the user'"'"'s ratings of items therein, as representing an area in which the user lacks interest; classifying at least a second cluster of said multiple clusters, based at least partly on the user'"'"'s ratings of items therein, as representing an area of interest to the user; obtaining a set of recommended items for the user from a recommendation engine; filtering the set of recommended items based, at least in part, on distances between the recommended items and one or more of said clusters of items, wherein filtering the set of recommended items comprises filtering out at least one item from the set of recommended items based on a determination that the recommended item corresponds to an area in which the user lacks interest, said determination based at least partly on both (1) a calculated distance between the recommended item and said first cluster, and (2) a calculated distance between the recommended item and the second cluster, said filtering producing a filtered set of recommended items, said filtering performed automatically by a computer system; and outputting the filtered set of recommended items for presentation to the user. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer system comprising one or more computing devices, said computer system programmed to implement:
-
a computer data repository that stores a collection of items associated with a user, said collection including items rated by the user; a clustering component that applies a clustering algorithm to the collection of items to divide the collection into multiple clusters of items, said clustering component configured to use item ratings specified by the user to classify at least a first cluster of said multiple clusters as corresponding to an area in which the user lacks interest, and to classify at least a second cluster as corresponding to an area of interest to the user; a recommendation engine that generates a set of personalized item recommendations for the user; and a filtering component that filters out selected items from the set of personalized item recommendations based on determinations that the selected items are associated with the area in which the user lacks interest, as determined based at least partly on both (1) calculated distances between the selected items and the first cluster, and (2) calculated distances between the selected items and the second cluster. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. Non-transitory computer storage that stores executable code modules that direct a computing system to perform a process that comprises:
-
generating a first item cluster that, based on item ratings specified by a user, corresponds to an area in which the user lacks interest; generating a second item cluster that, based on item ratings specified by the user, corresponds to an area of interest to the user; determining a set of recommended items for the user; and filtering out at least one recommended item from the set of recommended items based at least partly on a determination that the recommended item corresponds to an area in which the user lacks interest, said determination based at least partly on calculated distances between the recommended item and the first and second item clusters, to thereby generate a filtered set of recommended items for the user. - View Dependent Claims (21, 22)
-
Specification