Von GPT zu ChatGPT

Ein Überblick über die Entwicklung der GPT-Reihe von OpenAI - GPT, GPT-2, GPT-3, InstructGPT und ChatGPT

Veröffentlicht am 08.01.2023. Zuletzt aktualisiert am 08.01.2023. 913 Wörter.

Dieser Artikel gibt einen Überblick über die Entwicklung der GPT-Reihe von OpenAI, also GPT, GPT-2, GPT-3 und ChatGPT, die seit einiger Zeit viel Aufmerksamkeit erzeugt - sowohl in Fachkreisen als auch in den Medien. Dabei handelt es sich um Modelle des maschinellen Lernens, genauer gesagt, große Sprachmodelle (Large Language Models) die Deep Learning einsetzen.

GPT steht für "Generative Pre-Trained Transformer". "Generative" deutet an, dass das Modell ein generatives Modell ist, also Ergebnisse erzeugen kann. "Pre-trained" meint, dass es sich um ein vortrainiertes Modell handelt. Transformer wiederum sind Deep-Learning-Modelle, das einen Self-Attention-Mechanismus nutzen. Wie rekurrente neuronale Netze (RNNs) sind Transformer für die Verarbeitung sequenzieller Eingabedaten konzipiert. Im Gegensatz zu RNNs verarbeiten Transformer jedoch die gesamte Eingabe auf einmal. Dies ermöglicht eine stärkere Parallelisierung als bei RNNs und verkürzt somit die Trainingszeiten erheblich. Erst durch die Entwicklung der Transformer wurden Sprachmodelle möglich, die auf Milliarden von Eingabetexten trainiert wurden. Damit aber nicht jedes Token der Eingabe isoliert betrachtet wird, liefert der sogenannte Self-Attention-Mechanismus Kontext für jede Position in der Eingabesequenz. So kann die Bedeutung der einzelnen Token der Eingabe unterschiedlich gewichtet werden. Die Eingabesequenz ist jedoch in ihrer Länge begrenzt, es können also nicht beliebig lange Texte durch Tranformer verarbeitet werden.

Generative Pre-trained Transformer sind also autoregressive Sprachmodelle, die Deep Learning einsetzen, um menschenähnlichen Text zu produzieren. Bei einem gegebenen, anfänglichen Text, der "Aufforderung", produziert es einen Text, der diese Aufforderung fortsetzt. Die Aufforderung kann zum Beispiel der Beginn eines Satzes sein, den GPT dann vervollständigt. Bei der von OpenAI veröffentlichten GPT-Reihe handelt es sich also um vortrainierte, große Sprachmodelle die in der Lage sind, sprachlichen Ausgaben aus beliebiger, aber begrenzter Eingabe zu erzeugen. Im Folgenden wird auf die Modelle der GPT-Reihe eingegangen, technische Besonderheiten und Details der zugrundeliegenden Paper werden jedoch in einem anderen Artikel in diesem Blog diskutiert.

In der Originalarbeit von 2018 (Alec Radford et al.) wurde gezeigt, wie ein generatives Sprachmodell in der Lage ist, Weltwissen zu erwerben und weitreichende Abhängigkeiten zu verarbeiten, indem es auf einem vielfältigen Korpus mit langen, zusammenhängenden Textabschnitten vortrainiert wird. Die darin vorgestellte Trainingsmethode ist die Vorhersage des nächsten Tokens.

