SENet v2来啦 | 比SENet更好的Backbone

379次阅读
没有评论

点击下方卡片,关注「集智书童」公众号

SENet v2来啦 | 比SENet更好的Backbone

卷积神经网络(CNNs)通过提取空间特征,实现了图像分类的革命性突破,使得在基于视觉的任务中达到了最先进的准确率。提出的 Squeeze-Excitation网络模块收集了输入的通道表示。多层感知机(MLP)从数据中学习全局表示,并在大多数图像分类模型中用于学习提取的图像特征。

在本文中,作者介绍了一种新颖的聚合多层感知机,一种多分支Dense Layer,位于Squeeze Excitation Residual模块内,旨在超越现有架构的表现。

作者的方法利用了Squeeze-Excitation网络模块与Dense Layer相结合。这种融合增强了网络捕获通道模式和全局知识的能力,从而导致更好的特征表示。与SENet相比,所提出的模型在参数数量上的增加可以忽略不计。

作者在基准数据集上进行了大量的实验,以验证模型并将其与已建立的架构进行比较。实验结果表明,所提出的模型的分类准确率显著提高。

1 Introduction

深度学习的发展在各个领域都取得了显著的进步,尤其是在基于视觉的任务中。卷积神经网络(CNNs)在图像分类、目标检测和特征提取等方面发挥了关键作用。数据集的复杂性和挑战不断增长,始终有追求进一步提升CNN(卷积神经网络)的准确性的趋势。通过逐步识别挑战并提供解决方案,已经出现了各种架构创新。

随着AlexNet的成功,一系列架构相继出现,其中包括VGG和残差网络。基于卷积的架构方法已经得到了广泛的探索,以增强网络的表达能力。为了提高性能,研究人员追求已经导致了对新颖架构修改、专业层和融合技术的探索,以从输入数据集中提取最具有信息量的特征。

在这个过程中,每一步都带来了新的范式、新颖的设计原则和突破性的技术,这些不仅推动了神经网络能够实现的范围,而且还激发了新的研究途径。卷积神经网络(CNNs)在局部化的感受野内学习空间相关性方面表现出色。CNNs学习新的特征,从而有助于模型性能。另一方面,全连接(FC)层通过与层内所有节点连接,专门用于学习全局表示。全连接(FC)层经常出现在架构的最后阶段,有助于分类过程。Squeeze and Excitation Network(SENet)是其中一项显著的改进,它明确地模拟了通道之间的相互依赖性。

这种有意的建模显著增强了网络的代表性,通过特征校正。SENet引入了内部通道级别的调整,影响了模型的性能。这个模块有效地将从全局学习的洞察力传输到后续层,从而提高性能。

Squeeze and Excitation网络利用模型内的通道表示概念,进一步扩大了其能力。Christian等人引入了Inception模块,这是一种新颖的架构概念,它将多分支卷积与不同大小滤波器相结合,并在模块结束时将它们拼接在一起。

这种Excitation策略引发了一种新的架构范式,提出了一种在降低理论复杂性的同时实现增强性能的方法。CNN通常被纳入Inception模块,以促进空间表示学习。类似的方法已经被提出,例如ResNeXt,它在模块内将具有相同拓扑的多条支路集成在一起。这些合并的模块还具有一种新的维度,称为基数。

将聚合网络纳入模型中可以增强其在不增加深度的情况下学习空间相关性的能力,从而优化计算资源。后续的研究人员采用了基于Inception的方法,导致了各种网络架构的创建。

SENet通过 Squeeze-Excitation操作增强了通道表示,从而增强了其表达能力。通道特征通过应用Squeeze输入进行重新校准。所提出的模块中的Excitation部分涉及一个全连接层,用于捕获全局表示。这种专门模块确保只有最重要的特征被传递到后续层。当这种独特的模块设计在像ResNet这样的网络中,特别是在残差模块中,其影响会加剧,实质上作为网络的过滤机制,就像SE ResNet所看到的那样。

SENet v2来啦 | 比SENet更好的Backbone

