论文浏览(6) EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks


0. 前言


1. 要解决什么问题

  • 而神经网络设计时,一般步骤是先设计/选择一个基础网络(如ResNet/MoBileNet),再在基础网络的基础上对一些网络结构基本参数(如depth/width/resolution)进行缩放(scaling)。
    • 在设计神经网络之前,一般会预先设定最多能使用的资源。这就会作为模型参数缩放的条件。
  • 上述模型设计存在的问题:
    • 但具体缩放的方式到目前为止并没有什么都只是一些试错的结果。
    • 一般在模型缩放时,都是对其中一个维度进行,稍有多个维度同时进行的。
    • 之前也有同时扩展多个维度的算法,都需要大量手工调参。

2. 用了什么方法

  • 提出了一种新的模型缩放方法:
    • 同时缩放多个维度(depth/width/resolution)
    • 使用了一个简单并高效的混合系数(compound coefficient)。
    • 不同维度模型缩放方法如下图所示:image_1ea41llit6cr19r8pdq1j8j5cm.png-68.1kB
  • 模型缩放的具体细节:
    • 将问题抽象画为一个数学公式:
      • 其中 w, r, d 是模型缩放参数,而 F, L, H, W, C 都是baseline的基本参数。
      • image_1ea42s2j31atjb1m1sjg7lnvql13.png-43.1kB
    • 模型设计的难点在于寻找到在符合条件内最优的参数 w, r, d
      • 首先有一个观察结果:增加任意一个维度都可以提高模型精度,大模型提高的精度较少。
      • 不同维度的缩放并不是独立的:
        • 更大的图像分辨率就需要更大的深度,从而提高视野域内的特征。
        • 更大的图像分辨率也需要更大的宽度,每一层获取更多的特征。
      • 本文提出了 compound scaling method 混合缩放方法,这种方法令 w, r, d 通过下面公式确定:
        • ϕ\phi 是我们要确定的参数,表示能多多少资源(模型增加多少倍)。
        • α,β,γ\alpha, \beta, \gamma 是通过 grid search 获取。
        • image_1ea481tcnef8u6d1g41jnj19ju1g.png-14.5kB
  • 设计了一种新的baseline用于缩放
    • 上面提出的模型缩放技术对于baseline的要求非常高,在mobilenet/resnet上都达到的较好的效果。
    • 为了进一步提高性能,通过NAS设计了一种新的baseline。

3. 效果如何

  • 效果全包围,666
    • image_1ea419r72obt7ftas81r5f1nso9.png-146.7kB
  • Mobilenet & resnet scale up的结果
    • 即只scale一个维度和scale多个维度的区别。
    • image_1ea486kbt1ik1im9k0k1t9ac401t.png-79.2kB
  • 通过表格看一下EfficientNet的结果
    • image_1ea48as76p0gr9b1hg0u3lf9d2a.png-245.7kB

4. 还存在什么问题

  • 源码是TPU的,如果要看训练细节可能还得再研究一下,毕竟这类模型,要训练比较困难。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章