【深度学习】入门理解ResNet和他的小姨子们(三)---ResNeXt

文章名称《Aggregated Residual Transformations for Deep Neural Networks》
文章链接:https://arxiv.org/abs/1611.05431

其实ResNeXt这个网络结构严格说起来应该不算ResNet的小姨子,因为这是亲儿子啊,哈哈哈。自从KaiMing大神离开MSRA去了FaceBook之后,就跟RBG大神坐到了一起,这篇的文章作者是一水的大牛啊。
并且在2016的ImageNet上刷出了排名第二的好成绩

反正,当看完论文我是震惊的,满脑子就是“窝草,还有这种操作,社会社会,惹不起惹不起。”这篇文章其实总的insight不是特别亮眼(跟Inception-ResNet在结构上还是有点相似的),但是一套逻辑下来叫人无话可说,实际上就是将group convolution引进了ResNet中,以获得更少的参数。不过说起group convolution要回到2012的AlexNet了,那时候由于GPU并没有现在的强大,所以作者把网络拆成两部分,不过现在都慢慢淡出人们的视野了。KaiMing挖的一手好坟,却造就了又一个经典–ResNeXt。
101-layer的ResNeXt可以达到ResNet的精确度,却在complexity只有后者的一半。

在ResNet提出deeper可以带来网络性质提高的同时,WideResNet则认为Wider也可以带来深度网络性能的改善。为了打破或deeper,或wider的常规思路,ResNeXt则认为可以引入一个新维度,称之为cardinality。并且作者在实验上也证明了: increasing cardinality is more effective than going deeper or wider when we increase the capacity

先看一下ResNeXt的结构:
这里写图片描述
左边是ResNet结构,而右边则是cardinality=32的ResNeXt结构(也就是含32个group)。

右边的ResNeXt结构则很容易让我们想起GooLeNet上的Inception,在Inception网络中,有个重要的策略则是split-transform-merge. 对输入进行split成a few lower-dimention embeding(1x1),然后在通过(3x3或5x5)的卷积核进行transformed,最后由concatenation来进行merge。
Inception网络的一个motivation就是通过稀疏连接进行近似成large and dense layers

尽管Inception的效果很好,但是Inception网络中的参数在新的数据集上generalize的并不是特别好,会带来一堆hyper-parameters需要设计。这是个重要的原因,以至于GoogLeNet没有同期的VGG出名。

而本文则提出了一个simple architecture将Inception和ResNet进行很好的结合。跟同期的Inception-ResNet不同的是,ResNeXt在每个path中都采取相同的设计(采用相同的卷积参数),从Figure1中也能看出来,这可以带来更好的泛化。

网络结构设计,与ResNet的比较
这里写图片描述

可以看到在每个conv中,感觉总的通道数要比Resnet多的多,但是两者的参数量是一样的。这时,我就想问一句:“这么神奇吗?”

计算一下便可得:假设输入特征图为256维,如图1则得知,
resnet的参数量为:
256x64+3x3x64x64+64x256=70k
ResNeXt的参数量为:
Cx(256xd+3x3xdxd+dx256) 当C取32,d=4时,上式也等于70k。
这里写图片描述

我的天呐,就是这么神奇。

来看一幅等价图,简洁明了:
这里写图片描述
上面三个设计是等价设计,主要看最后一个C的结构,是不是极其类似ResNet的bottleneck,但是通道数却比ResNet多的多。这就意味着,ResNeXt引入Inception结构,通过稀疏连接来approach之前的dense连接。

事实上ResNeXt的主要思想上述已经基本概况完了。

下面就再讲点本文提到的一些重点吧

1. Aggregated Transformation
这里写图片描述
这里写图片描述
数学表达如下:
这里写图片描述
区别于NIN(network in network)可以增加dimension of depth,aggregatd transformations可以扩展一个新的dimension,也就是我们上文提到的cardinality。

作者指出,实际上式表述可能不是特别准确,如歌Ti取任意形式且异质(heterogeneous)的话,上面的式子就不能表述了。为了简单,本文选择同质表述(homogenous)

2. 关于ResNet

Cornel的大牛Veit指出ResNet可以看做是Ensemble.
《Residual Networks Behave Like Ensembles of Relatively Shallow Networks》

这里写图片描述

然而kaiming大神在本篇文章傲娇的怼回去了,

Ensembling. Averaging a set of independently trained networks is an effective solution to improving accuracy [24], widely adopted in recognition competitions [33]. Veit et al. [40] interpret a single ResNet as an ensemble of shallower networks, which results from ResNet’s additive behaviors [15]. Our method harnesses additions to aggregate a set of transformations. But we argue that it is imprecise to view our method as ensembling, because the members to be aggregated are trained jointly, not independently.

实验部分就不放上来了,大家去看论文可能比较好一些。

系列文章:
【深度学习】入门理解ResNet和他的小姨子们(一)—ResNet
http://blog.csdn.net/shwan_ma/article/details/78165966
【深度学习】入门理解ResNet和他的小姨子们(二)—DenseNet
http://blog.csdn.net/shwan_ma/article/details/78165966
【深度学习】入门理解ResNet和他的小姨子们(三)—ResNeXt
http://blog.csdn.net/shwan_ma/article/details/78203020
【深度学习】入门理解ResNet和他的小姨子们(四)—WideResNet
http://blog.csdn.net/shwan_ma/article/details/78168629
【深度学习】入门理解ResNet和他的小姨子们(五)—ResNet增强版
http://blog.csdn.net/shwan_ma/article/details/78595937

  • 10
    点赞
  • 71
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值