T5 (Text-to-Text Transfer Transformer) ist eine Serie großer Sprachmodelle, die von Google AI entwickelt und 2019 eingeführt wurde. Die Modelle basieren auf der Transformer-Architektur, insbesondere einem Encoder-Decoder-Design, bei dem der Encoder Eingabetext verarbeitet und der Decoder Ausgabetext generiert. Die zentrale Innovation von T5 ist sein einheitliches Text-zu-Text-Framework, das jede Aufgabe der natürlichen Sprachverarbeitung - von Übersetzung über Zusammenfassung bis hin zur Beantwortung von Fragen - als Text-zu-Text-Problem behandelt, bei dem sowohl Eingaben als auch Ausgaben immer Textzeichenfolgen sind.
Das ursprüngliche T5-Papier, "Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer", zeigte, dass eine einzige Modellarchitektur durch Vortraining auf einem massiven Korpus und anschließendes Feintuning für spezifische Aufgaben Spitzenergebnisse über mehrere NLP-Benchmarks hinweg erzielen konnte. Dieser Ansatz beeinflusste nachfolgende Entwicklungen in der Großsprachmodell-Forschung und trug zum breiteren Feld der generativen KI bei.
Training
Die ursprünglichen T5-Modelle wurden auf dem Colossal Clean Crawled Corpus (C4) vortrainiert, einem Datensatz, der aus dem Internet gescrapten Text und Code enthält. Dieser Vortrainingsprozess ermöglichte es den Modellen, allgemeine Sprachverständnis- und Generierungsfähigkeiten zu erlernen. Nach dem Vortraining konnten T5-Modelle auf spezifischen nachgelagerten Aufgaben feinabgestimmt werden, wobei sie ihr Wissen anpassten, um in verschiedenen Anwendungen gut abzuschneiden.
Das Vortraining verwendete ein Denoising-Ziel, bei dem das Modell lernte, korrupten Text zu rekonstruieren. Beispielsweise wurde das Modell bei der Eingabe "Thank you <X> me to your party <Y> week" darauf trainiert, "<X> for inviting <Y> last <Z>" auszugeben, wobei <X> und <Y> auszufüllende Lücken bezeichnen (im ursprünglichen Bericht "Sentinels" genannt) und <Z> das Ende der Ausgabe markiert. Die Modelle wurden auch auf Aufgaben wie Übersetzung (z. B. "translate English to German: That is good." -> "Das ist gut.") und grammatikalische Akzeptanzurteile (z. B. "The course is jumping well." -> "not acceptable") vortrainiert.
Architektur
Die T5-Serie umfasst mehrere Modelle mit unterschiedlichen Größen, die alle die Encoder-Decoder-Transformer-Architektur verwenden. Das ursprüngliche Papier berichtete über fünf Modellvarianten, die sich durch die Parameteranzahl unterscheiden: T5-small, T5-base, T5-large, T5-3B und T5-11B. Encoder und Decoder haben immer die gleiche Anzahl an Schichten; zum Beispiel hat T5-small 6 Schichten sowohl im Encoder als auch im Decoder.
Zu den wichtigsten Architekturparametern gehören die Anzahl der Schichten (n_layer), die Anzahl der Aufmerksamkeitsköpfe (n_head), die Dimension der Einbettungsvektoren (d_model), die Dimension des Feedforward-Netzwerks (d_ff) und die Dimension der Schlüssel-/Wertvektoren (d_kv). Im Gegensatz zu typischen Transformatoren erfüllen die 3B- und 11B-Modelle nicht die Beziehung d_model = d_kv × n_head.
Im Vergleich zum ursprünglichen Transformer führte T5 mehrere geringfügige Modifikationen ein: Schichtnormalisierung ohne additiven Bias, Platzierung der Schichtnormalisierung außerhalb des Residuenpfads und Verwendung relativer Positions-Einbettungen. Alle Experimente verwendeten einen WordPiece-Tokenizer mit einer Vokabulargröße von 32.000, der für Eingabe und Ausgabe gemeinsam genutzt und auf einer Mischung aus englischen, deutschen, französischen und rumänischen Daten aus C4 im Verhältnis 10:1:1:1 trainiert wurde.
Varianten
Mehrere nachfolgende Modelle verwendeten die T5-Architektur mit nicht standardisierten Benennungskonventionen. Bemerkenswerte Varianten umfassen:
- T5 1.1 (small, base, large, XL, XXL): Verbesserte Versionen mit ungefähr gleichen Parametern, die GEGLU-Aktivierung anstelle von ReLU verwenden und 3B/11B in XL/XXL mit geänderten Formen umbenennen.
- LM-adapted T5 (2021): Startete von T5-Checkpoints und trainierte weiter auf 100B zusätzlichen Token aus C4.
- Switch Transformer (2021): Eine Mixture-of-Experts-Variante, die Feedforward-Schichten durch Mixture-of-Expert-Schichten ersetzt.
- T0 (2021): Startete von LM-adapted T5-Checkpoints und trainierte für Zero-Shot-Aufgabenanweisungsbefolgung.
- ByT5 (2021): Eine Byte-Ebene-Version, die auf UTF-8-Bytes ohne Tokenizer arbeitet und auf mehrsprachigem C4 trainiert wurde.
- Flan-T5-XL (2022): Anweisungsabgestimmt auf dem FLAN-Datensatz, ausgehend von T5 XL.
- T5X (2022): Eine JAX-basierte Neuimplementierung der ursprünglichen TensorFlow-Codebasis.
- UL2 20B (2022): Skaliert auf 20B Parameter mit einem "Mixture of Denoisers"-Ziel, trainiert auf C4.
- Flan-UL2 20B (2022): UL2 20B anweisungsfeinabgestimmt auf FLAN.
- Pile-T5 (2024): Gleiche Architektur, aber mit dem Llama-Tokenizer, trainiert auf The Pile.
Anwendungen
T5-Modelle wurden in verschiedenen Anwendungen eingesetzt, darunter Chatbots, maschinelle Übersetzungssysteme, Textzusammenfassungswerkzeuge, Codegenerierung und Robotik. Das Encoder-Decoder-Design ermöglicht Anweisungsbefolgung: Der Encoder verarbeitet die Anweisung und der Decoder generiert autoregressiv die Antwort.
Der T5-Encoder kann auch als Text-Encoder dienen, ähnlich wie BERT, und reelle Zahlenvektorsequenzen für nachgelagerte Anwendungen erzeugen. Beispielsweise verwendet Google Imagen T5-XXL als Text-Encoder zur Konditionierung eines Diffusionsmodells, und das AuraFlow-Diffusionsmodell verwendet Pile-T5-XL. Diese Anwendungen demonstrieren die Vielseitigkeit von T5 über traditionelle NLP-Aufgaben hinaus und tragen zu Fortschritten im maschinellen Lernen und Deep Learning bei.