pytorch笔记:Conv2d 和 ConvMixer

来自B站视频,API查阅,TORCH.NN

  • nn.Conv2d 中一般 kernel_size 是小奇数(很多是3),padding 设置为 k − 1 2 \frac{k-1}{2} 2k1(实际上padding的是 k − 1 k-1 k1,因为参数的意义是左右各padding),padding 可以是 ‘same’

padding controls the amount of padding applied to the input. It can be either a string {‘valid’, ‘same’} or an int / a tuple of ints giving the amount of implicit padding applied on both sides.

pytorch笔记:Conv2d 和 ConvMixer_第1张图片

  • nn.Conv2d(2,4,3).weight.size() = [4,2,3,3], nn.Conv2d(2,4,3).bias.size() = [4]
  • point-wise convolution 即1x1 卷积仅做了通道的加权融合,没有考虑图片的局部关联性
  • depth-wise convolution 是指 Conv2d 中 groups 大于 1 的情况,如果 groups=in_channels 不做通道的融合,分组计算之后合并
  • 有文章提到残差block可以通过算子融合加速
  • dilation 空洞卷积是增加感受野而不增加计算量的方法
  • ConvMixer : patches are all you need,通过分离通道混合(depth-wise convolution)和空间混合(point-wise convolution)

你可能感兴趣的:(学习笔记,pytorch,笔记,深度学习)