Große Sprachmodelle – Grundlagen
Lernziele
Nachdem Sie diese Lektion abgeschlossen haben, sind Sie in der Lage, die folgenden Aufgaben auszuführen:
- Beschreiben eines großen Sprachmodells (LLM)
- Erläutern, wie LLMs trainiert werden
- Besser verstehen, wie die LLM-Optimierung funktioniert
Was ist ein großes Sprachmodell (LLM)?
Stellen Sie sich vor, Sie hätten einen äußerst cleveren digitalen Assistenten, der riesige Mengen an Text gelesen hat, einschließlich Text aus Büchern, Artikeln, Websites und anderen Dokumenten bis zum Jahr 2021. Dieser Assistent "enthält" jedoch keine ganzen Bücher, wie dies bei einer Bibliothek der Fall ist. Stattdessen verarbeitet er Muster aus den Textdaten, mit denen er trainiert wurde.
Sie können diesem digitalen Assistenten eine beliebige Frage stellen, und er wird versuchen, Ihnen auf der Grundlage der "gelesenen" Inhalte eine Antwort zu geben. Er "versteht" die Inhalte nicht wie ein Mensch, ist aber wirklich gut darin, sich Informationen zu merken und sie zu verknüpfen.
Dieser digitale Assistent ist vergleichbar mit einem großen Sprachmodell (LLM). LLMs sind fortschrittliche Computermodelle, die dafür konzipiert sind, von Menschen verfasste Texte zu verstehen und menschenähnliche Texte zu erstellen. Sie werden mit riesigen Mengen von Textdaten trainiert, um Muster, Sprachstrukturen und Beziehungen zwischen Wörtern und Sätzen zu lernen.
Wie funktionieren große Sprachmodelle?
Im Wesentlichen sagen LLMs wie GPT-3 jeweils ein Token (z. B. ein Wort oder ein Zeichen) voraus und erstellen so eine Abfolge von Anfang bis Ende. Bei einer Anfrage versuchen sie, das nächste Token vorherzusagen, und dann das nächste und das nächste und so weiter.
Vorhersagen von LLMs beziehen sich auf ihre Fähigkeit, Text auf der Grundlage von Mustern, die sie bei ihrem Training kennengelernt haben, zu generieren oder zu vervollständigen. Dabei vollbringen sie beeindruckende Leistungen bei der Mustererkennung innerhalb riesiger Textmengen. Sie können kohärente und kontextbezogen relevante Inhalte zu einem breiten Spektrum von Themen erstellen.
Das Adjektiv "große" in der Bezeichnung "große Sprachmodelle" bezieht sich auf den Umfang und die Komplexität dieser Modelle. Sie benötigen erhebliche Rechenressourcen, wie etwa leistungsstarke Server mit mehreren Prozessoren und viel Arbeitsspeicher. Diese Ressourcen ermöglichen es dem Modell, riesige Datenmengen zu verarbeiten, wodurch sich seine Fähigkeit verbessert, qualitativ hochwertigen Text zu verstehen und zu erzeugen.
LLMs variieren in der Größe, enthalten aber in der Regel Milliarden von Parametern. Parameter sind die Variablen, die das Modell während des Trainingsprozesses lernt. Sie stellen das Wissen und die Erkenntnisse dar, das bzw. die das Modell aus den Daten gewinnt. Je höher die Zahl der Parameter ist, desto größer ist die Kapazität des Modells, zu lernen und komplexe Muster in den Daten zu erfassen.
Um Ihnen eine ungefähre Vorstellung davon zu geben, wie viele Parameter LLMs verwenden, hier ein paar Zahlen: Frühere Versionen der GPT-Modelle (GPT = Generative Pre-trained Transformer), wie GPT-3, haben etwa 175 Milliarden Parameter. Diese Modelle gelten als recht groß und haben die Möglichkeiten der Sprachverarbeitung deutlich vorangebracht. GPT-4 soll über eine Billion Parameter haben!
Diese Zahlen sind wirklich beeindruckend, doch die schiere Größe dieser Modelle bringt auch Herausforderungen mit sich, wie z. B. die für ihr Training erforderlichen Rechenressourcen, die damit verbundene Umweltbelastung, mögliche Verzerrungen und vieles mehr.
LLMs sind wie unglaublich belesene virtuelle Assistenten, die bei einer Vielzahl von Aufgaben rund um Sprache helfen können. Sie können beim Schreiben helfen, Informationen liefern, kreative Vorschläge machen und sogar Unterhaltungen führen. Der Modellentwickler hat das Ziel, die Interaktion mit der Technologie zu erleichtern sowie natürlicher und menschenähnlicher zu machen. Benutzer sollten sich jedoch der Grenzen dieser Modelle bewusst sein und sie als Tool und nicht als unfehlbare Quelle der Wahrheit nutzen.
Was versteht man unter dem Trainieren von LLMs?
Das Trainieren eines LLMs könnte man damit vergleichen, dass man einem Roboter beibringt, die menschliche Sprache zu verstehen und zu verwenden. Und wie macht man das? Dies ist eine mögliche Vorgehensweise:
- Tragen Sie Bücher und Artikel zusammen. Stellen Sie sich einen riesigen Berg mit Büchern, Artikeln und anderem Textmaterial zum Unterrichten des Roboters vor.
- Üben Sie lesen. Lassen Sie den Roboter einen Satz lesen und fordern Sie ihn dann auf, das nächste Wort zu erraten. Zuerst wird er vielleicht zufällig raten, da er ja noch lernt.
- Überprüfen Sie die Antworten. Nachdem der Roboter seine Vermutung abgegeben hat, zeigen Sie ihm das richtige Wort aus dem tatsächlichen Text. Hat der Roboter falsch geraten, geben Sie ihm Feedback, indem Sie beispielweise sagen: "Hoppla! Das ist falsch."
- Wiederholen Sie diesen Schritt. Sie wiederholen diese Kombination aus raten und prüfen immer wieder, mit vielen verschiedenen Sätzen. Je mehr der Roboter liest, desto besser wird er im Erraten des nächsten Worts.
- Testen Sie den Roboter. Testen Sie den Roboter ab und zu mit Sätzen, die er noch nicht kennt, um festzustellen, ob er wirklich lernt oder sich die Sätze nur merkt.
- Spezialisieren Sie den Roboter. Wenn Sie möchten, dass der Roboter beispielsweise medizinische Fachsprache besonders gut beherrscht, können Sie ihm zusätzliche Lektionen mit medizinischen Büchern geben.
- Schließen Sie die Ausbildung des Roboters ab. Sobald der Roboter wirklich gut im Verstehen und Erstellen von Text ist, sagen Sie: "Sehr gut gemacht!" und lassen ihn Menschen bei verschiedenen Sprachaufgaben helfen.
Und das war's dann schon! Das Trainieren beinhaltet eine Mischung aus Leseübungen, Quizfragen und speziellen Lektionen, die so lange fortgesetzt wird, bis der Roboter ein Sprachexperte geworden ist. Für LLMs gilt im Grunde dasselbe Prinzip.
Wie funktioniert das Optimieren?
Bei der Optimierung wird ein vortrainiertes Modell mit einem neuen Datenset weiter trainiert, das kleiner und spezifischer als das ursprüngliche Trainingsdatenset ist.
Stellen Sie sich vor, Sie hätten einem Roboter beigebracht, mithilfe des größten Kochbuchs der Welt Gerichte aus aller Welt zu kochen. Das ist das Basistraining. Angenommen, Sie möchten nun, dass sich der Roboter auf die Zubereitung italienischer Gerichte spezialisiert. In diesem Fall geben Sie ihm ein kleines, detailliertes italienisches Kochbuch und lassen ihn diese Rezepte üben. Dieses spezialisierte Üben ist wie die Optimierung.
Bei der Optimierung nimmt man quasi einen Roboter (oder ein Modell), der ein wenig über viele Dinge weiß, und trainiert ihn dann zu einem bestimmten Thema weiter, bis er Experte auf diesem Gebiet ist.
Warum ist die Optimierung wichtig?
- Transfer von Wissen: Vortrainierte Modelle haben anhand ihrer umfangreichen Trainingsdatensets bereits eine Menge allgemeiner Merkmale gelernt. Die Optimierung ermöglicht es diesen Modellen, dieses allgemeine Wissen auf spezifische Aufgaben mit relativ kleinen Datensets zu übertragen.
- Effizienz: Es erfordert eine Menge Daten und Rechenressourcen, wenn man ein Deep Learning-Modell von Grund auf trainiert. Der Ausgangspunkt bei der Optimierung ist dagegen ein Modell, das bereits viel weiß, sodass Sie mit weniger Daten und Zeit eine gute Leistung erzielen können.
- Bessere Leistung: Für bestimmte Aufgaben optimierte Modelle bringen oftmals mehr Leistung als Modelle, die von Grund auf für dieselben Aufgaben trainiert wurden, da sie von dem breiteren Wissen aus ihrem ursprünglichen Training profitieren.
Was beinhaltet eine Version?
Bei jeder Version bleibt die zugrunde liegende Architektur eventuell ähnlich, aber der Umfang, die Trainingsdaten oder bestimmte Parameter können sich ändern. Jede neue Version zielt darauf ab, die Schwächen der vorherigen Version zu verbessern, ein breiteres Aufgabenspektrum zu bewältigen oder Verzerrungen bzw. Fehler zu reduzieren.Hier eine vereinfachte Erklärung:
Version 1 (z. B. GPT-1 von OpenAI oder BERT-base von Google)
- Der Anfang: Die erste Version des Modells. Sie funktioniert gut, ist aber wie der erste Entwurf eines Romans – es gibt noch Raum für Verbesserungen.
- Größe und Daten: Verwendet eine bestimmte Menge von Daten und hat eine bestimmte Anzahl von Parametern (wie die "Gehirnzellen" des Modells).
Version 2 (GPT-2 von OpenAI)
- Verbesserungen: Auf der Grundlage der Erkenntnisse aus der ersten Version werden Anpassungen vorgenommen. Das ist so, als würde man seinen Roman anhand von Feedback überarbeiten.
- Größe und Daten: Oftmals größer mit mehr Parametern. Kann mit verschiedenen oder größeren Datensets trainiert worden sein.
Version 3 (GPT-3 von OpenAI)
- Noch besser: Beinhaltet mehr Feedback, Forschung und technologische Fortschritte
- Größe und Daten: Viel größer. GPT-3 hat beispielsweise 175 Milliarden Parameter, kann dadurch mehr, erfordert aber auch mehr Ressourcen.
Optimierte Versionen:
- Nach der Veröffentlichung der Hauptversionen gibt es manchmal spezielle Versionen, die für bestimmte Aufgaben optimiert sind. Das ist so, als würde man einen allgemeinen Roman in eine Krimi-, Liebesroman- oder Science-Fiction-Version umschreiben.
Weitere Iterationen:
- Zu Modellen wie BERT gibt es Varianten (RoBERTa, DistilBERT usw.), bei denen es sich im Grunde genommen um andere "Versionen" mit kleinen Verbesserungen an der Trainingsstrategie oder Architektur handelt.
Die LLM-Versionen sind wie aufeinanderfolgende Bände einer Buchreihe, wobei jeder neue Band darauf abzielt, eine noch raffiniertere, ausführlichere und fesselndere Lektüre zu bieten.
Als Nächstes sehen wir uns an, wie LLMs mit Salesforce eingesetzt werden können.