Paper · arXiv 1512.03385
Deep Residual Learning for Image Recognition
Zusammenfassung in drei Zeilen
- 🎯 Tiefere Plain-Netze leiden unter einem Optimierungsdegradationsproblem, bei dem zunehmende Tiefe trotz nicht-verschwindender Gradienten zu einem höheren Trainingsfehler führt.
- 🔧 Schichten werden so reformuliert, dass sie eine Residuenabbildung mittels parameterfreier Identitäts-Shortcut-Verbindungen anpassen.
- 📈 Ermöglichte das Training von Netzen mit bis zu 152 Schichten auf ImageNet (3,57 % Top-5-Ensemble-Fehler) und gewann den 1. Platz bei den ILSVRC- und COCO-2015-Wettbewerben.
Abstract
Tiefere neuronale Netze sind schwieriger zu trainieren. Wir stellen ein Residual-Learning-Framework vor, um das Training von Netzen zu erleichtern, die wesentlich tiefer sind als die zuvor verwendeten. Wir reformulieren die Schichten explizit so, dass sie Residuenfunktionen bezüglich der Schichteingaben lernen, anstatt unreferenzierte Funktionen zu lernen. Wir liefern umfassende empirische Belege dafür, dass diese Residual-Netze einfacher zu optimieren sind und durch erheblich vergrößerte Tiefe an Genauigkeit gewinnen können. Auf dem ImageNet-Datensatz evaluieren wir Residual-Netze mit einer Tiefe von bis zu 152 Schichten – 8-mal tiefer als VGG-Netze, aber dennoch mit geringerer Komplexität. Ein Ensemble dieser Residual-Netze erreicht einen Fehler von 3,57 % auf dem ImageNet-Testset. Dieses Ergebnis erzielte den 1. Platz bei der ILSVRC 2015-Klassifikationsaufgabe. Wir präsentieren außerdem Analysen auf CIFAR-10 mit 100 und 1000 Schichten. Die Tiefe von Repräsentationen ist für viele visuelle Erkennungsaufgaben von zentraler Bedeutung. Allein aufgrund unserer extrem tiefen Repräsentationen erzielen wir eine relative Verbesserung von 28 % auf dem COCO-Objekterkennungsdatensatz. Deep Residual Nets bilden die Grundlage unserer Einreichungen zu den ILSVRC- & COCO-Wettbewerben 2015, bei denen wir auch den 1. Platz bei den Aufgaben ImageNet-Detection, ImageNet-Localization, COCO-Detection und COCO-Segmentation gewonnen haben.
Original-Abstract (Englisch)
Deeper neural networks are more difficult to train. We present a residual learning framework to ease the training of networks that are substantially deeper than those used previously. We explicitly reformulate the layers as learning residual functions with reference to the layer inputs, instead of learning unreferenced functions. We provide comprehensive empirical evidence showing that these residual networks are easier to optimize, and can gain accuracy from considerably increased depth. On the ImageNet dataset we evaluate residual nets with a depth of up to 152 layers---8x deeper than VGG nets but still having lower complexity. An ensemble of these residual nets achieves 3.57% error on the ImageNet test set. This result won the 1st place on the ILSVRC 2015 classification task. We also present analysis on CIFAR-10 with 100 and 1000 layers. The depth of representations is of central importance for many visual recognition tasks. Solely due to our extremely deep representations, we obtain a 28% relative improvement on the COCO object detection dataset. Deep residual nets are foundations of our submissions to ILSVRC & COCO 2015 competitions, where we also won the 1st places on the tasks of ImageNet detection, ImageNet localization, COCO detection, and COCO segmentation.
Leseleitfaden
Problem und Motivation
Die Netzwerktiefe ist entscheidend für Repräsentationen in der visuellen Erkennung, doch das Stapeln weiterer Schichten offenbart ein grundlegendes Degradationsproblem: Mit zunehmender Tiefe stagniert die Genauigkeit und fällt dann rapide ab. Entscheidend ist, dass diese Degradation nicht durch Überanpassung (Overfitting) verursacht wird – die tieferen Netze erzeugen einen höheren Trainingsfehler als ihre flacheren Pendants, obwohl Techniken wie Batch Normalization und normalisierte Initialisierung sicherstellen, dass Vorwärtsaktivierungen und rückpropagierte Gradienten nicht verschwinden.
Theoretisch besitzt ein tieferes Modell per Konstruktion eine Identitätsabbildungslösung: Man kopiert das gelernte flachere Modell und setzt zusätzliche Schichten als Identitätstransformationen an. Herkömmliche Optimierer scheitern jedoch daran, diese Lösung zu finden, wenn sie direkt unreferenzierte nichtlineare Abbildungen lernen müssen.
Zentrale Ideen
- Residual Learning Framework: Anstatt gestapelte Schichten darauf zu optimieren, eine gewünschte Abbildung anzunähern, approximieren die Schichten explizit die Residuenabbildung . Die ursprüngliche Abbildung wird als wiederhergestellt.
- Identitäts-Shortcut-Verbindungen (Identity Shortcut Connections): Die Realisierung von erfolgt über Feedforward-Shortcut-Verbindungen, die eine oder mehrere Schichten überspringen. Identitäts-Shortcuts benötigen keine zusätzlichen Parameter und verursachen praktisch keinen Rechenmehraufwand.
- Einfachere Optimierung & Vorkonditionierung: Sind Identitätsabbildungen optimal, können Optimierer die Residuen-Gewichte einfach gegen null treiben. In der Praxis weisen die Antworten der Residuenfunktionen geringe Beträge auf, was darauf hindeutet, dass Identitätsverbindungen wie eine effektive Vorkonditionierung wirken.
- Bottleneck-Architektur: Für sehr tiefe Varianten (ResNet-50, ResNet-101, ResNet-152) wird jede 2-Schichten-Residualeinheit durch einen 3-Schichten-Bottleneck-Block ersetzt (-, -, -Faltungen), was den Rechenaufwand reduziert und gleichzeitig die Repräsentationskapazität bewahrt.
Methode
Für einen Residual-Baustein, bei dem Eingangs- und Ausgangsdimensionen übereinstimmen: wobei und die Eingangs- und Ausgangsvektoren sind und für eine 2-Schichten-Einheit steht (wobei die ReLU-Aktivierung bezeichnet und Biases der Einfachheit halber weggelassen werden). Die elementweise Addition wird vor der zweiten ReLU-Aktivierung durchgeführt.
Wenn sich die Dimensionen der Feature-Maps ändern (z. B. beim räumlichen Downsampling oder bei einer Verdopplung der Kanalzahl): Hierbei bezeichnet entweder:
- Option A: Zero-Padding für zusätzliche Dimensionen zusammen mit Identitäts-Shortcuts (Stride 2 für Subsampling), was 0 zusätzliche Parameter erfordert.
- Option B: Eine lineare -Faltungsprojektion , die nur beim Erhöhen der Dimensionen verwendet wird, während andernfalls reine Identitätsverbindungen genutzt werden.
- Option C: Lineare Projektions-Shortcuts für alle Residual-Blöcke.
Die Arbeit wählt Option B für ImageNet-Modelle (ResNet-50/101/152), da Option C zu Parameterüberhang ohne nennenswerten Genauigkeitsgewinn führt und reine Identitäts-Shortcuts entscheidend sind, um Bottleneck-Strukturen effizient zu halten.
Ergebnisse
- ImageNet-Klassifikation:
- ResNet-34 übertrifft Plain-34 um 3,5 % Top-1-Fehler (25,03 % gegenüber 28,54 % 10-Crop-Validierungsfehler) und behebt das Trainingsdegradationsproblem.
- ResNet-152 erzielt einen Einzelmodell-Top-5-Validierungsfehler von 4,49 % (11,3 Milliarden FLOPs, geringere Komplexität als VGG-16 mit 15,3 Milliarden FLOPs).
- Ein Ensemble aus ResNets erreichte einen Top-5-Fehler von 3,57 % auf dem Testset und gewann damit den 1. Platz beim ILSVRC 2015-Klassifikationswettbewerb.
- CIFAR-10: ResNet-Tiefen skalieren reibungslos über 20, 32, 44, 56 und 110 Schichten, wobei ResNet-110 einen Testfehler von 6,43 % erreicht. Ein experimentelles 1202-Schichten-Netzwerk wurde ohne Optimierungsversagen trainiert ( Trainingsfehler).
- Transfer & nachgelagerte Aufgaben: Der Austausch von VGG-16 gegen ResNet-101 in Faster R-CNN verbesserte den MS COCO mAP@[.5, .95] von 21,2 % auf 27,2 % (eine relative Steigerung von 28 %) und den PASCAL VOC 2007 Test-mAP von 73,2 % auf 76,4 %. Deep Residual Networks gewannen zudem den 1. Platz bei ImageNet-Detection, ImageNet-Localization, COCO-Detection und COCO-Segmentation.
Grenzen und offene Fragen
- Überanpassung bei ultra-tiefen Architekturen: Auf CIFAR-10 zeigte das 1202-Schichten-Modell einen höheren Testfehler (7,93 %) als ResNet-110 (6,43 %), obwohl es einen Trainingsfehler von erreichte – bedingt durch fehlende Regularisierung auf dem kleinen Datensatz.
- Theoretische Ursache der Degradation: Die Arbeit zeigt experimentell, dass verschwindende Gradienten nicht das Problem sind, und vermutet, dass Plain-Netze unter exponentiell niedrigen Konvergenzraten leiden; theoretische Beweise für die Optimierungsdynamik bleiben jedoch künftigen Arbeiten vorbehalten.
- Einzelschichtige Residuen: Die Residual-Formulierung bietet keinen merklichen Vorteil, wenn nur aus einer einzelnen Schicht besteht (was sich zu reduziert).
Schlüsselbegriffe
- degradation problem
- Das kontraintuitive Phänomen, dass das Hinzufügen weiterer Schichten zu einem tiefen neuronalen Netz zu einem höheren Trainingsfehler führt, obwohl keine verschwindenden oder explodierenden Gradienten vorliegen.
- residual learning
- Die Reformulierung gestapelter Schichten eines neuronalen Netzes, sodass sie explizit eine Residuenfunktion relativ zu ihren Eingaben lernen, anstatt eine unreferenzierte Abbildung direkt anzupassen.
- identity shortcut connection
- Eine parameterfreie Skip-Verbindung, die den Eingangsvektor oder die Feature-Map unverändert weiterleitet und elementweise zur Ausgabe gestapelter Faltungsschichten addiert.
- projection shortcut
- Eine Shortcut-Verbindung, die eine lineare Transformationsmatrix oder eine -Faltung () verwendet, um Dimensionen anzugleichen, wenn Kanalanzahl oder räumliche Dimensionen zwischen Ein- und Ausgabe differieren.
- bottleneck design
- Ein 3-Schichten-Residual-Baustein aus -, - und -Faltungen, bei dem -Schichten Feature-Dimensionen komprimieren und wiederherstellen, um die Rechenkomplexität zu verringern.
- plain network
- Eine standardmäßige Convolutional-Network-Architektur als Baseline, die herkömmliche Faltungs- und Pooling-Schichten ohne Shortcut- oder Residual-Verbindungen schlicht hintereinander stapelt.
Fragen
Warum wird das Degradationsproblem nicht durch verschwindende Gradienten verursacht?
Die Netze wurden mit Batch Normalization und normalisierter Gewichtsinitialisierung trainiert, wodurch nachweislich Signalvarianzen ungleich null bei der Vorwärtspropagierung und stabile Gradientennormen bei der Backpropagation aufrechterhalten wurden. Zudem konvergierten tiefere Plain-Netze wie Plain-34 durchaus zu nichttrivialen Lösungen, jedoch mit einem höheren Trainingsfehler als flachere Netze.
Was ist der Unterschied zwischen ResNet-Identitäts-Shortcuts und Highway Networks?
Highway Networks verwenden datenabhängige, parametrisierte Gating-Funktionen, die schließen und Schichten nicht-residual machen können. ResNet-Shortcuts sind hingegen parameterfreie Identitätsabbildungen, die niemals schließen und somit durchgängiges Residual-Learning garantieren.
Wann wird eine Projektion anstelle eines Identitäts-Shortcuts verwendet?
Eine Projektion (mittels -Faltungen) wird primär eingesetzt, wenn Eingangs- und Ausgangsdimensionen nicht übereinstimmen (z. B. beim Verdoppeln der Kanäle und Halbieren der räumlichen Auflösung mit Stride 2). Bei übereinstimmenden Dimensionen ist die Identitätsabbildung ausreichend, sparsamer und verhindert ein unnötiges Anwachsen der Parameter in Bottleneck-Einheiten.
Warum schnitt ResNet-1202 auf CIFAR-10 schlechter ab als ResNet-110?
ResNet-1202 litt unter Überanpassung (Overfitting) und nicht unter einem Optimierungsversagen. Es erreichte erfolgreich einen Trainingsfehler von , doch seine 19,4 Millionen Parameter waren für den kleinen CIFAR-10-Datensatz ohne zusätzliche Regularisierungstechniken wie Dropout überdimensioniert.
Die Übersicht auf dieser Seite wurde von einer KI aus dem Paper erstellt und kann Fehler enthalten. Details stehen im Paper.