.. index:: pair: page; ConvTranspose .. _doxid-dev_guide_op_convtranspose: ConvTranspose ============= General ~~~~~~~ ConvTranspose operation performs the same computation as calculating the gradient with regard to :math:`\src` of Convolution operation. To see the difference visually, you can go to `visualization page `__. Operation attributes ~~~~~~~~~~~~~~~~~~~~ =========================================================================================================================== =============================================================================================================================================================================================== =========== ===================================================================== ===================== Attribute Name Description Value Type Supported Values Required or Optional =========================================================================================================================== =============================================================================================================================================================================================== =========== ===================================================================== ===================== :ref:`strides ` Controls the strides the weights tensor is moved when computing convolution s64 A s64 list containing positive values Required :ref:`pads_begin ` Controls number of zeros to be add to the front/top/left of spatial dimensions s64 A s64 list containing non-negative values Required :ref:`pads_end ` Controls number of zeros to be add to the back/bottom/right of spatial dimensions s64 A s64 list containing non-negative values Required :ref:`dilations ` Controls the amount of stretching the kernel before convolution ( `visualization link `__ ) s64 A s64 list containing positive values (>1 means dilated convolution) Required :ref:`auto_pad ` Controls how the padding is calculated string ``none`` (default), ``same_upper`` , ``same_lower`` , ``valid`` Optional :ref:`output_padding ` Adds additional amount of padding per each spatial axis in ``dst`` . s64 A s64 list containing non-negative values, all zeros by default Optional :ref:`groups ` Controls how input channels and output channels are divided into s64 A positive s64 value, ``1`` by default Optional :ref:`data_format ` Controls how to interpret the shape of ``src`` and ``dst`` . string ``NCX`` , ``NXC`` (default) Optional :ref:`weights_format ` Controls how to interpret the shape of ``weights`` string ``OIX`` , ``XIO`` (default) Optional =========================================================================================================================== =============================================================================================================================================================================================== =========== ===================================================================== ===================== Execution arguments ~~~~~~~~~~~~~~~~~~~ The inputs and outputs must be provided according to below index order when constructing an operation. Inputs ------ ====== ============== ===================== Index Argument Name Required or Optional ====== ============== ===================== 0 ``src`` Required 1 ``weights`` Required 2 ``bias`` Optional ====== ============== ===================== .. note:: The shape of :math:`\weights` is :math:`(in\_channels / groups, out\_channels, spatial\_shape)` for ``IOX`` format or :math:`(spatial\_shape, out\_channels, in\_channels / groups)` for ``XOI`` format. Both :math:`in\_channels` and :math:`out\_channels` must be divisible by groups attribute. Outputs ------- ====== ============== ===================== Index Argument Name Required or Optional ====== ============== ===================== 0 ``dst`` Required ====== ============== ===================== Supported data types ~~~~~~~~~~~~~~~~~~~~ ConvTranspose operation supports the following data type combinations. ===== ======== ===== ===== Src Weights Bias Dst ===== ======== ===== ===== f32 f32 f32 f32 bf16 bf16 bf16 bf16 f16 f16 f16 f16 ===== ======== ===== =====