Neural Network Data Processing Apparatus with Segmented Computing Units

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Convolutional neural networks (CNNs) applied to embedded systems face efficiency issues due to the large number of product-sum operations and varying feature image resolutions, leading to decreased processing efficiency and increased processing time.

Innovation Solution

A data processing apparatus with separate units for handling different types of data, including a first product-sum operation unit, a branch unit for parallel output, a sampling unit, and a second product-sum operation unit, which allows for efficient processing of feature images with varying resolutions by optimizing the number of operations and parallel processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If a common computing unit is used to perform product-sum operations on each layer of the CNN, then the cost of the data processing apparatus is suppressed, but the processing efficiency deteriorates when feature images have different resolutions

Engineering Contradiction:
Improvecost of data processing apparatusVSAvoidprocessing efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent divides the computing unit into multiple specialized computing units, each dedicated to processing feature images of a specific resolution. This segmentation allows each unit to operate at full efficiency for its designated resolution while maintaining cost-effectiveness through specialized optimization, resolving the contradiction between apparatus cost and processing efficiency.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If sampling processing is used to match the sizes of feature images with different resolutions, then the network configuration can be maintained, but the processing efficiency of the computing unit deteriorates

Engineering Contradiction:
Improvenetwork configuration flexibilityVSAvoidprocessing efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

Instead of using sampling processing that reduces efficiency, the patent segments the computing unit into multiple units handling different resolutions. This allows the network to maintain its flexible configuration with multiple resolutions while each computing unit processes features at its native resolution without inefficient sampling operations.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If the number of feature images does not correspond to the number of feature images that can be processed in parallel by the computing unit, then the network structure is maintained, but the processing efficiency decreases

Engineering Contradiction:
Improvenetwork structure flexibilityVSAvoidprocessing efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments the computing unit into multiple specialized units, each optimized for specific resolutions. This segmentation allows the system to maintain flexible network structures with varying numbers of feature images while each computing unit operates at full parallel processing efficiency for its designated resolution, eliminating the efficiency loss that would occur with a single computing unit.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11625224B2Apparatus and method using neural network
Publication Date: 2023.04.11 CANON KK
  • US11625224B2 patent drawing
  • US11625224B2 patent drawing
  • US11625224B2 patent drawing

AI summary

An apparatus includes a first holding unit and a second holding unit configured to hold first-type data and second-type data, respectively, a first operation unit configured to execute a first product-sum operation based on the first-type data, a branch unit configured to output an operation result of the first product-sum operation in parallel, a sampling unit configured to sample the operation result and to output a sampling result, and a second operation unit configured to execute a second product-sum operation based on the second-type data and the sampling result.