The input tensor, of rank 4 or rank 3, of shape
[batch, height, width, inChannels]
. If rank 3, batch of 1 is
assumed.
The filter tensor, rank 4, of shape
[filterHeight, filterWidth, inChannels, channelMultiplier]
.
The strides of the convolution: [strideHeight, strideWidth]
. If strides is a single number, then strideHeight == strideWidth
.
The type of padding algorithm.
same
and stride 1: output will be of same size as input,
regardless of filter size.valid
: output will be smaller than input if filter is larger
than 1x1.Optional
dataFormat: "NHWC" | "NCHW"Optional
dilations: number | [number, number]The dilation rates: [dilationHeight, dilationWidth]
in which we sample input values across the height and width dimensions
in atrous convolution. Defaults to [1, 1]
. If rate
is a single
number, then dilationHeight == dilationWidth
. If it is greater than
1, then all values of strides
must be 1.
Optional
dimRoundingMode: "floor" | "round" | "ceil"A string from: 'ceil', 'round', 'floor'. If none is provided, it will default to truncate.
Depthwise 2D convolution.
Given a 4D
input
array and afilter
array of shape[filterHeight, filterWidth, inChannels, channelMultiplier]
containinginChannels
convolutional filters of depth 1, this op applies a different filter to each input channel (expanding from 1 channel tochannelMultiplier
channels for each), then concatenates the results together. The output hasinChannels * channelMultiplier
channels.See https://www.tensorflow.org/api_docs/python/tf/nn/depthwise_conv2d for more details.