Googleの研究者が開発したモデル。
従来のCNNでは、CNNの幅、深さ、画像の解像度などのネットワークの次元を任意の大きさに適当に決めていた。
●幅(Width)
1レイヤー当たりのニューロン(ユニット)の数を増やす。
ニューロンの数を増やすことで、より細かい特徴表現ができるようになり、学習を高速化できる。
深さに対してニューロンが多すぎると、高度な特徴表現ができにくくなる。
●深さ(Depth)
レイヤーの数。
ネットワークを深くすることで、表現力を高くし、複雑な特徴表現を獲得できる。
●入力画像の解像度(Resolution)
高解像度の入力画像を用いると、詳細なパターンを見出しやすくなる。
ICML2019で発表された論文(EfficientNet:Rethinking Model Scaling for Convolutional Neural Networks)において、幅、深さ、解像度などをそれぞれ何倍に増やすかを複合係数(Compound Coefficient)という係数を導入することで最適化し、CNNをスケールアップするというモデルスケーリングの法則が提案された。
この手法が、EfficientNetの開発につながった。
EfficientNetでは、複合係数に基づいて、深さや広さ、解像度を最適化しながらスケール調整することで、小さなモデルで効率よく高い精度を達成している。
従来モデルよりもパラメーター数を激減させることに成功したことになる。
効率も数倍速くなった。
EfficientNetはオープンソースで公開されている。