KI-Begriffe

Neuronales Netz

Die Grundlage aller heutigen KI-Modelle: viele einfache Recheneinheiten, in Schichten verbunden, die aus Beispielen lernen statt programmiert zu werden.

Lesestand

Ein neuronales Netz ist eine Funktion, die aus vielen kleinen Bausteinen zusammengesetzt ist, den künstlichen Neuronen. Jedes Neuron rechnet nur: Eingaben gewichten, aufsummieren, durch eine einfache Kurve schicken. Viele davon in Schichten hintereinander können aber erstaunlich komplizierte Zusammenhänge abbilden.

Die Gewichte – die Parameter – werden nicht programmiert, sondern gelernt: Man zeigt dem Netz Beispiele, misst den Fehler und stellt alle Gewichte ein kleines Stück besser ein. Tausendfach, millionenfach. Ein Sprachmodell ist nichts anderes als ein sehr großes neuronales Netz.

Das künstliche Neuron

Das Vorbild ist die Nervenzelle: Sie empfängt Signale von anderen Zellen, und wenn genug zusammenkommt, „feuert“ sie. Das künstliche Neuron ist davon allerdings nur sehr lose inspiriert. Mathematisch macht es drei Dinge:

Drei Eingaben werden gewichtet, summiert, durch eine Aktivierungsfunktion geschickt und ergeben eine Ausgabex₁x₂x₃· w₁· w₂· w₃Σ① gewichtetsummieren + b② durch eineKurve schickeny③ ausgeben
Die Gewichte w und der Bias b sind die Parameter. Ein einzelnes Neuron zum Selbst-Einstellen gibt es im Eintrag Parameter.
y = f( w₁·x₁ + w₂·x₂ + w₃·x₃ + b )

Die Funktion f heißt Aktivierungsfunktion. Typische Kandidaten sind tanh (S-Kurve zwischen −1 und 1), die Sigmoid-Funktion (zwischen 0 und 1) oder ReLU (negativ wird 0, positiv bleibt, wie es ist).

Schichten

Allein kann ein Neuron wenig. Stark wird es im Verbund: Viele Neuronen bilden eine Schicht, und die Ausgaben einer Schicht sind die Eingaben der nächsten.

Eingabeschicht, zwei verborgene Schichten und Ausgabeschicht, jedes Neuron mit jedem der nächsten Schicht verbunden
Eingabe → verborgene Schichten → Ausgabe. „Verborgen“ heißen die mittleren Schichten nur, weil man ihre Werte von außen nicht sieht. Jede Linie ist ein Gewicht.

Ein Netz mit vielen verborgenen Schichten nennt man tief – daher der Begriff Deep Learning. Die Intuition: Frühe Schichten erkennen einfache Muster, spätere kombinieren sie zu komplexeren. In einem Bilderkennungsnetz etwa erst Kanten, dann Formen, dann Gesichter.

Warum die Kurve so wichtig ist

Ohne Aktivierungsfunktion wäre jede Schicht nur eine Matrixmultiplikation. Und mehrere Matrixmultiplikationen hintereinander ergeben – wieder eine Matrixmultiplikation. Hundert Schichten wären dann nicht mächtiger als eine. Das Netz könnte nur gerade Linien ziehen.

Ohne Kurve: nur gerade Trennlinien

Mit Kurve: beliebige Formen

Erst die nichtlineare Kurve nach jedem Neuron macht ein Netz wirklich mächtig. Man kann sogar beweisen: Schon eine einzige ausreichend breite verborgene Schicht kann jede vernünftige Funktion beliebig genau annähern. Tiefe Netze schaffen das in der Praxis aber mit viel weniger Neuronen.

Ein Netz lernt – live

Hier trainiert ein echtes, winziges neuronales Netz direkt in deinem Browser. Es soll lernen, blaue und orange Punkte zu trennen. Die Hintergrundfarbe zeigt, was das Netz an jeder Stelle vorhersagen würde. Probier den Kreis erst ohne verborgene Neuronen – und dann mit vier:

Mini-Netz zum Zuschauen
Daten
Verborgene Neuronen
0Durchläufe
–Fehler
–richtig

Echtes Training mit Gradientenabstieg: tanh in der verborgenen Schicht, Sigmoid am Ausgang, Kreuzentropie als Fehlermaß. Im Netzbild steht Blau für positive, Orange für negative Gewichte; je dicker, desto größer. Dieses Netz hat je nach Einstellung 3 bis 33 Parameter.

Was man dabei beobachten kann: Ohne verborgene Neuronen bleibt die Grenze eine gerade Linie – bei „Getrennt“ reicht das, beim Kreis und bei XOR nie. Mit verborgenen Neuronen biegt sich die Grenze, bis sie passt. Und niemand hat dem Netz gesagt, dass es einen Kreis suchen soll.

Wie Lernen funktioniert

Das Training läuft in einer Schleife, die bei dem Mini-Netz oben genauso aussieht wie bei einem Sprachmodell:

1

Vorhersagen

Ein Beispiel durchs Netz schicken – der Vorwärtsdurchlauf.

2

Fehler messen

Vergleichen mit der richtigen Antwort. Eine Verlustfunktion macht daraus eine einzige Zahl.

3

