Neural Network Weight Matrix Expansion for Embedded Deployment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Artificial neural networks (ANNs) are computationally and memory intensive, making them challenging to deploy on embedded systems with limited resources due to their need for extensive processing and memory usage.
Innovation Solution
The approach involves updating weights and biases in ANNs by employing matrix expansions and linear approximations, allowing for efficient updates through additive or multiplicative operations, and using sparse matrix operations to reduce computational load without significantly affecting accuracy.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional neural network processing is used, then computational accuracy is maintained, but computational complexity and memory usage increase significantly
Solution Approach 1:
The patent segments the weight matrix into multiple sub-matrices and processes them in parallel using multiple processing elements. This division allows the system to maintain computational accuracy through precise weight updates while reducing the computational complexity burden on any single processing element, enabling efficient implementation on embedded systems with limited resources.
Solution Approach 2:
The patent transforms the traditional vector-based weight update operation into a matrix-based operation. By expanding the weight update from a one-dimensional vector to a two-dimensional matrix structure, the system can leverage matrix expansion techniques and parallel processing across multiple dimensions, thereby maintaining accuracy while reducing overall computational complexity.
2Measurement precision
If traditional neural network processing is used, then model precision is preserved, but memory requirements increase
Solution Approach 1:
The patent divides the weight matrix into multiple sub-matrices that can be stored and processed separately. This segmentation reduces the memory footprint required to hold the complete weight matrix in memory simultaneously, while still maintaining model precision through coordinated updates across all sub-matrices using the matrix expansion approach.
3Measurement precision
If weight updates are performed frequently during training, then model accuracy improves, but processing time increases
Solution Approach 1:
The patent performs preliminary matrix expansion to generate the expanded weight matrix before the actual weight update operation. This preliminary action organizes the data structure in advance, allowing subsequent weight updates to be executed more efficiently with reduced processing time, while still maintaining model accuracy through precise update mechanisms.
Solution Approach 2:
The patent maintains continuous useful action by implementing an efficient update mechanism that minimizes idle processing time. The matrix expansion and parallel processing approach ensures that computational resources remain productively engaged throughout the training process, reducing overall processing time while maintaining the frequency and precision of weight updates necessary for model accuracy.
Data Source
AI summary
An artificial neural network (ANN) generates a base expanded matrix that represents an output of a layer of the ANN, such as the output layer. Values in each row are grouped with respect to a set of network parameters in a previous layer, and a sum of the values in each row produces an output vector of activations. The ANN updates the values in at least one column of the expanded matrix according to parameter updates, which results in an updated expanded matrix or an update expanded matrix. An error or a total cost can be computed from the updated expanded matrix or the update expanded matrix. Nonlinear activation functions can be modeled as piecewise linear functions, and a change in an activation function's slope can be modeled as a linear update to an expanded matrix. Parameter updates can be constrained to a restricted value set in order to simplify update operations performed on the expanded matrices.


