ResNet升级版(1):IResNet | Improved Residual Networks for Image and Video Recognition

时间:2024-03-15 13:01:37

近期出现了两篇对ResNet改进的文章,在这里进行阅读并记录一下。
论文地址:https://arxiv.org/pdf/2004.04989.pdf
Github:https://github.com/iduta/iresnet

ResNet升级版(1):IResNet | Improved Residual Networks for Image and Video Recognition

Abstract:

残差网络(ResNets)代表了一种强大的卷积神经网络(CNN)体系结构,已广泛用于各种任务中。在这项工作中,我们提出了ResNets的改进版本。我们提出的改进措施解决了ResNet的所有三个主要组成部分:通过网络层的信息流,残差模块构建和Projection Shortcut。我们能够显示出在基线之上的准确性和学习收敛性的持续改进。例如,在ImageNet数据集上,使用具有50层的ResNet,对于top-1精度,我们可以通过一种设置比基线提高1.19%,而另一种设置则提高约2%。重要的是,无需增加模型复杂性即可获得这些改进。我们提出的方法使我们可以训练非常深的网络,而基线显示出严重的优化问题。我们报告了六个数据集上三个任务的结果:图像分类(ImageNet,CIFAR-10和CIFAR-100),目标检测(COCO)和视频动作识别(Kinetics-400和Something-Something-v2)。在深度学习时代,我们为CNN的深度建立了一个新的里程碑。我们成功地在ImageNet数据集上训练了404层深的CNN,并在CIFAR-10和CIFAR-100上成功训练了3002层的网络,而基线却无法在这样的极端深度收敛。

Methods:

ResNet虽然已经取得了巨大的成功,但是在网络持续加深时,仍然存在一些无法优化的问题。本文从以下3个方面对ResNet网络进行优化:
1.提出一种基于阶段的残差学习网络架构。 所提出的方法通过提供更好的信息通过网络层传播的路径来促进学习过程;
2.提出一种改进的Projection Shortcut方式,可以减少信息丢失并提供更好的效果;
3.构建了新的残差块,该模块显着增加了用于学习更强大的空间模式的空间通道。

一、Improved information flow through the network

ResNet升级版(1):IResNet | Improved Residual Networks for Image and Video Recognition
如图1(a)与公式1,论文分析了当前残差模块主要存在的两种极端情况:
1.在主传播路径上有一个ReLU**函数(上图红线标记)。 通过将负信号置零,该ReLU可能会对信息的传播产生负面影响。 在训练开始时(在一段时间之后,网络可能会开始调整权重以输出通过ReLU时不受影响的正信号),这一点尤其重要。 图(b)中对此方面进行了研究,他们提出了一种重新设计的ResBlock,称为预**pre-act,方法是将最后一个BN层和ReLU移到开头。

2.预**pre-act的ResNet中仍然存在两个问题:
首先,请注意,在所有四个阶段中,没有完整信号的归一化(BN)(所有BN独立地施加在分支上,但加后没有施加在完整信号上),因此,当我们将更多块添加到完整信号变得更加“不规范”,这会造成学习困难。原始ResNet 和pre-act均存在此问题 。对应提出的End ResBlock
其次,请注意存在四个projection shortcut方式(因此,主路径上有四个1x1卷积)。理论上,根据pre-act,网络可以学习大多数块的本身映射。在这种情况下,pre-act。所有四个主要阶段的ResNet最终只有四个连续的1x1卷积(来自主路径中的projection shortcut方式),但是在两者之间没有任何非线性,从而限制了学习能力。我们的方法还解决了这两个问题,因为它稳定了每个主要阶段之前的信号(我们在每个主要阶段之后的整个信号上使用BN),并确保至少存在一个非线性(应用于整个信号)每个阶段的结束。
ResNet升级版(1):IResNet | Improved Residual Networks for Image and Video Recognition
因此,作者按照网络中特征尺寸大小分为四个阶段,每个阶段又包含了Start ResBlock、Middle ResBlock和End ResBlock3种。请注意,论文中提出的ResStage,在每个主要阶段,我们都消除了第一个中间ResBlock中的第一个BN,因为信号已经由我们的Start ResBlock进行了标准化。

二、Improved projection shortcut
ResNet升级版(1):IResNet | Improved Residual Networks for Image and Video Recognition

如上图(a),论文分析残差模块在分辨率不一致时的projection shortcut方式。存在两个问题:
1.当将空间大小减小2时,由于1x1卷积(步幅为2)跳过了75%的特征图**,因此这会导致信息丢失
2.此外,没有有意义的标准来选择1x1卷积所考虑的25%的特征图**。 然后将结果添加到主ResBlock输出中。 因此,projection shortcut方式的这种嘈杂的输出将相对一半的信息贡献给下一个ResBlock。 这会引入噪声和信息丢失,并可能通过网络负面影响信息的主要来源。

因此,论文提出图(b)的方式来解决传统projection shortcut方式带来的信息损失问题:
针对问题1,先用最大池化层来降尺寸,解决了1x1卷积在降维带来的信息损失问题;
针对问题2,引入最大池化的标准来选择考虑**的特征图。

三、Grouped building block
ResNet升级版(1):IResNet | Improved Residual Networks for Image and Video Recognition
继续分析原始ResNet采用瓶颈结构的残差模块,这种结构通过降低3x3卷积的通道维数来有效降低网络的参数量和计算量。但是,3x3卷积非常重要,因为它是唯一能够学习空间模式的组件,但是在瓶颈设计中,它接收的输入/输出通道数量较少。

因此,本文利用组卷积来提升3x3卷积的通道数,如图(b)所示。这种方式可以有效提升3x3卷积的学习能力,又保持计算量和参数量的不增加
ResNet升级版(1):IResNet | Improved Residual Networks for Image and Video Recognition
如上表,论文依据这种Group的构建方式,提出两种结构:
1.ResGroupFix-50,即每个Stage中3x3组卷积的G设置均为64
2.ResGroup-50,每个Stage中组卷积的G设置不固定,适应当前Stage的通道数,并逐渐递增。

Experiments:

1.ImageNet(iResNet对应创新1,2的结合):
ResNet升级版(1):IResNet | Improved Residual Networks for Image and Video Recognition
2.video recognition:
ResNet升级版(1):IResNet | Improved Residual Networks for Image and Video Recognition
3.CIFAR:
ResNet升级版(1):IResNet | Improved Residual Networks for Image and Video Recognition
4.ResGruop(IResNet+创新3):
ResNet升级版(1):IResNet | Improved Residual Networks for Image and Video Recognition
5.Object Detection(coco):
ResNet升级版(1):IResNet | Improved Residual Networks for Image and Video Recognition