Erstellen Sie GPT von Grund auf
– Stark inspiriert von Andrej Karpathys Video Und Illustrierter Transformer-Blog.
Unten ist ein Diagramm, das die Transformer-Decorder-Architektur zeigt, die ich in PyTorch implementiert habe (vollständiger Code in Github).
Trainieren des Modells zum Generieren von Kurzgeschichten:
Um zu überprüfen, ob meine Implementierung korrekt ist, habe ich zunächst das Modell trainiert TinyStories Datensatz. Ich habe ein kleines Netzwerk aufgebaut und das Modell für nur eine Epoche anhand einer kleinen Teilmenge des Datensatzes trainiert. Nachfolgend finden Sie einige Beispielergebnisse:
Hier habe ich nur versucht herauszufinden, ob das Modell in der Lage ist, einen Anschein natürlicher Sprache zu erzeugen – und das tut es auch.
Anpassung des Modells für die Musikgenerierung:
Datensatz: Klavier adl midi (Verknüpfung) – bestehend aus über 2000 Midi-Dateien.
Datenvorverarbeitung: tokenisiert mit miditok remiPlus Tokenizer – eine schnelle Möglichkeit, die Midi-Dateien zu tokenisieren und zu detokenisieren. Sequenzlänge: 256
Bei der Tokenisierung und Detokenisierung der Dateien entsteht ein gewisser Verlust. Aber es ist in Ordnung
Modellkonfiguration
- Achtung Köpfe: 8
- Transformatorschichten: 1
- Einbettungsmaß: 769
- Token-Vokabular: 633
- Epochen: 5
Läuft auf meiner kleinen GPU – 1080Ti – etwa 12 Stunden/Epoche