METHOD FOR ANONYMOUS COLLABORATIVE FILTERING USING MATRIX FACTORIZATION
First Claim
1. A method of providing personalized recommendations to anonymous users, comprising:
- at a server,factorizing a rating matrix, denoted by MR, into a user feature matrix, denoted by MU, and an item feature matrix, denoted by MI, wherein the rows of MR correspond to a plurality of users, the columns of MR correspond to a plurality of items, each of the cells of MR represents a rating associated with a corresponding item for a corresponding user, and MR=MU×
MI, andtransmitting the item feature matrix, MI, to selected ones of a plurality of client devices associated with the plurality of users; and
at one of the selected ones of the plurality of client devices associated with one of the plurality of users, calculating a user feature vector, denoted by VU, based on the item feature matrix, MI, and a rating vector, denoted by VR, wherein each of the cells of VR represents a rating associated with a corresponding one of the plurality of items for the one user, and VR=VU×
MI.
2 Assignments
0 Petitions
Accused Products
Abstract
System and method for performing Collaborative Filtering while preserving complete user anonymity are provided. Each of a group of client devices sends a rating vector anonymously to a server. The cells in each rating vector correspond to a set of items, and selected cells have ratings provided by the user associated with the corresponding client device for the corresponding items. The server aggregates all the rating vectors into a rating matrix, and factorizes the rating matrix into a user feature matrix and an item feature matrix through approximation, such that the rating matrix equals the product of the user feature matrix and the item feature matrix. The item feature matrix is sent to the client devices. Each of the client devices calculates its own user feature vector based on its rating vector and the item feature matrix, and provides personalized recommendations on selected items based on the client'"'"'s user feature vector and the item feature matrix.
-
Citations
39 Claims
-
1. A method of providing personalized recommendations to anonymous users, comprising:
-
at a server, factorizing a rating matrix, denoted by MR, into a user feature matrix, denoted by MU, and an item feature matrix, denoted by MI, wherein the rows of MR correspond to a plurality of users, the columns of MR correspond to a plurality of items, each of the cells of MR represents a rating associated with a corresponding item for a corresponding user, and MR=MU×
MI, andtransmitting the item feature matrix, MI, to selected ones of a plurality of client devices associated with the plurality of users; and at one of the selected ones of the plurality of client devices associated with one of the plurality of users, calculating a user feature vector, denoted by VU, based on the item feature matrix, MI, and a rating vector, denoted by VR, wherein each of the cells of VR represents a rating associated with a corresponding one of the plurality of items for the one user, and VR=VU×
MI. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of obtaining an item feature matrix, denoted by MI, at a server to be used for providing personalized recommendations to anonymous users, comprising:
-
aggregating a plurality of rating vectors, denoted by VR, each provided by an anonymous client device, into a rating matrix, denoted by MR, wherein the rows of MR correspond to a plurality of anonymous users, the columns of MR correspond to a plurality of items, each of the cells of MR represents a rating associated with a corresponding item for a corresponding anonymous user, and selected cells of MR have received ratings from the corresponding anonymous users for the corresponding items; factorizing the rating matrix, MR, into a user feature matrix, denoted by MU, and an item feature matrix, denoted by MI, wherein MR=MU×
MI; andtransmitting the item feature matrix, MI, to selected ones of a plurality of anonymous client devices associated with the plurality of anonymous users. - View Dependent Claims (13, 14, 15)
-
-
16. A method of providing personalized recommendations at a client device while maintaining anonymity of the client device and a user associated with the client device, comprising:
-
anonymously transmitting a rating vectors, denoted by VR, to a server, wherein each of the cells of VR represents a rating associated with a corresponding one of a plurality of items for the user, and selected cells of VR have received ratings from the user for the corresponding items; receiving an item feature matrix, denoted by MI, from the server; calculating a user feature vector, denoted by VU, based on the item feature matrix, MI, and the rating vector, VR, wherein VR=VU×
MI; andrecommending selected ones of the plurality of items that have not received ratings from the user to the user based on the user feature vector, VU, and the item feature matrix, MI. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
-
23. A system for providing personalized recommendations to anonymous users, comprising:
-
a server arranged to factorize a rating matrix, denoted by MR, into a user feature matrix, denoted by MU, and an item feature matrix, denoted by MI, wherein the rows of MR correspond to a plurality of users, the columns of MR correspond to a plurality of items, each of the cells of MR represents a rating associated with a corresponding item for a corresponding user, and MR=MU×
MI, and transmit the item feature matrix, MI, to selected ones of a plurality of client devices associated with the plurality of users;an anonymizer arranged to relay communications between the server and the selected ones of the plurality of client devices so that the plurality of client devices and their associated users remain anonymous to the server; and one of the plurality of client devices arranged to calculate a user feature vector, denoted by VU, based on the item feature matrix, MI, and a rating vector, denoted by VR, wherein each of the cells of VR represents a rating associated with a corresponding one of the plurality of items for the one user, and VR=VU×
MI. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30)
-
-
31. A computer program product for providing personalized recommendations to anonymous users, the computer program product comprising a computer-readable medium having a plurality of computer program instructions stored therein, which are operable to cause at least one computing device to:
-
at a server, factorize a rating matrix, denoted by MR, into a user feature matrix, denoted by MU, and an item feature matrix, denoted by MI, wherein the rows of MR correspond to a plurality of users, the columns of MR correspond to a plurality of items, each of the cells of MR represents a rating associated with a corresponding item for a corresponding user, and MR=MU×
MI, andtransmit the item feature matrix, MI, to selected ones of a plurality of client devices associated with the plurality of users; and at one of the selected ones of the plurality of client devices associated with one of the plurality of users, calculate a user feature vector, denoted by VU, based on the item feature matrix, MI, and a rating vector, denoted by VR, wherein each of the cells of VR represents a rating associated with a corresponding one of the plurality of items for the one user, and VR=VU×
MI. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38, 39)
-
Specification