Sub-matrix Input for Neural Network Keyword Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current speech recognition systems face challenges in efficiently processing voice commands to wake up devices from a sleep state with limited resources, such as memory footprint, latency, and battery consumption, while maintaining high accuracy in keyword detection.
Innovation Solution
A neural network is trained with a reduced number of parameters, using sub-matrices as input to nodes in a layer, allowing for efficient computation and reduced resource usage, enabling fast keyword detection and low latency responses.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If a neural network uses a reduced number of parameters with sub-matrices as input to nodes, then memory footprint and computational cost are reduced, but processing accuracy may deteriorate
Solution Approach 1:
The input data is divided into multiple sub-matrices, with each sub-matrix being processed by a corresponding node in the neural network layer. This segmentation allows the network to handle large input data efficiently by distributing processing across multiple nodes, reducing the computational burden on individual nodes while maintaining overall processing accuracy
Solution Approach 2:
The patent transforms the traditional single large input matrix into multiple smaller sub-matrices arranged in a grid structure. This dimensional transformation allows the neural network to process information in a distributed manner across spatial dimensions (rows and columns of sub-matrices), effectively reducing memory footprint while preserving the complete information content through the systematic arrangement of sub-matrices
2Measurement precision
If the neural network processes all parameters, then keyword detection accuracy is improved, but latency and battery consumption increase
Solution Approach 1:
By segmenting the input into sub-matrices and assigning each to a dedicated node, the processing occurs in parallel across multiple nodes simultaneously. This parallel processing significantly reduces the time required to process the entire input compared to sequential processing of all parameters through a single node
Solution Approach 2:
Each node processes only the specific sub-matrix assigned to it, performing a partial action on the overall input data. While individual nodes process only a portion of the data, the collective action of all nodes processes the complete input set, achieving full accuracy with reduced per-node computational burden and lower overall latency
3Adaptability or versatility
If the neural network uses more parameters, then model capacity is increased, but device resource consumption exceeds available resources
Solution Approach 1:
The model capacity is distributed across multiple nodes, each handling a segment of the input data. This segmentation allows the system to achieve high overall model capacity while keeping individual node resource requirements manageable, enabling deployment on resource-constrained mobile devices
Solution Approach 2:
The patent reorganizes the computational workload from a single high-capacity model into a distributed architecture where multiple lower-capacity nodes work in parallel. This dimensional reorganization of computational resources allows the system to achieve equivalent or superior adaptability while reducing peak memory usage and energy consumption on mobile devices
Data Source
AI summary
Methods, systems, and apparatus, including computer programs encoded on computer storage media, for training a neural network. One of the methods includes generating, by a speech recognition system, a matrix from a predetermined quantity of vectors that each represent input for a layer of a neural network, generating a plurality of sub-matrices from the matrix, using, for each of the sub-matrices, the respective sub-matrix as input to a node in the layer of the neural network to determine whether an utterance encoded in an audio signal comprises a keyword for which the neural network is trained.