Rückwärts verteilen

Für jedes Gewicht ausrechnen, wie viel es zum Fehler beigetragen hat – und es ein Stück in die bessere Richtung schieben.

Schritt 3 heißt Backpropagation (Fehlerrückführung). Mit der Kettenregel aus der Analysis wird der Fehler von hinten nach vorn durchs Netz gereicht: Die Ausgabeschicht erfährt, wie falsch sie lag; daraus lässt sich berechnen, wie falsch die Schicht davor lag; und so weiter. Am Ende kennt jedes Gewicht seine Richtung. Das Verschieben selbst heißt Gradientenabstieg – im Eintrag Parameter als Wanderer im Nebel gezeichnet.

Heute schreibt niemand die Ableitungen mehr von Hand. Frameworks wie PyTorch oder JAX zeichnen beim Vorwärtsdurchlauf jede Rechenoperation auf und leiten danach automatisch ab („Autograd“). Man schreibt nur den Vorwärtsweg; der Rückweg entsteht von selbst.

Vom Mini-Netz zum Sprachmodell

Das Prinzip bleibt gleich, nur die Größenordnungen ändern sich gewaltig:

Mini-Netz obenGroßes Sprachmodell
Eingabe2 Zahlen (x, y)Tausende Zahlen pro Token, für Tausende Tokens
Schichten1 verborgeneDutzende bis über hundert Blöcke
Parameterbis 33Milliarden bis Hunderte Milliarden
Aufgabeblau oder orange?welches Token kommt als Nächstes?
TrainingSekunden im BrowserWochen bis Monate auf Tausenden Spezialchips

Dazu kommt eine besondere Bauweise, der Transformer, mit der Aufmerksamkeit als zentralem Baustein. Im Kern stecken aber auch dort Neuronen mit Gewichten und Aktivierungsfunktionen – im sogenannten Feedforward-Teil jedes Blocks fast genau so wie oben.

Kurze Geschichte

1943 McCulloch und Pitts beschreiben ein mathematisches Modell des Neurons.
1958 Frank Rosenblatt baut das Perzeptron – ein lernfähiges Netz aus einer Schicht.
1969 Minsky und Papert zeigen dessen Grenzen, etwa bei XOR. Das Interesse bricht ein.
1986 Rumelhart, Hinton und Williams machen Backpropagation für mehrschichtige Netze bekannt.
2012 AlexNet gewinnt einen großen Bilderkennungs-Wettbewerb deutlich – trainiert auf Grafikkarten. Der Beginn des Deep-Learning-Booms.
2017 Der Transformer – die Grundlage heutiger Sprachmodelle.

Die Ideen sind also alt. Was sich geändert hat, sind vor allem Datenmengen und Rechenleistung – und damit, wie groß man Netze tatsächlich trainieren kann.

Für Entwickler übersetzt

BegriffEntspricht ungefähr
Neuroneine Methode: Skalarprodukt plus Bias, dann Math.tanh()
Schichteine Matrixmultiplikation W · x + b, danach die Aktivierung elementweise
NetzFunktionskomposition: ausgabe(schicht2(schicht1(x)))
Trainingeine Schleife, die die Gewichts-Arrays so lange anpasst, bis die Testfälle möglichst gut stimmen
Backpropagationautomatisches Ableiten über den Aufrufbaum – wie ein Stacktrace, nur für „wer ist schuld am Fehler“
Trainingsdatendie Testfälle – mit dem Unterschied, dass hier der Code aus den Tests entsteht, nicht umgekehrt
// Ein Neuron, und ein einziger Lernschritt dafür (Sigmoid, Kreuzentropie)
double[] w = {0.1, -0.2};  double b = 0;

double vorhersage(double[] x) {
    double z = w[0]*x[0] + w[1]*x[1] + b;
    return 1 / (1 + Math.exp(-z));                 // zwischen 0 und 1
}

void lerne(double[] x, double soll, double lernrate) {
    double fehler = vorhersage(x) - soll;          // Ableitung des Verlusts nach z
    w[0] -= lernrate * fehler * x[0];                // jedes Gewicht in seine Richtung
    w[1] -= lernrate * fehler * x[1];
    b    -= lernrate * fehler;
}
// Tausendfach mit allen Beispielen aufrufen – das ist Training.

Häufige Irrtümer

„Ein neuronales Netz funktioniert wie ein Gehirn.“ – Das Gehirn war die Inspiration, mehr nicht. Echte Nervenzellen sind weit komplexer, arbeiten mit zeitlichen Impulsen und lernen nicht per Backpropagation.
„Man kann nachlesen, was das Netz gelernt hat.“ – Das Gelernte steckt verteilt in den Gewichten. Es herauszulesen ist ein eigenes, schwieriges Forschungsgebiet (Interpretierbarkeit).
„Mehr Neuronen sind immer besser.“ – Ein zu großes Netz für zu wenig Daten lernt die Beispiele auswendig, statt das Muster zu verstehen, und versagt bei neuen Fällen. Das heißt Überanpassung.
„Neuronale Netze sind eine neue Erfindung.“ – Die Grundideen stammen aus den 1940er- bis 1980er-Jahren. Neu sind Daten, Rechenleistung und Größe.

Verwandte Begriffe