EfficientNet: Neue Methoden zur Skalierung von Convolutional Neural Networks

Dem traditionellen, häufig mit hohem manuellen Aufwand verbundenen Skalieren von CNNs stellt Google einen neuen, auf AutoML fußenden Ansatz bei Seite.

In Pocket speichern vorlesen Druckansicht
EfficientNet: Neue Methoden zur Skalierung von Convolutional Neural Networks
Lesezeit: 2 Min.
Von
  • Matthias Parbel

Ausgehend von einem zunächst einfachen Convolutional Neural Network (CNN) lassen sich die Präzision und Effizienz eines Modells üblicherweise durch beliebiges Skalieren der Netzwerkdimensionen wie Breite, Tiefe und Auflösung Schritt für Schritt weiter steigern. Die Zahl der verwendeten Ebenen zu steigern oder Bilder mit höherer Auflösung für das Training der Modelle heranzuziehen, ist in der Regel mit hohem manuellen Aufwand verbunden. Forscher des Google Brain AI Teams präsentieren mit EfficientNet nun einen neuen Skalierungsansatz, der auf einem festen Satz von Skalierungskoeffizienten und den Fortschritten bei AutoML aufsetzt.

Hinter den EfficientNets verbirgt sich eine Reihe neuer Modelle, die laut Google hohe Präzision bei optimierter Effizienz (kleiner und schneller) versprechen. Die Basis bildet ein mit dem AutoML MNAS Framework neu entwickeltes Modell EfficientNet-B0, das die Architektur der Mobile Inverted Bottleneck Convolution (MBConv) verwendet – vergleichbar mit MobileNetV2 und MnasNet. Der einfache Aufbau diese Netzwerks soll die Voraussetzungen für das generalisierte Skalieren nach dem neuen Ansatz schaffen.

Statt wie bisher üblich, einzelne Netzwerkdimensionen unabhängig voneinander zu optimieren, suchen die Google-Forscher nun nach einem ausgewogenen Skalierungsprozess über sämtliche Netzwerkdimensionen hinweg. Die Optimierung startet mit einer Grid Search, um die Abhängigkeiten zwischen den verschiedenen Dimensionen im Hinblick auf Parameter wie beispielsweise eine Verdopplung der FLOPS zu ermitteln. Anschließend werden die so ermittelten Skalierungskoeffizienten auf die Netzwerkdimensionen angewendet, um ein Basisnetzwerk auf die gewünschte Zielmodellgröße beziehungsweise das verfügbare Budget zu skalieren.

Der Vergleich von Modellgröße und Präzision zeigt das Abschneiden der EfficientNets bei Anwendung auf den ImageNet-Datensatz.

(Bild: Google AI)

Eine detaillierte Beschreibung des neuen Skalierungsansatzes hinter den EfficientNets findet sich im Blogbeitrag von Google AI sowie in dem zur ICML 2019 veröffentlichten Papier "EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks". Den Sourcecode einschließlich der TPU-Trainigsskripte stellt Google auf der GitHub-Projektseite als Open Source frei zur Verfügung. (map)