天天看点

论文阅读笔记20.05-第三周:ResNet的多种变种Residual Attention Network for Image ClassificationRes2Net: A New Multi-scale Backbone ArchitectureResNeSt: Split-Attention Networks

Reading 20.05 Week 3

  • Residual Attention Network for Image Classification
  • Res2Net: A New Multi-scale Backbone Architecture
  • ResNeSt: Split-Attention Networks

Residual Attention Network for Image Classification

这是一种将Attention和深层的ResNet思想结合的网络设计。利用Attention加强选择焦点、不同特征表征的能力,嵌入到已有的ResNet网络中去,在cifar-10/100和ImageNet上都取得了不错的效果。

RAN网络由一系列Attention模块构成,每一个模块有一个mask分支和一个trunk分支,后者就是正常地计算特征图,而前者则为每一个特征乘上了一个掩模。文中表示这是为了防止错误的梯度反传带来影响,但是结合后文我觉得作为一个始终比1大的掩模这么说是有点迷惑的。

H i , c ( x ) = M i , c ( x ) ∗ T i , c ( x ) H_{i,c}(x)=M_{i,c}(x)*T_{i,c}(x) Hi,c​(x)=Mi,c​(x)∗Ti,c​(x)

考虑到乘以一个0~1之间的掩模会降低特征的值,而堆叠得多了说不定就性能反而下降了。因此,在旁边加一个残差通道能较好地解决问题。这样mask分支就起到一个增量式的效果。

H i , c ( x ) = ( 1 + M i , c ( x ) ) ∗ T i , c ( x ) H_{i,c}(x)=(1+M_{i,c}(x))*T_{i,c}(x) Hi,c​(x)=(1+Mi,c​(x))∗Ti,c​(x)

对于mask分支的结构作者用了下采样-上采样的结构更好地收集全局的信息,也分析了空间attention或者通道attention的区别。这篇文章在实验安排上是把这些模块的消融实验做得挺充分的。不过核心思想还是attention+resnet加起来吧。

Res2Net: A New Multi-scale Backbone Architecture

文章指出:多尺度的特征对于计算机视觉任务来说是十分重要的,当然文中所指的多尺度不是指有多个特征,而是在同一张特征图里面融合了不同大小感受野的特征。最传统的思路是多个不同层/支路代表不同的尺度特征,这篇文章采用了一个更加细粒度的多尺度整合方案,使得一层的输出同时融合了多个不同尺度的信息。

论文阅读笔记20.05-第三周:ResNet的多种变种Residual Attention Network for Image ClassificationRes2Net: A New Multi-scale Backbone ArchitectureResNeSt: Split-Attention Networks

这样做的好处是什么呢? 我认为有两个好处,第一是他的整体架构是和ResNet或ResNeXt差不多的,计算量并不会增大,其实就是把中间的正常卷积变成了group卷积,然后再加上几个特征图相加的操作。但是,由于每一个group操作时所经过的最层数一直在变化,输出的特征有浅有深,某种程度上实现了不同深度的信息整合,也在一定意义上加深了网络的深度。最后,整体框架不受影响,因此很容易和ResNet、ResNext等等结合在一起。

ResNeSt: Split-Attention Networks

这篇文章也是对于ResNet的修改,他的主要思想是不同通道间的特征融合attention,说白了其实是多走几条不同的支路,每条支路分别计算结果,然后按某种方式把这些支路的结果加权求和——这就是文章提出的Split-Attention模块。

文章的起点是:ResNet也许不是检测等应用的最佳结构的理由,可能是因为有限的感受野、跨通道信息交互的缺乏,而本论文针对的就是第二点。在ResNeXt的分组基础上,每一小组里面设置多份输出,并加权求和成该组的真实输出。权值的是r个输出求和之后做全局池化得到channel-wise的统计量,再将这个向量送到r个全连续网络里面得到每个split对每个通道的贡献。

论文阅读笔记20.05-第三周:ResNet的多种变种Residual Attention Network for Image ClassificationRes2Net: A New Multi-scale Backbone ArchitectureResNeSt: Split-Attention Networks

另外一种等价的结构如下图,这种结构可以方便地通过group卷积进行实现。中间那个 c ′ / k / r c'/k/r c′/k/r应该是专门用来保证整个模块的计算量与 r r r无关的。

论文阅读笔记20.05-第三周:ResNet的多种变种Residual Attention Network for Image ClassificationRes2Net: A New Multi-scale Backbone ArchitectureResNeSt: Split-Attention Networks

论文的实验里面用了很多训练的技巧,比如label-smooth, auto-augmentation, mix training等等。

然后知乎上对于这篇论文的争论还挺多的,先码在这里,回头看。

继续阅读