Cluster-based scalable collaborative filtering
First Claim
Patent Images
1. A computer-implemented method of providing a predictive recommendation for a first item to an active user based at least in part on ratings of the first item, the method comprising:
- selecting, by a computing device, from a set of N clusters comprising users, at least one cluster that is similar to the active user based at least in part on ratings of multiple items made by the users in the N clusters;
from the at least one cluster, determining, by the computing device, based at least in part on ratings of the multiple items that have been rated by users in the at least one cluster, similarity values for users in the at least one cluster;
identifying, by the computing device, based at least in part on the similarity values, K users that are similar to the active user, wherein each of the K users have provided a rating for the first item; and
providing, by the computing device, the predictive recommendation for the first item to the active user based at least in part on determining;
an average rating of the active user for the multiple items;
an average rating of each of the K users for items that include at least a subset of the multiple items;
for each of the K users, a difference between the rating for the first item and the average rating for the items that include at least a subset of the multiple items; and
an addition that includes at least the average rating of the active user and the difference to form the predictive recommendation for the first item.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods for determining a predictive rating are disclosed. In an embodiment, an active user is compared to a set of clusters. One or more of the clusters are determined to be most similar to the active user. From the one or more clusters, K users are determined to be most similar to the active user. Prior ratings for an item by the K users may be used to predict a rating for the item for the active user.
-
Citations
20 Claims
-
1. A computer-implemented method of providing a predictive recommendation for a first item to an active user based at least in part on ratings of the first item, the method comprising:
-
selecting, by a computing device, from a set of N clusters comprising users, at least one cluster that is similar to the active user based at least in part on ratings of multiple items made by the users in the N clusters; from the at least one cluster, determining, by the computing device, based at least in part on ratings of the multiple items that have been rated by users in the at least one cluster, similarity values for users in the at least one cluster; identifying, by the computing device, based at least in part on the similarity values, K users that are similar to the active user, wherein each of the K users have provided a rating for the first item; and providing, by the computing device, the predictive recommendation for the first item to the active user based at least in part on determining; an average rating of the active user for the multiple items; an average rating of each of the K users for items that include at least a subset of the multiple items; for each of the K users, a difference between the rating for the first item and the average rating for the items that include at least a subset of the multiple items; and an addition that includes at least the average rating of the active user and the difference to form the predictive recommendation for the first item. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer readable storage memory comprising computer executable instructions that, when executed by a processor, cause the processor to perform acts comprising:
-
sorting a database of users into N clusters based at least in part on ratings for items made by the users; in response to receiving an input by an active user, determining a subset of the N clusters that are similar to the active user based at least in part on an average deviation of ratings for items made by the active user and users in the subset of the N clusters; determining a similarity value for each of the users in the subset of the N clusters based at least in part on the ratings of the items; selecting, from those users in the subset of the N clusters that have provided a rating for a first item that is not included in the items, K users in the subset of the N clusters that are closest to the active user based at least in part on the similarity value determined for each of the K users; and providing a predictive rating for the first item to the active user based at least in part on determining; an average rating of the active user for the items; for each associated user of the K users, a difference between a rating made by the associated user for the first item and an average rating of the associated user for multiple items that include at least a subset of the items; and a summation of the difference for each associated user of the K users added to the average rating of the active user for the items to form the predictive rating for the first item. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A computer-implemented method of providing a predictive rating to an active user, the method comprising:
-
receiving, by a computing device, a request from the active user, the request associated with a first item; selecting, by the computing device, from a set of clusters of users, at least one cluster that is most similar to the active user based at least in part on an average deviation of ratings for items made by the active user and users in the at least one cluster; determining, by the computing device, a similarity value for each user in the at least one cluster based at least in part on the ratings for the items, the determining similarity values comprising; calculating a difference, for each corresponding user of the at least one cluster, between a rating for each of the items that have been rated by the corresponding user, and an average rating of ratings made by the corresponding user for multiple items that include at least a subset of the items and one or more other items that differ from each of the items; and calculating a difference, for the active user, between a rating for each of the items rated by the active user and an average rating for the items rated by the active user; determining, by the computing device, from those users in the at least one cluster that have provided a rating for the first item, K users that are most similar to the active user based at least in part on the similarity value determined for each of the K users; determining, by the computing device, a predictive rating for the first item based at least in part on ratings of the first item made by the K users, wherein each K user that is more similar to the active user relative to the remaining K users will have a greater influence on the predictive rating; and providing, by the computing device, the predictive rating to the active user. - View Dependent Claims (17, 18, 19, 20)
-
Specification