Feature Matrix Generation for Recommender Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Classical recommender systems face inefficiencies in feature engineering due to the computation of full feature matrices without exploiting redundancies, leading to high memory usage and computational costs, and lack flexibility in regularization levels.
Innovation Solution
The feature generation process is separated from the feature matrix generation, allowing for the storage of unique primary keys and on-demand matrix production, enabling parallelization and efficient computation of factorized features with flexible regularization levels.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If the full feature matrix is generated without exploiting redundancies, then the feature matrix can be produced in a classical setup, but memory resources are consumed excessively and computational costs increase
Solution Approach 1:
The patent segments the feature matrix generation into two independent stages: (1) feature generation stage where only unique primary keys are stored, and (2) feature matrix production stage where the matrix is generated on-demand. This segmentation eliminates the need to store the complete feature matrix in memory, reducing memory requirements while maintaining the ability to generate the matrix when needed.
Solution Approach 2:
The patent performs preliminary computation of features and stores only the unique primary keys and their corresponding feature values before the actual matrix generation. This preliminary action separates the heavy computational workload from the memory storage requirement, allowing features to be pre-computed and stored efficiently without occupying excessive memory resources.
2Ease of manufacture
If the full feature matrix is generated without exploiting redundancies, then the feature matrix can be produced in a classical setup, but computational costs increase
Solution Approach 1:
By segmenting the process into feature generation (computational) and feature matrix production (data retrieval), the patent allows computational tasks to be performed once and stored, while subsequent matrix generation becomes a much lighter data retrieval and transformation operation. This segmentation dramatically reduces repeated computational costs.
Solution Approach 2:
The patent creates a compressed representation (copy) of the feature matrix by storing only unique primary keys and their features, rather than the full matrix. This compressed copy can be efficiently retrieved and transformed into the full matrix only when needed, reducing computational overhead for repeated operations.
3Measurement precision
If more embeddings are used for matrix reconstruction, then the reconstruction accuracy improves, but the memory resources required increase
Solution Approach 1:
The patent makes the number of embeddings dynamic rather than fixed. Users can select the appropriate number of embeddings based on their specific needs and available resources. The system can reconstruct the feature matrix with different levels of detail (different numbers of embeddings) without requiring all possible embeddings to be stored in memory simultaneously.
Solution Approach 2:
The patent pre-computes and stores the component matrices (customer and item embeddings) separately, allowing the full feature matrix to be reconstructed on-demand by multiplying these pre-computed components. This preliminary computation of components enables flexible reconstruction at different accuracy levels without storing the complete high-accuracy matrix in memory.
4Quantity of substance
If the feature generation process is separated from the feature matrix generation process, then redundancy can be maximally exploited and memory requirements reduced, but the system complexity increases
Solution Approach 1:
The patent divides the system into two distinct modules: a feature generation module that computes and stores unique features, and a feature matrix production module that generates the matrix on-demand. While this segmentation increases architectural complexity, it dramatically reduces memory requirements and enables efficient processing by separating computation from data storage.
Data Source
AI summary
Described is a recommender engine where a first plurality of customers prospects is exposed to a second plurality of potential actions, the recommender engine filters tuples of customers and actions according to one or more applied business rules, generates features that identify a primary key that characterizes a specific feature to determine a minimum level of representation to eliminate redundancy, the feature generator executes a feature calculation to fit feature values per each primary key that are computed to subsequently reconstruct the feature per each primary key, transforms the features to return the feature values according to a number of primary keys that needs to be fetched, composes a feature matrix that includes a portion of the primary keys that needs to be fetched, scores the portion of the primary keys from feature matrix, and issues recommendations for tuples of customers and actions according to the feature matrix.


