Method and system for high performance model-based personalization
First Claim
Patent Images
1. A method for determining a recommendation comprising:
- banding into bands, by a data processing device, a sparse unary ratings matrix having unary data values representing clients'"'"' ratings, wherein the bands of the sparse unary ratings matrix partition the ratings by client;
distributing the bands to a plurality of computing nodes;
receiving respective output from the plurality of computing nodes, the received output together forming 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 received 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; and
generating a recommendation output representative of the recommendation.
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.
53 Citations
16 Claims
-
1. A method for determining a recommendation comprising:
-
banding into bands, by a data processing device, a sparse unary ratings matrix having unary data values representing clients'"'"' ratings, wherein the bands of the sparse unary ratings matrix partition the ratings by client; distributing the bands to a plurality of computing nodes; receiving respective output from the plurality of computing nodes, the received output together forming 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 received 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; and generating a recommendation output representative of the recommendation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 15)
-
-
8. A method for determining a recommendation comprising:
-
striping into stripes, by a data processing device, a sparse unary ratings matrix having unary data values representing clients'"'"' ratings, wherein the stripes of the sparse unary ratings matrix partition the ratings by item; distributing the stripes to a plurality of computing nodes; receiving respective output from the plurality of computing nodes, the received output together forming 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 received 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; and generating a recommendation output representative of the recommendation. - View Dependent Claims (9, 10, 11, 12, 13, 14, 16)
-
Specification