Complex Winograd Convolution for Quantized CNN Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Convolution operations in convolutional neural networks (CNNs) account for 90% of the computation load, and existing techniques like Winograd convolutions face inefficiencies when implemented on integer or fixed-point hardware accelerators due to rational number calculations, leading to performance overhead.

Innovation Solution

The implementation of a complex Winograd convolution that extends the subfield from rational numbers to the complex field, using symmetric complex interpolation points to reduce arithmetic complexity and optimize transform matrices, thereby improving efficiency and reducing the number of general multiplications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If standard Winograd convolution is used, then arithmetic complexity is reduced, but performance overhead occurs on integer or fixed-point hardware accelerators due to rational number calculations

Engineering Contradiction:
Improvearithmetic complexityVSAvoidperformance on hardware accelerators
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent changes the numerical field parameter from rational numbers to complex numbers. By using complex interpolation points and complex transform matrices, the convolution operation maintains arithmetic complexity reduction while eliminating the performance overhead associated with rational number calculations on integer/fixed-point hardware. This parameter change in the mathematical domain resolves the contradiction between complexity reduction and hardware compatibility.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent substitutes the mathematical mechanism of rational number field operations with complex number field operations. This substitution replaces the problematic rational number calculations that cause overhead on integer/fixed-point hardware with complex number calculations that are more suitable for hardware acceleration, while preserving the arithmetic complexity benefits of Winograd convolution.

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

2Quantity of substance

If quantization is applied to reduce model size, then storage requirements decrease, but precision is reduced

Engineering Contradiction:
Improvemodel sizeVSAvoidweight and activation precision
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The patent changes the precision parameter of weights and activations from high precision (32-bit floating point) to low precision (8-bit integer or fixed-point). This parameter change in precision enables quantization that reduces model size by 4× while the complex Winograd convolution methodology maintains acceptable accuracy by operating in the complex number field, which better preserves numerical properties during the accelerated convolution operations.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11449729B2Efficient convolutional neural networks
Publication Date: 2022.09.20 ARM LTD
  • US11449729B2 patent drawing
  • US11449729B2 patent drawing
  • US11449729B2 patent drawing

AI summary

The present disclosure advantageously provides a system and a method for convolving data in a quantized convolutional neural network (CNN). The method includes selecting a set of complex interpolation points, generating a set of complex transform matrices based, at least in part, on the set of complex interpolation points, receiving an input volume from a preceding layer of the quantized CNN, performing a complex Winograd convolution on the input volume and at least one filter, using the set of complex transform matrices, to generate an output volume, and sending the output volume to a subsequent layer of the quantized CNN.