论文笔记 Aggregated Residual Transformations for Deep Neural Networks

这篇文章构建了一个基本“Block”,并在此“Block”基础上引入了一个新的维度“cardinality”(字母“C”在图、表中表示这一维度)。深度网络的另外两个维度分别为depth(层数)、width(width指一个层的channel的数目)。

首先我们先了解一个这个“Block”是如何构建的,如下图所示(ResNeXt是这篇论文提出模型的简化表示)

左边是标准残差网络“Block”,右图是作者引入的“Block”。这新的Block有什么优势呢?作者应该是受到了Inception models的启发,论文中指出“Unlike VGG-nets, the family of Inception models have demonstrated that carefully designed topologies are able to achieve compelling accuracy with low theoretical complexity”。再进一步就是,“The split-transform-merge behavior of Inception modules is expected to approach the representational power of large and dense layers, but at a considerably lower computational complexity”。说得简单点就是“在达到大型、紧凑深度网络的准确率的同时,降低模型的计算复杂度”(这就是这篇paper追求的一个效果)。Figure 1右边就是就是采用split-transform-merge策略构建的。

Inception models在实际应用时有一个很不方便的地方:每一个分支的卷积核大小、尺寸是“定制的”,不同的“Block”之间也是“定制的”。如果我们想要应用这一模型或者在这一框架下设计一个新的网络,那么上述“定制化”的特点会引入很多“超参数”。如果你自己设计过网络或者更改过现有网络,你就会理解“超参数”过多对于我们的设计简直就是一个“灾难”。此时,如果没有一个合适的设计策略的话,说直白点就是“靠天吃饭”了。

受VGG/ResNets成功的启发,作者总结了以下两个设计“Block”原则:

  1. “If producing spatial maps of the same size, the blocks share the same hyper-parameters(width and filter sizes)”
  2. "Each time when the spatial map is downsampled by a factor of 2, the width of the blocks is multiplied by a factor of 2"

除此之外,所有的“Block”具有相同的拓扑结构。作者给出了一些设计的模板,再结合上述两条原则,我们基本可以构建所需要的任意网络了(是不是觉得网络结构的设计一下子变得简单了很多),模板如下表所示

这还没有结束,作者有给出了Figure 1左边结构的两种等价表述形式,如下图所示

这就极大的方便了我们的实现。此时Alexnet引入的group convolution概念就有了用武之地(当时引入这一概念是受GPU条件的限制)。采用Figure 3(c)的形式,可以在Caffe中直接实现而无需更改任何源代码。

下面我们通过实验效果看看这一模型的威力

由Table 4可以得出,即使复杂度减少一半,该模型依然可以取得比ResNet-200还好的实验效果,达到了作者追求的“在达到复杂、紧凑深度模型准确率的同时,减少计算复杂度的目的”。

总结:

  • 作者要求“Block”具有相同的拓扑结构,同时给出“Blcok”扩展的设计原则和模板(通过repeating building blocks可以得出网络结构),极大的简化了网络结构设计的工作量。
  • 相同实现不同等价形式的给出,一能加深我们理解,二能为我们提供快速实现的可能。
  • 这真的是一篇佳作哦。
时间: 2024-10-08 12:24:39

论文笔记 Aggregated Residual Transformations for Deep Neural Networks的相关文章

论文阅读--Scalable Object Detection using Deep Neural Networks

Scalable Object Detection using Deep Neural Networks 作者: Dumitru Erhan, Christian Szegedy, Alexander Toshev, and Dragomir Anguelov 引用: Erhan, Dumitru, et al. "Scalable object detection using deep neural networks." Proceedings of the IEEE Confere

论文笔记之:Learning Multi-Domain Convolutional Neural Networks for Visual Tracking

Learning Multi-Domain Convolutional Neural Networks for Visual Tracking CVPR 2016 本文提出了一种新的CNN 框架来处理跟踪问题.众所周知,CNN在很多视觉领域都是如鱼得水,唯独目标跟踪显得有点“慢热”,这主要是因为CNN的训练需要海量数据,纵然是在ImageNet 数据集上微调后的model 仍然不足以很好的表达要跟踪地物体,因为Tracking问题的特殊性,至于怎么特殊的,且听细细道来. 目标跟踪之所以很少被 C

论文笔记-Sequence to Sequence Learning with Neural Networks

大体思想和RNN encoder-decoder是一样的,只是用来LSTM来实现. paper提到三个important point: 1)encoder和decoder的LSTM是两个不同的模型 2)deep LSTM表现比shallow好,选用了4层的LSTM 3)实践中发现将输入句子reverse后再进行训练效果更好.So for example, instead of mapping the sentence a,b,c to the sentence α,β,γ, the LSTM i

(转)Understanding, generalisation, and transfer learning in deep neural networks

Understanding, generalisation, and transfer learning in deep neural networks FEBRUARY 27, 2017 This is the first in a series of posts looking at the 'top 100 awesome deep learning papers.' Deviating from the normal one-paper-per-day format, I'll take

Mastering the game of Go with deep neural networks and tree search

Silver, David, et al. "Mastering the game of Go with deep neural networks and tree search." Nature 529.7587 (2016): 484-489. Alphago的论文,主要使用了RL的技术,不知道之前有没有用RL做围棋的. 提出了两个网络,一个是策略网络,一个是价值网络,均是通过自我对战实现. 策略网络: 策略网络就是给定当前棋盘和历史信息,给出下一步每个位置的概率.以前的人似乎是用

Classifying plankton with deep neural networks

Classifying plankton with deep neural networks The National Data Science Bowl, a data science competition where the goal was to classify images of plankton, has just ended. I participated with six other members of my research lab, the Reservoir lab o

On Explainability of Deep Neural Networks

On Explainability of Deep Neural Networks « Learning F# Functional Data Structures and Algorithms is Out! On Explainability of Deep Neural Networks During a discussion yesterday with software architect extraordinaire David Lazar regarding how everyth

Training Deep Neural Networks

http://handong1587.github.io/deep_learning/2015/10/09/training-dnn.html  //转载于 Training Deep Neural Networks Published: 09 Oct 2015  Category: deep_learning Tutorials Popular Training Approaches of DNNs?—?A Quick Overview https://medium.com/@asjad/po

Why are Eight Bits Enough for Deep Neural Networks?

Why are Eight Bits Enough for Deep Neural Networks? Deep learning is a very weird technology. It evolved over decades on a very different track than the mainstream of AI, kept alive by the efforts of a handful of believers. When I started using it a