Das Training der Large Language Systems
Die Large Language Models (LLM) sind die Grundlage der Chatbots und vieler weiterer Anwendungen im Bereich der Künstlichen Intelligenz.Sie basieren auf Neuronalen Netzen. Unter den verschiedenen Typen haben sich inzwischen die Transformer-Modelle durchgesetzt.
Allen Modellen ist gemeinsam, dass sie trainiert werden müssen. Ohne Training sind sie zu nichts zu gebrauchen. Beim Training lassen sich zwei Phasen unterscheiden, das eigentliche Training und das Online-Lernen.
Im Training wird das LLM mit einem großen Datenbestand „gefüttert“. Je nach Art des beabsichtigten Verwendungszwecks können diese Daten neben Text auch Programmcode, Bilder und Video- oder Tonsequenzen enthalten.
Im Training muss das LLM „lernen“, Muster und Zusammenhänge in den Daten zu erkennen. Diese Muster werden dann verwendet, um neue Texte zu generieren, Sprachen zu übersetzen, Bilder nach textlichen Anweisungen zu erzeugen oder andere Aufgaben auszuführen.
Im Trainingsprozess werden die Verbindungsgewichte zwischen den Neuronen des Neuronalen Netzes so lange verändert, bis die Antworten des Systems auf die Trainingseingaben innerhalb einer vorgegebenen Fehlertoleranz liegen.
Das Training kann auf verschiedene Weise erfolgen. Beim Supervised Learning wird das LLM mit einem Datensatz aus Trainingsbeispielen mit je einem Eingabewert und einem Ausgabewert gefüttert. Diese Trainings sind so aufgebaut, dass zu repräsentativ ausgewählten Input-Textsequenzen bekannte richtige Output-Sequenzen gefunden werden sollen. Das Sprachmodell weiß zunächst nicht, welche Werte zusammengehören. Es muss lernen, die Eingabewerte zu den Ausgabewerten richtig zuzuordnen.
Beim Unsupervised Learning erhält das Modell unstrukturierte Daten und soll dann selbst Muster und Zusammenhänge in diesen Daten ohne weitere Hilfe erkennen.
Beim Reinforcement Learning muss das System die passende Kategorisierung der Eingabe ebenfalls selber herausfinden, erhält aber nach jedem Trainingsdurchlauf Information, ob sich die Richtigkeit des Outputs verbessert oder verschlechtert hat. Aufgrund dieser Information ändert es die Gewichte zwischen den Neuronen.
Die Art und Weise, wie die Gewichte eines neuronalen Netzes an Benutzeranfragen angepasst werden, hängt von verschiedenen Faktoren ab, darunter die Art des neuronalen Netzes, die Größe des Datensatzes, mit dem das neuronale Netz trainiert wird, und die gewünschte Genauigkeit der Antworten.
Je nach Art des Sprachmodells sind Millionen bis Milliarden einzelner Trainings-Steps erforderlich. Zum Beispiel wurde das Modell GPT-3 von OpenAI mit einem Datensatz von 500 Milliarden Wörtern trainiert und benötigte 175 Milliarden Trainings-Steps. Das Training für das Modell LaMDA (Language Model for Dialogue Applications) von Google AI erforderte 1,56 Billionen Trainings-Steps, lief auf besonderen Hochleistungsprozessoren und benötigte anderthalb Monate. Es gibt aber auch Beispiele für Large Language Models, die mit deutlich weniger Trainings-Steps auskommen.
Umfang und Dauer des Trainings hängen entscheidend von der Art des Modells ab, z.B. seiner Netzstruktur mit unterschiedlich vielen verborgenen Schichten (hidden layers), der Zahl der Neurone und insbesondere der Zahl ihrer Verbindungen untereinander, die oft als Parameter bezeichnet werden. GPT-2 von OpenAI kam noch mit 774 Millionen solcher Parameter aus, bei GPT-3 waren es schon 175 Milliarden Parameter. Seitdem veröffentlicht OpenAI keine technischen Informationen mehr. Sich gut in der Szene auskennende Menschen wollen aber trotzdem herausgefunden haben, dass GPT-4 mit 1.8 Billionen Parametern arbeitet, 120 Netzwerkebenen verwendet und mit 13 Billionen Wörtern trainiert wurde (Timira Amaratunga, Understandig Large Language Models, New York 2023, S. 124).
Der ungeheure Aufwand für das Training macht klar, dass dies nur bei hochgradiger Automatisierung des Prozesses möglich ist. Das Modell muss anhand eines Validierungsdatensatzes die Trainingsergebnisse bewerten. Wird diese Aufgabe von Menschen wahrgenommen, so erfordert dies Fachwissen und Erfahrung und ist sehr teuer. Maschinell werden diese Vergleiche durchführt, indem die Ergebnisse des Modells auf dem Trainingsdatensatz und dem Validierungsdatensatz mithilfe von Algorithmen verglichen werden. Dies ist ein schnellerer und zeitlich effizienterer Prozess als die manuelle Durchführung und ist deshalb auch das mit großem Abstand bevorzugte Verfahren.
Viele Modelle werden schon vortrainiert, mit Absolvierung eines solchen Trainings, angeboten (wie bei ChatGPT die Abkürzung GPT - Generarative Pre-Trained Transformer bereits erkennen lässt).
Ablauf des Trainings
Das Training eines Large Language Models läuft in der Regel in folgenden Phasen ab:
- Datenerfassung: In der ersten Phase werden die Daten gesammelt, mit denen das Modell trainiert werden soll. Diese Daten können aus einer Vielzahl von Quellen stammen, wie z. B. Text aus Büchern, Artikeln, Websites, den Benutzerdialogen mit den Systemen selbst oder auch Posts aus sozialen Medien. Die Daten sollen repräsentativ für ihren späteren Verwendungszweck sein.
- Datenbereinigung: Die Daten müssen zunächst auf ihre Qualität und Relevanz überprüft und anschließend für das Training vorbereitet werden. Dies kann z. B. durch das Entfernen von Störfaktoren, wie z. B. Grammatikfehlern oder Rechtschreibfehlern, erfolgen. Unvollständige Daten werden ergänzt. Unerwünschte Daten werden entfernt, z.B. diskriminierende oder Gewalt verherrlichende Daten. Dies geschieht fast ausnahmslos vollautomatisch und ist nur so treffsicher, wie die zur Überprüfung verwendeten Algorithmen. Man ahnt wie problematisch hier die Grenzziehung zur Zensur ist und wie hoch die Gefahr ist, heimliche oder auch bekannte Vorurteile der Systemanbieter in den Datensätzen zu reproduzieren. Die Daten müssen dann anschließend in eine für die Modelle anwendbare mathematische Form gebracht werden, bekannt als Vektorisierung.
- Modellauswahl: In der zweiten Phase wird das richtige Modell für die jeweilige Aufgabe ausgewählt. Es gibt eine Vielzahl von LLM-Architekturen, die sich in ihrer Komplexität und Leistung unterscheiden. Die Wahl der richtigen Architektur hängt wieder von einer Reihe von Faktoren ab, darunter der angestrebte Verwendungszweck des Systems, die Komplexität der Aufgabe, der Umfang der Trainingsdaten und die verfügbaren Ressourcen.
- Trainingsparameter: In der dritten Phase werden die Trainingsparameter festgelegt. Dazu gehören z. B. die Lernrate, die Anzahl der Trainings-Steps und die Art der Trainingsalgorithmen. Die Trainingsparameter bestimmen, wie das Modell lernt und wie schnell es lernt. Die Wahl der richtigen Trainingsparameter hängt auch wieder von einer Reihe von Faktoren ab, darunter vor allem die Komplexität der Aufgabe und die verfügbaren Ressourcen.
- Training: In der vierten Phase wird das Modell mit den gesammelten Daten trainiert. Dies ist ein iterativer Prozess, bei dem das Modell die Trainingsdaten wiederholt durchläuft und dabei seine Parameter anpasst. Der Trainingsprozess kann je nach Größe des Modells und der Menge der Trainingsdaten Millionen bis Milliardeb Steps umfassen und mehrere Tage oder Wochen dauern.
- Spezielle Zusatztrainings: Unter anderem um die Performance des Systems zu verbessern, gibt es eine Menge von Spezialtrainings. Sie zielen z.B. darauf, die Namen von Personen, Orten, Ereignissen besser zu erkennen (Text Classification) oder Dinge stimmungsmäßig als positiv, negativ oder neutral zu bewerten (Sentiment Analytics). Auch das versuchsweise Herausfiltern von Elementen des Hate Speech gehört hierhin, ebenfalls das Trimmen auf Antworten, die als political correct betrachtet werden können - alles zusätzlich anwendbare Manipulationen.
- Validierung: In der fünften Phase wird das Modell anhand eines Validierungsdatensatzes validiert. Dies dient dazu, sicherzustellen, dass das Modell nicht zu stark auf die Trainingsdaten angepasst ist. Wenn die Ergebnisse des Modells auf dem Validierungsdatensatz schlechter sind als auf den Trainingsdaten, ist das Modell wahrscheinlich overfitted.
- Tuning: In der sechsten Phase kann das Modell durch Tuning der Trainingsparameter oder durch Hinzufügen von neuen Trainingsdaten weiter verbessert werden. Dies ist wiederum ein iterativer Prozess, der bis zu einem zufriedenstellenden Ergebnis durchgeführt wird.
Online-Lernen
Wenn nach dem Training nichts mehr geschieht, bleibt das „Wissen“ des Systems buchstäblich stehen, es ist suzusagen eingefroren. Das reicht aus, um jederzeit grammatisch richtige Sätze bilden zu können, vorausgesetzt der Trainings-Datensatz ist umfangreich genug. Was dort aber als Faktenwissen nicht repräsentiert ist, kann das System bestenfalls „halluzinieren“. Es muss sich dann aus seinen „sicheren“ Gefilden der Interpolation in den vergleichsweise unsicheren Bereich der Extrapolation wagen. Deshalb muss das Modell mit neuen Daten aus der realen Welt aktualisiert werden. Dieses Verfahren wird als Online-Lernen bezeichnet.
Das Online-Lernen ist wichtig, um das Modell auf neue Entwicklungen und Veränderungen in der Welt anzupassen. Der Unterschied zwischen Training und Online-Lernen besteht darin, dass das Training eine einmalige Phase ist, während das Online-Lernen ein periodisch wiederholter Prozess ist. Das Training dient dazu, dem LLM die grundlegenden Fähigkeiten zu vermitteln, während das Online-Lernen dazu dient, diese Fähigkeiten zu verbessern und an neue Anforderungen anzupassen.
In der Praxis werden LLMs mit einer Kombination aus Training und Online-Lernen eingesetzt. Das Online-Learning-Verfahren läuft prinzipiell in denselben Stufen ab wie das ursprüngliche Basis-Training, nur eben mit sehr viel geringerem Aufwand.
Trainingsrisiken
Die Qualität der Systeme hängt entscheidend von der Qualität seiner Trainingsdaten ab. Das ist vor allem für die Systeme ein Problem, die der allgemeinen generativen Künstlichen Intelligenz zuzuordnen sind. Dies sind Systeme, die nicht für besondere Verwendungszwecke vorgesehen sind, sondern in allen erdenklichen Lebenslagen hilfreich sein sollen. Hier stellt sich die Frage, welche Auswahl von Trainingsdaten als repräsentativ gelten kann.
Der Charakter des Internet hat sich stark verändert. Der überwiegende Anteil der Internet-Seiten sind kommerzieller Art. Vor diesem Hintergrund ändert sich der Blick auf die Repräsentativität von Trainingsdaten.
Masse statt Klasse ist ein weiterer ernstzunhmender Kritikpunkt. Wirkliche Neuheiten haben Seltenheitswert. Informationen werden unkontrolliert vervielfältigt und aufgebläht. Daran sind die Bewertungsmetriken von Informationen (z.B. Zahl der Veröffentlichungen, Zahl der Zitierungen) nicht unschuldig. So wird sich die Bewertung von Relevanz immer schwieriger gestalten.
Bei manuellen Überpüfungen wenden sich Unternehmen häufig an Plattformen von Drittanbietern (z.B. Amazon Mechanical Turk), um billige Arbeitskräfte mit der Durchführung socher Aufgaben zu beauftragen, z. B. der Beschriftung von Objekten, der Beschreibung von Situationen, der Transkription von Passagen und der Kommentierung von Texten, dem sog. Tagging. Ein solches Verfahren kann zunächst auf einen kleinen Anteil des Trainings beschränkt werden. Seine Ergebnisse können bereinigt und wieder in das Modell eingespeist werden, um es weiter zu trainieren. Beim Training mit weiteren Daten hat es dann schon erste Lernerfahrungen, und man geht davon aus, dass die weitere Arbeit jetzt in einem viel größeren, automatisierten Maßstab erfolgen kann. Der Einfluss auf die Datenqualität eines solcherart trainierten Systems lässt sich nur schwer einschätzen.