Pixel-Channel Shuffle CNN for Reducing Neural Network Computation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional Convolutional Neural Networks (CNNs) face challenges in hardware implementation due to high computational requirements, leading to increased computation and storage needs, which are not efficiently addressed by existing optimizations like Depth-Wise Separable Convolution and Shift Convolution.

Innovation Solution

The proposed method employs a pixel-channel shuffle convolutional neural network that reduces dimensionality through pixel shuffle and channel shuffle operations before convolution, minimizing computation and memory usage by separating the point-wise convolution into multiple operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If conventional CNN is used for image recognition, then recognition accuracy is maintained, but computation and storage space requirements increase significantly

Engineering Contradiction:
Improverecognition accuracyVSAvoidcomputation and storage space
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent applies segmentation by dividing the conventional CNN architecture into distinct functional modules: pixel shuffle operation, channel shuffle operation, and convolution operation. This modular segmentation allows each component to perform its specific function efficiently, reducing overall computational complexity while maintaining recognition accuracy through coordinated operation of these segmented modules

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent employs dimensionality change through pixel shuffle and channel shuffle operations that transform data between different dimensional representations. The pixel shuffle operation converts spatial dimensions to channel dimensions, and the channel shuffle operation redistributes channels across groups, enabling the network to process information in alternative dimensional spaces that require fewer computations

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If dimensionality reduction operations are applied to minimize computation, then computation and memory usage decrease, but recognition accuracy may be compromised

Engineering Contradiction:
Improvecomputation and memory efficiencyVSAvoidrecognition accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent applies preliminary action by performing pixel shuffle and channel shuffle operations before the convolution operation. These preliminary dimensionality reduction operations prepare the data in an optimized format that reduces subsequent computational requirements while preserving the essential information needed for accurate recognition, thus achieving efficiency gains without accuracy loss

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11275966B2Calculation method using pixel-channel shuffle convolutional neural network and operating system using the same
Publication Date: 2022.03.15 REALTEK SEMICON CORP
  • US11275966B2 patent drawing
  • US11275966B2 patent drawing
  • US11275966B2 patent drawing

AI summary

A calculation method using pixel-channel shuffle convolutional neural network is provided. In the method, an operating system receives original input data. The original input data is pre-processed by a pixel shuffle process to be separated into multiple groups in order to minimize dimension of the data. The multiple groups of data are then processed by a channel shuffle process so as to form multiple groups of new input data selected for convolution operation. The unselected data are abandoned. Therefore, the dimension of the input data can be much effectively minimized. A multiplier-accumulator of the operating system is used to execute convolution operation using a convolution kernel and the multiple new groups of input data. Multiple output data are then produced.