Fixed Point Integer Weights for Neural Network Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current neural networks in real-time applications face significant computational effort, leading to increased power usage and reduced battery life in mobile devices, while attempts to optimize resource usage often result in reduced classification accuracy.

Innovation Solution

Representing neural network weights as 8-bit fixed point integer values with associated scaling factors and correction values, which reduces memory transfer and computation costs, and applying these values in nodes of the network to maintain classification accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If neural network computations are offloaded to GPU, then computational speed is improved, but power consumption increases and conflicts with other GPU-intensive applications

Engineering Contradiction:
Improvecomputational speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The patent changes the numerical representation parameters of neural network weights from standard floating-point to fixed-point integer formats (e.g., 8-bit, 16-bit integers). This parameter change enables more efficient computation that can be performed on CPU with reduced power consumption while maintaining acceptable classification accuracy through appropriate precision selection and correction mechanisms.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent creates simplified copies of neural network weight data in fixed-point integer format, which can be processed more efficiently with lower computational resources. These fixed-point representations are lighter copies that reduce memory transfer requirements and enable faster processing without needing full-precision floating-point operations.

Inventive Principle:
Principle #26Copying

2Measurement precision

If standard floating-point weights are used, then classification accuracy is maintained, but memory transfer and computation costs increase

Engineering Contradiction:
Improveclassification accuracyVSAvoidcomputation efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent systematically changes the precision parameters of weight representations from 32-bit floating-point to various fixed-point integer formats (8-bit, 16-bit). By adjusting the bit-depth and fractional precision parameters, the system finds optimal balances between classification accuracy and computational efficiency, demonstrating that lower-precision fixed-point formats can achieve comparable accuracy with significantly reduced computation costs.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent applies correction values to specific weights that require higher precision, rather than maintaining high precision across all weights. This partial application of high-precision correction where absolutely necessary, combined with lower-precision fixed-point representations for the majority of weights, achieves near-full-precision accuracy with substantially reduced computation and memory requirements.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If fixed point integer weights are used, then memory transfer and computation costs are reduced, but classification accuracy may be compromised

Engineering Contradiction:
Improvecomputation efficiencyVSAvoidclassification accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent introduces correction values as intermediary elements that mediate between fixed-point integer weights and the desired high-precision classification results. These correction values compensate for the quantization errors introduced by fixed-point representation, acting as a bridge that restores accuracy without requiring full-precision floating-point weights throughout the system.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent performs preliminary computation of correction values during an offline training or calibration phase, storing these pre-computed corrections for use during deployment. This preliminary action separates the accuracy-critical correction computation from the real-time classification process, allowing fixed-point weights to be used during inference while maintaining high accuracy through the pre-prepared correction data.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10803381B2Fixed point integer implementations for neural networks
Publication Date: 2020.10.13 INTEL CORP
  • US10803381B2 patent drawing
  • US10803381B2 patent drawing
  • US10803381B2 patent drawing

AI summary

Techniques related to implementing neural networks for speech recognition systems are discussed. Such techniques may include processing a node of the neural network by determining a score for the node as a product of weights and inputs such that the weights are fixed point integer values, applying a correction to the score based on a correction value associated with at least one of the weights, and generating an output from the node based on the corrected score.