Intel® oneAPI Deep Neural Network Developer Guide and Reference
A newer version of this document is available. Customers should click here to go to the newest version.
ConvolutionBackwardData
General
ConvolutionBackwardData operation accepts 
, 
 and optional dst shape as inputs, and compute the 
.
If auto_pad attribute is specified to one of valid, same_upper and same_lower, pads_begin and pads_end attributes will be ignored. The paddings will be calculated by following the below formula:
Let the parameters be:
Parameter  |  
        Depth  |  
        Height  |  
        Width  |  
        Comment  |  
       
|---|---|---|---|---|
Paddings: Front, top, and left  |  
        
  |  
        
  |  
        
  |  
        In the attributes we use pads_begin to indicate the corresponding vector of paddings  |  
       
Padding: Back, bottom, and right  |  
        
  |  
        
  |  
        
  |  
        In the attributes we use pads_end to indicate the corresponding vector of paddings  |  
       
Stride  |  
        
  |  
        
  |  
        
  |  
        In the attributes we use strides to indicate the corresponding vector of strides  |  
       
Dilation  |  
        
  |  
        
  |  
        
  |  
        In the attributes we use dilations to indicate the corresponding vector of dilations  |  
       
Firstly, 
 is calculated according to 
 and 
. Let 
 be height dimension of 
 and 
 be height dimension of 
.
 
   If auto_pad attribute is specified as valid :
 
   If auto_pad attribute is specified as same_lower :
 
   If auto_pad attribute is specified as same_upper :
 
   where:
 is either an attribute or an input tensor,
 is an optional attribute.
Operation attributes
Attribute Name  |  
        Description  |  
        Value Type  |  
        Supported Values  |  
        Required or Optional  |  
       
|---|---|---|---|---|
Controls the strides the weights tensor is moved when computing convolution  |  
        s64  |  
        A s64 list containing positive values  |  
        Required  |  
       |
Controls number of zeros to be add to the front/top/left of spatial dimensions  |  
        s64  |  
        A s64 list containing non-negative values  |  
        Required  |  
       |
Controls number of zeros to be add to the back/bottom/right of spatial dimensions  |  
        s64  |  
        A s64 list containing non-negative values  |  
        Required  |  
       |
Controls the amount of stretching the kernel before convolution ( visualization link )  |  
        s64  |  
        A s64 list containing positive values (>1 means dilated convolution)  |  
        Required  |  
       |
Controls how the padding is calculated  |  
        string  |  
        none (default), same_upper , same_lower , valid  |  
        Optional  |  
       |
Adds additional amount of padding per each spatial axis in dst .  |  
        s64  |  
        A s64 list containing non-negative values, all zeros by default  |  
        Optional  |  
       |
Controls how input channels and output channels are divided into  |  
        s64  |  
        A positive s64 value, 1 by default  |  
        Optional  |  
       |
Controls how to interpret the shape of src and dst .  |  
        string  |  
        NCX , NXC (default)  |  
        Optional  |  
       |
Controls how to interpret the shape of weights .  |  
        string  |  
        OIX , XIO (default)  |  
        Optional  |  
       |
Denotes the shape of the dst 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  |  
        diff_dst  |  
        Required  |  
       
1  |  
        weights  |  
        Required  |  
       
2  |  
        dst_shape  |  
        Optional  |  
       
 is 
    
 for OIX format or 
    
 for XIO format. Both 
    
 and 
    
 must be divisible by groups attribute. 
   Outputs
Index  |  
        Argument Name  |  
        Required or Optional  |  
       
|---|---|---|
0  |  
        diff_src  |  
        Required  |  
       
Supported data types
ConvolutionBackwardData operation supports the following data type combinations.
Diff_dst  |  
        Weights  |  
        Diff_src  |  
        Dst_shape  |  
       
|---|---|---|---|
f32  |  
        f32  |  
        f32  |  
        s32  |  
       
bf16  |  
        bf16  |  
        bf16  |  
        s32  |  
       
f16  |  
        f16  |  
        f16  |  
        s32  |  
       











