Striving For Simplicity: The All Convolution Net 简析

转载【https://blog.csdn.net/qinqbaobei/article/details/54092619】

Striving For Simplicity: The All Convolution Net 是ICLR 2015的一篇论文,作者Jost Tobias Springenberg , Alexey Dosovitskiy , Thomas Brox, Martin Riedmiller

简介

本文抛弃了以往物体检测CNN网络中的池化层和全连接层,通过使用步长更大的卷积层来代替池化以及使用卷积核为1的卷积层来代替全连接层,在cifar-10和cifar-100上取得了很好的效果,并在imageNet上有很好的竞争力。

如何提高网络性能

大量用于关于物体检测的卷积神经网络都采用相似的设计方式,使用可变的卷积层和池化层并加小数量的全连接层。在如何增强这种设计思想网络性能上,很多人进行了探索: 
1.使用更复杂的激活函数,使用改善的regularization,以及利用标签信息进行layer-wise的预训练 
2.使用不同的CNN架构 
本文作者通过对不同数据集上进行实验,发现仅仅使用卷积层的网络结构并不会对物体检测的性能产生影响。池化层的存在并非必要,可以使用步长较大的卷积层进行替代。

池化层的作用

对于池化层作用的完整解释很难给出,作者假定池化层通过以上三个方面来对CNN的性能产生帮助: 
1.p-norm使CNN的表示更具不变性(invariant) 
2.降维使高层能够覆盖输入层的更多部分 
3.feature-wise的特性更容易优化 
假设上面的第二点即降维对与CNN的性能提升至关重要,我们可以通过使用下面两种方法来代替池化层取得相似的降维效果: 
1.直接移除池化层病增大卷积层的步长 
2.使用步长大于1的卷积层来代替池化层 
第一种方法等价于池化操作但仅考虑了顶部左侧的特征响应,因而可能会降低检测的准确率。另外使用卷积层代替池化层除非对权值矩阵进行限制,否则会增加特征之间的依赖性。 
作者将代替市委学习的过程,并做了相应的实验进行评估。

网络模型的不同

前面已经提到了论文网络模型相较于以往CNN的不同之处,在这里进行说明: 
1.使用stride大于1的卷积层代替以往CNN中的池化层(下采样层) 
2.使用filter大小为1*1的卷积层代替全脸阶层 
整个网络模型完全只有卷积层,在softmax层之前使用全局平均。

实验

作者对使用三种模型在cifar-10和cifar-100以及imageNet上进行实验,实验结果以及网络模型见图。 
模型1

模型2

结果1

结果对比

结论

cifar数据集上,论文使用全卷积获得了超过state-of-the-art的效果。作者通过实验发现,使用maxpooling病不能总是提升CNN网路的性能,特别当使用特别大的网络这种网络通过卷积层即可学的相应数据集的必要不变特征时。

猜你喜欢

转载自blog.csdn.net/qq_23304241/article/details/80425901
ALL