Pre-Training

From Systems analysis Wiki
Jump to navigation Jump to search

Das Pre-Training großer Sprachmodelle (LLM) ist eine grundlegende Phase bei der Erstellung moderner großer Sprachmodelle, die darin besteht, sie auf riesigen und vielfältigen Mengen ungelabelter Texte zu trainieren. Dieser Prozess ermöglicht es den Modellen, allgemeine sprachliche Muster, Weltwissen und semantische Zusammenhänge zu erlernen und so ein sogenanntes Basismodell (Foundation Model) zu bilden, das anschließend für spezifische Aufgaben angepasst werden kann.

Was ist Pre-Training?

Das Pre-Training ist die anfängliche Trainingsphase, in der ein LLM mithilfe von Methoden des selbstüberwachten Lernens (Self-Supervised Learning) auf umfangreichen Textdatensätzen trainiert wird. Das bedeutet, dass die Trainingssignale (Labels) aus den Daten selbst generiert werden, ohne dass eine manuelle Annotation durch Menschen erforderlich ist.

Das Hauptziel dieser Phase ist die Vorhersage von verborgenen oder zukünftigen Textteilen. Je nach Architektur werden zwei Hauptaufgaben verwendet:

  • Kausale Sprachmodellierung (Causal Language Modeling, CLM): Das Modell lernt, das nächste Wort (Token) in einer Sequenz basierend auf allen vorhergehenden vorherzusagen. Dieser Ansatz bildet die Grundlage für generative Modelle wie GPT.
  • Maskierte Sprachmodellierung (Masked Language Modeling, MLM): Das Modell lernt, zufällig „maskierte“ (ausgeblendete) Wörter im Text wiederherzustellen, indem es den umgebenden bidirektionalen Kontext (Wörter links und rechts) nutzt. Diese Methode wird in Modellen wie BERT verwendet.

Durch diese Aufgaben ist das Modell gezwungen, Syntax, Semantik und Faktenwissen über die Welt zu lernen, um erfolgreiche Vorhersagen zu treffen.

Daten für das Pre-Training

Die Effektivität des Pre-Trainings hängt maßgeblich von der Qualität und Vielfalt der Trainingsdaten ab. Folgende Hauptquellen werden verwendet:

  • Webseiten: Datensätze wie Common Crawl und C4 bieten ein breites Spektrum an Themen, Stilen und Sprachen und stellen einen „Abdruck“ des Internets dar.
  • Bücher: Korpora wie BookCorpus und The Pile liefern strukturierten und kohärenten Text, der für das Verständnis von langfristigen Abhängigkeiten und Narrativen nützlich ist.
  • Konversationsdaten: Daten aus Foren (z. B. Reddit) und sozialen Netzwerken, die Modellen helfen, informelle Sprache und dialogische Muster zu erlernen.
  • Spezialisierte Daten: Wissenschaftliche Artikel (von arXiv), Programmcode (von GitHub und The Stack) oder mehrsprachige Texte zur Verbesserung spezifischer Fähigkeiten des Modells.

Beispiele für die Datenverteilung

Unterschiedliche Modelle verwenden unterschiedliche Verhältnisse von Datenquellen, was ihre finalen Fähigkeiten beeinflusst:

  • GPT-3 (175 Mrd. Parameter):** 16 % Bücher, 84 % Webseiten.
  • PaLM (540 Mrd. Parameter):** 5 % Bücher, 14 % Webseiten, 50 % Konversationsdaten, 31 % Sonstige.
  • LLaMA (65 Mrd. Parameter):** 5 % Bücher, 2 % Webseiten, 87 % Konversationsdaten.

Diese Verteilungen zeigen, dass die Wahl der Daten eine strategische Entscheidung ist, die je nach den Zielen des Modells variiert.

Häufig verwendete Korpora

Häufig verwendete Datensätze für das Pre-Training von LLMs
Korpus Größe Quelle Letzte Aktualisierung
BookCorpus 5GB Bücher Dez-2015
Gutenberg - Bücher Dez-2021
C4 800GB Common Crawl Apr-2019
CC-Stories-R 31GB Common Crawl Sep-2019
CC-NEWS 78GB Common Crawl Feb-2019
REALNEWS 120GB Common Crawl Apr-2019
OpenWebText 38GB Reddit-Links Mär-2023
Pushshift.io 2TB Reddit-Links Mär-2023
Wikipedia 21GB Wikipedia Mär-2023
The Pile 800GB Andere Dez-2020
ROOTS 1.6TB Andere Jun-2022

Trainingstechniken

Das Pre-Training von LLMs erfordert erhebliche Rechenressourcen. Zur Steuerung dieses Prozesses werden folgende Techniken eingesetzt:

  • Verteiltes Training: Einsatz mehrerer GPUs oder TPUs zur parallelen Verarbeitung.
  • Gemischte Genauigkeit (Mixed Precision): Verwendung von Zahlenformaten mit geringerer Genauigkeit (z. B. 16-Bit statt 32-Bit), um Berechnungen zu beschleunigen und den Speicherverbrauch zu senken.
  • Gradient Checkpointing: Eine Technik zur Speichereinsparung, bei der einige Zwischenaktivierungen neu berechnet statt gespeichert werden.
  • Modellparallelität (Model Parallelism): Verteilung des Modells selbst auf mehrere Geräte.

Das Training eines Modells wie GPT-3 kann mehrere Monate auf Tausenden von GPUs in Anspruch nehmen.

Skalierungsgesetze

Forschungen, wie die Arbeit von OpenAI (Kaplan et al., 2020), haben gezeigt, dass sich die Leistung von Sprachmodellen vorhersagbar mit der Zunahme von drei Faktoren verbessert:

  • der Modellgröße (Anzahl der Parameter).
  • des Datenvolumens.
  • der Rechenressourcen.

Diese empirischen Zusammenhänge, bekannt als Skalierungsgesetze, dienen Entwicklern als Leitfaden beim Entwurf und Training größerer und leistungsfähigerer Modelle und ermöglichen eine optimale Verteilung des Rechenbudgets.

Herausforderungen und Erfolge

  • Skalierung: Der größte Erfolg des Pre-Trainings liegt in der Fähigkeit, die Größe des Modells, der Daten und der Berechnungen auszubalancieren, um eine optimale Leistung zu erzielen.
  • Datenqualität: Die Sicherstellung von Sauberkeit, Vielfalt und Unvoreingenommenheit in den Trainingsdaten ist eine zentrale Herausforderung.
  • Effizienz: Die Entwicklung von Methoden zur Reduzierung des Rechenaufwands, wie z. B. kontinuierliches Pre-Training oder effizientere Architekturen.
  • Mehrsprachigkeit: Die Erstellung von Modellen, die mehrere Sprachen effektiv verarbeiten können, erfordert eine sorgfältige Auswahl und Ausbalancierung der Daten.

Siehe auch