Method and System for High Performance Model-Based Personalization
First Claim
Patent Images
1. A method for preparing a recommendation comprising:
- providing, in memory, a sparse unary ratings matrix from users'"'"' selected preferences, wherein each user'"'"'s selected preferences are represented as unary data entries in the sparse unary ratings matrix, wherein each unary data entry has a value of either zero or one;
banding by a data processing device the sparse unary ratings matrix, wherein bands of the sparse unary ratings matrix partition ratings by client;
distributing the bands to a plurality of computing nodes, wherein the plurality of computing nodes generate from the bands respective output that together form a matrix of co-rates, wherein the matrix of co-rates includes either a pre-multiplication of the sparse unary ratings matrix by a transpose of the sparse unary ratings matrix or a post-multiplication of the sparse unary ratings matrix by the transpose of the sparse unary ratings matrix;
forming in the data processing device a runtime recommendation model from the output of the plurality of computing nodes;
determining in the data processing device a recommendation from the runtime recommendation model in response to a request from a user; and
providing the recommendation to the user.
4 Assignments
0 Petitions
Accused Products
Abstract
The present invention relates to a method and system for generating client preference recommendations in a high performance computing regime. Accordingly, one embodiment of the present invention comprises: providing a sparse ratings matrix, forming a plurality of data structures representing the sparse ratings matrix, forming a runtime recommendation model from the plurality of data structures, determining a recommendation from the runtime recommendation model in response to a request from a user, and providing the recommendation to the user.
-
Citations
21 Claims
-
1. A method for preparing a recommendation comprising:
-
providing, in memory, a sparse unary ratings matrix from users'"'"' selected preferences, wherein each user'"'"'s selected preferences are represented as unary data entries in the sparse unary ratings matrix, wherein each unary data entry has a value of either zero or one; banding by a data processing device the sparse unary ratings matrix, wherein bands of the sparse unary ratings matrix partition ratings by client; distributing the bands to a plurality of computing nodes, wherein the plurality of computing nodes generate from the bands respective output that together form a matrix of co-rates, wherein the matrix of co-rates includes either a pre-multiplication of the sparse unary ratings matrix by a transpose of the sparse unary ratings matrix or a post-multiplication of the sparse unary ratings matrix by the transpose of the sparse unary ratings matrix; forming in the data processing device a runtime recommendation model from the output of the plurality of computing nodes; determining in the data processing device a recommendation from the runtime recommendation model in response to a request from a user; and providing the recommendation to the user. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for preparing a recommendation comprising:
-
providing, in memory, a sparse unary ratings matrix from users'"'"' selected preferences, wherein each user'"'"'s selected preferences are represented as unary data entries in the sparse unary ratings matrix, wherein each unary data entry has a value of either zero or one; striping by a data processing device the sparse unary ratings matrix, wherein stripes of the sparse unary ratings matrix partition ratings by item; distributing the stripes to a plurality of computing nodes, wherein the plurality of computing nodes generate from the stripes respective output that together form a matrix of co-rates, wherein the matrix of co-rates includes either a pre-multiplication of the sparse unary ratings matrix by a transpose of the sparse unary ratings matrix or a post-multiplication of the sparse unary ratings matrix by the transpose of the sparse unary ratings matrix; forming in the data processing device a runtime recommendation model from the output of the plurality of computing nodes; determining in the data processing device a recommendation from the runtime recommendation model in response to a request from a user; and providing the recommendation to the user. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A method of preparing a recommendation comprising:
-
providing, in memory, a first ratings matrix associated with a first category of data; providing, in memory, a second ratings matrix associated with a second category of data, wherein the first category of data and the second category of data each represent mappings between differing sources of ratings data; forming in a data processing device a runtime recommendation model from a cross-set of co-occurrences of the first ratings matrix and the second ratings matrix; calculating in the data processing device a recommendation from the runtime recommendation model in response to a request from a user; and providing the recommendation to the user. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification