Wie viele Schichten gibt es beim Deep Learning?
Wie viele Schichten gibt es beim Deep Learning?
Es gibt keine feste Zahl. Ein neuronales Netz kann drei Schichten haben oder mehrere hundert. Die interessantere Frage ist: Was zählt überhaupt als Schicht, ab wann heißt ein Netz „tief“, und wie viele Schichten brauchen Sie für Ihre Aufgabe? Nach diesem Artikel können Sie die Tiefe eines Modells korrekt bestimmen, kennen die üblichen Größenordnungen bekannter Architekturen und wissen, wann sich mehr Schichten lohnen und wann sie schaden.
Was ist eine Schicht?
Eine Schicht (englisch layer) ist eine Gruppe von Neuronen, die ihre Eingabe mit einer Gewichtsmatrix und einer Aktivierungsfunktion transformiert und an die nächste Schicht weitergibt. Jedes Netz hat drei Rollen:
- Eingabeschicht: nimmt die Rohdaten auf (Pixel, Wörter, Messwerte). Sie hat selbst keine lernbaren Gewichte, sondern legt nur die Form der Eingabe fest.
- Verborgene Schichten (Hidden Layers): liegen dazwischen und lernen die eigentlichen Merkmale. Ihre Anzahl bestimmt maßgeblich die „Tiefe“.
- Ausgabeschicht: liefert das Ergebnis, etwa eine Klasse (Katze/Hund), eine Wahrscheinlichkeit oder einen Zahlenwert.
Entscheidend für das Zählen: Als Schicht wird üblicherweise nur eine Ebene mit lernbaren Gewichten gezählt. Wenn jemand von einem „50-Schichten-Netz“ spricht, meint er die Gewichtsschichten (Convolution- und Dense-Layer), nicht die dazwischenliegenden Aktivierungs-, Pooling- oder Dropout-Schichten.
Wie zählt man die Schichten richtig?
Hier liegt die häufigste Verwirrung. Zwei Konventionen sind gebräuchlich:
- Gewichtsschichten zählen (Standard in Papern): nur Convolution- und Dense-Layer. VGG-16 heißt so, weil es 13 Convolution- plus 3 vollverbundene Schichten hat, also 16 Gewichtsschichten. Pooling zählt nicht mit.
- Alle Verarbeitungsschichten zählen (oft in Framework-Ausgaben): Auch Pooling, Aktivierung, Batch-Normalisierung und Dropout erscheinen als eigene Zeile. Dann wirkt dasselbe Netz plötzlich doppelt so „tief“.
Die Eingabeschicht wird meist nicht mitgezählt, weil sie keine Gewichte hat. Ein Netz mit „einer verborgenen Schicht“ hat also zwei Gewichtsschichten (Hidden + Ausgabe).
Am schnellsten sehen Sie die tatsächliche Struktur mit einem Blick in die Modellzusammenfassung. In Keras/TensorFlow:
from tensorflow.keras import Sequential
from tensorflow.keras.layers import Dense
model = Sequential([
Dense(64, activation="relu", input_shape=(20,)), # 1. verborgene Schicht
Dense(64, activation="relu"), # 2. verborgene Schicht
Dense(1, activation="sigmoid"), # Ausgabeschicht
])
model.summary() # listet jede Schicht mit Parameterzahl auf
In PyTorch zählen Sie die Gewichtsschichten programmatisch:
gewichtsschichten = sum(
1 for m in model.modules()
if isinstance(m, (nn.Linear, nn.Conv2d))
)
print(gewichtsschichten)
Ab wann ist ein Netz „tief“?
Der Begriff ist bewusst unscharf. Die gängige Faustregel: Sobald ein Netz mehr als eine verborgene Schicht hat, spricht man von Deep Learning. Ein Modell mit einer einzigen verborgenen Schicht gilt als flach (shallow).
Der praktische Unterschied liegt nicht in einer Grenze, sondern im Verhalten: Tiefe Netze lernen Merkmale hierarchisch. In der Bildverarbeitung erkennen frühe Schichten Kanten, mittlere Schichten Formen und Texturen, späte Schichten ganze Objekte. Diese Hierarchie ist der Grund, warum Tiefe oft mehr bringt als reine Breite (mehr Neuronen pro Schicht). Das Universal Approximation Theorem besagt zwar, dass schon eine einzige, ausreichend breite Schicht jede Funktion annähern kann – in der Praxis ist ein tieferes Netz aber meist parameter- und dateneffizienter.
Typische Größenordnungen bekannter Modelle
Zur Orientierung, wie viele Gewichtsschichten reale Architekturen haben:
- LeNet-5 (1998, Ziffernerkennung): rund 5 bis 7 Schichten. Der Klassiker für den Einstieg.
- AlexNet (2012): 8 Gewichtsschichten (5 Convolution, 3 vollverbunden). Löste den Deep-Learning-Boom aus.
- VGG-16 / VGG-19: 16 bzw. 19 Gewichtsschichten. Einfach aufgebaut, aber sehr rechenintensiv.
- GoogLeNet / Inception: 22 Schichten mit parallelen Zweigen.
- ResNet: 34, 50, 101 oder 152 Schichten. Dank Residual Connections wurden erstmals Netze mit über 1.000 Schichten trainierbar.
- Transformer (Sprachmodelle): BERT-Base nutzt 12, BERT-Large 24 Encoder-Blöcke; große GPT-Modelle kommen auf 96 und mehr Transformer-Schichten.
Für die Hardware hinter solchen Modellen lohnt ein Blick auf welche Grafikkarte für Deep Learning geeignet ist, denn die Schichtzahl treibt Speicherbedarf und Trainingszeit stark nach oben.
Wie viele Schichten brauchen Sie?
Mehr Schichten sind kein Selbstzweck. Als praktisches Vorgehen hat sich bewährt:
- Klein anfangen. Für tabellarische Daten reichen oft 2 bis 4 verborgene Schichten. Erst wenn das Modell die Trainingsdaten nicht gut genug abbildet (Underfitting), fügen Sie Tiefe hinzu.
- An der Aufgabe orientieren. Bilderkennung und Sprachverarbeitung profitieren von vielen Schichten; einfache Regressionsprobleme selten.
- Datenmenge beachten. Jede zusätzliche Schicht bringt Parameter, die trainiert werden müssen. Ohne genug Daten überanpasst (overfittet) ein tiefes Netz.
- Rechenbudget einplanen. Tiefe kostet Speicher und Zeit – linear bis überproportional.
Typische Fehler und ihre Lösung
- Zu wenige Schichten (Underfitting): Das Modell bleibt bei Training und Test schlecht. Lösung: Tiefe oder Breite erhöhen, länger trainieren.
- Zu viele Schichten (Overfitting): Sehr gute Trainingswerte, schlechte Testwerte. Lösung: Dropout, Regularisierung, mehr Daten oder ein kleineres Netz.
- Vanishing Gradients: Bei sehr tiefen Netzen kommen kaum noch Fehlersignale in den frühen Schichten an, das Training stagniert. Lösung: ReLU statt Sigmoid, Batch-Normalisierung und vor allem Residual Connections wie bei ResNet.
- Schichten falsch gezählt: Pooling- oder Dropout-Zeilen als „Schicht“ mitgezählt. Lösung: Nur Gewichtsschichten zählen, wie oben gezeigt.
Wenn Sie tiefer in die Modelllandschaft einsteigen wollen, hilft der Vergleich, was besser ist – ChatGPT oder Deep AI, um Architekturentscheidungen im Kontext realer Werkzeuge einzuordnen.
FAQ
Zählt die Eingabeschicht als Schicht mit? In den meisten Zählweisen nicht, weil sie keine lernbaren Gewichte hat. Ein Netz mit „einer verborgenen Schicht“ besteht aus Eingabe, Hidden und Ausgabe, hat aber nur zwei Gewichtsschichten.
Ab wie vielen Schichten spricht man von Deep Learning? Sobald mehr als eine verborgene Schicht vorhanden ist. Es gibt keine offizielle Grenze; der Übergang von „flach“ zu „tief“ ist fließend und hängt von der Konvention ab.
Ist ein tieferes Netz immer besser? Nein. Ab einem gewissen Punkt bringt zusätzliche Tiefe keinen Gewinn mehr, erhöht aber Overfitting-Risiko, Speicherbedarf und Trainingszeit. Die richtige Tiefe ergibt sich aus Aufgabe, Datenmenge und Budget – meist durch Ausprobieren.