Developer Guide

Contents

Two-Dimensional Convolution Backward Layer

The forward two-dimensional (2D) convolution layer applies a set of
nKernels
2D kernels
K
of size
m
3
x
m
4
to the input tensor
X
. The library supports four-dimensional input tensors
X
R
n
1
x
n
2
x
n
3
x
n
4
. Therefore, the following formula applies:
where
i
+
u
<
n
3
,
j
+
v
<
n
4
, and
r
is the kernel index.
For more details, see Forward 2D Convolution Layer.
The backward 2D convolution layer computes the derivatives of the objective function
E
:

Problem Statement

Without loss of generality, let's assume that convolution kernels are applied to the last two dimensions.
Given:
  • Four-dimensional tensor
    G
    R
    n
    1
    x
    nKernels
    x
    l
    3
    x
    l
    4
    with the gradient from the preceding layer
  • Four-dimensional tensor
    K
    R
    nKernels
    x
    m
    2
    x
    m
    3
    x
    m
    4
    with kernel parameters/weights of kernels (convolutions)
For the above tensors:
  • and
    p
    i
    is the respective padding.
  • nGroups
    is defined as follows: let's assume that
    n
    2
    is the group dimension in the input tensor for the forward 2D convolution layer. The output gradient tensor is split along this dimension into
    nGroups
    groups, and the input gradient tensor and weights tensor are split into
    nGroups
    groups along the
    nKernels
    dimension.
    nKernels
    and
    n
    2
    must be multiples of
    nGroups
    .
The problem is to compute:
  • Four-dimensional tensor
    Z
    R
    n
    1
    x
    n
    2
    x
    n
    3
    x
    n
    4
    such that:
  • Values:
In the above formulas:
  • s
    3
    and
    s
    4
    are strides

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804