卷积,池化,深度可分离卷积——输出特征图计算,感受野计算,计算量,参数量

1. 卷积和池化的输出特征图的大小计算公式一样,如下:

                      H_{out} = \left \lfloor \frac{H_{in}+2\times padding[0]-dilation[0]\times(kernel\_size[0]-1)-1}{stride[0]}+1 \right \rfloor

                      W_{out} = \left \lfloor \frac{W_{in}+2\times padding[1]-dilation[1]\times(kernel\_size[1]-1)-1}{stride[1]}+1 \right \rfloor

2. 感受野(Receptive Field):卷积神经网络每一层输出的特征图上的一个像素点在原始图像上映射的区域的大小 ,计算公式如下(N_RF为当前层感受野,(N-1)_RF为前一层感受野):

                      (N-1)_RF = f(N_RF, stride, kernel) = (N_RF - 1) * stride + kernel

例如:kernel:3*3, stride:2,则卷积后的特征对于输入的感受野为:(1-1)* 2 + 3 = 3

下图为另一个直观的例子:

                                  卷积,池化,深度可分离卷积——输出特征图计算,感受野计算,计算量,参数量_第1张图片

可以参考的博客:https://www.jianshu.com/p/2b968e7a1715

                            https://blog.csdn.net/wgx571859177/article/details/80983043

3. 深度可分离卷积(depthwise convolution):

例如:input: w*h*c=3*3*3→用三个卷积核:x*x*1,分别于三个通道进行卷积(depthwise conv)→得到3个feature map→用M个1*1*3卷积正常卷积得到M个feature map(pointwise conv)。

4. 卷积与深度可分离卷积的计算量和参数量:

(1)卷积:

  • 计算量:I(卷积核大小H) * J(卷积核大小W) * M(输入通道) * N(输出通道) * K(输出特征大小H) * L(输出特征大小W)
  • 参数量:I(卷积核大小H) * J(卷积核大小W) * M(输入通道) * N(输出通道)

(2)深度可分离卷积:

  • 计算量:I(卷积核大小H) * J(卷积核大小W) * M(输入通道)* K(输出特征大小H) * L(输出特征大小W)+ 1 * 1 * M(输入通道) * N(输出通道) * K(输出特征大小H) * L(输出特征大小W)
  • 参数量:I(卷积核大小H) * J(卷积核大小W) * M(输入通道) + 1 * 1 * M(输入通道) * N(输出通道)

你可能感兴趣的:(深度学习)