[论文阅读]RegNet——设计网络设计空间

RegNet

Designing Network Design Spaces
设计网络设计空间
论文网址:RegNet

论文总结

本篇论文主要提出了一个新的神经网络架构设计范式。具体来说:

  1. 作者提出了“设计空间设计”这个概念,即设计生成网络架构的设计空间,而不是设计单个的网络架构实例。这与手工设计网络类似,但是提升到了整个网络族的层面。
  2. 作者从一个相对不受约束的初始设计空间AnyNet开始,通过一系列的设计步骤,得到了一个只包含简单、规则化网络结构的低维设计空间RegNet。RegNet使用了量化线性参数化的方式生成网络宽度和深度。
  3. 作者分析了RegNet设计空间,发现了一些有趣的规律,例如最好的模型深度稳定在20个block左右,不使用bottleneck结构效果更好等。这些发现与当前的设计实践不太一致。
  4. 在ImageNet数据集上,从RegNet设计空间中采样的模型明显优于手工设计的ResNet和ResNeXt,以及通过NAS方法得到的EfficientNet,同时计算效率也更高。
  5. 作者还测试了RegNet在其他设置下的泛化能力,包括更高的计算量,更多的训练epoch数,更多的网络层数等,结果仍然保持了优势。
  6. 整体而言,本文提出了一种新的网络设计思路,即通过设计生成网络的设计空间来发现网络结构设计的原则,使得搜索到的网络更易于理解和泛化。这可以拓展人们对网络设计的理解,也为未来的研究提供了新的思路。

优化策略

总结一下本篇论文是如何一步步优化设计空间和找到好模型的:

  1. 初始设计空间AnyNet:比较自由地设置每个stage的depth、width等,组合非常多。
  2. AnyNetB:设置所有stage使用相同的bottleneck ratio b。简化设计空间,分布质量(从一个设计空间中采样得到的网络模型错误率分布的质量或者好坏)不变。
  3. AnyNetC:所有stage使用相同的group width g。继续简化空间,分布依然良好。
  4. AnyNetD:增加约束,stage的width必须递增。分布质量提升。
  5. AnyNetE:增加约束,stage的depth也必须递增。分布继续改善。
  6. 提出量化线性参数化函数,用来生成网络结构。
  7. 定义RegNet设计空间:只有6个参数,所有网络结构均有规律。
    网络深度d:d控制网络的总层数
    初始通道数w0:w0控制第一层的通道数
    通道增长速率wa:wa控制通道的线性增长速率
    通道扩张比例wm:wm控制相邻层之间的通道扩张比例
    组卷积通道数g:g控制组卷积的通道分割数
    bottleneck率b:b控制bottleneck中的通道压缩比例
  8. 分析RegNet设计空间,发现depth固定在20左右效果最好,不使用bottleneck也很有效。
  9. 在RegNet空间中搜索,找到计算效率更高的网络结构。
  10. 最终RegNet的网络质量明显优于AnyNet和其他已有模型。

作者设计网络设计空间的主要思路就是:
1.定义一个初始的包含大量网络架构的设计空间(AnyNet);
2.通过添加不同约束或者参数化,获得更简单和更优的设计子空间;
3.分析子空间中网络结构与性能的关系,发现简单的线性规律;
4.最终定义一个线性可参数化的RegNet设计空间。
其中关键步骤是:
1.逐步添加设计空间约束(stage数,width,depth等),每次要验证分布质量不降低;
2.分析网络属性(width,depth等)与性能的关系,发现线性规律;
3.根据上述线性关系,提出RegNet线性参数化的设计空间。

通过逐步添加设计空间约束和分布分析,作者一步步从复杂空间转向到规整简单的空间。同时,网络性能也持续提升。这展示了设计空间设计的强大之处。

摘要

本文提出了一种新的网络设计范式。目标是帮助增进对网络设计的理解并发现跨设置通用的设计原则。本文并不专注于设计单个网络实例,而是设计一个参数化网络群体。整个过程类似于经典的手动网络设计,但提升到了设计空间级别。本文探索网络设计的结构方面,并得到一个由简单、规则的网络(不同参数设置下生成的网络架构组合)组成的低维设计空间,称之为 RegNet。 RegNet 参数化的核心见解出人意料地简单:良好网络的宽度和深度可以通过量化的线性函数来解释。本文分析了 RegNet 设计空间,并得出了与当前网络设计实践不相符的有趣发现。 RegNet 设计空间提供了简单而快速的网络,可以在各种机制中良好地工作。

引言

