Developer Guide for Intel® Data Analytics Acceleration Library 2019 Update 4
The forward one-dimensional (1D) max pooling layer is a form of non-linear downsampling of an input tensor X ∈ R n 1 x n 2 x ... x n p . 1D max pooling partitions the input tensor data into 1D subtensors along the dimension k , selects an element with the maximal numeric value in each subtensor, and transforms the input tensor to the output tensor Y by replacing each subtensor with its maximum element.
Given:
p-dimensional tensor X ∈ R n 1 x n 2 x ... x n p with input data.
Dimension k along which the kernel is applied
Kernel size
m:
where
p is the padding
The problem is to compute the value tensor Y = (y i 1 ...i p ) ∈ R l 1 x ... x l p using the downsampling technique.
The layer computes the value
y
. as the maximum element in the
subtensor. After the kernel is applied to the subtensor at position
, the index of the maximum
T =
(t
i
1
...i
p
)
is stored for use by the backward 1D max pooling layer:
s is the stride
The following figure illustrates the transformation: