Arithmetic Method for Convolutional Neural Networks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Large convolutional neural networks face increased power consumption due to the need to read and write data between internal and external memory, which is exacerbated by limited internal memory capacity, leading to higher costs.

Innovation Solution

An arithmetic method that selectively uses two modes for convolution operations based on input data size, either storing weight data in external memory and input data in internal memory, or vice versa, to minimize data transfer and calculate matrix products efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If internal memory capacity is increased to reduce power consumption, then power consumption is reduced, but manufacturing cost increases

Engineering Contradiction:
Improvepower consumptionVSAvoidmanufacturing cost
Core Design Contradiction:
Use of energy by moving objectVSEase of manufacture

Solution Approach 1:

The patent segments memory storage into two parts: internal memory for frequently accessed data (weight data) and external memory for less frequently accessed data (input data). This segmentation allows the system to maintain small internal memory capacity while still achieving efficient data access patterns that reduce overall power consumption without requiring expensive large-capacity internal memory.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces external memory as an intermediary between the processing unit and the data sources. By using external memory as a mediator for storing input data and intermediate results, the system reduces the burden on internal memory, allowing small internal memory capacity to suffice while maintaining efficient data access that lowers power consumption.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of energy

If internal memory capacity is increased to reduce data transfer, then data transfer is reduced, but device complexity increases

Engineering Contradiction:
Improvedata transfer energyVSAvoidmemory capacity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent segments the memory system into internal and external components with distinct functional roles. Internal memory stores weight data that needs to be repeatedly accessed during convolution operations, while external memory stores input data and intermediate results. This segmentation optimizes data transfer efficiency without requiring the internal memory to handle all data storage, thus avoiding increased device complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent dynamically manages data placement between internal and external memory based on access patterns. Frequently accessed weight data remains in internal memory, while input data and intermediate results are managed in external memory. This dynamic approach optimizes data transfer efficiency without requiring static over-provisioning of internal memory capacity, thereby avoiding increased device complexity.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If data is read from external memory multiple times, then processing flexibility is improved, but power consumption increases

Engineering Contradiction:
Improveprocessing flexibilityVSAvoidpower consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent performs preliminary actions by pre-loading weight data into internal memory before processing operations begin. This preliminary placement of frequently accessed data in fast internal memory allows multiple processing operations to proceed without repeated external memory accesses, significantly reducing power consumption while maintaining processing flexibility for different input data.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent enables continuous processing by maintaining weight data in internal memory throughout the convolution operations. This continuous availability of weight data in fast internal memory allows uninterrupted processing of different input data batches, maintaining processing flexibility while avoiding repeated power-consuming external memory accesses.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS11907327B2Arithmetic method
Publication Date: 2024.02.20 SOCIONEXT INC
  • US11907327B2 patent drawing
  • US11907327B2 patent drawing
  • US11907327B2 patent drawing

AI summary

Provided is an arithmetic method of performing convolution operation in convolutional layers of a neutral network by calculating matrix products. The arithmetic method includes: determining, for each of the convolutional layers, whether an amount of input data to be inputted to the convolutional layer is smaller than or equal to a predetermined amount of data; selecting a first arithmetic mode and performing convolution operation in the first arithmetic mode, when the amount of input data is determined to be smaller than or equal to the predetermined amount of data in the determining; selecting a second arithmetic mode and performing convolution operation in the second arithmetic mode, when the amount of input data is determined to be larger than the predetermined amount of data in the determining; and outputting output data which is a result obtained by performing convolution operation.