Matrix Factorization Sampling for Recommendation Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Large usage matrices in recommendation systems consume excessive time and computational resources, making it burdensome to process and provide personalized recommendations efficiently, especially when dealing with millions of users and items.

Innovation Solution

The technique involves sampling the usage matrix to reduce its size, allowing for factorization using reduced computational resources, and dividing computations among multiple devices using a map and reduce technique, enabling an analytic solution for quick results while maintaining statistical significance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the usage matrix is processed in full size, then recommendation accuracy is improved, but computational time and resources become excessive

Engineering Contradiction:
Improverecommendation accuracyVSAvoidcomputational time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent divides the full usage matrix into multiple smaller matrices by sampling users and items. Each computing device processes a subset of the data (a segment of the overall problem), and results are aggregated to produce final recommendations. This segmentation allows parallel processing and reduces computational burden while maintaining accuracy through representative sampling.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a sampled copy of the usage matrix that represents the full matrix statistically. Instead of processing the complete original matrix, the system works with a smaller representative copy that captures the essential patterns, thereby reducing computational requirements while preserving recommendation accuracy.

Inventive Principle:
Principle #26Copying

2Measurement precision

If the usage matrix is processed in full size, then recommendation accuracy is improved, but computational resources become excessive

Engineering Contradiction:
Improverecommendation accuracyVSAvoidcomputational resources
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent divides the usage matrix into segments that can be processed by multiple computing devices simultaneously. Each device handles a portion of the data, distributing computational resources across multiple machines rather than concentrating all processing on a single system, thereby reducing overall resource consumption while maintaining accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses a sampled copy of the usage matrix that requires significantly fewer computational resources to process. This copy maintains the statistical properties needed for accurate recommendations but consumes fraction of the computational resources compared to processing the full matrix.

Inventive Principle:
Principle #26Copying

3Use of energy by moving object

If sampling is applied to reduce matrix size, then computational resources are reduced, but statistical significance may be compromised

Engineering Contradiction:
Improvecomputational resourcesVSAvoidstatistical significance
Core Design Contradiction:
Use of energy by moving objectVSReliability

Solution Approach 1:

The patent carefully adjusts sampling parameters (sample size, sampling method) to ensure that the reduced matrix maintains statistical significance. By optimizing these parameters, the system achieves a balance where sufficient data remains in the sample to produce reliable results while still achieving the desired reduction in computational resources.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8983888B2Efficient modeling system for user recommendation using matrix factorization
Publication Date: 2015.03.17 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8983888B2 patent drawing
  • US8983888B2 patent drawing
  • US8983888B2 patent drawing

AI summary

A technique for efficiently factoring a matrix in a recommendation system. Usage data for a large set of users relative to a set of items is provided in a usage matrix R. To reduce computational requirements, the usage matrix is sampled to provide a reduced matrix R′. R′ is factored into a user matrix U′ and an item matrix V. User vectors in U′ and V are initialized and then iteratively updated to arrive at an optimal solution. The reduced matrix can be factored using the computational resources of a single computing device, for instance. Subsequently, the full user matrix U is obtained by fixing V and analytically minimizing an error in UV=R+error. The computations of this analytic solution can be divided among a set of computing devices, such as by using a map and reduce technique. Each computing device solves the equation for different respective subset of users.