1# Conv2DFusion 2 3 4## 概述 5 6对将4维的tensor执行带有偏置的二维卷积运算。 7 8该算子对应的[NodeType](_n_n_rt.md#nodetype)为NODE_TYPE_CONV2D_FUSION。 9 10参数限制:当padMode==PAD_MODE_PAD时,padList的数值必须大于等于0。其他情况下padding的数值必须为0。 11 12输入: 13 14- x,4维tensor,并按照NHWC进行排列。 15 16- weight,卷积的权重,要求weight排布为[outChannel,kernelHeight,kernelWidth,inChannel/group], inChannel必须要能整除group。 17 18- bias,卷积的偏置,是长度为[outChannel]的数组。在量化场景下,bias 参数不需要量化参数,其量化 版本要求输入 int32 类型数据,实际量化参数由 x 和 weight 共同决定。 19 20输出: 21 22- output,卷积的输出。 23 24**Since:** 25 263.2 27 28**Version:** 29 301.0 31 32**相关模块:** 33 34[NNRt](_n_n_rt.md) 35 36 37## 汇总 38 39 40### Public 属性 41 42 | 名称 | 描述 | 43| -------- | -------- | 44| [kernelSize](#kernelsize) | long[]<br/>卷积核大小。 | 45| [stride](#stride) | long[]<br/>卷积核在height和weight上的步幅,是一个长度为2的int数组[strideHeight,strideWidth]。 | 46| [dilation](#dilation) | long[]<br/>表示扩张卷积在height和weight上的扩张率,是一个长度为2的int数组[dilationHeight,dilationWidth], 值必须大于或等于1,并且不能超过x的height和width。 | 47| [padMode](#padmode) | enum [PadMode](_n_n_rt.md#padmode)<br/>填充类型,详情请参考:[PadMode](_n_n_rt.md#padmode)。 | 48| [padList](#padlist) | long[]<br/>输入x周围的填充,是一个长度为4的int数组[top,bottom,left,right]。 | 49| [group](#group) | long<br/>group,将输入x按inChannel分组,int类型。 group等于1,这是常规卷积。 group等于inChannel,这是depthwiseConv2d,此时group==in_channel==out_channel。 group大于1且小于inChannel,这是分组卷积,此时out_channel==group。 | 50| [inChannel](#inchannel) | long<br/>输入通道数量。 | 51| [outChannel](#outchannel) | long<br/>输出通道数量。 | 52| [activationType](#activationtype) | enum [ActivationType](_n_n_rt.md#activationtype)<br/>激活函数类型,详情请参考:[ActivationType](_n_n_rt.md#activationtype)。 | 53 54 55## 类成员变量说明 56 57 58### activationType 59 60 61``` 62enum ActivationType Conv2DFusion::activationType 63``` 64**描述:** 65激活函数类型,详情请参考:[ActivationType](_n_n_rt.md#activationtype)。 66 67 68### dilation 69 70 71``` 72long [] Conv2DFusion::dilation 73``` 74**描述:** 75表示扩张卷积在height和weight上的扩张率,是一个长度为2的int数组[dilationHeight,dilationWidth], 值必须大于或等于1,并且不能超过x的height和width。 76 77 78### group 79 80 81``` 82long Conv2DFusion::group 83``` 84**描述:** 85group,将输入x按inChannel分组,int类型。 group等于1,这是常规卷积。 group等于inChannel,这是depthwiseConv2d,此时group==in_channel==out_channel。 group大于1且小于inChannel,这是分组卷积,此时out_channel==group。 86 87 88### inChannel 89 90 91``` 92long Conv2DFusion::inChannel 93``` 94**描述:** 95输入通道数量。 96 97 98### kernelSize 99 100 101``` 102long [] Conv2DFusion::kernelSize 103``` 104**描述:** 105卷积核大小。 106 107 108### outChannel 109 110 111``` 112long Conv2DFusion::outChannel 113``` 114**描述:** 115输出通道数量。 116 117 118### padList 119 120 121``` 122long [] Conv2DFusion::padList 123``` 124**描述:** 125输入x周围的填充,是一个长度为4的int数组[top,bottom,left,right]。 126 127 128### padMode 129 130 131``` 132enum PadMode Conv2DFusion::padMode 133``` 134**描述:** 135填充类型,详情请参考:[PadMode](_n_n_rt.md#padmode)。 136 137 138### stride 139 140 141``` 142long [] Conv2DFusion::stride 143``` 144**描述:** 145卷积核在height和weight上的步幅,是一个长度为2的int数组[strideHeight,strideWidth]。 146