.. index:: pair: page; ConvolutionBackwardWeights .. _doxid-dev_guide_op_convolutionbackwardweights: ConvolutionBackwardWeights ========================== General ~~~~~~~ ConvolutionBackwardWeights operation accepts :math:`\src`, :math:`\diffdst` and optional weights shape as inputs, and compute the :math:`\diffweights`. 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:`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 :ref:`weights_shape ` Denotes the shape of the ``weights`` tensor. s64 A s64 list containing positive values 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 ``diff_dst`` Required 2 ``weights_shape`` Optional ====== ================== ===================== .. note:: The shape of :math:`\weights` is :math:`(out\_channels, in\_channels / groups, spatial\_shape)` for ``OIX`` format or :math:`(spatial\_shape, in\_channels / groups, out\_channels)` for ``XIO`` format. Both :math:`in\_channels` and :math:`out\_channels` must be divisible by groups attribute. Note Either ``weights_shape`` input or ``weights_shape`` attribute should be provided. If both provided, ``weights_shape`` input will precede over ``weights_shape`` attribute. Outputs ------- ====== ================= ===================== Index Argument Name Required or Optional ====== ================= ===================== 0 ``diff_weights`` Required ====== ================= ===================== Supported data types ~~~~~~~~~~~~~~~~~~~~ ConvolutionBackwardWeights operation supports the following data type combinations. ===== ========= ============= ============== Src Diff_dst Diff_weights Weights_shape ===== ========= ============= ============== f32 f32 f32 s32 bf16 bf16 bf16 s32 f16 f16 f16 s32 ===== ========= ============= ==============