作者提出了一个升级的SE模块,即Squeeze Aggregated Excitation(SaE),并将其集成到SENet中。如图1所示,作者将聚合重残模块、Squeeze-Excitation模块和提出的Squeeze Aggregated Excitation(SaE)模块进行了比较。如图所示,Squeeze-Excitation模块和SaE模块都选择性地传输关键特征。然而,SaE模块通过增加层之间的基数来优化这个阶段。受到Inception模块的启发,作者引入了相同大小的多分支全连接层,类似于ResNeXt的方法。

SENet v2来啦 | 比SENet更好的Backbone

这个决定是根据前面讨论的增强影响而做出的。所提议模块的架构如图2所示。所提议模块的理论复杂性超过了现有的Squeeze and Excitation模块。作者采用了32个缩小的尺寸和4的基数,故意保持基数适中,以防止不必要的复杂性增加。聚合FC层产生的结果在Excitation阶段内进行拼接,恢复了后续层的期望输出形状。

本文的主要贡献如下:

  1. 作者承认聚合模块和从Inception架构和Squeeze-Excitation模块继承下来的强大表示能力具有重大的影响。聚合模块的集成有助于网络理论复杂度的降低
  2. 在FC层从网络的全局表示中获取洞察力的概念基础上,作者提出了一种有趣的思想:将FC层作为聚合模块使用
  3. 作者的方法包括在FC层引入一种多分支配置,其中Squeeze层在Excitation之前赋予关键特征,从而恢复其原始形式
  4. 这种聚合模块不仅具有降低复杂度的优势,而且通过选择性地包括关键特征而忽略了其他特征,在比较传统聚合模块时具有更好的性能。

2 Related Work

随着计算能力的提高,出现了许多后续的改进,为研究人员提供了更强大的工具,以显著促进网络工程领域的发展。利用CNN(卷积神经网络)进行性能改进的值得注意的架构包括AlexNet,ZFNet,VGG和ResNet。在2015年,Inception架构在保持较低计算复杂度的同时,实现了竞争力的性能水平。所采用的方法包括多分支卷积,在每个分支内定制卷积。通过利用这种方法,该架构最大限度地利用了图像模块,在其多分支结构中集成了许多卷积滤波器。

Inception的创新方法在2014年的ILSRCV中获得了胜利,并显著地将前最佳性能AlexNet的参数数量从6000万减少到仅400万。这一概念随后被应用于聚合的ResNet模块。Inception之后出现的一些显著的架构,无论是直接还是间接地从它那里吸取特征,包括ResNeXt,Xception和Mobilenet,都强调了深入挖掘网络的优势。

Xception架构进一步深入,通过在Inception模块内分割卷积操作,实现了显著的加速。在Mobilenet的基础上,作者引入了深度可分卷积,从而在所有层上实现了这种运算,从而显著地减少了计算并导致了更紧凑的模型大小。

组卷积在将模型分布在多个GPU上起到了关键作用。然而,就作者的现有理解而言,这种卷积方法在提高准确性方面并没有显著增强的证据。通道卷积是一种源自组卷积的变体,其中组数与输入数据中的通道数相匹配。

残差网络(ResNets)引入了一种革命性的方法来解决梯度消失问题。在具有很大深度的架构中,由于难以有效地传达在众多层上学习的表示,模型性能会恶化。这种创新的解决方案包括实现残差模块并集成短路连接。这些连接可以在定期的时间间隔上促进以前获得的代表连续传播,从而减轻深度网络与性能下降相关的衰减。ResNets甚至可以扩展到1000层。

在ResNets中稳定学习过程的一个关键组件是批量归一化。这项技术可以在批量基础上对输入进行规范化,并在训练过程中显著提高网络的收敛速度。ResNeXt通过引入一个新的维度称为“基数”来聚合Residual模块。采用基数可以降低理论复杂性,同时与传统的堆叠架构相比实现优越的性能,正如Saining所提出的。

宽残差网络(WRN)是另一种关注于扩大卷积层宽度的残差网络。这种扩展增加了模块的学习能力,超越了传统ResNet的限制。研究人员还提出了ResNeSt,它利用了分裂注意力网络。在这个框架中,模块通过使用1×1卷积和3×3卷积对层进行划分,然后使用拆分注意力块将这些路径合并,有效地结合了通道表示。

