Kurs
Tiefere neuronale Netze sollten besser abschneiden. In der Praxis ist das aber nicht immer so.
Ab einer gewissen Tiefe kann die Genauigkeit sogar sinken. Nicht, weil das Modell überanpasst – sondern weil das Training selbst auseinanderfällt. Gradienten verschwinden, bevor sie die frühen Schichten erreichen, und diese Schichten hören auf zu lernen. Du würdest annehmen, dass mehr Schichten helfen, doch oft verschlimmert es das Problem.
ResNet löste das mit der Kernidee der Skip-Verbindungen. Statt jede Schicht zu zwingen, alles von Grund auf zu lernen, lässt das Netzwerk Schichten überspringen und addiert den Eingang direkt zum Ausgang.
In diesem Artikel zeige ich dir, wie ResNet funktioniert, wie die Architektur aussieht und warum es in der modernen Deep-Learning-Praxis immer noch erste Wahl ist.
Willst du ResNets in Aktion sehen? Löse unsere Übung zur Bildklassifikation mit ResNet als Teil des Kurses Deep Learning for Images with PyTorch.
Was ist die ResNet-Architektur?
ResNet – kurz für Residual Network – ist eine Architektur für neuronale Netze, die das Training tiefer Netze praktikabel macht.
Die Idee wurde 2015 von Microsoft Research vorgestellt. Der Algorithmus nutzt Residual-Verbindungen, um die Trainingsprobleme zu umgehen, die tiefe Netze damals begrenzten. Die Idee ist simpel, aber seit der Entdeckung lassen sich erstmals Netze mit 50, 101 oder sogar 152 Schichten zuverlässig trainieren – ohne Leistungsverlust.
Vor ResNet war diese Tiefe kaum realistisch.
Warum tiefe Netze schwer zu trainieren sind
Mehr Schichten sollten mehr Lernchancen bedeuten. In der Praxis bricht es ab einer gewissen Tiefe auseinander.
Dafür sind zwei Probleme verantwortlich.
Das erste ist das Verschwinden der Gradienten. Neuronale Netze lernen, indem Fehlersignale rückwärts durch das Netz gesendet werden – ein Prozess namens Backpropagation. Jede Schicht passt ihre Gewichte anhand dieses Signals an. Doch wenn das Signal durch viele Schichten zurückläuft, wird es immer wieder mit kleinen Zahlen multipliziert und schrumpft. Bei den frühen Schichten kommt fast nichts mehr an. Diese Schichten aktualisieren sich nicht mehr – und lernen nicht weiter.
Das zweite ist das Degradationsproblem. Das ist kontraintuitiv. Man würde erwarten, dass ein 56-schichtiges Netz mindestens so gut ist wie ein 20-schichtiges – es hat schließlich mehr Kapazität. Forschende fanden jedoch das Gegenteil: Das tiefere Netz schnitt schlechter ab, sogar auf den Trainingsdaten. Überanpassung scheidet damit als Ursache aus. Das Modell merkt sich nicht zu viel – es hat Schwierigkeiten bei der Optimierung.
Das ist der entscheidende Unterschied. Es sind keine Generalisierungsprobleme, die man mit Dropout oder Regularisierung löst. Es sind Optimierungsprobleme – das Netz findet erst gar keine guten Gewichte.
ResNets wurden entwickelt, um genau diese beiden Probleme zu lösen. So funktioniert es.
Die Kernidee: Residual Learning
Klassische neuronale Netze versuchen, eine direkte Abbildung vom Input zum Output zu lernen. Jede Schicht schaut auf den Eingang und versucht zu bestimmen, was herauskommen soll. Für flache Netze funktioniert das gut. In der Tiefe treten jedoch die genannten Probleme auf.
ResNet stellt jeder Einheit statt der kompletten Abbildung eine einfachere Frage: Was muss ich zum Eingang hinzufügen, um den richtigen Ausgang zu erhalten?
Diese Differenz nennt man die Residual.
Statt also zu lernen:

Residual Learning (1)
Lernt das Netzwerk:

