Segmented Neural Network Training Reducing Memory Usage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Training large neural networks requires significant memory usage due to the need to store activations across multiple layers, which can lead to increased memory requirements and slower convergence during the training phase, especially when pipelining is involved.

Innovation Solution

Segmenting the neural network into multiple sections allows error propagation to be coupled directly to intermediate outputs, reducing the number of activations that need to be stored and enabling faster convergence by adjusting weights independently in each section.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the neural network uses pipelining to process data through multiple layers, then processing throughput is improved, but memory size increases significantly (quadratically)

Engineering Contradiction:
Improveprocessing throughputVSAvoidmemory size
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent segments the neural network into multiple stages, where each stage processes a subset of layers. Activations are stored only for the current stage's layers rather than the entire network depth. This segmentation allows pipelining to continue across stages while reducing the memory burden at each individual stage, breaking the quadratic memory growth pattern.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a temporal dimension to memory management by using buffered storage that allows activations to be released after they have been used for backpropagation in previous stages. This temporal buffering approach enables the system to maintain pipelining throughput while reducing peak memory requirements by reusing memory resources across different time steps.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Measurement precision

If the network depth is increased to improve model capacity, then recognition accuracy is improved, but memory usage increases

Engineering Contradiction:
Improverecognition accuracyVSAvoidmemory usage
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

By dividing the deep network into multiple trainable stages that are trained independently and then combined, the patent enables training of very deep networks without requiring storage of activations for the entire depth. Each stage can be trained with moderate memory requirements, and the staged approach allows the overall network to achieve the depth necessary for high recognition accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary training of individual stages before combining them into the full network. This staged training approach allows each component to be optimized independently with manageable memory requirements, and the preliminary training results can be combined to form the complete deep network that achieves high accuracy without requiring all activations to be stored simultaneously.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If traditional backpropagation is used to train the entire network, then convergence accuracy is achieved, but training time increases due to storing all activations

Engineering Contradiction:
Improveconvergence accuracyVSAvoidtraining time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent segments the backpropagation process into multiple passes, where each pass trains one stage of the network. This staged backpropagation allows gradients to be computed and applied to each stage independently, eliminating the need to store all activations from the entire network depth. The segmented approach achieves the same convergence accuracy as traditional backpropagation but significantly reduces training time by avoiding the storage bottleneck.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11610120B2Systems and methods for training a neural network
Publication Date: 2023.03.21 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11610120B2 patent drawing
  • US11610120B2 patent drawing
  • US11610120B2 patent drawing

AI summary

Embodiments of the present disclosure include systems and methods for training neural networks. In one embodiment, neural network may receive input data and produce output results in response to the input data and weights of the neural network. An error is determined at an output of the neural network based on the output results. The error is propagated in a reverse direction through the neural network from the output and one or more intermediate outputs to adjust the weights.