另一方面,SENet引入了一个基于ResNet的 Squeeze-Excitation模块。这种新颖的模块设计通过结合通道表示显著提高了模型性能。高速公路网络的特点是使用一个门控机制来调节短路连接。在架构设计中使用各种滤波器的利用存在显著关系,因为这种方法通过捕获更细微的模式增强了网络的表达能力。值得一提的是,Inception和金字塔网络等策略通过结合不同的拓扑结构来获得更好的性能结果。

在像Xception和MobileNets这样的架构中,采用了深度可分卷积的概念。这种卷积技术包括两个独立的阶段:深度卷积和点卷积。在深度卷积中,一个单独的滤波器应用于每个输入通道。然后,点卷积涉及将1×1滤波器应用于表示中的每个值。在可分卷积过程中,还嵌入了一个称为通道卷积的额外组件。在这个阶段,与单个通道相关的卷积在点卷积之前执行,有助于网络有效地提取特征。

这些架构在与其他相似性能架构或非聚合网络相比确实具有减少参数数量的特点。这项工作符合“Squeeze”操作的概念,即有策略地简化网络结构和复杂性。

诸如Structured Transform Networks 、Deep Fried ConvNets和 ShuffleNet等架构也认为计算效率是关键因素。这些架构优先考虑降低计算、紧凑的网络,并且其中一些架构已经被优化为移动应用。所提出的这种方法虽然参数略有增加,但通过提高模型区分不同类别的能力,显著地提高了模型的准确性。

与所提出方法相关的一个密切相关领域是模型压缩方法。存在一些构建较小网络的替代策略,通常是通过压缩方法如预训练网络的量化来实现的。在CNNs中的注意力机制旨在强调图像中最相关的部分,同时忽略不相关的部分。这种方法有助于有效地理解图像中的复杂场景。通常,注意力机制使用softmax或sigmoid函数作为门控机制。

在SEnet的背景下,注意力机制在SE块内运行,专注于通道关系。这种类似的方法被采用在SENetV2网络提出的SaE模块中,并采用轻量级门控机制来突出通道关系。集成(Ensemble)包括并行运行多个相同模型来解决同一问题的多个副本,最终结果通过考虑所有结果的集体来确定。集成模型通常在性能方面超过单个模型。

3 Representation comparison of SENet and SEnetv2

研究人员认为,通过在分支输入中使用包含多个卷积操作的聚合模块,可能比选择更深网络或更宽的层更为有效。这些模型变得擅长捕捉复杂的空间表示,特别是在聚合模块的卷积层中。

SENet v2来啦 | 比SENet更好的Backbone

如图3所示的图像说明了SEnet和所提出的SENetV2架构的初始卷积层所获得的表示。这些学习到的表示是在50个epoch的全面训练过程中获得的。训练开始时,学习率设置为0.01,每15个epoch,这个值通过乘以0.1进行衰减。这种系统化的方法使模型能够有效地优化其学习过程。经过仔细观察图像,可以发现一个显著的区别,这可以归因于新型SEnet架构中整合的信息在更多的层之间传递,从而使得与SEnet相比,学习过程更加丰富和多样化。

4 Methodology

正如前面各节所述,所提出的网络通过卷积层来获取空间表示,通过 Squeeze-Excitation层来采用通道表示,并通过聚合层来获得增强的通道表示。这种SENetV2架构与ResNeXt类似,因为它在SENet的残差模块中集成了一种聚合结构。

为了更好地理解模块,作者将所提出的方案与广为人知的ResNet相结合。残差模块已经成为了评估和强调网络深度的重要性的一种基础模型。这个模块包括短路连接,可以跳过一或多个层。这些层随后与短路连接进行拼接。在基本版本的残差模块中,输入表示为’‘,用于修改输入的操作,包括批量归一化和dropout,用’F()’表示。残差模块的数学表达式如下。

在聚合残差模块的背景下,输入直接进行拼接,无需经过任何修改,因为使用了分支卷积。得到的数学表达式如下所示。

所提出的模块的基础方面受到了Squeeze and Excitation Network的启发。这个网络模块融合了两种不同的技术:Squeeze-Excitation。Squeeze模块的特点是输入通过全连接(FC)层进行Squeeze处理。

