Distributed Matrix Prediction Using Field-Aware Factorization Machines
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems face challenges in efficiently predicting numerical outcomes in matrix-defined problem spaces, particularly in correlating values and ranking job candidates, due to limitations in processing large datasets and generating negative examples.
Innovation Solution
The implementation of field-aware factorization machines (FFMs) with distributed training algorithms and system optimizations, allowing for scalable prediction algorithms that run in linear time, efficient distributed computation, and the generation of negative samples using shuffled matrices across multiple computation servers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If distributed training algorithms are used to process large datasets, then prediction speed and scalability are improved, but system complexity increases
Solution Approach 1:
The patent divides the training process into distributed computation across multiple servers, where each server processes a subset of data. The matrix operations are segmented into local computations on each server, with results aggregated to produce the final model. This segmentation enables parallel processing of large datasets, improving prediction speed while managing system complexity through modular architecture.
Solution Approach 2:
The patent introduces an intermediary coordination mechanism that manages communication between distributed servers. This intermediary layer handles task distribution, result aggregation, and synchronization, allowing the system to scale productivity without proportionally increasing operational complexity. The intermediary abstracts the distributed nature of the system from the user interface.
2Measurement precision
If field-aware factorization machines are implemented with distributed training, then model accuracy for predicting numerical outcomes is improved, but computation time increases
Solution Approach 1:
The FFM model computation is segmented across distributed servers, with each server computing local factorization results for a subset of data. This parallel computation reduces the total time required to process large datasets while maintaining the accuracy benefits of field-aware factorization. The segmentation allows the complex model to be solved in parallel rather than sequentially.
Solution Approach 2:
The patent performs preliminary computations to pre-process data and compute intermediate results that can be reused during training. By performing these actions in advance, the system reduces the computation time required during the actual model training process, improving efficiency while maintaining prediction accuracy.
3Reliability
If negative samples are generated using shuffled matrices, then model training effectiveness is improved, but data processing complexity increases
Solution Approach 1:
The patent creates negative samples by copying and shuffling existing matrix data rather than generating entirely new data. This copying approach simplifies the data processing complexity compared to generating synthetic negative samples from scratch, while still achieving the training effectiveness benefits of having labeled negative data for the model.
Solution Approach 2:
The shuffling of matrices to generate negative samples is performed as a preliminary action during the data preparation phase. By completing this data transformation upfront, the system avoids the complexity of implementing complex negative sample generation logic during the training loop itself, simplifying the overall data processing pipeline while maintaining training effectiveness.
Data Source
AI summary
Systems and methods for predicting feature values in a matrix are disclosed. In example embodiments, a server accesses a matrix, the matrix having multiple dimensions, one dimension of the matrix representing features, and one dimension of the matrix representing entities. The server separates the matrix into multiple submatrices along a first dimension, each submatrix including all cells in the matrix for a set of values in the first dimension. The server provides the multiple submatrices to multiple machines. The server computes, using each machine, a correlation between values in at least one second dimension of the matrix and a value for a preselected feature in the matrix, the correlation being used to predict the value for the preselected feature based on other values along the at least one second dimension. The server provides an output representing the computed correlation.


