Neural Network Training System With Model State Feedback

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data processing systems for training neural networks face challenges in optimizing parallel processing across multiple sets of processing units, leading to inefficiencies in training neural networks due to the lack of effective methods for exchanging and utilizing model state data between processing units.

Innovation Solution

A data processing system comprising multiple sets of processing units, where each set runs a neural network model, exchanges data indicating the state of models, evaluates a loss function based on dissimilarity measures, and updates model parameters to optimize training iterations, using a hyperparameter to control the impact of dissimilarity on updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional data parallel training methods are used across multiple sets of processing units, then training can be distributed, but efficiency is reduced due to lack of effective model state data exchange

Engineering Contradiction:
Improvetraining efficiencyVSAvoidmodel state data exchange
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent implements feedback mechanisms where processing units exchange model state data (gradients, parameters) with each other during training iterations. Each processing unit receives feedback from others about their model states and adjusts its own model accordingly, enabling coordinated optimization across the distributed system rather than independent parallel training.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent introduces intermediary communication protocols and data structures that facilitate efficient exchange of model state information between processing units. These intermediaries manage the transfer of gradients, parameters, and other model states, enabling coordinated training without requiring complex direct peer-to-peer communication between all processing units.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If model parameters are updated independently at each processing unit, then parallel processing is achieved, but prediction accuracy deteriorates due to lack of coordination

Engineering Contradiction:
Improveprediction accuracyVSAvoidcoordination complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent merges the training processes of multiple processing units by having them exchange and coordinate their model states. Instead of completely independent updates, the processing units combine their gradient information and model parameters through structured communication, achieving coordinated optimization that improves prediction accuracy while maintaining parallel execution benefits.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent implements dynamic adjustment of model parameters across processing units based on real-time exchange of model states. The coordination mechanism adapts the update schedules and communication frequencies dynamically during training, balancing the need for parallel processing with the requirement for coordinated optimization to maintain prediction accuracy.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11651226B2System having multiple processing unit sets for training neural networks
Publication Date: 2023.05.16 GRAPHCORE LTD
  • US11651226B2 patent drawing
  • US11651226B2 patent drawing
  • US11651226B2 patent drawing

AI summary

A data processing system for training a neural network, the data processing system comprising: a first set of one or more processing units running one model of the neural network, a second set of one or more processing units running another model of the neural network, a data storage, and an interconnect between the first set of one or more processing units, the second set of processing units and the data storage, wherein the data storage is configured to provide over the interconnect, training data to the first set of one or more processing units and the second set of one more processing units, wherein each of the first and second set of processing units is configured to, when performing the training, evaluate loss for the respective training iteration including a measure of the dissimilarity between the output values calculated based on the different modes running on the first and second set of processing units, wherein the dissimilarity measure is weighted in the evaluation of the loss in accordance with a parameter that is updated between different training iterations.