GPT-2 ist der Nachfolger von GPT und wurde zu Beginn des Jahres 2019 angekündigt. Zunächst wurde nur eine limitierte Demo öffentlich zur Verfügung gestellt, im November 2019 stellte OpenAI dann die vollständige Version von GPT-2 bereit. GPT-2 basiert auf seinem Vorgänger GPT und wurde durch die Verzehnfachung sowohl der Größe des Trainingsdatensatzes als auch der Anzahl der Parameter erzeugt. Die Anzahl der Parameter eines neuronalen Netzes gibt die Anzahl der während des Trainings veränderbaren Größen an (Weights und Biases), die wiederum direkt von der Anzahl und Größe der Schichten des Netzes abhängt. GPT-2 übersetzt, fasst zusammen, beantwortet Fragen und generiert Textausgaben auf einem Niveau, das teilweise nicht von dem eines Menschen zu unterscheiden ist. GPT-2 wurde nicht speziell für diese Aufgaben trainiert, diese Fähigkeit ist das Ergebnis, die wahrscheinlichste Fortsetzung einer beliebigen Eingabe zu generieren. Vor allem bei langen Passagen werden die Antworten von GPT-2 aber repetitiv oder gar unsinnig. GPT-2 wurde mit 1,5 Milliarden Parameter trainiert und besitzt eine Kontextlänge von 1024 Token, wobei ganz grob 1 Token einem ¾ Wort entspricht. 100 Token entsprechen damit 75 Wörtern.

GPT-3 wurde im Mai 2020 vorgestellt. Die Weiterentwicklung ist ein Transformer mit einer Kontextlänge von 2048 Token und 175 Milliarden Parametern. Die Qualität des von GPT-3 erzeugten Textes ist so hoch, dass kaum noch unterschieden werden kann, ob ein Text von einem Menschen geschrieben wurde oder nicht. Da das GPT-3 seinen Vorgängern strukturell sehr ähnlich ist, wird seine bessere Performance auf die größere Anzahl von Parametern, die größere Kontextlänge und das Mehr an Trainingsdaten zurückgeführt. Der größte Teil des Trainingdatensatzes für GPT-3 stammen aus einer gefilterten Version von Common Crawl. Common Crawl ist eine gemeinnützige Organisation, die das Web regelmäßig durchforstet und ihre Archive der Öffentlichkeit frei zur Verfügung stellt. Das Webarchiv von Common Crawl besteht aus Petabytes an Daten. Weitere Quellen sind WebText2, Books1, Books2 und Wikipedia. GPT-3 wurde so auf Hunderten von Milliarden von Wörtern trainiert.

Das im Frühjahr 2022 veröffentlichte GPT-3.5 (auch InstructGPT genannt) verwendet GPT-3 als Basismodell und wurde via Reinforcement Learning mit Feedback vom Menschen feinabgestimmt. Dazu wurde zunächst ein Preference Model trainiert. Ein solches Modell hat gelernt, Texte anhand ihrer Bevorzugung durch den Menschen zu bewerten. Dazu wurden Menschen viele Varianten von Ausgaben vorgelegt, die diese dann in eine Rangfolge von gut bis schlecht gebracht haben. Auf Basis dieser Rangfolge wurde das Preference Model trainiert. Es lernt damit, Eingabetexte nach Güte ähnlich wie ein Mensch zu bewerten. So kann ein solches Modell vor allem unerwünschte, weil unsinnige oder rassistische Texte erkennen lernen. Das Preference Model kann dann dazu genutzt werden, das eigentliche Sprachmodell (hier GPT-3) via Reinforcement Learning feinabzustimmen, indem es die Ausgaben des Sprachmodells nach Erwünschtheit bewertet. Es hat damit auch besser gelernt, Instruktionen ("Schreibe eine Geschichte zu …") zu befolgen, anstatt nur einen Text zu vervollständigen. InstructGPT hat zudem eine doppelt so große Kontextlänge im Vergleich zu GPT-3

ChatGPT wiederum ist aus GPT-3.5 hervorgegangen und kombiniert das Modell mit einer Konversationsschnittstelle. Die einfache Zugänglichkeit eines Chatsystems macht das große, via Reinforcement Learning feinabgestimmtes Sprachmodell damit für jeden verwendbar und wird damit absehbar eine Revolution in vormals Menschen vorbehalten geglaubten Tätigkeiten auslösen.