卷积——一维卷积、二维卷积、三维卷积、深度可分离卷积

目录

  • 概述
  • 一维卷积
  • 二维卷积
    • 二维单通道卷积
    • 二维多通道卷积
  • 三维卷积
    • 三维单通道卷积
    • 三维多通道卷积
  • 深度可分离卷积
    • 常规卷积
    • 深度可分离卷积
  • 参考链接

概述

不同维度的卷积实际上是卷积核的自由度不同,一维卷积卷积核只能在长度方向上进行滑窗操作,二维卷积可以在长和宽方向上进行滑窗操作,二维卷积可以在长、宽以及channel方向上进行滑窗操作。
一个卷积核运算一次得到一个值,output channel取决于卷积核的个数。

一维卷积

二维卷积

在卷积操作中我们只能限制卷积核的维度,卷积核的参数均是根据网络自主学习到的。
卷积——一维卷积、二维卷积、三维卷积、深度可分离卷积_第1张图片

二维单通道卷积

卷积——一维卷积、二维卷积、三维卷积、深度可分离卷积_第2张图片

二维多通道卷积

卷积——一维卷积、二维卷积、三维卷积、深度可分离卷积_第3张图片

三维卷积

三维单通道卷积

这里的三维输出不是多通道导致的,而是由于卷积核在第三个维度上进行滑窗得到的(对于视频信号可能是视频的长度)。
卷积——一维卷积、二维卷积、三维卷积、深度可分离卷积_第4张图片

三维多通道卷积

三维多通道的卷积核也是三维的,因此三维数据不同channel上权重是相同的,这点和二维多通道卷积不同。

卷积——一维卷积、二维卷积、三维卷积、深度可分离卷积_第5张图片

深度可分离卷积

常规卷积

卷积——一维卷积、二维卷积、三维卷积、深度可分离卷积_第6张图片

深度可分离卷积

卷积——一维卷积、二维卷积、三维卷积、深度可分离卷积_第7张图片
卷积——一维卷积、二维卷积、三维卷积、深度可分离卷积_第8张图片
参数对比
回顾一下,常规卷积的参数个数为:
N_std = 4 × 3 × 3 × 3 = 108

Separable Convolution的参数由两部分相加得到:
N_depthwise = 3 × 3 × 3 = 27
N_pointwise = 1 × 1 × 3 × 4 = 12
N_separable = N_depthwise + N_pointwise = 39

相同的输入,同样是得到4张Feature map,Separable Convolution的参数个数是常规卷积的约1/3。因此,在参数量相同的前提下,采用Separable Convolution的神经网络层数可以做的更深

参考链接

理解卷积
深度可分离卷积

你可能感兴趣的:(深度学习,python,算法,pytorch)