A primitive to perform 1D, 2D or 3D deconvolution. More...
Classes | |
struct | dnnl::deconvolution_forward |
Deconvolution forward propagation primitive. More... | |
struct | dnnl::deconvolution_backward_data |
Deconvolution backward propagation primitive. More... | |
struct | dnnl::deconvolution_backward_weights |
Deconvolution weights gradient primitive. More... | |
Typedefs | |
typedef dnnl_convolution_desc_t | dnnl_deconvolution_desc_t |
A descriptor of a deconvolution operation. | |
Functions | |
dnnl_status_t DNNL_API | dnnl_deconvolution_forward_desc_init (dnnl_deconvolution_desc_t *deconv_desc, dnnl_prop_kind_t prop_kind, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *weights_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_desc, const dnnl_dims_t strides, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r) |
Initializes a descriptor for a deconvolution forward propagation primitive. More... | |
dnnl_status_t DNNL_API | dnnl_dilated_deconvolution_forward_desc_init (dnnl_deconvolution_desc_t *deconv_desc, dnnl_prop_kind_t prop_kind, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *weights_desc, const dnnl_memory_desc_t *bias_desc, const dnnl_memory_desc_t *dst_desc, const dnnl_dims_t strides, const dnnl_dims_t dilates, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r) |
Initializes a descriptor for a dilated deconvolution forward propagation primitive. More... | |
dnnl_status_t DNNL_API | dnnl_deconvolution_backward_data_desc_init (dnnl_deconvolution_desc_t *deconv_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *diff_src_desc, const dnnl_memory_desc_t *weights_desc, const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r) |
Initializes a descriptor for a deconvolution backward propagation primitive. More... | |
dnnl_status_t DNNL_API | dnnl_dilated_deconvolution_backward_data_desc_init (dnnl_deconvolution_desc_t *deconv_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *diff_src_desc, const dnnl_memory_desc_t *weights_desc, const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides, const dnnl_dims_t dilates, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r) |
Initializes a descriptor for a dilated deconvolution backward propagation primitive. More... | |
dnnl_status_t DNNL_API | dnnl_deconvolution_backward_weights_desc_init (dnnl_deconvolution_desc_t *deconv_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *diff_weights_desc, const dnnl_memory_desc_t *diff_bias_desc, const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r) |
Initializes a descriptor for a deconvolution weights gradient primitive. More... | |
dnnl_status_t DNNL_API | dnnl_dilated_deconvolution_backward_weights_desc_init (dnnl_deconvolution_desc_t *deconv_desc, dnnl_alg_kind_t alg_kind, const dnnl_memory_desc_t *src_desc, const dnnl_memory_desc_t *diff_weights_desc, const dnnl_memory_desc_t *diff_bias_desc, const dnnl_memory_desc_t *diff_dst_desc, const dnnl_dims_t strides, const dnnl_dims_t dilates, const dnnl_dims_t padding_l, const dnnl_dims_t padding_r) |
Initializes a descriptor for a dilated deconvolution weights gradient primitive. More... | |
A primitive to perform 1D, 2D or 3D deconvolution.
Supported variants are forward propagation, backward propagation, and weights gradient with or without bias.
dnnl_status_t DNNL_API dnnl_deconvolution_forward_desc_init | ( | dnnl_deconvolution_desc_t * | deconv_desc, |
dnnl_prop_kind_t | prop_kind, | ||
dnnl_alg_kind_t | alg_kind, | ||
const dnnl_memory_desc_t * | src_desc, | ||
const dnnl_memory_desc_t * | weights_desc, | ||
const dnnl_memory_desc_t * | bias_desc, | ||
const dnnl_memory_desc_t * | dst_desc, | ||
const dnnl_dims_t | strides, | ||
const dnnl_dims_t | padding_l, | ||
const dnnl_dims_t | padding_r | ||
) |
Initializes a descriptor for a deconvolution forward propagation primitive.
Inputs:
Outputs:
deconv_desc | Output descriptor for a deconvolution primitive. |
prop_kind | Propagation kind. Possible values are dnnl_forward_training and dnnl_forward_inference. |
alg_kind | Deconvolution algorithm. Possible values are dnnl_deconvolution_direct, dnnl_deconvolution_winograd. |
src_desc | Source memory descriptor. |
weights_desc | Weights memory descriptor. |
bias_desc | Bias memory descriptor. Passing NULL, a zero memory descriptor, or a memory descriptor with format_kind set to dnnl_format_kind_undef disables the bias term. |
dst_desc | Destination memory descriptor. |
strides | Array of strides for spatial dimension. |
padding_l | Array of padding values for low indices for each spatial dimension (front, top, left). |
padding_r | Array of padding values for high indices for each spatial dimension (back, bottom, right). Can be NULL in which case padding is considered to be symmetrical. |
dnnl_status_t DNNL_API dnnl_dilated_deconvolution_forward_desc_init | ( | dnnl_deconvolution_desc_t * | deconv_desc, |
dnnl_prop_kind_t | prop_kind, | ||
dnnl_alg_kind_t | alg_kind, | ||
const dnnl_memory_desc_t * | src_desc, | ||
const dnnl_memory_desc_t * | weights_desc, | ||
const dnnl_memory_desc_t * | bias_desc, | ||
const dnnl_memory_desc_t * | dst_desc, | ||
const dnnl_dims_t | strides, | ||
const dnnl_dims_t | dilates, | ||
const dnnl_dims_t | padding_l, | ||
const dnnl_dims_t | padding_r | ||
) |
Initializes a descriptor for a dilated deconvolution forward propagation primitive.
Inputs:
Outputs:
deconv_desc | Output descriptor for a deconvolution primitive. |
prop_kind | Propagation kind. Possible values are dnnl_forward_training and dnnl_forward_inference. |
alg_kind | Deconvolution algorithm. Possible values are dnnl_deconvolution_direct, dnnl_deconvolution_winograd. |
src_desc | Source memory descriptor. |
weights_desc | Weights memory descriptor. |
bias_desc | Bias memory descriptor. Passing NULL, a zero memory descriptor, or a memory descriptor with format_kind set to dnnl_format_kind_undef disables the bias term. |
dst_desc | Destination memory descriptor. |
strides | Array of strides for spatial dimension. |
dilates | Array of dilations for spatial dimension. A zero value means no dilation in the corresponding dimension. |
padding_l | Array of padding values for low indices for each spatial dimension (front, top, left). |
padding_r | Array of padding values for high indices for each spatial dimension (back, bottom, right). Can be NULL in which case padding is considered to be symmetrical. |
dnnl_status_t DNNL_API dnnl_deconvolution_backward_data_desc_init | ( | dnnl_deconvolution_desc_t * | deconv_desc, |
dnnl_alg_kind_t | alg_kind, | ||
const dnnl_memory_desc_t * | diff_src_desc, | ||
const dnnl_memory_desc_t * | weights_desc, | ||
const dnnl_memory_desc_t * | diff_dst_desc, | ||
const dnnl_dims_t | strides, | ||
const dnnl_dims_t | padding_l, | ||
const dnnl_dims_t | padding_r | ||
) |
Initializes a descriptor for a deconvolution backward propagation primitive.
Inputs:
Outputs:
deconv_desc | Output descriptor for a deconvolution primitive. |
alg_kind | Deconvolution algorithm. Possible values are dnnl_deconvolution_direct, dnnl_deconvolution_winograd. |
diff_src_desc | Diff source memory descriptor. |
weights_desc | Weights memory descriptor. |
diff_dst_desc | Diff destination memory descriptor. |
strides | Array of strides for spatial dimension. |
padding_l | Array of padding values for low indices for each spatial dimension (front, top, left). |
padding_r | Array of padding values for high indices for each spatial dimension (back, bottom, right). Can be NULL in which case padding is considered to be symmetrical. |
dnnl_status_t DNNL_API dnnl_dilated_deconvolution_backward_data_desc_init | ( | dnnl_deconvolution_desc_t * | deconv_desc, |
dnnl_alg_kind_t | alg_kind, | ||
const dnnl_memory_desc_t * | diff_src_desc, | ||
const dnnl_memory_desc_t * | weights_desc, | ||
const dnnl_memory_desc_t * | diff_dst_desc, | ||
const dnnl_dims_t | strides, | ||
const dnnl_dims_t | dilates, | ||
const dnnl_dims_t | padding_l, | ||
const dnnl_dims_t | padding_r | ||
) |
Initializes a descriptor for a dilated deconvolution backward propagation primitive.
Inputs:
Outputs:
deconv_desc | Output descriptor for a deconvolution primitive. |
alg_kind | Deconvolution algorithm. Possible values are dnnl_deconvolution_direct, dnnl_deconvolution_winograd. |
diff_src_desc | Diff source memory descriptor. |
weights_desc | Weights memory descriptor. |
diff_dst_desc | Diff destination memory descriptor. |
strides | Array of strides for spatial dimension. |
dilates | Array of dilations for spatial dimension. A zero value means no dilation in the corresponding dimension. |
padding_l | Array of padding values for low indices for each spatial dimension (front, top, left). |
padding_r | Array of padding values for high indices for each spatial dimension (back, bottom, right). Can be NULL in which case padding is considered to be symmetrical. |
dnnl_status_t DNNL_API dnnl_deconvolution_backward_weights_desc_init | ( | dnnl_deconvolution_desc_t * | deconv_desc, |
dnnl_alg_kind_t | alg_kind, | ||
const dnnl_memory_desc_t * | src_desc, | ||
const dnnl_memory_desc_t * | diff_weights_desc, | ||
const dnnl_memory_desc_t * | diff_bias_desc, | ||
const dnnl_memory_desc_t * | diff_dst_desc, | ||
const dnnl_dims_t | strides, | ||
const dnnl_dims_t | padding_l, | ||
const dnnl_dims_t | padding_r | ||
) |
Initializes a descriptor for a deconvolution weights gradient primitive.
Inputs:
Outputs:
deconv_desc | Output descriptor for a deconvolution primitive. |
alg_kind | Deconvolution algorithm. Possible values are dnnl_deconvolution_direct, dnnl_deconvolution_winograd. |
src_desc | Source memory descriptor. |
diff_weights_desc | Diff weights memory descriptor. |
diff_bias_desc | Diff bias memory descriptor. Passing NULL, a zero memory descriptor, or a memory descriptor with format_kind set to dnnl_format_kind_undef disables the bias term. |
diff_dst_desc | Diff destination memory descriptor. |
strides | Array of strides for spatial dimension. |
padding_l | Array of padding values for low indices for each spatial dimension (front, top, left). |
padding_r | Array of padding values for high indices for each spatial dimension (back, bottom, right). Can be NULL in which case padding is considered to be symmetrical. |
dnnl_status_t DNNL_API dnnl_dilated_deconvolution_backward_weights_desc_init | ( | dnnl_deconvolution_desc_t * | deconv_desc, |
dnnl_alg_kind_t | alg_kind, | ||
const dnnl_memory_desc_t * | src_desc, | ||
const dnnl_memory_desc_t * | diff_weights_desc, | ||
const dnnl_memory_desc_t * | diff_bias_desc, | ||
const dnnl_memory_desc_t * | diff_dst_desc, | ||
const dnnl_dims_t | strides, | ||
const dnnl_dims_t | dilates, | ||
const dnnl_dims_t | padding_l, | ||
const dnnl_dims_t | padding_r | ||
) |
Initializes a descriptor for a dilated deconvolution weights gradient primitive.
Inputs:
Outputs:
deconv_desc | Output descriptor for a deconvolution primitive. |
alg_kind | Deconvolution algorithm. Possible values are dnnl_deconvolution_direct, dnnl_deconvolution_winograd. |
src_desc | Source memory descriptor. |
diff_weights_desc | Diff weights memory descriptor. |
diff_bias_desc | Diff bias memory descriptor. Passing NULL, a zero memory descriptor, or a memory descriptor with format_kind set to dnnl_format_kind_undef disables the bias term. |
diff_dst_desc | Diff destination memory descriptor. |
strides | Array of strides for spatial dimension. |
dilates | Array of dilations for spatial dimension. A zero value means no dilation in the corresponding dimension. |
padding_l | Array of padding values for low indices for each spatial dimension (front, top, left). |
padding_r | Array of padding values for high indices for each spatial dimension (back, bottom, right). Can be NULL in which case padding is considered to be symmetrical. |