Schritt 1b: BPE — Byte Pair Encoding
Der BPE-Algorithmus in 3 Sätzen
Unser Beispiel: „Die Katze sitzt auf der Matte"
Wir arbeiten innerhalb der Wortgrenzen — Paare werden nur innerhalb eines Wortes gezählt, nicht über Leerzeichen hinweg.
Runde 0 — Start: Jeder Buchstabe einzeln
Schneide jeden Buchstaben aus (wie Blatt 3 vom Tokenizer). Lege die Wörter gruppiert hin:
Gesamt: 25 Tokens (ohne Leerzeichen)
Alle Nachbar-Paare zählen:
| Paar | Wo? | Anzahl |
|---|---|---|
| a → t | Katze, Matte | 2 ✓ |
| t → z | Katze, sitzt | 2 ✓ |
| D → i | Die | 1 |
| i → e | Die | 1 |
| K → a | Katze | 1 |
| z → e | Katze | 1 |
| s → i | sitzt | 1 |
| i → t | sitzt | 1 |
| z → t | sitzt | 1 |
| a → u | auf | 1 |
| u → f | auf | 1 |
| d → e | der | 1 |
| e → r | der | 1 |
| M → a | Matte | 1 |
| t → t | Matte | 1 |
| t → e | Matte | 1 |
a + t und t + z — beide 2×.
Bei Gleichstand nehmen wir das erste: a + t
a direkt neben t liegt,
die beiden Kärtchen zusammen zu einem neuen Kärtchen at.
Runde 1 — Nach dem Merge: a + t → at
Gesamt: 23 Tokens (2 weniger als vorher — die 2 Merges)
Neue Nachbar-Paare zählen:
at ist jetzt EIN Token! Die Paare ändern sich.
In „Katze" ist es jetzt K→at, at→z, z→e (nicht mehr a→t, t→z).
| Paar | Wo? | Anzahl |
|---|---|---|
| D → i | Die | 1 |
| i → e | Die | 1 |
| K → at | Katze | 1 |
| at → z | Katze | 1 |
| z → e | Katze | 1 |
| s → i | sitzt | 1 |
| i → t | sitzt | 1 |
| t → z | sitzt | 1 |
| z → t | sitzt | 1 |
| a → u | auf | 1 |
| u → f | auf | 1 |
| d → e | der | 1 |
| e → r | der | 1 |
| M → at | Matte | 1 |
| at → t | Matte | 1 |
| t → e | Matte | 1 |
Für unser Beispiel wählen wir:
at + z → atz (um „Katze" weiter zusammenzubauen).
Runde 2 — Nach dem Merge: at + z → atz
Gesamt: 22 Tokens
at→atz, aber in „Matte" nicht!
Dort war es at + t, nicht at + z. BPE wendet nur die exakte Regel an.
Jetzt bist du dran! Zähle die Paare:
| Paar | Wo? | Anzahl |
|---|---|---|
Welches Paar wählst du?
Merge-Regel #3: _______ + _______ → ___________
Runde 3 — Dein Merge von Runde 2 anwenden
Zeichne oder klebe die neuen Token-Kärtchen hier ein:
Die: ___ ___ ___
Katze: ___ ___ ___
sitzt: ___ ___ ___ ___ ___
auf: ___ ___ ___
der: ___ ___ ___
Matte: ___ ___ ___ ___
Paare zählen:
| Paar | Wo? | Anzahl |
|---|---|---|
Merge-Regel #4:
_______ + _______ → ___________
Das Ergebnis: Dein BPE-Vokabular
Merge-Regeln (in Reihenfolge):
| # | Regel | Neues Token |
|---|---|---|
| 1 | a + t → at | at |
| 2 | at + z → atz | atz |
| 3 | ||
| 4 | ||
| 5 | ||
| 6 |
So würde BPE „Die Katze sitzt auf der Matte" am Ende tokenisieren:
Trag deine finalen Tokens hier ein: [___, ___, ___, ...]
Vergleich: Wie viele Tokens?
| Methode | Tokens | Vokabular |
|---|---|---|
| Character-Level | 25 | 14 Zeichen |
| BPE (dein Ergebnis) | ||
| Word-Level | 6 | 6 Wörter |
Die wichtigste Erkenntnis
Buchstaben → häufige Paare → häufige Teilwörter → ganze Wörter
a → at → atz → atze → Katze
Je häufiger ein Wort im Trainingstext vorkommt, desto eher wird es zu einem einzigen Token. Seltene Wörter bleiben in Teilen — aber das ist OK, weil die Teile trotzdem bekannt sind.
Deshalb kann GPT auch Wörter verarbeiten, die es nie gesehen hat!
Nächstes Blatt: Die Embedding-Tabelle — jede Token-ID bekommt einen Zahlen-Vektor