上采样和下采样_基础知识 | CNN真的需要下采样或者上采样吗?

本文探讨了卷积神经网络中下采样和上采样的必要性,提出通过空洞卷积和大卷积核来增大感受野,以及对小卷积核和稀疏化的思考。作者实验性地移除了下采样,并研究其对模型性能的影响,同时讨论了max pooling的额外作用和网络设计的潜在变革。
摘要由CSDN通过智能技术生成

点击上方“AI算法修炼营”,选择加星标或“置顶”

标题以下,全是干货

背景介绍

在常见的卷积神经网络中,采样几乎无处不在,以前是max_pooling,现在是strided卷积。

以vgg网络为例,里面使用到了相当多的max_pooling
26417b97943b65d4c961afed6c4d01a5.png 输入侧在左面(下面是有padding的,上面是无padding的),可以看到网络中用到了很多2x2的pooling
同样,在做语义分割或者目标检测的时候,我们用到了相当多的上采样,或者转置卷积
9ff910123b75cc3dfcb7eea651bdc87f.png 典型的fcn结构,注意红色区分的decovolution
以前,我们在分类网络的最后几层使用fc,后来fc被证明参数量太大泛化性能不好,被global average pooling替代掉了,最早出现在network in network中,
4e45a14c29a70302628f28d06523be43.png GAP直接把每个通道对应空间特征聚合成一个标量
从此,分类网络的范式变为(Relu已经被隐式带在了onv和deconv里面),
Input-->Conv-->DownSample_x_2-->Conv-->DownSample_x_2-->Conv-->DownSample_x_2-->GAP-->Conv1x1-->Softmax-->Output
而分割网络的范式变为(最近的一些文章也在考虑用upsample+conv_1x1代替deconv),
Input-->Conv-->DownSample_x_2-->Conv-->DownSample_x_2-->Conv-->DownSample_x_2-->Deconv_x_2-->Deconv_x_2-->Deconv_x_2-->Softmax-->Output

这里暂时不考虑任何shortcut。

可是,我们不得不去想,下采样,上采样真的是必须的吗?可不可能去掉呢?

空洞卷积和大卷积核的尝试

一个很自然的想法,下采样只是为了减小计算量和增大感受野,如果没有下采样,要成倍增大感受野,只有两个选择,空洞卷积和大卷积核。所以,第一步,在cifar10的分类上,我尝试去掉了下采样,将卷积改为空洞卷积,并且膨胀率分别递增,模型结构如下所示,

b9c626c2516786771e25ee47326206f7.png 这个网络的卷积结构,注意最后用一个空间范围的全局平均直接拉平为特征向量,最后再跟一个10维的全连接层
这是一个典型的四层的VGG结构,每层卷积的dilation_rate分别为1,2,4,8。在训练了80个epoch后,测试集准确率曲线如下所示 ,
d9fa62cd0e73ab6b4cc735b308e40091.png 四层VGG网络,卷积的dilation_rate分别是1,2,4,8,可训练参数量25474
最终的准确率达到了76%,相同参数的vgg结构的卷积网络能够达到的准确率基本就在这附近。 从另一种思路出发,为了扩大卷积的感受野,也可以直接增加卷积的kernel_size,与上面对比,保持dilationrate为1不变,同时逐层增大卷积的kernel_size,分别为3,5,7,9,训练80个epoch后得到如下准确率曲线,
b850fa5eb17bd95db3277a688c483724.png 四层VGG网络,卷积的kernel_size分别是3,5,7,9,可训练参数量为172930
和之前改变dilation_rate的方式比较,收敛过程很一致,略微震荡一点,但是最终的结果很一致,都在76%上下,这说明影响最终精度的因素只有感受野和每层的通道数。 为了说明下采样在性能方面没有提升,用有下采样的网络对对比。即在不修改其他任何参数的情况下,对原本使用dilation的卷积层使用下采样,stride都设置为2,同样训练80个epoch,收敛结果如下,
33c223af4d8037e1b02c7b523ce7d0e6.png 四层VGG网络,每层使用stride为2的卷积进行下采样,可训练参数量25474
最终收敛到了73%上下,比上面两个实验低了大约3个点,这说明下采样的信息损失确实不利于CNN的学习。 把三种参数的结果放在一起对比,更能够说明问题,
0be24e5a642910d7106ccc126326e212.png 四层VGG网络的对比结果,除了卷积层参数不同,其他参数均相同
为了严谨性&#x
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值