Residual Learning (2)
Wobei F(input) die Residual ist – die kleine Korrektur, die das Netzwerk vornehmen muss. Wenn die Schicht nichts ändern muss, kann sie F(input) gegen Null drücken und den Eingang unverändert durchreichen.
Das klingt nach einem kleinen Kniff, ändert aber die Lernaufgabe grundlegend. Eine kleine Korrektur zu lernen ist eine viel einfachere Optimierungsaufgabe als eine komplette Transformation von Grund auf – und genau das macht tiefe Netze trainierbar.
Was sind Skip-Verbindungen in ResNet?
Eine Skip-Verbindung ist genau das: ein direkter Pfad, der eine oder mehrere Schichten umgeht und den Eingang an einer späteren Stelle im Netz einspeist.
Im klassischen Netz fließen Daten Schicht für Schicht. Jede Schicht transformiert den Eingang und gibt das Ergebnis weiter. Skip-Verbindungen nehmen den ursprünglichen Eingang und addieren ihn direkt zum Ausgang einer weiter unten liegenden Schicht.
So kannst du es dir vorstellen:

Beispiel-Graph für Skip-Verbindungen
Der Eingang x nimmt zwei Wege gleichzeitig. Ein Pfad geht durch die Convolution-Schichten und lernt die Residual F(x). Der andere Pfad überspringt diese Schichten und führt direkt zur Addition. Der endgültige Ausgang ist F(x) + x.
Diese Abkürzung ist fürs Training entscheidend. Während der Backpropagation können Gradienten über die Skip-Verbindung zurückfließen, ohne die Zwischenlagen zu passieren. Das gibt den frühen Schichten ein klareres, stärkeres Signal – genau das, was tiefen Netzen vor ResNet gefehlt hat.
Aufbau eines ResNet-Blocks
Ein Residual-Block ist die sich wiederholende Einheit eines ResNet. Verstehst du einen Block, verstehst du das ganze Netz.
Das passiert in einem einzelnen Block:
-
Der Eingang
xtritt in den Block ein und verzweigt in zwei Pfade -
Ein Pfad durchläuft zwei Convolution-Schichten, jeweils gefolgt von Batch-Normalisierung und einer ReLU-Aktivierung
-
Der andere Pfad überspringt diese Schichten – das ist die Skip-Verbindung
-
Beide Pfade treffen sich bei einer Addition, bei der der ursprüngliche Eingang zum Ausgang der Convolution-Schichten addiert wird
-
Auf das Ergebnis folgt eine abschließende ReLU-Aktivierung
Oder als Diagramm:

ResNet-Blockdiagramm
Die Skip-Verbindung hier ist eine Identitätsabbildung – der Eingang bleibt unverändert und wird direkt zum gelernten Ausgang addiert. Es ist die einfachste mögliche Abkürzung ohne Transformation und ohne zusätzliche Parameter.
Damit die Addition funktioniert, müssen beide Pfade Tensoren gleicher Form liefern. Wenn die Convolution-Schichten die räumlichen Dimensionen oder die Kanalzahl ändern, lässt sich x nicht addieren. In diesen Fällen setzt ResNet eine Projektionsabkürzung ein – eine 1×1-Convolution auf dem Skip-Pfad, die x passend umformt.
Die meisten Blöcke in einem ResNet nutzen Identitätsabkürzungen. Projektionsabkürzungen kommen vor, wenn sich Dimensionen ändern – typischerweise beim Übergang zwischen Stufen.
Varianten der ResNet-Architektur
ResNet gibt es in einigen Standardvarianten, benannt nach der Gesamtzahl der Schichten. Die richtige Wahl hängt davon ab, ob du auf Geschwindigkeit, Genauigkeit oder einen Mittelweg optimierst.