卷积层的输出被导向全局平均池化层,以生成通道输入。这个输入随后被送入一个具有缩减尺寸的FC(全连接)层。相反,模块的Excitation部分涉及应用一个没有缩减的FC(全连接)层,将输入恢复到原始形式。这个FC层被一个缩放操作所继,其中输出受到特征图的通道乘法。

最终的输出随后被缩放以匹配其原始形状。残差模块的 Squeeze-Excitation操作的公式可以表达为:

在这个背景下,”Sq”函数表示Squeeze操作,包括一个具有缩减大小(r)的FC(全连接)层。”Sq”操作之后,执行”Ex”操作,表示Excitation操作。这个过程旨在将通道修改后的输入恢复到其原始形状,不进行任何缩减。

接下来,执行一个缩放操作,使用输入恢复其原始形状。这个缩放后的输出然后与残差模块中的输入进行拼接。为了优化性能并保持Squeeze-Excitation的基本前提,作者研究了Squeeze格式中各种组大小的影响。作者的实验表明,与ResNeXt的32不同,作者选择了4的基数值。

这个基数有助于通过Excitation层与核心基本特征进行交互,而不会导致模块不必要的扩大,从而增加模型参数。这种战略选择使得模块能够有效地学习全局表示,同时保持高效的结构。

在Squeeze操作中,具有缩减尺寸的FC(全连接)层对全局平均池化产生的输出进行操作。这种转换有助于保持基本特征,使它们可以通过模块传播,从而增强网络的表达能力。遵循这一思路,作者提出了在Squeeze操作中增强FC层基数的概念。通过引入多分支Dense Layer和缩减,模型可以学习网络中更广泛的全球表示。

SENet v2来啦 | 比SENet更好的Backbone

为了说明,Squeeze操作中的聚合层被拼接并随后传递到FC层,如图4所示。然后,FC层的输出与模块的输入层进行乘法运算,从而恢复维度。这个最终输出经过类似于SENet的缩放操作。在一个残差模块内的一系列操作可以如下所示。

5 Squeeze aggregated excitation resnet

由于所提出的模块是基于现有SENet的,它继承了相同的根本特性。这个模块设计得可以无缝地集成到各种网络架构中。具体来说,标准架构的输出层可以轻松地指向所提出的模块。在作者的实现中,作者采用残差网络作为主机架构。这个选择是基于广泛使用残差网络作为测试各种模型的基准,在尝试现有架构时简化评估过程。

本文对所提出的SaE(Squeeze Aggregated Excitation)模块的详细解释主要集中在其在ResNet架构内的实现。Residual模块包括在特定层后附加的短路连接,用于传递网络学习到的信息。这种机制有助于构建更深层的网络,同时减轻了与梯度消失问题相关的困扰。通过将SaE模块集成到残差模块中,而不改变架构,作者利用了残差模块固有的信息传递能力。

SENet v2来啦 | 比SENet更好的Backbone

选择残差模块作为主机架构是基于其一致的信息传播,有助于增强网络的学习过程。在SaE模块内的Squeeze操作涉及所有分支FC层的输出求和,然后进行Excitation操作。如图5所示,将SE(Squeeze and Excitation)模块与在ResNet模块内的所提出的SaE模块进行了比较。

Squeeze操作在全局平均池化层之后开始,该层提取了通道统计信息。随后,这些通道信息被引导到Squeeze操作中,其中输入的维度被降低。接下来是Excitation层。在架构中,通过在特定间隔后重复卷积层来构建残差模块,形成一个结构化模块。这些模态单元按周期重复以确保学习的梯度有效地传播,而不会受到深度网络可能出现的消失梯度问题的影响。

6 Implementation

作者通过与最先进架构的比较来评估所提出方法的有效性。为了方便比较,作者采用了多个数据集:CIFAR10、CIFAR100和ImageNet。在作者的实验中,作者专注于在ResNet架构内实现所提出的模块。

SENet v2来啦 | 比SENet更好的Backbone

在表1中,作者将包含所提出的Squeeze Aggregated Excitation(SaE)模块的残差网络与其他架构进行了比较,包括ResNet和ResNeXt。

