Memristor Crossbar Sparse Coding for Fast Dot Product Computation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current technologies face challenges in efficiently implementing sparse coding algorithms, particularly in reducing computational complexity and achieving sparsity in data representation for large input signals, such as images, without sacrificing accuracy or quality.

Innovation Solution

A memristor crossbar network system that performs sparse coding using a locally competitive algorithm, where the interface circuit computes dot products and applies neuron inhibition to reduce redundant features, allowing for efficient data representation and reconstruction by iteratively updating neuron activities and input vectors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional computing architectures are used to implement sparse coding algorithms, then computational accuracy can be maintained, but computational complexity and processing time increase significantly

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

Solution Approach 1:

The patent replaces conventional digital computing architectures with a neuromorphic computing system that uses artificial neurons and synapses to perform sparse coding operations. The mechanical/digital computation is substituted with bio-inspired neural network operations, where neurons process inputs through weighted connections and activation functions, enabling parallel processing and reducing computational complexity for sparse coding tasks

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

Solution Approach 2:

The computing system is segmented into multiple independent neurons, each capable of performing local computations. This segmentation allows the overall sparse coding problem to be divided into parallel neuron-level operations, where each neuron independently processes input features and contributes to the final sparse representation, thereby improving computational efficiency

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If more features are used to represent input data, then accuracy of data representation improves, but computational complexity and storage requirements increase

Engineering Contradiction:
Improvedata representation accuracyVSAvoidfeature processing complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The neuromorphic system implements sparsity constraints that prevent all neurons from being fully active. Instead, only a subset of neurons with the highest activation values are selected to represent the input data. This partial action approach maintains accurate data representation by focusing on the most significant features while reducing the effective number of features processed, thereby lowering computational and storage requirements

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system dynamically adjusts the sparsity parameter (k) that controls the number of active neurons. By changing this parameter, the system can adapt between high accuracy (more active neurons) and low complexity (fewer active neurons) based on the specific requirements of the task, enabling flexible trade-off management between representation quality and computational cost

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If iterative updates are performed to improve sparse coding accuracy, then feature extraction quality improves, but processing time increases

Engineering Contradiction:
Improvefeature extraction accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs iterative updates in periodic cycles, where each cycle consists of forward propagation to compute neuron activations, selection of active neurons based on sparsity constraints, and backward propagation to update synaptic weights. This periodic structure allows the system to progressively improve feature extraction accuracy through multiple iterations while maintaining manageable processing time by resetting and reusing the neural network structure in each period

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS10812083B2Techniques for computing dot products with memory devices
Publication Date: 2020.10.20 THE RGT UNIV OF MICHIGAN
  • US10812083B2 patent drawing
  • US10812083B2 patent drawing
  • US10812083B2 patent drawing

AI summary

Sparse representation of information performs powerful feature extraction on high-dimensional data and is of interest for applications in signal processing, machine vision, object recognition, and neurobiology. Sparse coding is a mechanism by which biological neural systems can efficiently process complex sensory data while consuming very little power. Sparse coding algorithms in a bio-inspired approach can be implemented in a crossbar array of memristors (resistive memory devices). This network enables efficient implementation of pattern matching and lateral neuron inhibition, allowing input data to be sparsely encoded using neuron activities and stored dictionary elements. The reconstructed input can be obtained by performing a backward pass through the same crossbar matrix using the neuron activity vector as input. Different dictionary sets can be trained and stored in the same system, depending on the nature of the input signals. Using the sparse coding algorithm, natural image processing is performed based on a learned dictionary.