Online Recurrent Neural Network Training via Gradient Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Recurrent neural networks face challenges in online training due to system-locking issues with deep unrolled networks and limitations in existing gradient-based training methods like BPTT, making them unsuitable for online learning scenarios.

Innovation Solution

A computer-implemented method for training neural networks that separates spatial and temporal gradient components, allowing for independent computation and updating at each time instance, facilitating efficient online training and implementation on hardware accelerators like memristive arrays.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If backpropagation through time (BPTT) is used for training recurrent neural networks, then training accuracy can be improved, but system-locking problems occur and online learning becomes unusable

Engineering Contradiction:
Improvetraining accuracyVSAvoidonline learning capability
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The patent segments the gradient computation into two independent components: spatial gradient components (computed layer-by-layer from output to input) and temporal gradient components (computed at each time step independently). This segmentation eliminates the system-locking problem of traditional BPTT while maintaining training accuracy, enabling online learning by allowing incremental updates without requiring the entire sequence to be processed first.

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If the network unrolls in time with increasing input sequence length, then more training data is processed, but the network depth becomes very deep causing computational intractability

Engineering Contradiction:
Improvetraining data volumeVSAvoidnetwork depth
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent segments temporal gradient computation into independent per-time-step operations that can be accumulated online, avoiding the need to unroll the entire network through time. This allows processing of long sequences without creating proportionally deep computational graphs, as gradients are computed and accumulated incrementally at each time step rather than requiring full unrolling.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent computes temporal gradient components at each time step in advance and stores them as eligibility traces, which are then combined with spatial gradient components during the forward pass or at designated update points. This preliminary computation of temporal gradients eliminates the need to maintain deep computational graphs for the entire sequence duration.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If spatial and temporal gradient components are computed independently, then computational time is reduced through parallel processing, but gradient accuracy may be compromised

Engineering Contradiction:
Improvecomputational speedVSAvoidgradient accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent segments the gradient into spatial components (affecting weight matrices) and temporal components (affecting hidden states), computing them independently in parallel. The spatial gradients are computed via backpropagation through the network layers, while temporal gradients are computed from the unrolled temporal dynamics. These segmented gradients are then combined to update parameters, achieving both parallel computational speed and accurate gradient estimation.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20220027727A1Online training of neural networks
Publication Date: 2022.01.27 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US20220027727A1 patent drawing
  • US20220027727A1 patent drawing
  • US20220027727A1 patent drawing

AI summary

The invention is notably directed to a computer-implemented method for training parameters of a recurrent neural network. The network comprises one or more layers of neuronal units. Each neuronal unit has an internal state, which may also be denoted as unit state. The method comprises providing training data comprising an input signal and an expected output signal to the recurrent neural network. The method further comprises computing, for each neuronal unit, a spatial gradient component and computing, for each neuronal unit, a temporal gradient component. The method further comprises updating the temporal and the spatial gradient component for each neuronal unit at each time instance of the input signal. The computing of the spatial and the gradient component may be performed independently from each other. The invention further concerns a neural network and a related computer program product.