所提出的SENetV2和聚合残差网络都具有SaE模块的特点,同时各自还具有各自 architectural 特征。为了保持稳定的训练动态并提高收敛速度,两种架构中的所有卷积层都进行了与批归一化的耦合。在各种正则化技术中,批归一化由于其有效地解决了内部协变量漂移问题而脱颖而出。

7 Experiments

本文所提出的方法在两个不同的数据集上进行了实证评估:CIFAR-10,CIFAR-100,以及自定义的ImageNet版本。在涉及CIFAR-10和CIFAR-100数据集的实验中,作者分别使用resnet-18和resnet-50模型进行测试。

对于CIFAR-10数据集,使用了70×70大小的输入图像,模型总共进行了50个epoch的训练。而对于CIFAR-100数据集,使用了140×140大小的输入图像,并使用了resnet-50模型,训练过程持续了40个epoch。

作者使用了Adam优化器和分类交叉熵损失函数,批量大小为16。实验在NVIDIA P100 GPU上进行CIFAR-10和CIFAR-100数据集,以及NVIDIA H100 GPU上进行涉及Imagenet数据集的计算。

在Imagenet数据集的情况下,特定修改被应用,这些将在随后的部分中详细说明。对于在Imagenet数据集上的训练,将224×224大小的输入图像组织成大小为256的批次。

随机梯度下降(SGD)优化器被使用,包括0.9的动量和1e-4的重量衰减。

Cifar-10

当然,CIFAR-10数据集是计算机视觉领域广泛使用的基准数据集。它包括10000张训练图像和10000张测试图像,大小为32×32,分为10个不同的类别。结果如表2所示。

SENet v2来啦 | 比SENet更好的Backbone

结果清楚地表明,它增强了具有相似结构的模型的性能。虽然它可能落后于MobileNet,但只需要增加少量的模型参数,就有潜力提高准确率。

Cifar-100

实验是在CIFAR-100数据集上进行的,该数据集包含100个不同的类别,每个类别包含6000张图像。其中50000张用于训练,10000张用于测试。作者的方法在这个数据集上进行了测试,并按照表格格式组织了后续的结果。

SENet v2来啦 | 比SENet更好的Backbone

正如表3所示,关于SEnet和所提出的SEnetV2与原始ResNet的比较,可以做出一个值得注意的观察。结果表明,在某些特定情况下,例如SEnetV2,所提出的网络表现出优越的性能。值得注意的是,尽管与原始ResNet相比,所提出的网络参数数量相差500万,但是保持相似的深度就足够了,而不必选择更深层次的网络。

Imagenet results

对于在自定义修改后的ImageNet数据集上的实验,由于计算限制,采取了战略性的方法。考虑到这些限制,数据集被定制以包含较少数量的图像。这与Caltech 256数据集类似,其中每个类别的平均图像数为119,最小值为80。

为了实验的目的,从Imagenet训练集中选择了250张图像来代表修改后的ImageNet数据集。在评估训练后的模型在修改后的数据集上的性能时,使用了相同的验证集,同时应用了之前提到的数据转换。

SENet v2来啦 | 比SENet更好的Backbone

实验结果按照表4进行了组织和呈现。在分析结果后,可以看出所提出的模块在与其他模型(如原始ResNet和SE ResNet)的比较中,在Top-1和Top-5精度方面取得了有前途的结果。

值得注意的是,SENetV2在分类方面优于其他实验,实现了可喜的Top-1和Top-5精度。

8 Conclusion

在本文中,作者提出了SaE模块,这是针对增强模型表示能力的SENet的高级迭代版本。作者进行了全面的实验来证明SENetV2相对于现有模型的优越性能。此外,作者还引入了多分支全连接层来增强全局表示学习。

作者有信心,网络结构中融合了空间、通道和全局表示可以显著有助于特征获取的优化。最终,作者提出的网络具有提升不同视觉导向领域特征提取的潜力。

参考

[1]. SENetV2: Aggregated dense layer for channelwise and global representations.

SENet v2来啦 | 比SENet更好的Backbone

点击上方卡片,关注「集智书童公众号

 

Read More 

正文完
可以使用微信扫码关注公众号(ID:xzluomor)
post-qrcode
 
评论(没有评论)
Generated by Feedzy