Vom Bigramm zum LLM
Dein Bigramm-Modell funktioniert — aber der erzeugte Text ist nicht sonderlich sinnvoll. Was machen große Sprachmodelle (LLMs) anders?
Die Unterschiede
| Bigramm-Modell | LLM (z.B. ChatGPT) | |
|---|---|---|
| Kontext | Nur das letzte Token | Hunderte bis Tausende Tokens |
| Architektur | Häufigkeitstabelle | Transformer-Netzwerk |
| Trainingsdaten | Ein kleiner Korpus | Milliarden Texte aus dem Internet |
| Parameter | Dutzende | Milliarden |
| Ergebnis | Zufällige Aneinanderreihung | Zusammenhängende, sinnvolle Texte |
Ein LLM (Large Language Model) ist ein großes Sprachmodell, das auf Milliarden Texten trainiert ist und auf der Transformer-Architektur basiert. Der wesentliche Unterschied zum Bigramm-Modell ist der Kontext: ein LLM betrachtet nicht nur das letzte Token, sondern den gesamten vorherigen Text, um das nächste Token vorherzusagen.
Der Schlüssel: Attention
Die Transformer-Architektur nutzt Attention (Aufmerksamkeit): das Modell lernt, welche vorherigen Tokens für die Vorhersage des nächsten Tokens wichtig sind. Wenn der Satz „die Katze jagt die ..." heißt, weiß das LLM durch Attention, dass „Katze" das Subjekt ist und „die" das Objekt einleitet — das nächste Token ist wahrscheinlich „Maus".
Skalierung
Ein Bigramm-Modell mit 10 Tokens im Vokabular hat eine 10×10-Tabelle — 100 Werte. Ein LLM mit 50.000 Tokens im Vokabular und Milliarden Parametern hat eine Vielzahl von Schichten, Gewichten und Attention-Köpfen. Die Grundidee ist dieselbe: das nächste Token vorherzusagen. Aber die Kapazität, Muster zu lernen, ist um Größenordnungen größer.
Das Bigramm-Modell ist die kürzestmögliche Implementierung der Grundidee, auf der auch LLMs beruhen: das nächste Token nach Wahrscheinlichkeit vorhersagen. Der Unterschied ist Kontext (nur 1 Token vs. Tausende), Architektur (Tabelle vs. Transformer) und Skalierung (Dutzende vs. Milliarden Parameter).
a) Vergleiche: Führe dein Bigramm-Modell aus Kapitel 5.3 mit einem ChatGPT-Prompt aus, der denselben Korpus als Kontext bekommt. Worin unterscheiden sich die Ergebnisse?
b) Warum kann ein Bigramm-Modell keine längeren Zusammenhänge erkennen? (Denke an den Satz „die Katze, die gestern im Garten war, schläft jetzt".)
c) Überlege: Was passiert, wenn ein LLM ein Token sieht, das in seinen Trainingsdaten nie vorkam? (Tipp: Tokenisierung)
Tipp zu b)
Schreibe den Satz auf und streiche alles bis auf die letzten zwei Wörter. Genau so viel sieht das Bigramm-Modell in dem Moment, in dem es das nächste Wort wählen muss. Reicht das, um zu wissen, ob es „schläft" oder „schlafen" heißen muss?
Tipp zu c)
Denk zurück an Lektion 5.1: Echte Tokenizer zerlegen seltene Wörter in Teilstücke. Was bedeutet das für ein Wort, das das Modell noch nie gesehen hat?