Vergleich von ResNet-Architekturen
ResNet-18 und ResNet-34 verwenden den Basic Block – zwei 3×3-Convolution-Schichten mit Skip-Verbindung. Sie sind schnell und ressourcenschonend und daher eine gute Wahl fürs Prototyping oder bei knapper Hardware.
Ab ResNet-50 kommt das Bottleneck-Design mit drei Schichten statt zwei zum Einsatz. Dadurch lassen sich tiefere Netze leichter trainieren, ohne dass die Rechenkosten im gleichen Maß steigen. Wie das funktioniert, liest du im nächsten Abschnitt.
ResNet-101 und ResNet-152 gehen noch weiter – auf Kosten längerer Trainingszeiten und höherem Speicherbedarf. Sie sind gängig in der Forschung und in produktiven Systemen, in denen Genauigkeit wichtiger ist als Geschwindigkeit.
Für die meisten Praxisaufgaben ist ResNet-50 der Standardstartpunkt. Es bietet ein gutes Verhältnis aus Tiefe und Kosten und wird in allen großen Deep-Learning-Frameworks hervorragend unterstützt.
ResNet-Bottleneck-Architektur
Tiefere ResNets nutzen nicht das gleiche Blockdesign wie die flacheren. Ab ResNet-50 wechselt die Architektur zum Bottleneck-Block: ein dreischichtiges Design, das die Rechenlast bei zunehmender Tiefe im Zaum hält.
Der Block nutzt drei Convolutions in Folge:
- 1×1-Convolution – reduziert die Kanalzahl und verkleinert so den Eingang
- 3×3-Convolution – übernimmt das eigentliche Feature-Learning auf der kleineren Darstellung
- 1×1-Convolution – erweitert die Kanäle wieder auf die ursprüngliche Größe
Die erste und letzte 1×1-Convolution wirken als Flaschenhals – daher der Name. Sie komprimieren die Daten, bevor die teurere 3×3-Convolution läuft, und stellen sie danach wieder her.
Eine 3×3-Convolution auf einem Eingang mit vielen Kanälen ist rechenintensiv. Durch die vorherige Reduktion der Kanäle kann die 3×3-Schicht auf einem deutlich kleineren Input arbeiten. Das Ergebnis ist ein Block, der in die Tiefe geht, ohne dass die Rechenkosten proportional steigen.
Die Skip-Verbindung funktioniert wie im Basic Block – der Eingang wird vor der letzten Aktivierung zum Ausgang addiert. Ein Projektions-Shortcut ist hier jedoch fast immer nötig, da sich die Kanaldimensionen im Block ändern.
Wie ResNet das Gradientenverschwinden löst
Das Problem der verschwindenden Gradienten ist eine Frage der Distanz. Je weiter ein Gradienten-Signal durch ein Netz laufen muss, desto mehr schrumpft es – und in den frühen Schichten bleibt kaum etwas zum Lernen übrig.
Skip-Verbindungen umgehen das, indem sie den Gradienten einen kürzeren Weg geben.
Bei der Backpropagation müssen Gradienten nicht jede Schicht der Reihe nach passieren. Sie können direkt über die Skip-Verbindung zurückfließen und die Convolution-Schichten komplett umgehen. Diese Abkürzung hält den Gradienten groß genug, um die frühen Schichten tatsächlich zu aktualisieren.
Zudem ändert sich damit die Lernaufgabe jeder Einheit. Statt eine komplette Transformation von Grund auf zu finden, muss das Netz nur eine kleine Korrektur zum Eingang lernen. Das ist deutlich leichter zu optimieren und erlaubt größere Tiefe, ohne dass das Training instabil wird.
Kurz gesagt: Netze, die zuvor zu tief für zuverlässiges Training waren, werden trainierbar.
ResNet vs. traditionelle CNN-Architekturen
Klassische CNNs und ResNets lernen beide Merkmale aus Bildern, gehen aber unterschiedlich vor.
In einem klassischen CNN fließen die Daten linear durch die Schichten. Jede Schicht nimmt den vorherigen Ausgang, transformiert ihn und reicht ihn weiter. Das funktioniert bis zu einem Punkt gut. Ab einer gewissen Tiefe wird die sequentielle Struktur in der Backpropagation unzuverlässig – Gradienten schrumpfen, frühe Schichten lernen nicht mehr und die Genauigkeit fällt.
ResNet verläuft nicht strikt linear. Skip-Verbindungen lassen den Eingang eine oder mehrere Schichten überspringen und direkt zum Ausgang weiter unten im Block addieren. Das Netz lernt weiterhin Transformationen, hat aber auch einen Direktweg für Daten und Gradienten.
So lassen sich die beiden Ansätze vergleichen:

