Layer
Jedes neuronale Netz besteht aus einzelnen Verarbeitungsstufen, die Daten schrittweise umformen. Jede dieser Stufen heißt Layer. Der Weg von der Eingabe bis zur Ausgabe führt durch eine Kette solcher Layer, wobei jeder Layer die Daten auf eine bestimmte Weise verändert.
Was ein Layer tut
Ein Layer empfängt Zahlenwerte als Eingabe, verrechnet sie nach einer festen Rechenvorschrift und gibt das Ergebnis weiter. Die Rechenvorschrift besteht typischerweise aus einer Matrixmultiplikation und einer nichtlinearen Funktion. Durch die Verkettung vieler solcher Schritte entsteht die Fähigkeit eines neuronalen Netzes, komplexe Zusammenhänge abzubilden.
Beispiel: Ein Bild wird als Raster aus Pixelwerten in das Netz eingespeist. Der erste Layer erkennt Kanten und Kontraste. Der zweite Layer kombiniert diese Kanten zu einfachen Formen. Spätere Layer erkennen zusammengesetzte Strukturen wie Augen oder Räder.
Beispiel: Bei der Textverarbeitung wandelt der erste Layer Wörter in numerische Vektoren um. Nachfolgende Layer berechnen Beziehungen zwischen diesen Vektoren und erzeugen so ein Verständnis für den Kontext eines Satzes.
Jeder Layer besitzt eigene Gewichte. Diese Gewichte sind Zahlenwerte, die während des Trainings angepasst werden. Sie bestimmen, wie stark jede Eingabe in das Ergebnis einfließt. Das Training eines neuronalen Netzes ist im Kern die Optimierung aller Gewichte über alle Layer hinweg.
Typen von Layern in der Transformer-Architektur
Die Transformer-Architektur verwendet mehrere spezialisierte Layer-Typen, die jeweils eine eigene Aufgabe erfüllen.
Embedding-Layer
Ein Embedding-Layer steht am Anfang des Netzes. Er wandelt diskrete Eingaben wie Token-IDs in kontinuierliche Vektoren um. Diese Vektoren bilden die Grundlage für alle weiteren Berechnungen.
Beispiel: Das Wort "Hund" hat die Token-ID 4821. Der Embedding-Layer ordnet dieser ID einen Vektor mit 768 Zahlenwerten zu. Ähnliche Wörter wie "Katze" erhalten Vektoren, die im Vektorraum nahe beieinander liegen.
Attention-Layer
Ein Attention-Layer berechnet, wie stark jedes Token im Kontext der anderen Tokens gewichtet werden soll. Er ermöglicht es dem Modell, Abhängigkeiten zwischen beliebig weit entfernten Wörtern zu erfassen.
Beispiel: Im Satz "Die Bank am Fluss war feucht" berechnet der Attention-Layer eine hohe Gewichtung zwischen "Bank" und "Fluss". Diese Gewichtung signalisiert dem Modell, dass "Bank" hier ein Sitzmöbel bezeichnet und kein Finanzinstitut.
Feed-Forward-Layer
Ein Feed-Forward-Layer verarbeitet jede Token-Position einzeln. Er besteht aus zwei Matrixmultiplikationen mit einer nichtlinearen Funktion dazwischen. Dieser Layer-Typ speichert einen großen Teil des gelernten Weltwissens in seinen Gewichten.
Beispiel: Nach der Attention-Berechnung enthält der Vektor für "Paris" bereits Kontextinformationen. Der Feed-Forward-Layer transformiert diesen Vektor weiter und reichert ihn mit gespeichertem Wissen an, etwa dass Paris die Hauptstadt Frankreichs ist.
Normalisierungs-Layer
Ein Normalisierungs-Layer skaliert die Zahlenwerte zwischen den Berechnungsschritten auf einen einheitlichen Bereich. Ohne Normalisierung können die Werte in tiefen Netzen extrem groß oder klein werden, was das Training instabil macht.
Der Transformer-Block als zusammengesetzte Einheit
In der Praxis werden mehrere Layer-Typen zu einem Transformer-Block zusammengefasst. Ein typischer Block enthält einen Attention-Layer, einen Feed-Forward-Layer und zwei Normalisierungs-Layer. Dazu kommen Residual Connections, die die Eingabe eines Layers direkt zu dessen Ausgabe addieren.
Beispiel: BERT-Base besteht aus 12 solcher Transformer-Blöcke. Jeder Block enthält intern mindestens vier Layer (Attention, Normalisierung, Feed-Forward, Normalisierung). Die Gesamtzahl der Layer im Netz ist daher deutlich höher als die Zahl der Blöcke.
Wenn in der Fachliteratur von "12 Layern" die Rede ist, sind damit fast immer 12 Transformer-Blöcke gemeint. Die einzelnen Teilschichten innerhalb eines Blocks werden in dieser Zählung nicht berücksichtigt. Diese doppelte Verwendung des Begriffs "Layer" erfordert Aufmerksamkeit beim Lesen technischer Dokumentationen.
Fachliche Einordnung: Die Darstellung zeigt den Pre-Norm-Aufbau eines Transformer-Blocks, wie er in GPT-2 und nachfolgenden Modellen üblich ist. Im ursprünglichen Transformer-Paper von Vaswani et al. (2017) steht die Normalisierung nach dem Attention- und Feed-Forward-Layer (Post-Norm). Beide Varianten sind funktional äquivalent, aber Pre-Norm konvergiert in der Praxis stabiler bei tiefen Netzen.
Tiefe: Warum mehr Layer nicht automatisch besser sind
Die Anzahl der Layer bestimmt die Tiefe eines neuronalen Netzes. Mehr Tiefe bedeutet grundsätzlich mehr Kapazität: Das Netz kann komplexere Muster repräsentieren. Gleichzeitig steigen Rechenaufwand, Speicherbedarf und die Schwierigkeit des Trainings.
Beispiel: GPT-3 verwendet 96 Transformer-Blöcke. Ein Modell dieser Tiefe benötigt spezielle Hardware (Cluster aus mehreren GPUs) und Trainingstechniken wie Modellparallelismus, bei dem verschiedene Layer auf verschiedene Geräte verteilt werden.
Beim Training tiefer Netze tritt das Problem des verschwindenden Gradienten auf. Die Fehlersignale, die über Backpropagation von der Ausgabe zurück durch alle Layer fließen, werden mit jeder Schicht kleiner. Ab einer bestimmten Tiefe erreichen sie die frühen Layer kaum noch, sodass diese nicht mehr effektiv lernen. Residual Connections lösen dieses Problem, indem sie den Gradienten einen direkten Weg durch das Netz bieten.
Die Wahl der Layer-Anzahl ist daher immer ein Kompromiss. Mehr Layer ermöglichen bessere Ergebnisse bei ausreichend Daten und Rechenleistung. Weniger Layer führen zu schnelleren, sparsameren Modellen, die in ressourcenbegrenzten Umgebungen eingesetzt werden können.
Beispiel: Für eine Textklassifikation auf einem Smartphone reicht häufig ein Modell mit 6 Transformer-Blöcken. Für die Generierung langer, kohärenter Texte sind 32 oder mehr Blöcke erforderlich.
Wie Daten durch die Layer fließen
Der Datenfluss durch ein neuronales Netz folgt einer klaren Richtung: von der Eingabe über die verborgenen Layer zur Ausgabe. Jeder Layer erzeugt eine Zwischenrepräsentation, die als Hidden State bezeichnet wird.
Beispiel: Ein Transformer-Modell verarbeitet den Satz "Die Sonne scheint heute". Nach dem Embedding-Layer hat jedes Wort einen Vektor mit 768 Dimensionen. Nach dem ersten Transformer-Block haben sich diese Vektoren verändert: Sie enthalten jetzt Kontextinformationen aus den Nachbarwörtern. Nach dem letzten Block repräsentiert jeder Vektor die volle Bedeutung des Wortes im Satzkontext.
Die Repräsentationen verändern sich von Layer zu Layer systematisch. In frühen Layern dominieren syntaktische Merkmale: Wortarten, Satzstruktur, lokale Abhängigkeiten. In mittleren Layern treten semantische Merkmale hervor: Bedeutungsbeziehungen, Analogien, Weltwissen. In späten Layern spezialisieren sich die Repräsentationen auf die konkrete Aufgabe: Vorhersage des nächsten Tokens, Klassifikation oder Übersetzung.
Fachliche Einordnung: Diese Beobachtung stammt aus Probing-Studien, bei denen einfache Klassifikatoren auf den Zwischenrepräsentationen einzelner Layer trainiert werden. Tennenbaum et al. (2019) und Jawahar et al. (2019) zeigten für BERT, dass syntaktische Informationen in frühen bis mittleren Layern konzentriert sind, während semantische Informationen in späteren Layern dominieren. Die Grenzen sind fließend, und die genaue Verteilung hängt vom Modell und der Aufgabe ab.
Layer in der praktischen Anwendung
Bei Fine-Tuning werden häufig nicht alle Layer angepasst. Stattdessen werden nur die letzten Layer trainiert, während die frühen Layer eingefroren bleiben. Der Grund: Frühe Layer haben allgemeine Repräsentationen gelernt (Wortbedeutungen, Satzstrukturen), die für viele Aufgaben nützlich sind. Späte Layer müssen dagegen an die spezifische Aufgabe angepasst werden.
Beispiel: Ein vortrainiertes Sprachmodell mit 24 Transformer-Blöcken soll für die Sentiment-Analyse angepasst werden. Bei Layer Freezing werden die ersten 20 Blöcke eingefroren und nur die letzten 4 Blöcke plus ein zusätzlicher Klassifikations-Layer trainiert. Das spart Rechenzeit und reduziert die Gefahr von Überanpassung.
Techniken wie Dropout wirken auf Layer-Ebene. Dropout deaktiviert während des Trainings zufällig einen Teil der Neuronen in einem Layer. Das zwingt das Netz, redundante Repräsentationen zu entwickeln, und wirkt der Überanpassung an Trainingsdaten entgegen.
Beispiel: Bei einer Dropout-Rate von 0,1 werden in jedem Trainingsschritt 10 Prozent der Neuronen eines Layers zufällig auf Null gesetzt. Das verbliebene Netz muss die Aufgabe mit weniger Kapazität lösen und lernt dadurch robustere Muster.
Grenzen und offene Fragen
Die optimale Anzahl und Anordnung von Layern für eine gegebene Aufgabe ist nicht analytisch bestimmbar. In der Praxis werden Layer-Anzahlen empirisch ermittelt, oft durch systematische Experimente (Hyperparameter-Suche) oder durch Übernahme bewährter Architekturen.
Beispiel: Bei der Entwicklung neuer Modelle werden typischerweise mehrere Varianten mit unterschiedlicher Tiefe trainiert und auf einem Validierungsdatensatz verglichen. Die Variante mit dem besten Verhältnis aus Leistung und Ressourcenbedarf wird ausgewählt.
Sogenannte Scaling Laws beschreiben empirisch beobachtete Zusammenhänge zwischen Modellgröße (einschließlich Layer-Anzahl), Datenmenge und Modellleistung. Diese Gesetze zeigen, dass die Leistung mit wachsender Tiefe vorhersagbar ansteigt, allerdings mit abnehmenden Zuwächsen. Verdoppelt man die Anzahl der Layer, verdoppelt sich die Leistung nicht.
Neuere Forschung untersucht, ob alle Layer eines trainierten Modells gleichermaßen beitragen. Studien zum Layer Pruning zeigen, dass einzelne Layer in tiefen Netzen entfernt werden können, ohne die Leistung wesentlich zu beeinträchtigen. Das deutet darauf hin, dass manche Layer redundante Berechnungen durchführen.
Fachliche Einordnung: Men et al. (2024) und Gromov et al. (2024) demonstrierten, dass bis zu 25 Prozent der Layer in großen Sprachmodellen entfernt werden können, bevor die Leistung auf Benchmarks signifikant sinkt. Mixture-of-Experts-Architekturen verfolgen einen verwandten Ansatz, indem sie pro Eingabe nur einen Teil der verfügbaren Layer aktivieren. Die Frage, wie viele Layer tatsächlich notwendig sind, bleibt ein aktives Forschungsfeld.