Pipelined Neural Network Asynchronous Weight Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current neural network architectures face inefficiencies in processing complex tasks due to sequential weight updates and flushing operations, which hinder performance in tasks like natural language processing and image recognition.

Innovation Solution

Implementing a method where neural network layers are partitioned among computing resources to enable asynchronous and continuous weight updates during backpropagation, allowing each layer to update its weights as soon as gradients are available without waiting for other layers, and using pipelined model parallelism to process forward and backward passes efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If sequential weight updates are used to ensure proper gradient propagation through all layers, then training accuracy is maintained, but processing time and resource utilization deteriorate

Engineering Contradiction:
Improvetraining accuracyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the weight update process by layer, allowing each layer to update its weights independently as soon as its gradients are available, rather than waiting for all layers to complete gradient calculation. This segmentation enables parallel processing of weight updates across different layers while maintaining the integrity of gradient propagation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary weight updates for earlier layers before the complete backward pass through all layers is finished. By updating weights in layers as gradients become available during the backward pass, the system performs useful work in advance rather than waiting for the entire training step to complete.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If all layers complete backward passes before any weight updates occur, then gradient accuracy is ensured, but resource utilization and training efficiency deteriorate

Engineering Contradiction:
Improvegradient accuracyVSAvoidtraining efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent maintains continuous useful action by keeping computing resources actively engaged in weight updates throughout the training process. Instead of idle periods where all resources wait for complete gradient calculation, the system continuously updates weights for layers whose gradients are ready, maximizing resource utilization without compromising gradient accuracy.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent introduces dynamics into the weight update process by making the update timing flexible and adaptive. Weight updates occur dynamically as gradients become available for each layer, rather than following a rigid sequential schedule. This dynamic approach allows the system to adapt to the varying computation times of different layers while maintaining training accuracy.

Inventive Principle:
Principle #15Dynamics

3Productivity

If pipelined model parallelism is implemented to process multiple layers simultaneously, then throughput increases, but system complexity and coordination overhead increase

Engineering Contradiction:
ImprovethroughputVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the neural network into distinct layers processed by different computing resources in a pipeline. Each layer is independently partitioned and can be processed, updated, and transferred independently, reducing the coordination complexity compared to processing the entire network as a single unit while maintaining high throughput.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11663444B2Pipelined neural network processing with continuous and asynchronous updates
Publication Date: 2023.05.30 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11663444B2 patent drawing
  • US11663444B2 patent drawing
  • US11663444B2 patent drawing

AI summary

Systems and methods for pipelined neural network processing with continuous and asynchronous updates are described. A method for processing a neural network comprising L layers, where L is an integer greater than two, includes partitioning the L layers among a set of computing resources configured to process forward passes and backward passes associated with each of the L layers. The method further includes initiating processing of the forward passes and the backward passes using the set of computing resources. The method further includes upon completion of a first set of forward passes and a first set of backward passes associated with a first layer of the L layers, initiating update of parameters associated with the first layer when gradients are available for updating the parameters associated with the first layer without waiting to calculate gradients associated with any of remaining L layers.