深度卷积神经网络是视觉识别的引擎。在过去的几年里,更好的架构在广泛的视觉识别任务中取得了长足的进步。例子包括 LeNet 、AlexNet 、VGG 和 ResNet 。这些工作提高了神经网络的有效性以及对网络设计的理解。特别是,上述一系列工作分别证明了卷积、网络和数据大小、深度和残差的重要性。这些工作的成果不仅是特定的网络实例,而且是可以推广并应用于多种设置的设计原则。
虽然手动网络设计取得了巨大进步,但手动找到优化良好的网络可能具有挑战性,特别是随着设计选择数量的增加。解决此限制的一种流行方法是神经架构搜索(NAS)。给定可能网络的固定搜索空间,NAS 会自动在搜索空间内找到一个好的模型。最近,NAS 受到了广泛的关注并表现出了优异的结果 [Neural architecture search with reinforcement learning-2017, Darts-2019, Efficientnet-2019]。
尽管 NAS 很有效,但该范式也有局限性。搜索的结果是调整到特定设置(例如硬件平台)的单个网络实例。在某些情况下这已经足够了;然而,它无法发现网络设计原则,从而加深对网络理解并让推广到新的设置。特别是,本文的目标是找到易于理解、构建和推广的简单模型。
本文提出了一种新的网络设计范式,结合了手动设计和 NAS 的优点。本文不是专注于设计单个网络实例,而是设计对网络群体进行参数化的设计空间。与手动设计一样,本文的目标是可解释性,并发现描述简单、运行良好且跨设置通用的网络的通用设计原则。与 NAS 一样,本文的目标是利用半自动化程序来帮助实现这些目标。
本文采用的总体策略是逐步设计初始的、相对不受约束的设计空间的简化版本,同时保持或提高其质量(下图)。整个过程类似于手动设计,但是提升到网络族层面并通过网络设计空间的分布估计进行指导[On network design spaces for visual recognition-2019]。
在这里插入图片描述
作为该范式的测试平台,本文的重点是探索网络结构(例如宽度、深度、组等),假设标准模型系列包括 VGG 、ResNet 和 ResNeXt 。本文从一个相对不受约束的设计空间开始,称之为 AnyNet(例如,宽度和深度在不同阶段自由变化),并应用人机交互方法来达到由简单的“常规”网络组成的低维设计空间,称之为RegNet。 RegNet 设计空间的核心很简单:阶段宽度和深度由量化线性函数确定。与AnyNet相比,RegNet设计空间模型更简单,更容易解释,并且优秀模型的集中度更高。
本文在 ImageNet 上使用单一网络块类型在低计算、低时代的机制中设计 RegNet 设计空间。然后,展示了 RegNet 设计空间可推广到更大的计算机制、调度长度和网络块类型。此外,设计空间设计的一个重要特性是它更具可解释性,并且可以带来可以学习的见解。本文分析了 RegNet 设计空间,并得出了与当前网络设计实践不相符的有趣发现。例如,本文发现最佳模型的深度在计算机制(∼20 blocks)中是稳定的,并且最佳模型不使用bottleneck或inverted bottleneck。
展示结果如何如何好…

相关工作

Manual network design. 手工网络设计。AlexNet 的引入将网络设计推向了一个蓬勃发展的研究领域。在接下来的几年里,提出了改进的网络设计;例子包括 VGG 、Inception 、ResNet 、ResNeXt 、DenseNet 和 MobileNet 。这些网络背后的设计过程主要是手动的,重点是发现提高准确性的新设计选择,例如使用更深的模型或残差。本文同样有一个共同的目标:发现新的设计原则。事实上,本文的方法类似于手动设计,但在设计空间级别执行。
Automated network design. 自动化网络设计。最近,网络设计过程已从手动探索转向更加自动化的网络设计,并由 NAS 普及。 NAS 已被证明是寻找良好模型的有效工具。 NAS 的大部分工作都集中在搜索算法上,即在固定的、手动设计的搜索空间(本文称之为设计空间)内有效地找到最佳网络实例。相反,本文的重点是设计新颖的设计空间的范例。两者是相辅相成的:更好的设计空间可以提高NAS搜索算法的效率,也可以通过丰富设计空间导致更好模型的存在。
Network scaling. 网络扩展。手动和半自动网络设计通常都专注于寻找特定机制的最佳性能网络实例(例如,与 ResNet-50 相当的flops)。由于此过程的结果是单个网络实例,因此尚不清楚如何使该实例适应不同的机制(例如,更少的flops)。常见的做法是应用网络缩放规则,例如改变网络深度、宽度、分辨率或三者联合。相反,本文的目标是发现跨机制的通用设计原则,并允许在任何目标机制中有效调整最佳网络。
Comparing networks. 计算机制。考虑到大量可能的网络设计空间,必须使用可靠的比较指标来指导设计过程。最近,[On network design spaces for visual recognition-2019] 的作者提出了一种比较和分析从设计空间采样的网络群体的方法。这种分布级别的视图与本文寻找通用设计原则的目标完全一致。因此,本文采用这种方法并证明它可以作为搜索空间(设计空间)设计过程的有用工具。
Parameterization. 参数化。本文最终的量化线性参数化与之前的工作有相似之处,例如如何设置模型宽度 。然而,有两个关键的区别。首先,本文提供了一项实证研究来证明本文所做的设计选择是合理的。其次,本文深入了解以前不理解的结构设计选择(例如,如何设置每个阶段中的block数量)。

搜索空间设计

本文的目标是设计更好的视觉识别网络。不是在特定设置下设计或搜索单个最佳模型,而是研究模型群体的行为。本文的目标是发现可应用于并改进整个模型群体的通用设计原则。这样的设计原则可以提供对网络设计的见解,并且更有可能推广到新的设置(与针对特定场景调整的单个模型不同)。
本文依赖 Radosavovic 等人引入的网络设计空间的概念。 设计空间是一个巨大的、可能是无限的模型架构群体。 [On network design spaces for visual recognition-2019] 的核心见解是,可以从设计空间中对模型进行采样,从而产生模型分布,然后利用经典统计中的工具来分析设计空间。本文注意到,这与架构搜索不同,架构搜索的目标是从空间中找到单个最佳模型。
在这项工作中,建议设计初始的、不受约束的设计空间的逐步简化版本。将这个过程称为搜索空间设计。搜索空间设计类似于顺序手动网络设计,但提升到网络族。具体来说,在设计过程的每个步骤中,输入是初始设计空间,输出是精炼设计空间,其中每个设计步骤的目的是发现产生更简单或性能更好的模型群体的设计原则。
相对于 AnyNet 设计空间,RegNet 设计空间具有以下特点:(1) 在其维度和允许的网络配置类型方面都进行了简化,(2) 包含更集中的最佳性能模型,(3) 更易于分析和解释。
后面是如何一步步简化设计空间(在优化策略里我都总结了一下),并且效果越来越来。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一朵小红花HH

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值