Cross Batch Normalization for Distributed Neural Network Training

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Neural networks face challenges in training due to variations in local batches of data during distributed training, leading to inconsistencies in parameter updates and reduced accuracy, especially when memory and processing power limitations restrict the size of batches.

Innovation Solution

Implementing cross batch normalization layers that synchronize normalization statistics across local batches, allowing for parallel training and normalization of inputs using global batch statistics, which helps in adjusting parameters effectively during backpropagation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If distributed training with local batches is used, then training speed and scalability are improved, but training accuracy deteriorates due to normalization inconsistencies

Engineering Contradiction:
Improvetraining speedVSAvoidtraining accuracy
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The patent merges normalization statistics from multiple local batches into global batch statistics by computing weighted averages of means and variances. This combining approach allows distributed training to maintain normalization consistency across all processing units, resolving the accuracy deterioration while preserving the speed benefits of parallel processing.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent segments the global batch into multiple local batches that can be processed in parallel across different processing units. Each unit computes normalization statistics for its local batch, then these segmented results are aggregated to form global statistics, enabling both parallel processing and accurate normalization.

Inventive Principle:
Principle #1Segmentation

2Manufacturing precision

If larger batch sizes are used, then training accuracy is improved, but memory and processing limitations are exceeded

Engineering Contradiction:
Improvetraining accuracyVSAvoidbatch size capacity
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The patent transitions from computing normalization statistics within a single batch dimension to aggregating statistics across multiple batch dimensions (local batches from different processing units). This dimensional expansion allows the system to achieve global batch normalization effects without requiring the entire global batch to reside in memory simultaneously.

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

3Manufacturing precision

If more data exchange between processing units is performed, then normalization accuracy is improved, but communication overhead and training time increase

Engineering Contradiction:
Improvenormalization accuracyVSAvoidcommunication overhead
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent extracts only the essential normalization statistics (means and variances) from each local batch for exchange between processing units, rather than transferring entire batches or intermediate activations. This extraction minimizes communication overhead while providing sufficient information for accurate global normalization.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11568259B2Cross batch normalization
Publication Date: 2023.01.31 ZOOX INC
  • US11568259B2 patent drawing
  • US11568259B2 patent drawing
  • US11568259B2 patent drawing

AI summary

Techniques for training a machine learning model are described herein. For example, the techniques may include implementing a cross batch normalization layer that generates a cross batch normalization layer output based on a first layer output during training of the neural network. The training may be based on a local batch of training examples of a global batch including the local batch and at least one remote batch of training examples. The cross batch normalization layer output may include normalized components of the first layer output determined based on global normalization statistics for the global batch. Such techniques may be used to train a neural network over distributed machines by synchronizing batches between such machines.