ResNet versus klassisches CNN
Die Skip-Verbindungen helfen sowohl den Gradienten als auch der Optimierung insgesamt, sodass das Netz schneller und zuverlässiger gute Gewichte findet.
Anwendungsfälle der ResNet-Architektur
Die ResNet-Architektur taucht in vielen realen Aufgaben auf.
Bildklassifikation ist der Ursprung von ResNet. Es gewann 2015 die ImageNet Large Scale Visual Recognition Challenge und ist bis heute eine Standardwahl zur Kategorisierung von Bildern – von medizinischen Scans über Satellitenbilder bis hin zu Produktfotos.
Objekterkennung-Workflows nutzen ResNets häufig. Frameworks wie Faster R-CNN und Mask R-CNN kombinieren ResNet mit einem Detection-Head, der Objekte im Bild identifiziert und lokalisiert. ResNet übernimmt die Merkmalsextraktion, der Detection-Head den Rest.
Transfer Learning ist für die meisten Data Scientists besonders wertvoll. Statt von Grund auf zu trainieren – was Tage dauert und viele Daten erfordert – lädst du ein auf ImageNet vortrainiertes ResNet und feintunest es auf deinem Datensatz. Die vortrainierten Gewichte kodieren bereits nützliche Low-Level-Merkmale wie Kanten, Texturen und Formen – du startest also viel weiter vorn.
Feature-Extraktion geht ähnlich vor. Du leitest deine Bilder durch ein vortrainiertes ResNet und greifst die Ausgaben aus einer späteren Schicht ab. Diese Ausgaben sind dichte, aussagekräftige Repräsentationen, die du an einen einfachen Klassifikator oder ein Clustering-Verfahren übergeben kannst.
In all diesen Fällen dient ResNet als vortrainierter Startpunkt. In den meisten Deep-Learning-Frameworks sind vortrainierte ResNet-Gewichte sofort verfügbar – dadurch gehört ResNet zu den einfachsten Architekturen für den Einstieg.
Vorteile und Grenzen von ResNet
ResNet war ein echter Fortschritt im Deep Learning – doch wie jede Architektur bringt es Trade-offs mit sich. Hier sind ein paar Vor- und Nachteile.
Vorteile
Der offensichtlichste ist die Tiefe. Skip-Verbindungen erlauben es, Netze mit 50, 100 oder sogar mehr als 150 Schichten zu trainieren, ohne in das Degradationsproblem zu laufen. Vor ResNet war das nicht zuverlässig möglich.
Das Training ist außerdem stabiler. Die Abkürzungen geben Gradienten einen klaren Rückweg durchs Netz – das bedeutet weniger Feintuning, weniger Abstürze und verlässlichere Ergebnisse über Aufgaben und Datensätze hinweg.
Und die Performance überzeugt ebenso. ResNet-Varianten schneiden auf Bild-Benchmarks konstant stark ab, und vortrainierte ResNets übertragen sich gut auf neue Domänen – deshalb sind sie in vielen Computer-Vision-Projekten noch immer der Standardstartpunkt.
Grenzen
ResNet ist rechenaufwendig. Tiefere Varianten wie ResNet-101 und ResNet-152 brauchen viel Speicher und Rechenleistung – ein Engpass bei knapper Hardware oder wenn schnelle Inferenz gefragt ist.
Außerdem passt es nicht zu jeder Aufgabe. Für kleinere Datensätze oder einfache Probleme leisten leichtere Architekturen oft Ähnliches bei einem Bruchteil der Kosten. ResNet-50 per Default zu wählen, ist nicht immer richtig.
Und in manchen Bereichen wurde ResNet abgelöst. Architekturen wie EfficientNet erreichen auf Bildaufgaben mehr Genauigkeit pro Parameter, und Transformer haben andere Domänen erobert. ResNet ist weiterhin weit verbreitet, aber nicht mehr die einzige ernsthafte Option.
ResNet im modernen Deep Learning
Elf Jahre nach seiner Einführung steht ResNet immer noch stark da. Das ist im Deep Learning nicht selbstverständlich.
In der Praxis greifen viele weiterhin zu ResNet, wenn sie eine verlässliche Basis für eine Vision-Aufgabe brauchen. Es ist gut verstanden, in allen großen Frameworks hervorragend unterstützt und vortrainierte Gewichte sind in jeder großen Bibliothek verfügbar. Wenn du also etwas brauchst, das ohne viel Experimentieren funktioniert, ist ResNet meist die erste Option.
Sein Einfluss reicht jedoch über die eigenen Varianten hinaus.
Die Kernidee von ResNet – mit Abkürzungen um Schichten herum dafür zu sorgen, dass Informationen und Gradienten besser fließen – erwies sich als allgemein nützlich. DenseNet trieb diese Idee weiter, indem jede Schicht mit jeder anderen verbunden wurde, nicht nur mit einer oder zwei. Und auch Transformer haben, trotz anderer Architektur, Residual-Verbindungen in jedem Block, die demselben Prinzip folgen.
Neuere Architekturen wie EfficientNet, ConvNeXt und Vision Transformer haben die Leistung in einzelnen Bereichen weiter gesteigert. Sie haben ResNet jedoch weniger ersetzt als vielmehr darauf aufgebaut.
Fazit
Die ResNet-Architektur dreht sich um eine Sache: Skip-Verbindungen. Diese eine Idee löste zwei Bremsklötze tiefer Netze – verschwindende Gradienten und das Degradationsproblem – und machte es praktikabel, Netze mit einer zuvor unerreichbaren Tiefe zu trainieren.
Die Idee von Abkürzungen zwischen Schichten ist heute ein Standardbaustein im modernen Deep Learning – zu sehen in DenseNet, Transformern und den meisten Architekturen nach 2015.
Wenn du heute an einem Computer-Vision-Problem arbeitest, ist ResNet weiterhin ein solider Startpunkt. Es ist nicht das neueste, aber eines der verlässlichsten Modelle. Nutze es als Basis – du wirst überrascht sein, wie oft es 2026 noch die Konkurrenz hinter sich lässt.
Wenn du neu im Deep Learning bist, aber Python-Grundlagen beherrschst, schau dir unseren Kurs Introduction to TensorFlow in Python an – damit steigst du an einem Wochenende in Themen wie ResNets ein.
FAQs
What is ResNet and why was it important?
ResNet, kurz für Residual Network, ist eine Deep-Learning-Architektur, die 2015 von Microsoft Research vorgestellt wurde. Sie löste zwei Hürden beim Training tiefer Netze: das Verschwinden der Gradienten und das Degradationsproblem. Dank der Skip-Verbindungen ließen sich erstmals Netze mit 50, 100 oder sogar mehr als 150 Schichten verlässlich trainieren.
What are skip connections in a neural network?
Eine Skip-Verbindung ist ein direkter Pfad, der eine oder mehrere Schichten umgeht und den Eingang direkt zum Ausgang einer späteren Schicht addiert. So erhalten Daten und Gradienten eine Abkürzung durchs Netz, wodurch das Gradienten-Signal stark genug bleibt, um frühe Schichten während des Trainings zu aktualisieren.
What is the vanishing gradient problem?
Beim Problem der verschwindenden Gradienten schrumpfen Gradienten, während sie rückwärts durch ein tiefes Netz laufen. Wenn das Signal die frühen Schichten erreicht, ist es zu klein, um sie zu aktualisieren – diese Schichten lernen nicht mehr. ResNet verhindert das, indem Gradienten über Skip-Verbindungen zurückfließen und Zwischenlagen umgehen können.
What's the difference between ResNet's basic block and bottleneck block?
Der Basic Block nutzt zwei 3×3-Convolution-Schichten und findet sich in flacheren Varianten wie ResNet-18 und ResNet-34. Der Bottleneck-Block in ResNet-50 und tiefer setzt auf eine 1×1–3×3–1×1-Abfolge und reduziert die Rechenlast, indem die Kanäle komprimiert werden, bevor die teure 3×3-Convolution läuft.
How do I choose the right ResNet variant for my project?
Für die meisten Praxisprojekte ist ResNet-50 eine gute Voreinstellung – es balanciert Tiefe, Genauigkeit und Rechenkosten sinnvoll. ResNet-18 und ResNet-34 sind schneller, wenn die Hardware begrenzt ist, während ResNet-101 und ResNet-152 sinnvoll sind, wenn Genauigkeit oberste Priorität hat und Rechenressourcen nicht knapp sind.

