Parallelized Stochastic Gradient Descent Using Symbolic Weights

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Machine learning using stochastic gradient descent (SGD) is resource-intensive and slow due to its sequential nature, making it difficult to scale with increasing processing power and memory, particularly when dealing with large datasets stored on disk.

Innovation Solution

The implementation of a parallelized SGD system that uses a symbolic representation of initial model weights to allow multiple processors to perform SGD analysis in parallel, distributing training data across machines and integrating local results into a global model without relying on concrete initial states.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If parallel processing is used to speed up training, then processing speed is improved, but accuracy is worsened due to difficulty in performing parallel processing accurately for inherently sequential machine learning approaches

Engineering Contradiction:
Improveprocessing speedVSAvoidcomputational accuracy
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The training dataset is divided into multiple partitions that can be processed in parallel. Each processor handles a specific partition independently, enabling parallel computation while maintaining the integrity of the overall training process through structured coordination and result aggregation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Checkpoint data structures serve as intermediaries between parallel processing operations and the final model training result. These checkpoints store intermediate computations and enable accurate reconstruction of the training state, ensuring that parallel operations can be coordinated without losing computational accuracy.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If multiple processors are used to process data in parallel, then productivity is improved, but device complexity is worsened

Engineering Contradiction:
Improvetraining throughputVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system is segmented into independent processor units, each capable of handling specific data partitions autonomously. This modular architecture allows scalable parallel processing where additional processors can be added without fundamentally redesigning the entire system, managing complexity through standardized interfaces.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system uses configurable parameters such as checkpoint intervals and data partition assignments to control the degree of parallelization. By adjusting these parameters, the system can optimize the balance between productivity gains from additional processors and the complexity overhead of coordinating them.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If sequential SGD analysis is performed on large datasets, then measurement precision is maintained, but loss of time is worsened

Engineering Contradiction:
Improvemodel training accuracyVSAvoidtraining time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

Checkpoint data structures are prepared in advance to store intermediate computation states. This preliminary action enables parallel processors to resume computations from known states rather than starting from scratch, maintaining precision while reducing the time penalty associated with parallel processing coordination.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10922620B2Machine learning through parallelized stochastic gradient descent
Publication Date: 2021.02.16 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10922620B2 patent drawing
  • US10922620B2 patent drawing
  • US10922620B2 patent drawing

AI summary

Systems, methods, and computer media for machine learning through a symbolic, parallelized stochastic gradient descent (SGD) analysis are provided. An initial data portion analyzer can be configured to perform, using a first processor, SGD analysis on an initial portion of a training dataset. Values for output model weights for the initial portion are initialized to concrete values. Local model builders can be configured to perform, using an additional processor for each local model builder, symbolic SGD analysis on an additional portion of the training dataset. The symbolic SGD analysis uses a symbolic representation as an initial state for output model weights for the corresponding portions of the training dataset. The symbolic representation allows the SGD analysis and symbolic SGD analysis to be performed in parallel. A global model builder can be configured to combine outputs of the local model builders and the initial data portion analyzer into a global model.