IP Library › Granted Patent US 8,185,535
Granted Patent B2
US 8,185,535 · App. 12/609,327 · Granted May 22, 2012

Methods and systems for determining unknowns in collaborative filtering

Assignee: Hewlett-Packard Development Company, L.P.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,185,535
App. No.
12/609,327
Granted
May 22, 2012
Kind
B2
Abstract

Embodiments of the present invention are directed to methods and systems for determining unknowns in rating matrices. In one embodiment, a method comprises forming a rating matrix, where each matrix element corresponds to a known favorable user rating associated with an item or an unknown user rating associated with an item. The method includes determining a weight matrix configured to assign a weight value to each of the unknown matrix elements, and sampling the rating matrix to generate an ensemble of training matrices. Weighted maximum-margin matrix factorization is applied to each training matrix to obtain corresponding sub-rating matrix, the weights based on the weight matrix. The sub-rating matrices are combined to obtain an approximate rating matrix that can be used to recommend items to users based on the rank ordering of the corresponding matrix elements.

Claims (38)

1. A method for determining unknowns in a rating matrix using a computing device, the method comprising:

forming a rating matrix, wherein each matrix element corresponds to a known favorable user rating of an item or an unknown user rating of an item;

determining a weight matrix configured to assign a weight value to each of the unknown user ratings;

sampling the rating matrix to generate an ensemble of training matrices;

applying weighted maximum-margin matrix factorization based on the weight matrix to each training matrix to obtain corresponding sub-rating matrices; and

combining the sub-rating matrices to obtain an approximate rating matrix that can be used to recommend items to each user based on a rank ordering of the matrix elements associated with each user.

2. The method of claim 1 wherein the favorable user rating of an item further comprises assigning a value “1” to each corresponding matrix element.

3. The method of claim 1 wherein the unknown user rating of an item further comprises assigning a value “−1” to each corresponding matrix element.

4. The method of claim 1 wherein determining a weight matrix further comprises applying a uniform weighting scheme that assumes the unknown user ratings are negative with equal probability.

5. The method of claim 1 wherein determining a weight matrix further comprises applying a user-oriented weighting scheme that assumes for each user with more favorable user ratings than unknown user ratings, the unknown user ratings of items associated with the same user are unfavorable with higher probability.

6. The method of claim 1 wherein determining a weight matrix further comprises applying an item-oriented weighting scheme that assumes when an item has relatively fewer favorable user ratings than other items, the unknown user ratings for the same item are negative with higher probability.

7. The method of claim 1 wherein sampling the rating matrix further comprises:

sampling the rating matrix based on a sampling probability matrix and a sample size; and

retaining positive valued matrix elements of the rating matrix in each of the training matrices.

8. The method of claim 1 wherein applying weighted maximum-margin matrix factorization to each training matrix further comprises applying a conjugate gradient method to equations produced by the weight maximum-margin matrix factorization.

9. The method of claim 1 wherein combining the sub-rating matrices to obtain an approximate rating matrix further comprises averaging the sub-rating matrices.

10. The method of claim 1 further comprising:

rank ordering items associated with each user based on rank order from largest to smallest of the corresponding matrix elements of the approximate rating matrix; and

selecting one or more items for recommending to the user based on the rank order of the corresponding matrix elements.

11. A non-transitory computer-readable storage medium having instructions encoded therein for enabling a processor to perform the operations of:

forming a rating matrix, wherein each matrix element corresponds to a known favorable user rating of an item or an unknown user rating of an item;

determining a weight matrix configured to assign a weight value to each of the unknown user ratings;

sampling the rating matrix to generate an ensemble of training matrices;

applying weighted maximum-margin matrix factorization based on the weight matrix to each training matrix to obtain corresponding sub-rating matrices; and

combining the sub-rating matrices to obtain an approximate rating matrix that can be used to recommend items to each user based on a rank ordering of the matrix elements associated with each user.

12. The non-transitory computer-readable storage medium of claim 11 wherein the favorable user rating of an item further comprises assigning a value “1” to each corresponding matrix element.

13. The non-transitory computer-readable storage medium of claim 11 wherein the unknown user rating of an item further comprises assigning a value “−1” to each corresponding matrix element.

14. The non-transitory computer-readable storage medium of claim 11 wherein determining a weight matrix further comprises applying a uniform weighting scheme that assumes the unknown user ratings are negative with equal probability.

15. The non-transitory computer-readable storage medium of claim 11 wherein determining a weight matrix further comprises applying a user-oriented weighting scheme that assumes for each user with more favorable user ratings than unknown user ratings, the unknown ratings of items associated with the same user are unfavorable with higher probability.

16. The non-transitory computer-readable storage medium of claim 11 wherein determining a weight matrix further comprises applying an item-oriented weighting scheme that assumes when an item has relatively fewer favorable user ratings than other items, the unknown user ratings for the same item are negative with higher probability.

17. The non-transitory computer-readable storage medium of claim 11 wherein sampling the rating matrix further comprises:

sampling the rating matrix based on a sampling probability matrix and a sample size; and

retaining positive valued matrix elements of the rating matrix in each of the training matrices.

18. The non-transitory computer-readable storage medium of claim 11 wherein applying weighted maximum-margin matrix factorization to each training matrix further comprises applying a conjugate gradient method to equations produced by the weight maximum-margin matrix factorization.

19. The non-transitory computer-readable storage medium of claim 11 wherein combining the sub-rating matrices to obtain an approximate rating matrix further comprises averaging the sub-rating matrices.

20. The non-transitory computer-readable storage medium of claim 11 further comprising:

rank ordering items associated with each user based on rank order from largest to smallest of the corresponding matrix elements of the approximate rating matrix; and

selecting one or more items for recommending to the user based on the rank order of the corresponding matrix elements.

Assignments (8)
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0577 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC)
Reel/Frame 063560/0001 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
CHANGE OF NAME Recorded Aug 8, 2019
From: ENTIT SOFTWARE LLC
To: MICRO FOCUS LLC
Reel/Frame 050004/0001 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ENTIT SOFTWARE LLC; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ENTIT SOFTWARE LLC; ARCSIGHT, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0577 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2017
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: ENTIT SOFTWARE LLC
Reel/Frame 042746/0130 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2009
From: PAN, RONG; SCHOLZ, MARTIN B.
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 023453/0352 →
Continuity (1)
Related Publication 20110106817A1 · May 5, 2011