Ein Gehirn mit dem Schriftzug we-mak.ai
#ConvNeXtV2 #VisionsTransformer #ImageNet

Sind Vision Transformer Modelle immer besser als CNNs? - Aktuelle Forschung zeigt das Gegenteil.

Mag. Dr. Bernhard Mayr, MBA 20.09.2023
#ConvNeXtV2#VisionsTransformer#ImageNet

Maskiertes Vortraining für CNNs 🔍

Vision-Transformer haben in einigen wichtigen visuellen Aufgaben die convolutional neural nets (CNNs) übertroffen. Haben CNNs ihre Grenze erreicht? Neue Forschungen legen nahe, dass dem nicht so ist.

Neuigkeiten

Sanghyun Woo und seine Kollegen am Korea Advanced Institute of Science & Technology, Meta und an der New York University haben ConvNeXt V2 entwickelt, eine rein konvolutionale Architektur, die nach dem Vortraining und der Feinabstimmung eine state-of-the-art Leistung auf ImageNet erzielt hat. ConvNeXt V2 verbessert den klassischen ResNet durch eine Aktualisierung von ConvNeXt.

Wichtiger Einblick

Vision-Transformer lernen durch maskiertes Vortraining, bei dem ein Teil eines Bildes ausgeblendet wird und dann gelernt wird, den fehlenden Teil zu rekonstruieren. Dadurch können sie aus nicht beschrifteten Daten lernen, wodurch große Trainingsdatensätze erstellt werden können. Dies ermöglicht es ihnen, bessere Einbettungen zu erzeugen. Wenn maskiertes Vortraining für Transformer funktioniert, sollte es auch für CNNs funktionieren.

Wie es funktioniert:

ConvNeXt V2 ist ein Encoder-Decoder, der auf 14 Millionen Bildern in ImageNet 22k vortrainiert ist. Für den Decoder verwendeten die Autoren einen einzigen ConvNeXt-Konvolutionsblock (bestehend aus drei konvolutionalen Schichten). Sie haben den ConvNeXt-Encoder (36 ConvNeXt-Blöcke) wie folgt modifiziert:

1️⃣ Die Autoren haben LayerScale aus jedem ConvNeXt-Block entfernt. In ConvNeXt wurde diese Operation verwendet, um zu lernen, wie viel jeder Schichtausgang skaliert werden sollte. In ConvNeXt V2 führte dies jedoch nicht zu einer Leistungsverbesserung.

2️⃣ Sie haben jedem Block eine Skalierungsvorgang namens globale Antwortnormalisierung (GRN) hinzugefügt. Eine Zwischenschicht eines Blocks erzeugte eine Einbettung mit 384 Werten, auch als Kanäle bezeichnet. GRN hat jeden Kanal basierend auf seiner Magnitude im Verhältnis zu der Magnitude aller Kombinierten Kanäle skaliert. Dies hat den Aktivierungswertebereich der Kanäle verengt und verhindert das “Feature Collapse”-Problem bei ConvNeXt, bei dem Kanäle mit kleinen Gewichten nichts zum Ergebnis beitragen.

3️⃣ Während des Vortrainings hat ConvNeXt V2 jedes Eingangsbild in ein 32x32 Raster aufgeteilt und zufällige Felder im Raster maskiert. Auf Basis des maskierten Bildes hat der Encoder gelernt eine Einbettung zu erzeugen. Auf Basis der Einbettung hat der Decoder gelernt, das unmaskierte Bild zu reproduzieren.

Nach dem Vortraining haben die Autoren den Encoder mit 1,28 Millionen Bildern aus ImageNet 1k verfeinert, um Bilder zu klassifizieren.

Ergebnisse:

Das größte ConvNeXt V2-Modell (659 Millionen Parameter) erzielte eine Genauigkeit von 88,9 Prozent auf ImageNet (Top-1). Der bisherige State-of-the-Art MViTV2 (eine Transformer-Architektur mit etwa der gleichen Anzahl von Parametern) erreichte 88,8 Prozent Genauigkeit. Zusätzlich benötigte ConvNeXt V2 weniger Rechenleistung: 600,7 Gigaflops im Vergleich zu 763,5 Gigaflops.

Warum es wichtig ist:

Transformer zeigen großes Potenzial in der Computer Vision, aber konventionelle Architekturen wie CNNs können vergleichbare Leistungen mit weniger Rechenleistung erzielen.

Unsere Gedanken:

Obwohl ImageNet 22k eines der größten öffentlich verfügbaren Bilddatensätze ist, profitieren Vision-Transformer von einem Training auf proprietären Datensätzen, die weit größer sind. Wir sind gespannt, wie ConvNeXt V2 abschneiden würde, wenn es auf Milliarden von Parametern und Bildern skaliert wird. Darüber hinaus gibt es viele neue Benchmarks neben ImageNet. Wir hätten gerne Ergebnisse für einige davon.

← Zurück zum Blog