Selective Weight Updates for Neural Network Training Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The computational demands of updating weight information in neural networks, particularly during training, can lead to performance bottlenecks in computer systems, impacting the efficiency of training processes.

Innovation Solution

Implementing selective weight updates, where only weights used in a current batch are updated normally, and those not used are updated only when reused, using metadata to track skipped steps and applying updates in subsequent batches, along with combining non-gradient terms for efficient computation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If all weight information is updated at every training step, then the neural network training accuracy is maintained, but the computational load and memory access overhead increase significantly

Engineering Contradiction:
Improvetraining accuracyVSAvoidcomputational efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent segments weight updates into two categories: gradient-based updates for actively used weights and periodic updates for inactive weights. This segmentation allows the system to apply different update strategies to different weight subsets, reducing unnecessary computations while maintaining training accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of performing complete weight updates at every step, the patent applies partial updates only to the necessary subset of weights (those currently in use). This partial action approach reduces computational overhead while maintaining sufficient training progress through selective updates.

Inventive Principle:
Principle #16Partial or excessive action

2Speed

If weight updates are performed frequently, then the convergence speed is improved, but the memory access overhead and computational overhead increase

Engineering Contradiction:
Improveconvergence speedVSAvoidmemory access overhead
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

The patent implements periodic updates for weights that are not currently in use, updating them at intervals rather than at every training step. This periodic action maintains convergence progress while significantly reducing memory access overhead compared to continuous updates of all weights.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent performs preliminary identification of which weights are currently in use before executing updates. This preliminary action allows the system to prepare update schedules in advance, optimizing memory access patterns and reducing overhead during the actual training execution.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If all weights are updated using gradient descent, then the training precision is maintained, but the computational complexity increases

Engineering Contradiction:
Improveweight update precisionVSAvoidcomputational complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent applies different update qualities to different weights based on their current usage status. Actively used weights receive full gradient-based updates with high precision, while inactive weights receive simplified periodic updates. This local quality differentiation maintains necessary precision where needed while reducing overall computational complexity.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20200380369A1Training a neural network using selective weight updates
Publication Date: 2020.12.03 NVIDIA CORP
  • US20200380369A1 patent drawing
  • US20200380369A1 patent drawing
  • US20200380369A1 patent drawing

AI summary

Training one or more neural networks using selective updates to weight information of the one or more neural networks. In at least one embodiment, one or more neural networks are trained by at least updating one or more portions of weight information of the one or more neural networks based, at least in part, on metadata that indicate how recently the one or more portions of weight information has been updated.