吉林企业网络推广方法,充电宝关键词优化,水资源论证网站建设,汕头网站制作公司价格1*1卷积 分组卷积深度可分离卷积 空洞卷积、膨胀卷积 转置卷积
https://zhuanlan.zhihu.com/p/80041030
https://yinguobing.com/separable-convolution/#fn2
11的卷积可以理解为对通道进行加权#xff0c;对于一个通道来说#xff0c;每个像素点加权是一样的深度可分离卷积 空洞卷积、膨胀卷积 转置卷积
https://zhuanlan.zhihu.com/p/80041030
https://yinguobing.com/separable-convolution/#fn2
1×1的卷积可以理解为对通道进行加权对于一个通道来说每个像素点加权是一样的而对于一个普通的卷积来说一个通道上每个像素点的权重是不一样的1×1的卷积对于单个通道上像素点加权是一样的有几个卷积核就有几个输出特征图
分组卷积 group convolution是对输入通道进行分组输出通道并不是由所有的输入通道共同作用的会有一种情况比如输入通道是4输出通道是2输出通道的第一个通道只跟输入通道的第1、3个通道有关输出通道的第二个通道只跟输入通道的第2、4个通道有关如果输入通道有这样的关系时我们可以采用分组卷积设置组数group2这时有几个组就会有几个输出通道这种情况是我们对每个组进行一次卷积如果我们对每个组进行多次卷积那么卷积核的个数就会增加了这样也有一个问题就是输入特征图的通道之间没有交互所以这种情况下在后面的卷积过程中会有通道之间的随机混合或者用1×1的卷积poinwise convolution
深度可分离卷积是特殊的分组卷积有几个输入通道就分成几个组输入通道之间完全相互独立deepwise convolution这种情况下后面通常会跟着 pointwise convolution
空洞卷积 或者 膨胀卷积对应着Conv2d中的dilation默认的api设置是1在参数量不变的情况下增加了感受野指的是索引之间相差多少指的是两次卷积的索引之间 相差的距离就是dilation-1行 或者 列输出特征图在计算大小的时候input_h不变kernel_hkernel_h (dilaiton-1)*(kernel_h-1)对应的计算输出特征图的shape
关于感受野
- 2个3×3的卷积核 相当于 1个5×5卷积核感受野 ①减少了参数量 ②增加了非线性变换
转置卷积首先普通卷积的三张理解 取出区域逐元素相乘然后torch.sum函数 把每次取出的input region拉直形成矩阵 5×5的input feature3×3的kernel输出3×3的特征图对着取到input region有9个我们把9个region拉直成行向量9个行向量与 kernel拉成的列向量 进行矩阵相乘得到输出的列向量把输出的列向量reshape成输出特征图的尺寸完成卷积 对于kernel每次移动的位置把kernel填充成跟输入特征图一样的大小把kernel同样拉直拼接按行拼接input拉成列向量同样的原理再reshape 得到输出
那什么是转置卷积呢转置卷积就是把 得到的 kernel阵拼成的行向量 9×25转置成25×9再和输出特征图拉成的列向量 9×1 进行相乘得到25×1的列向量这样是不是很神奇如果再reshape一下不就变成了 输入特征图的尺寸 5×5
这就是转置卷积上采样还原尺寸注意是还原尺寸而不会还原具体的数值所谓转置就是因为我们把拉成行向量的kernel阵进行了转置。
以下是几张图帮助理解
普通卷积 deepwise convolution 1×1卷积 pointwise convolution