unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高...

学习了~

来自阿联酋起源人工智能研究院(IIAI)的研究人员公布了一篇论文Improved Residual Networks for Image and Video Recognition,深入研究了残差网络不能更深的原因,提出了改进版的残差网络(Improved Residual Networks,iResNet),使得训练超深网络时更容易收敛,在多个计算机视觉任务(图像分类,COCO目标检测,视频动作识别)中精度也更高。

作者成功在ImageNet数据集上训练了404层网络的模型,在CIFAR-10和CIFAR-100数据集上训练了3002层网络的模型,而原始的残差网络在达到上述层数的时候已经无法收敛。

该文作者信息:

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第1张图片

因残差网络几乎已经成为所有深度卷积网络的标配,“涨点又不涨计算量”的iResNet的出现,或可影响深远。

算法思想

作者主要从三个方向来思考残差网络的改进:

1)促进信息在网络中的流动(Improved flow of information)

2)减少信息损失(Improved projection shortcut)

3)不增加计算量前提下增强残差模块的学习能力(Grouped building block)

1. Improved information flow through the network

作者认为原始的ResNet网络模块中的ReLU在将负信号置0时影响了信息的传播,这种情形在刚开始训练时尤其严重,提出了一种分网络阶段(stage)的三种不同残差构建模块。

以50层的残差网络为例,作者按照网络中特征的空间分辨率大小划分四个阶段(stage),相同分辨率的残差模块被分为同一个stage,

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第2张图片

每个stage都包含有下图中start ResBlock、Middle ResBlock、End ResBlock三种残差模块,每个stage有一个start ResBlock 、一个End ResBlock 和数个Middle ResBlock。

减少整体上ReLU对信息流通的影响。

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第3张图片

2. Improved projection shortcut

projection shortcut 被用于残差网络特征维度改变的时候,用于将不同特征维度的特征相加之前的处理。原始的残差网络使用stride为2的1x1卷积进行通道的改变。如下图中的(a)。

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第4张图片

作者认为1x1卷积丢弃了大量信息,提出先使用3x3 max Pooling再使用1x1卷积的方案,即实现了保留重要信息的降维。

3. Grouped building block

作者认为原始的残差网络中瓶颈模块(bottleneck block)不够好,这种上下粗中间细的结构中,前面的1x1卷积是为了降通道数进而减少计算量,后面的1x1卷积是为了特征对齐,3x3卷积部分被限制了,只有它在“认真的”学习特征模式,将其通道数减少虽然提高了计算速度,却降低了网络表达能力。(算是一种不得已而为之的设计吧)

而新的组卷积(Group conv)技术方案恰好可以解决这个问题。所以作者提出使用组卷积构建模块替换瓶颈模块。

如下图:

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第5张图片

ResGroup在不增加计算量的前提下可更好的让3x3卷积发挥作用。

实验结果

使用上述改进方案,可以训练更深层的网络模型,而且相对原始方案,在相同深度时,iResNet的精度也更高。

下图为在ImageNet上训练50、101、152、200层网络时的结果比较:

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第6张图片

可见原始残差网络在超过152层时精度开始下降,iResNet精度一直在上升,且比其他方案的精度更好。

下图为训练时的验证集精度曲线,从趋势上看,iResNet具有持续精度提升的表现。

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第7张图片

下图为训练404层iResNet网络和152、200层ResNet网络的比较:

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第8张图片

随着层数增多,iResNet网络的精度持续提高。

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第9张图片

在视频动作识别人中中使用iResNet也明显改进了结果:

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第10张图片

在CIFAR-10和CIFAR-100数据集上,不同深度网络的表现:

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第11张图片

iResNet的精度随着层数增加到2000层时精度还在提升,达到3002层时精度下降,而ResNet无法在2000层收敛。

在COCO目标检测数据集训练使用了iResNet的SSD算法,同样取得了精度提升。

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第12张图片

iResNet与其他知名图像分类算法在ImageNet数据集上的比较:

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第13张图片

iResNet 比大部分方法好,但使用了其他技巧的顶尖选手NASNet-A和SENet-154的精度更高,而 iResNet 可以用来构建这些网络。

这么深,有必要吗?

作者提出的算法的确比原始的残差网络收敛性要好,甚至训练了3002层的网络,但这么深真的有必要吗?而且我们也可以看到超深网络带来的精度增益不太明显,但计算量的增加是显然的。

作者在文末特意说明了,我们应当以“发展的眼光”看问题,超深网络在实际应用中目前是不可取的,但随着新技术的出现,这终有一天不会是问题。本文提出的方法可成为训练超深网络的工具,或可启发其他算法的出现。

iResNet 可完美替换ResNet,精度提高计算量不增加,所以在实际应用中也不失为一个好的选择。

论文地址:

https://arxiv.org/abs/2004.04989

代码地址:

https://github.com/iduta/iresnet

关注公众号~

unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第14张图片

在看,让更多人看到  unet是残差网络吗_ResNet改进版来了!可训练网络超过3000层!相同深度精度更高..._第15张图片

你可能感兴趣的:(unet是残差网络吗)