Sampling Artificial Neural Networks Using Stochastic Neuromorphic Hardware

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for sampling artificial neural networks during inference are disruptive and lack a clear value, as they increase uncertainty and computational cost, with the accuracy of each sample being lower than deterministic networks, raising questions about the aggregate accuracy and the necessity of sampling multiple times.

Innovation Solution

The method involves creating sample matrices based on a trained neural network's weight matrix using stochastic neuromorphic hardware, where each element is binary (e.g., 1 or 0), and performing multiple inferences with different sample matrices to provide a probabilistic estimate of the network's output, determining confidence levels based on deviations across choices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If sampling is performed during inference, then computational cost is reduced, but accuracy deteriorates

Engineering Contradiction:
Improvecomputational costVSAvoidaccuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent creates multiple sample matrices that are copies of the original weight matrix, where each element is replaced by a binary value generated through stochastic processes. These sample matrices serve as simplified copies that can be used for inference with reduced computational cost while maintaining acceptable accuracy through aggregation of multiple samples.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent transforms the continuous weight values in the original weight matrix into binary parameters (0 or 1) through stochastic sampling. This parameter change from continuous to discrete values simplifies computation while the aggregation of multiple such samples recovers the expected value, resolving the accuracy-loss contradiction.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If multiple samples are taken, then accuracy approaches deterministic network accuracy, but computational cost increases

Engineering Contradiction:
ImproveaccuracyVSAvoidcomputational cost
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent generates multiple inexpensive sample matrices that can be discarded after use. Each sample matrix is a simple binary approximation that costs little to generate, and multiple such disposable samples are aggregated to achieve high accuracy without the computational burden of using the full-precision weight matrix repeatedly.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

3Productivity

If stochastic neuromorphic hardware is used, then computational efficiency is improved, but device complexity increases

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidhardware complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent replaces traditional digital computing mechanisms with stochastic neuromorphic hardware that naturally exhibits probabilistic behavior. This substitution leverages the inherent stochastic properties of neuromorphic devices to generate binary samples directly, achieving computational efficiency while the complexity is managed through the natural physics of the hardware rather than complex control logic.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS20240394523A1Sampling artificial neural networks
Publication Date: 2024.11.28 NATIONAL TECHNOLOGY & ENGINEERING SOLUTIONS OF SANDIA LLC
  • US20240394523A1 patent drawing
  • US20240394523A1 patent drawing
  • US20240394523A1 patent drawing

AI summary

Sampling an artificial neural network is provided. The method comprises creating a number of sample matrices based on a weight matrix of a trained artificial neural network, wherein each element in the sample matrices is equal to one of a pair of numbers generated by stochastic neuromorphic hardware according to weights from the weight matrix corresponding to the elements in the sample matrices. A number of inferences are performed with the trained neural network, wherein the weight matrix of the trained neural network is replaced with the sample matrices, and wherein each inference is performed with a different one of the sample matrices. A confidence level of the inferences is determined according to deviations between the first choice and other choices made by the trained neural network across the inferences.