Dilated Convolution Hardware Implementation via Kernel Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing neural network accelerator hardware faces inefficiencies in implementing dilated convolutions, which are essential for tasks like object detection and image segmentation, due to the need for large kernel sizes and increased computational overhead.

Innovation Solution

The method involves splitting the kernel into constituent convolutions with smaller kernels or dividing the input data into parts, allowing existing hardware to evaluate these constituent convolutions and combine their results to produce the dilated convolution output, optimizing performance by selecting the best strategy based on dilation rate and convolution type.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If dilated convolution is implemented directly on existing neural network accelerator hardware, then the hardware can process dilated convolutions, but the computational overhead and execution time increase significantly

Engineering Contradiction:
Improveability to process dilated convolutionsVSAvoidexecution time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The dilated convolution operation is segmented into multiple constituent convolutions with smaller kernels. Instead of applying one large dilated kernel directly, the method divides the computation into several smaller convolution operations that can be executed more efficiently by existing hardware, reducing the overall execution time while maintaining the same receptive field.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the problem from the spatial domain to the channel dimension by performing multiple constituent convolutions with different input channel subsets. This dimensional transformation allows the hardware to process dilated convolutions more efficiently by utilizing its existing parallel processing capabilities across channels rather than across the expanded spatial receptive field.

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

2Area of stationary object

If dilated convolution uses larger kernel sizes to increase receptive field, then the coverage area increases, but the computational complexity and memory usage increase

Engineering Contradiction:
Improvereceptive field coverageVSAvoidcomputational complexity
Core Design Contradiction:
Area of stationary objectVSDevice complexity

Solution Approach 1:

The large dilated kernel is segmented into multiple smaller constituent kernels, each operating on a subset of input channels. This segmentation reduces the memory footprint and computational complexity while achieving the same effective receptive field through the combination of multiple smaller convolutions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each constituent convolution operates with local quality on a specific subset of input channels with a smaller kernel size, rather than applying a single large kernel globally across all channels. This local processing approach reduces the overall computational complexity while maintaining the global receptive field coverage through aggregation of results.

Inventive Principle:
Principle #3Local quality

3Adaptability or versatility

If dilated convolution is implemented with standard convolution hardware, then existing hardware can be used, but the power consumption and energy efficiency decrease

Engineering Contradiction:
Improvehardware compatibilityVSAvoidpower consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The power-consuming dilated convolution operation is segmented into multiple smaller constituent convolutions that can be executed using existing hardware efficiently. By breaking down the computation, the method reduces redundant calculations and memory accesses, thereby lowering overall power consumption while maintaining hardware compatibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of performing a complete dilated convolution with all its computational overhead, the method performs partial convolutions through multiple constituent operations, each handling a subset of the computation. This partial action approach reduces energy consumption by avoiding redundant computations that would occur in a direct dilated convolution implementation.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20220253506A1Implementing dilated convolution in hardware
Publication Date: 2022.08.11 IMAGINATION TECH LTD
  • US20220253506A1 patent drawing
  • US20220253506A1 patent drawing
  • US20220253506A1 patent drawing

AI summary

A method and data processing system implement dilated convolution operations in hardware. Embodiments provide various ways to implement a dilated convolution based on a number of constituent convolutions, by either splitting the kernel to construct a set of constituent convolutions with smaller kernels, or dividing the input data into multiple parts and applying a convolution to each part separately. The constituent convolutions are evaluated in hardware and their results are combined to produce the result of the dilated convolution.