【论文笔记】【cnn】ResNeXt详解

ResNeXt解决的问题:

传统的要提高模型的准确率,都是加深或加宽网络,但是随着超参数数量的增加(channels,filter size等),网络设计的难度和计算开销也会增加。本文提出的ResNeXt结构可以在不增加参数复杂度的情况下提高准确率,同时还减少了超参数的数量。

ResNeXt乍一看很像inception,作者也在论文中提到了vgg相关。VGG和resnet主要采用堆叠网络来实现,inception系列的策略是,split-transform-merge,但是inception系列网络有个问题:网络的超参数设定的针对性强,当应用在别的数据集上时需要修改许多参数,因此可扩展性一般。

ResNeXt同时采用了VGG的堆叠思想和inception的split-transform-merge思想,但是可扩展性强了,可以认为是在增加准确率的同时基本不改变或降低模型的复杂度。论文中提到个cardinality,指的是右边图里,支路(sub-branch)的数量,相比于Inception,这里的每个支路都是一样的,这样可以减轻设计负担(其实应该也可以用NAS搜,搜索空间应该会比搜个Darts的cell小很多)。右边是cardinality=32。文章说增加cardinality比增加深度和宽度更有效。

【论文笔记】【cnn】ResNeXt详解_第1张图片

论文中共提出了三种结构:

【论文笔记】【cnn】ResNeXt详解_第2张图片

最后模型也是由这些结构堆叠起来的:

【论文笔记】【cnn】ResNeXt详解_第3张图片

ResNeXt为什么效果比Resnet好:

【论文笔记】【cnn】ResNeXt详解_第4张图片

可以看到,ResNeXt相比Resnet,只是在每个block中添加的多个sub-branch。

1. 相当于引入组卷积。不同的组之间是不同的subspace,可以学到更加diverse的表示。

2. 分组操作可能会起到正则化的作用。增加一个cardinality维度之后,会使得卷积核学到的关系更加稀疏。

原谅我还是觉得是暴力堆叠再解释,原谅我的境界不够。。。

参考:https://blog.csdn.net/hejin_some/article/details/80743818

https://www.zhihu.com/question/323424817?sort=created

你可能感兴趣的:(计算机视觉)