Sparsified Neural Network Training with TR-L-BFGS

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Training of multilayer feedforward artificial neural networks is computationally intensive due to the large number of edges in the directed acyclic graph, leading to excessive resource consumption and time, as all edges contribute equally to the computational burden regardless of their weight, necessitating a method to simplify the graph without compromising functionality.

Innovation Solution

The method involves sparsification of the neural network by selectively removing edges with nearly zero weights, using a combination of edge and node tables, and metadata for efficient storage and processing, along with quasi-Newton optimization methods like TR-L-BFGS to iteratively adjust weights and improve accuracy, while maintaining the mathematical functionality of the network.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all edges are retained in the neural network graph, then the network maintains full functionality and accuracy, but the computational burden and resource consumption increase significantly

Engineering Contradiction:
Improvenetwork functionalityVSAvoidtraining speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts and removes edges with weights below a certain threshold from the neural network graph. By identifying and eliminating these negligible-weight edges, the system reduces the computational burden while preserving the essential functionality of the network, thus resolving the contradiction between maintaining full functionality and improving training speed.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies different treatment to different edges based on their local properties (weight magnitudes). Edges with significant weights are retained to maintain network accuracy, while edges with negligible weights are removed to reduce computational burden. This local differentiation allows the system to optimize performance without compromising overall functionality.

Inventive Principle:
Principle #3Local quality

2Productivity

If edge sparsification is applied to reduce computational burden, then training speed improves, but network accuracy may deteriorate

Engineering Contradiction:
Improvetraining speedVSAvoidnetwork accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent dynamically adjusts the weight threshold parameter during the sparsification process. By changing this parameter, the system can control the degree of sparsification and balance between training speed and accuracy. The threshold is adjusted based on the distribution of edge weights and the desired level of sparsification, allowing flexible optimization of the trade-off between productivity and reliability.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If the full Hessian matrix is computed for optimization, then optimization accuracy is maximized, but memory consumption and computational complexity increase

Engineering Contradiction:
Improveoptimization accuracyVSAvoidmemory footprint
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the Hessian matrix computation by focusing only on the sparse subset of edges that remain after sparsification. Instead of computing and storing the full dense Hessian matrix, the system computes a sparse Hessian matrix that contains only the relevant elements corresponding to the retained edges. This segmentation dramatically reduces memory footprint and computational complexity while maintaining optimization accuracy.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11775833B2Accelerated TR-L-BFGS algorithm for neural network
Publication Date: 2023.10.03 ORACLE INT CORP
  • US11775833B2 patent drawing
  • US11775833B2 patent drawing
  • US11775833B2 patent drawing

AI summary

Techniques herein train a multilayer perceptron, sparsify edges of a graph such as the perceptron, and store edges and vertices of the graph. Each edge has weight. A computer sparsifies perceptron edges. The computer performs a forward-backward pass on the perceptron to calculate a sparse Hessian matrix. Based on that Hessian, the computer performs quasi-Newton perceptron optimization. The computer repeats this until convergence. The computer stores edges in an array and vertices in another array. Each edge has weight and input and output indices. Each vertex has input and output indices. The computer inserts each edge into an input linked list based on its weight. Each link of the input linked list has the next input index of an edge. The computer inserts each edge into an output linked list based on its weight. Each link of the output linked list comprises the next output index of an edge.