E-Book, Deutsch, 415 Seiten
Raschka Large Language Models selbst programmieren
1. Auflage 2025
ISBN: 978-3-98890-266-5
Verlag: Rheinwerk Verlag
Format: EPUB
Kopierschutz: 6 - ePub Watermark
Mit Python und PyTorch ein eigenes LLM entwickeln
E-Book, Deutsch, 415 Seiten
ISBN: 978-3-98890-266-5
Verlag: Rheinwerk Verlag
Format: EPUB
Kopierschutz: 6 - ePub Watermark
Sebastian Raschka, PhD, arbeitet sehr mehr als einem Jahrzehnt im Bereich Machine Learning und KI. Er ist Staff Research Engineer bei Lightning AI, wo er LLM-Forschung betreibt und Open-Source-Software entwickelt. Sebastian ist nicht nur Forscher, sondern hat auch eine große Leidenschaft für die Vermittlung von Wissen. Bekannt ist er für seine Bestseller zu Machine Learning mit Python und seine Beiträge zu Open Source.
Weitere Infos & Material
1LLMs verstehen
In diesem Kapitel:
- Erläuterungen der grundlegenden Konzepte hinter Large Language Models (LLMs) im Überblick
- Einblicke in die Transformer-Architektur, von der LLMs abgeleitet werden
- Ein Plan für den Aufbau eines LLM von Grund auf
(LLMs, große Sprachmodelle), wie sie in ChatGPT von OpenAI angeboten werden, sind Modelle tiefer neuronaler Netze (), die in den letzten Jahren entwickelt wurden. Sie haben eine neue Ära in der Verarbeitung natürlicher Sprache (, NLP) eingeläutet. Bevor LLMs aufgekommen sind, genügten herkömmliche Methoden vollauf bei Kategorisierungsaufgaben wie zum Beispiel E-Mail-Spam-Klassifizierung und einfacher Mustererkennung, die sich mit handgestrickten Regeln oder einfacheren Modellen erfassen ließen. Allerdings waren sie bei Sprachaufgaben, die komplexe Verständnis- und Generierungsfähigkeiten erfordern, wie zum Beispiel detaillierte Anweisungen parsen, Kontextanalysen durchführen sowie kohärent und kontextuell angemessene Originaltexte erzeugen, in der Regel unterlegen. Zum Beispiel konnten frühere Generationen von Sprachmodellen keine E-Mail aus einer Liste von Schlüsselwörtern schreiben – eine Aufgabe, die für moderne LLMs trivial ist.
LLMs besitzen bemerkenswerte Fähigkeiten, um menschliche Sprache zu verstehen, zu erzeugen und zu interpretieren. Allerdings müssen wir Folgendes klarstellen: Wenn wir sagen, dass Sprachmodelle etwas »verstehen«, meinen wir, dass sie Text in einer Weise verarbeiten und erzeugen können, der kohärent und kontextuell relevant erscheint, und nicht, dass sie menschenähnliches Bewusstsein oder Verständnis besitzen.
Dank der Fortschritte beim , einem Teilbereich des (des maschinellen Lernens) und der (KI), der sich auf neuronale Netze konzentriert, werden LLMs mit riesigen Mengen von Textdaten trainiert. Dieses groß angelegte Training versetzt LLMs in die Lage, im Vergleich zu früheren Ansätzen tiefere kontextuelle Informationen und Feinheiten der menschlichen Sprache zu erfassen. Infolgedessen haben LLMs die Leistung in einem breiten Spektrum von NLP-Aufgaben erheblich verbessert, einschließlich Textübersetzung, Stimmungsanalyse, Beantwortung von Fragen und vielem mehr.
Heutige LLMs und frühere NLP-Modelle unterscheiden sich zudem dadurch, dass frühere NLP-Modelle in der Regel für bestimmte Aufgaben wie Textkategorisierung, Sprachübersetzung usw. konzipiert wurden. Diese früheren NLP-Modelle konnten zwar in ihren eng gefassten Anwendungen brillieren, doch LLMs erweisen sich als kompetenter in einem breiten Spektrum von NLP-Aufgaben.
Der Erfolg der LLMs lässt sich auf die Transformer-Architektur zurückführen, die vielen LLMs zugrunde liegt, sowie auf die riesigen Datenmengen, mit denen LLMs trainiert wurden, sodass sie eine umfangreiche Palette an sprachlichen Nuancen, Kontexten und Mustern erfassen können, die manuell nur schwer zu codieren wären.
Dieser Übergang zur Implementierung von Modellen, die auf der Transformer-Architektur basieren und große Trainingsdatensätze verwenden, um LLMs zu trainieren, hat NLP grundlegend verändert, sodass jetzt leistungsfähigere Tools verfügbar sind, um menschliche Sprache zu verstehen und damit zu interagieren.
Die folgende Erörterung umreißt den Ausgangspunkt, um das primäre Ziel dieses Buchs zu erreichen: Verstehen von LLMs durch schrittweise Implementierung des Codes eines ChatGPT-ähnlichen LLM, das auf der Transformer-Architektur basiert.
1.1Was ist ein LLM?
Ein LLM ist ein neuronales Netz, das darauf ausgelegt ist, Klartext zu verstehen, zu erzeugen und darauf zu reagieren. Diese Modelle sind tiefe neuronale Netze (Deep Neural Networks), die mit riesigen Mengen an Textdaten trainiert wurden, die manchmal große Teile des gesamten öffentlich zugänglichen Texts im Internet umfassen.
Das »Large« in »Large Language Models« bezieht sich sowohl auf die Größe des Modells in Bezug auf die Parameter als auch auf den riesigen Datensatz, mit dem es trainiert wurde. Derartige Modelle haben oft Dutzende oder sogar Hunderte von Milliarden an Parametern, d.h. die anpassbaren Gewichte im Netz, die während des Trainings optimiert werden, um das nächste Wort in einer Sequenz vorherzusagen. Die Vorhersage des nächsten Worts ist sinnvoll, weil sie die inhärente sequenzielle Natur der Sprache nutzt, um Modelle für das Verstehen von Kontext, Struktur und Beziehungen im Text zu trainieren. Da es sich um eine sehr einfache Aufgabe handelt, überrascht es viele Forscher, dass sie dennoch derart leistungsfähige Modelle hervorbringen kann. In späteren Kapiteln werden wir den Ablauf für das Training mit dem nächsten Wort Schritt für Schritt erläutern und implementieren.
LLMs setzen auf eine als bezeichnete Architektur, die es ihnen ermöglicht, Aufmerksamkeit selektiv auf verschiedene Teile der Eingabe zu richten, um Vorhersagen zu erstellen, sodass sie speziell dafür geeignet sind, die Nuancen und Komplexitäten der menschlichen Sprache zu berücksichtigen.
Da LLMs in der Lage sind, Text zu generieren, betrachtet man sie oftmals auch als eine Form der generativen künstlichen Intelligenz, kurz GenAI (für ). Wie Abbildung 1.1 zeigt, umfasst künstliche Intelligenz die Entwicklung von Maschinen, die Aufgaben ausführen können, für die eine menschliche Intelligenz erforderlich ist – einschließlich Sprache verstehen, Muster erkennen und Entscheidungen treffen –, und Teilbereiche wie Machine Learning oder Deep Learning.
.
Die Algorithmen, die KI implementieren sollen, stehen im Mittelpunkt des Machine Learning. Insbesondere geht es bei Machine Learning um die Entwicklung von Algorithmen, die anhand von Daten lernen und Vorhersagen oder Entscheidungen treffen können, ohne explizit programmiert zu werden. Um dies zu veranschaulichen, stellen Sie sich einen Spam-Filter als praktische Anwendung des Machine Learning vor. Anstatt Spam-E-Mails mithilfe von manuell formulierten Regeln zu identifizieren, wird ein Algorithmus für Machine Learning mit Beispielen von E-Mails gefüttert, die als Spam- und Nicht-Spam-E-Mails gekennzeichnet sind. Indem man den Fehler des Modells in seinen Vorhersagen auf einem Trainingsdatensatz minimiert, lernt es, Muster und Charakteristika von Spam zu erkennen, sodass es in die Lage versetzt wird, neue E-Mails entweder als Spam oder als Nicht-Spam zu klassifizieren.
Wie Abbildung 1.1 zeigt, bildet Deep Learning einen Teilbereich des Machine Learning, bei dem es darum geht, komplexe Muster und Abstraktionen in den Daten durch neuronale Netze mit drei oder mehr Schichten (auch als Deep Neural Networks bezeichnet) zu modellieren. Im Gegensatz zum Deep Learning ist beim herkömmlichen Machine Learning eine manuelle Merkmalsextraktion erforderlich. Das heißt, dass menschliche Experten die relevantesten Features für das Modell identifizieren und auswählen müssen.
Der Bereich der künstlichen Intelligenz wird heute von Machine Learning und Deep Learning dominiert, umfasst aber auch andere Ansätze – zum Beispiel regelbasierte Systeme, genetische Algorithmen, Expertensysteme, Fuzzy-Logik oder Computeralgebra (symbolische Manipulation algebraischer Ausdrücke).
Kommen wir auf das Beispiel der Spam-Klassifizierung zurück: Beim traditionellen Machine Learning könnten menschliche Experten manuell Merkmale aus dem E-Mail-Text herausziehen, wie zum Beispiel die Häufigkeit bestimmter Trigger-Wörter (etwa »Preis«, »Gewinn«, »kostenlos«), die Anzahl der Ausrufezeichen, die Verwendung von Wörtern in Großbuchstaben oder das Vorhandensein verdächtiger Links. Mit diesem Datensatz, der auf der Grundlage der von menschlichen Experten definierten Merkmale erstellt wurde, wird dann das Modell trainiert. Im Unterschied zum herkömmlichen Machine Learning ist beim Deep Learning kein manuelles Extrahieren erforderlich. Für ein Deep-Learning-Modell müssen also keine menschlichen Experten die relevantesten Merkmale identifizieren und auswählen. (Allerdings müssen sowohl beim herkömmlichen Machine Learning als...




