CVPR17(backbone) - ResNeXt : 引入网络设计中的新维度cardinality

本文介绍了ResNext网络结构,它在ResNet的基础上引入了新的维度——势,通过分组卷积实现特征的不同转换路径的聚合。相较于增加深度和宽度,增加网络的势能更有效地提升性能。实验表明,在保持参数量和计算复杂度相近的情况下,ResNext优于ResNet。
摘要由CSDN通过智能技术生成

论文全称:Aggregated Residual Transformations for Deep Neural Network

原文地址

原文地址

论文阅读方法

三遍论文法

初识

在之前的工作中,网络设计更多考虑的是如何在深度、宽度等维度上优化,而本文引入了一种新的维度:势(cardinality)。简单的理解,就是在同一个网络块(block)中输入特征经过了不同的转换后聚合,这个过程中,转换的数量就称之为。并基于ResNet提出一种新型结构ResNeXt,意为the next dimension

关于cardinality的翻译参照集合中定义:就是集合中元素的个数

如下图所示,左边是ResNet的bottleneck,右边是引入新维度后的设计,其中对输入有32条不同的转换通路,因此势为32。
在这里插入图片描述
其实这种split-transform-merge的策略早就出现了,在Inception(Googlenet)中,每个网络块会将输入特征送入不同的转换后,再进行融合。但ResNext为了进一步研究的影响,简化了网络设计,在每条通路上采用相同的网络结构(转换策略),如上图所示。

并且作者通过实验证明,ResNext在相同的参数和计算量设定下,性能优于ResNet。此外,相比于增加网络的深度和宽度来提升准确的,增加网络的势可能更有效。

相知

只介绍主要技术,以及提及部分实验

网络设计原则
为了减少网络设计过程中的考虑因素范围,作者参照VGG/ResNet,确定了两条设计原则:① 在同一尺寸的特征图转换过程中,网络块采用相同的模块设计(宽度、卷积和大小等);② 如果特征图进行了2倍下采样,那么宽度增加到2倍。

宽度即为channel

模块构建策略
在这里插入图片描述
关于如何构建,首先图(a)中就是最初始的想法,依据ResNet模块进行改进,将输入送入若干个分支中(每个分支中的模块设计一致),然后对各分支的输出结果进行融合(相加),最后再引入一个残差连接。

图(b)相对于图(a)提前进行了concat操作,再统一进行1x1卷积。但其实图(a)与图(b)其实是等价的,假设势为2时,图(a)中x1,x2分别与w1,w2进行1x1卷积再concat,类似于x1·w1+x2·w2。而图(b)相当于在先拼接[x1,x2]再与[w1; w2]进行卷积,同样也是x1·w1+x2·w2

图(c ) 则进一步采用了分组卷积,将输入通道和输出通道分称C组,然后对每组特征图分别执行卷积操作。相比于(a)(b),这种方式更加有效,也使得实现变得更为简洁,将split-transform-merige用分组卷积实现,组数即为

但这种模块设计的等价转换局限于:每条分支都是相同的模块设计(同构的);模块的深度要大于2(换成basic block就不适用了)

具体设计
文章的目的主要是为了研究的影响,因此网络设计不额外增加参数量与计算复杂度(FLOPs)。

作者分析,在原始的ResNet中,一个block的参数量为:256*64+3*3*64*64+64*256≈70k。假设ResNext的为C,每个分支的宽度为d,参数量为:C*(256*d+3*3*d*d+d*256)。由于两个模块处理的特征图尺寸一致,所以计算量也与之成比例。

为了使得接近一致,Cd的可选取值如下:
在这里插入图片描述
实验
① 与ResNet对比:相同的复杂度和计算量,效果优于ResNet。
在这里插入图片描述
② 深度、宽度、势的对比:控制复杂度和计算量,对这几个维度进行消融实验,证明通过增大会更有效。
在这里插入图片描述

回顾

ResNext发表于CVPR2017,如果不看文章内容,只看网络结构,你可能觉得不就是再ResNet的架构上引入了一个分组卷积嘛。但只有看了文章才体会其中的设计思想,何大佬的工作总是这么简单有效。

这篇文章相比于Inception在同一模块中采用不同的分支提取不同特征(作者认为这提取到不同感受野下的特征),大胆地采用同构设计,从而转换成采用分组卷积实现。取得了不错的效果,并且理论立意上着实高!

代码

关于代码的实现,其实就是将ResNet中的模块改为分组卷积,可以参照Pytorch的官方实现(就是在rennet中添加了相关参数设置)。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值