目錄
EfficientNet-可能是迄今爲止最好的CNN網絡 - 知乎
【一看就懂】EfficientNet詳解。憑什麼EfficientNet號稱當今最強? - 知乎
https://arxiv.org/abs/1512.03385
傳統增加模型精度的方法:
- ResNet[1]可以通過增加層數將 ResNet-18擴展到 ResNet-200
- GPipe[2] 通過將 CNN baseline擴展4倍,在 ImageNet[3]上實現了84.3% 的準確率。
傳統的模型縮放實踐是
- 任意增加 CNN 的深度
- 任意增加 CNN 的寬度
- 使用更大的輸入圖像分辨率
缺點:
需要長時間的手動調優,並且仍然會經常產生次優的性能。
一篇ICML文章[4]提出了一個更有原則性的方法來擴大 CNN 的規模,從而可以獲得更好的準確性和效率。
該論文提出了一種新的模型縮放方法,它使用一個簡單而高效的複合係數來以更結構化的方式放大 CNNs。
方法:
用一系列 固定尺度 縮放係數來統一縮放網絡維度。
和傳統的區別:不像傳統的方法那樣 任意縮放網絡維度,如寬度,深度和分辨率。
通過使用這種新穎的縮放方法和 AutoML[5] 技術,作者將這種模型稱爲 EfficientNets ,它具有最高達10倍的效率(更小、更快)。
作者發現:
根據可用資源平衡網絡的所有維度ーー寬度、深度和圖像分辨率ーー可以最大限度地提高整體性能。
步驟:
第一步:
網格搜索,找到在固定資源約束下基線網絡的不同維度(縮放)之間的關係。(這決定了上面提到的每個維度的適當比例係數。)
然後應用這些係數擴大基線網絡,以達到期望的模型大小或資源要求。
與傳統的縮放方法相比, 這種複合縮放方法不斷提高模型的精度和效率,可用於擴展現有的模型,如 mobileet (+ 1.4% 的圖像集精度)和 ResNet (+ 0.7%)。
·注意:
模型擴展的有效性在很大程度上依賴於baseline網絡。
baseline網絡:EfficientNet-B0
模型擴展的有效性在很大程度上依賴於baseline網絡。爲了進一步提高性能,作者還開發了一個新的基線網絡,通過使用 AutoML MNAS 框架執行神經結構搜索,優化了準確性和效率。 最終的架構使用移動反向bottleneck卷積(MBConv) ,類似於 mobileenetv2和 MnasNet。
最終性能
作者將該效率網絡與 ImageNet 上其他現有的 cnn 進行了比較。 一般來說,高效網絡模型比現有的 cnn 具有更高的精度和更高的效率,減少了參數大小和 FLOPS 數量級。 在高精度體系中, EfficientNet-B7在 imagenet 上的精度達到了最高水平的84.4% ,而在 CPU 使用方面比以前的 Gpipe 小8.4倍,快6.1倍。 與廣泛使用的 ResNet-50相比,作者提出的 net-b4使用了類似的 FLOPS,同時將準確率從 ResNet-50的76.3% 提高到82.6% (+ 6.3%)。
儘管 EfficientNets 在 ImageNet 上表現良好,但爲了更有用,它們也應該轉移到其他數據集上。 爲了評估這一點,作者在八個廣泛使用的學習數據集上測試了 EfficientNets。 在8個數據集中,有5個數據集的精度達到了最高水平,比如 CIFAR-100(91.7%)和 Flowers (98.8%) ,而且參數減少了5個數量級(最多減少了21個參數) ,這表明該網絡也能很好地傳輸數據。
通過對模型效率的顯著改進,預計 EfficientNets 可能成爲未來計算機視覺任務的新基礎。 作者開源了EfficientNet 網絡模型[6],大家可以在這裏找到更多信息。
參考:
EfficientNet-可能是迄今爲止最好的CNN網絡 - 知乎
【一看就懂】EfficientNet詳解。憑什麼EfficientNet號稱當今最強? - 知乎
細品EfficientNet - 知乎
https://arxiv.org/abs/1512.03385
EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks
- ^https://arxiv.org/pdf/1811.06965.pdf
- ^http://www.image-net.org/
- ^https://arxiv.org/abs/1905.11946
- ^https://arxiv.org/abs/1810.13306
- ^https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet
後續:
【一看就懂】EfficientNet詳解。憑什麼EfficientNet號稱當今最強? - 知乎
上文解毒:
這麼多 圈圈 是啥意思呢?是 Hadamard乘積 ,
表示對應位置元素相乘,
神經網絡裏的 Hadamard乘積 參考這篇:機器學習之路三:卷積神經網絡_人工智能_W_H_M_2018的博客-CSDN博客