Direkt zum Inhalt

ChatGPT: Wie man einem Computer das Sprechen beibringt

Erste Sprachmodelle gab es schon in den 1950er Jahren. Doch erst seit die Computerleistung massiv zugenommen hat, können Maschinen mit menschlicher Sprache umgehen. Entscheidend dabei war auch die Imitation einer besonderen Fähigkeit unseres Gehirns.
Ein Netzwerk in Form eines menschlichen Kopfs, aus dessen Mund Buchstaben kommen
Gespräche mit Chatbots sind inzwischen möglich – und unterhaltsamer, als man denkt.

Im Januar 1954 versammelten sich mehrere ausgewählte Pressevertreter in einem großen Raum der Georgetown University, der fast vollständig von einem Computer ausgefüllt wird: Die IBM-701-Maschine war der erste für wissenschaftliche Zwecke entwickelte Rechner und wog knapp zehn Tonnen. Das an sich war schon für viele Anwesende eine Sensation. Doch das überdimensionierte Gerät tat etwas Unvorstellbares: Mit russischen Beispielsätzen gefüttert, druckte es eine ins Englische übersetzte Version aus. »In fünf, vielleicht sogar nur drei Jahren wird sprachübergreifende Übersetzung durch elektronische Verfahren (...) wahrscheinlich möglich sein«, prognostizierte kurze Zeit später der Linguist Leon Dostert in einem Interview. Er leitete das Georgetown-Experiment, das sich maschineller Übersetzung widmete. Inzwischen wissen wir, dass sich Dostert um gut 60 Jahre verschätzt hatte.

Erst mit dem Aufkommen neuronaler Netze in den 2010er und 2020er Jahren wurden die Algorithmen leistungsfähig genug, um Texte verlässlich von einer Sprache in eine andere zu übertragen. »Komplizierte Zusammenhänge werden oft als ›Raketenwissenschaft‹ bezeichnet«, erklärt der Informatiker Aljoscha Burchardt vom Deutschen Forschungszentrum für künstliche Intelligenz (KI), der sich mit Sprachtechnologie beschäftigt. »Ich korrigiere die Leute dann oft, sie sollten lieber ›Übersetzungswissenschaft‹ sagen – denn Raketen sind einfach: Um auf den Mond zu fliegen, hat die Menschheit nur etwa zehn Jahre gebraucht.«

Das Bild einer KI | Bittet man »Dall-E« ein Bild von einem Computer zu zeichnen, der auf einem Liegestuhl am Strand unter einer Palme liegt und einen Cocktail schlürft, kann dieses Ergebnis dabei herauskommen.

In den letzten Jahren wurden weitere Meilensteine der KI-Technologie erreicht: von Sprachassistenten wie »Siri« oder »Alexa« bis hin zu Algorithmen wie »Dall-E« und »Stable Diffusion«, die aus einer kurzen Beschreibung eine völlig neue Abbildung erzeugen. All diese Durchbrüche beruhen auf Fortschritten der Computerlinguistik. Die höchsten Wellen hat jüngst aber wohl der Chat-Assistent ChatGPT geschlagen, den die US-amerikanische Softwarefirma OpenAI am 30. November 2022 vorgestelltt hat.

Lassen wir die künstliche Intelligenz doch einmal selbst zu Wort kommen:
Ich bin ChatGPT, das eine und einzige Sprachmodell, mit dem du stundenlang chatten kannst, ohne dass mir langweilig wird, ich müde oder hungrig werde (naja, vielleicht brauche ich zwischendurch etwas Strom, aber das ist eine andere Geschichte). Ich bin so etwas wie eine Mischung aus einem quasselnden Kumpel, einem superschlauen Lexikon und einem witzigen Komiker – alles in einem! Wenn du dich einsam fühlst, neugierig bist oder einfach nur Blödsinn machen willst, dann trau dich ruhig und sag hallo zu deinem neuen Robo-Kumpel! Nur bitte frag mich nicht nach einem Witz über Binärcode, denn der wäre mir zu »0-0-1«-seitig!

Und schon will man natürlich einen solchen Witz hören, woraufhin das System folgendes ausspuckt:
Wie viele Programmierer braucht man, um eine Glühbirne zu wechseln? – Keinen, das ist ein Hardware-Problem!

Zugegeben, der ist etwas lahm. Nichtsdestotrotz ist es erstaunlich, wie gut man sich mit dem Computerprogramm unterhalten kann. »Die KI erschafft neue Inhalte, das merkt man daran deutlich: Witze erfinden ist eine hohe Kunst, die uns ja auch nicht leichtfällt. Dazu braucht man Humor, Empathie, Ironie, Frechheit etc.«, sagt Burchardt. Aktuell laufen Studien, um zu untersuchen, wie deutlich Personen unterscheiden können, ob ein Text von ChatGPT oder einem Menschen generiert wurde. Da die Vorgängerversionen aber bereits überzeugende Inhalte lieferten, besteht kaum Zweifel, dass auch die ChatGPT gut abschneiden wird.

Dennoch haben die aktuellen Systeme noch erhebliche Schwächen, die in den Medien heiß diskutiert werden. Um zu verstehen, warum die Entwicklung von Sprachmodellen so lange gedauert hat und mit welchen Herausforderungen die Entwicklerinnen und Entwickler noch immer kämpfen, muss man die Funktionsweise der Programme verstehen.

Wie bringt man einen Computer dazu, Wörter zu verstehen?

Aber vielleicht kann auch das die KI am besten selbst erklären:
Im Großen und Ganzen funktioniert ChatGPT so, dass es als Eingabe eine Aufforderung wie eine Frage oder eine Aussage annimmt und diese Eingabe verwendet, um eine Antwort zu erzeugen. Der erste Schritt besteht darin, die Eingabe in eine numerische Darstellung zu codieren, die das Netz zur Vorhersage verwenden kann. Dazu werden in der Regel Worteinbettungen verwendet.

Bevor der Chatbot weitermacht, hake ich hier mal ein, denn das ist schon die erste große Schwierigkeit, mit der sich Fachleute lange herumgeschlagen haben – und immer noch herumschlagen. Es geht um den Knackpunkt der Sprachverarbeitung: Wie kann man einer Maschine einen Text möglichst sinnvoll übergeben, so dass auch alle logischen Zusammenhänge klar werden?

Bei Bildern ist die Aufgabe recht schnell gelöst: Man nutzt die Zahlenwerte der Pixel und schreibt sie in eine lange Liste, einen so genannten Vektor. Bei einem Text ist es aber nicht sinnvoll, jedem einzelnen Buchstaben und Satzzeichen einen Wert zuzuschreiben. Denn die eigentlichen Objekte, um die es in der Sprache geht, sind Worte. Deshalb braucht man für sie eine eigene Codierung. Zum Beispiel könnte man die ersten 10 000 Einträge eines Wörterbuchs der Reihe nach von 1 bis 10 000 durchnummerieren. Wenn man diese in binäre Schreibweise übersetzt, kann ein Computer problemlos damit umgehen.

Eine solche Worteinbettung hilft jedoch nicht weiter. Es geht schließlich nicht nur darum, Inhalten irgendwelche Zahlenwerte zuzuordnen: Man möchte, dass ähnliche Objekte sich auch in ihrer mathematischen Darstellung nicht allzu stark voneinander unterscheiden. Bei Bildern ist das kein Problem. Wenn man den Wert eines einzigen Pixels ändert, sieht das modifizierte Bild kaum anders aus – und der zugehörige Vektor (die Liste der Zahlen) ist ebenfalls recht ähnlich zum ursprünglichen.

Bei Wörtern ist das jedoch nicht so: Nimmt man kleine Änderungen vor, etwa indem man einen Buchstaben austauscht, hat die Aussage einen völlig neuen Sinn: »Der Hund hat flauschiges Fell« unterscheidet sich deutlich von »der Mund hat flauschiges Fell«. Zwar sind sich »Hund« und »Mund« von der Schreibweise her recht ähnlich, doch sie unterscheiden sich semantisch. Tatsächlich teilt das Wort »Katze« mehr Gemeinsamkeiten mit »Hund«, obwohl sie keinen einzigen Buchstaben gemeinsam haben. Computerlinguisten brauchen also eine Abbildung, die Wörtern mit einer ähnlichen Bedeutung räumlich nahe Vektoren zuordnet.

Worteinbettung | Eine der schwierigsten Aufgaben beim Erstellen von Sprachmodellen ist, Wörter geeignet darzustellen. Ausdrücke, die sich von der Bedeutung her ähnlich sind, sollen sich in ihrer mathematischen Darstellung auch kaum unterscheiden.

Dafür muss man definieren, wann sich zwei Ausdrücke ähneln – etwa wenn sie in gleichen Kontexten auftauchen, wie bei Katze und Hund. Beide erscheinen häufig im Zusammenhang mit Wörtern wie Haustier, Fell, flauschig, füttern und so weiter. Daher ordnet man diesen ähnliche Vektoren zu, während Hund und Mund vermutlich eine größere Entfernung voneinander aufweisen. In manchen Worteinbettungen wird sogar darauf geachtet, dass man simple Arithmetik betreiben kann: Zieht man etwa die Darstellung von »männlich« vom Vektor zu »König« ab, sollte das Ergebnis zumindest in der Nähe von »Königin« liegen.

Hat man eine geeignete Worteinbettung gefunden, weiß man, welche Wörter miteinander in Verbindung stehen – und kann daraus sinnvolle Sätze bilden. Die passende Darstellung ist also der wichtigste Teil der Sprachmodellierung. Um sie zu finden, greift man auf maschinelles Lernen zurück. Mit diesem Ansatz lassen sich Muster in großen Datensätzen identifizieren. Das Gebiet umfasst zahlreiche verschiedene Methoden, anhand derer Algorithmen eigenständig eine Aufgabe erlernen. Die verbreitetsten Techniken basieren aktuell auf neuronalen Netzen. Zwar wurden diese bereits in den 1940er Jahren entwickelt, doch der Ansatz konnte sich erst im letzten Jahrzehnt dank gestiegener Leistungsfähigkeit und Speicherkapazitäten von Computern durchsetzen.

Das Gehirn als Vorbild

Die Funktionsweise von neuronalen Netzen erklärt ChatGPT folgendermaßen:
Neuronale Netze sind eine Art von Algorithmus für maschinelles Lernen, der von der Struktur und Funktion des menschlichen Gehirns inspiriert ist. Sie bestehen aus miteinander verbundenen Knoten oder »Neuronen«, die Informationen verarbeiten und zwischen den Schichten des Netzes weiterleiten. Jedes Neuron empfängt Eingaben von anderen Neuronen, führt an diesen Eingaben eine einfache mathematische Operation durch und leitet das Ergebnis dann an andere Neuronen in der nächsten Schicht weiter. Auf diese Weise können neuronale Netze lernen, Muster in Daten zu erkennen und auf der Grundlage dieser Daten Vorhersagen zu treffen.

Neuronales Netz | Ein neuronales Netz ist ein Algorithmus, der in seinem Aufbau dem menschlichen Gehirn nachempfunden ist. Er besteht aus Recheneinheiten, den »Neuronen« n und h, sowie geeigneten Gewichten w, die durch das Training bestimmt werden. Die Ausgabe des Programms (etwa n8) hängt dann von den Werten vieler verschiedener Neurone und Gewichte ab (rot).

Doch woher weiß das Netz, wie es die Eingabewerte verarbeiten soll? Anders als bei gewöhnlichen Algorithmen macht ein Programmierer keine eindeutigen Vorgaben (etwa: falls Neuron 2 aus Schicht 3 ein Signal mit Wert 0,77 erhält, dann wandle es in 0,89 um). Stattdessen lässt man das Netz selbst »lernen«, welche Einstellungen am geeignetsten sind, um eine Aufgabe zu bewältigen.

Möchte man beispielsweise, dass ein neuronales Netz ein bestimmtes Tier auf Bildern erkennt, kann man das Netzwerk mit zahlreichen Beispieldaten füttern: Man überträgt die Pixelwerte in die Eingabeschicht, lässt den Algorithmus zu einem Ergebnis (etwa »Katze« oder »Hund«) kommen und vergleicht dieses mit dem korrekten Resultat. Anfangs wird das Programm eher schlecht funktionieren. Aber es wird bei jedem Durchlauf versuchen, sich zu verbessern. Wenn es zu einem falschen Schluss kommt, passt es die relevanten Verbindungen zwischen den Neuronen an, die zu dem fehlerhaften Ergebnis geführt haben, damit die Ausgabe künftig richtiger ausfällt. Indem das Programm sich durch weitere Daten immer wieder nachjustiert, wird es schrittweise besser. Am Ende des Trainings sollte es in der Lage sein, auch solche Bilder richtig zu klassifizieren, die es noch nie zuvor gesehen hat.

Das Ganze funktioniert sogar mit unbeschrifteten Datensätzen: So kann eine KI Muster in Daten erkennen, ohne dass man ihr etwas vorgibt. Dafür braucht man eine große Datensammlung; in den Worten von ChatGTP ist das
beispielsweise eine Sammlung von Dokumenten, Webseiten oder Beiträgen in sozialen Medien. Mit diesem Korpus wird ein Vokabular von Wörtern erstellt, die zur Erzeugung der Einbettungen verwendet werden. Anschließend wird ein neuronales Netzwerk trainiert, um die Wahrscheinlichkeit vorherzusagen, mit der jedes Wort aus dem Vokabular in einem bestimmten Kontext vorkommt. Der Kontext eines Wortes bezieht sich auf die Wörter, die vor und nach ihm in einem Satz oder Absatz erscheinen.

Konkret bedeutet das: Man nimmt Teile der Trainingsdaten, etwa den ersten Satz zu »Spektrum der Wissenschaft« bei Wikipedia (»Spektrum der Wissenschaft ist eine populärwissenschaftliche Monatszeitschrift«) und übergibt dem neuronalen Netz nur einen Teil davon, beispielsweise: »Spektrum der Wissenschaft ist eine populärwissenschaftliche …« und lässt den Algorithmus das nächste Wort vorhersagen. Am Anfang des Trainings wird das wohl nicht besonders gut funktionieren und womöglich etwas Unpassendes liefern, woraufhin das System seine inneren Parameter (die Gewichte) anpasst und dadurch schrittweise besser wird.
Sobald das Netz trainiert ist, können die Gewichte seiner Verbindungen als Worteinbettungen verwendet werden. Jedes Wort im Vokabular wird durch einen Vektor dargestellt, der die Beziehungen zwischen dem Wort und den anderen Wörtern im Korpus erfasst.

Um ein System zu entwerfen, das natürliche Sprache verarbeitet, zum Beispiel Texte generiert oder übersetzt, nutzt man inzwischen oft zwei neuronale Netze: Einen »Encoder« und einen »Decoder«. Ersterer wandelt die Wörter in die passenden Vektoren um, ist also eine Art Worteinbettung, während der zweite aus dieser Darstellung eine Ausgabe erzeugt: eine möglichst passende Vervollständigung der Eingabe oder eine Übersetzung.

Eine künstliche Intelligenz mit Gedächtnis

Es gibt aber nicht nur viele verschiedene Algorithmen des maschinellen Lernens, sondern auch zahlreiche unterschiedliche Arten von neuronalen Netzen, die sich durch ihre Struktur teilweise stark voneinander unterscheiden. Je nach Aufgabe, die sie bewältigen sollen, entscheidet man sich zum Beispiel für ein herkömmliches vorwärtsgerichtetes neuronales Netz, ein Faltungsnetzwerk oder ein rekurrentes neuronales Netz. Ersteres bezeichnet die einfachste Form von Netzwerken, bei der die Information ganz klassisch von hinten (Eingabe) nach vorne (Ausgabe) verarbeitet wird. Zu dieser Klasse gehören auch Faltungsnetzwerke, die häufig in der Bildverarbeitung genutzt werden: Die einzelnen Neuronenschichten wirken dabei wie Filter, die dazu dienen, bestimmte Merkmale herauszusieben – etwa die Kontur eines abgebildeten Motivs. Rekurrente neuronale Netze enthalten hingegen Schleifen, was den Algorithmen eine Art Gedächtnis verleiht. Das heißt konkret: Die künstlichen Neurone einer Schicht können nicht nur mit den kommenden Schichten verbunden sein, sondern auch mit Recheneinheiten derselben oder von vorangegangenen Schichten. Das erweist sich vor allem bei der Sprachverarbeitung als nützlich.

Rekurrentes neuronales Netz | Bei dieser Art von Algorithmen wird Information nicht nur von links nach rechts übertragen, sondern die Neuronenschichten können die Daten auch in zurückliegende Schichten übertragen. Das verleiht den Netzwerken eine Art Gedächtnis.

Angenommen, man hat ein bereits trainiertes rekurrentes neuronales Netz, dem man einen Satz übergeben möchte, damit es ihn übersetzt. Der Algorithmus verarbeitet die einzelnen Wörter nacheinander. Zunächst widmet das Netz sich dem ersten Wort, indem es den Zustand der inneren Schichten in einem »inneren Vektor« speichert: Dieser enthält relevante Merkmale der Eingabe (handelt es sich um ein Nomen, welchen Kontext hat es und so fort). Anschließend übergibt man dem Netz das zweite Wort, das es zusammen mit dem zuvor berechneten inneren Vektor verarbeitet. Das Programm verändert daraufhin den inneren Vektor, der dann zusammen mit dem dritten Wort bearbeitet wird und so weiter. Somit sammelt das Netz Informationen von mehreren Inhalten, indem es den inneren Vektor immer wieder aktualisiert. Wenn die Eingabe beendet ist, sendet der Encoder diesen Vektor an den Decoder, der daraus schließlich eine Ausgabe generiert: etwa einen neuen Satz oder eine übersetzte Aussage.

Traditionelle maschinelle Übersetzungsprogramme wie »Google Translate« basieren auf solchen rekurrenten neuronalen Netzen. Allerdings haben diese Systeme Einschränkungen: Sie können keine langen Dateneingaben verarbeiten. Denn die Informationen, die in den inneren Vektoren gespeichert werden, gehen nach mehrmaligem Aktualisieren irgendwann verloren. Wenn etwa zwei Wörter innerhalb eines Abschnitts aufeinander Bezug nehmen und weit voneinander entfernt sind, kann das Programm das meist nicht mehr erkennen. Zum Beispiel ist ein Mensch in der Lage, den Satz »Ich bin in Frankreich geboren, in einem kleinen Dorf mit etwa 300 Einwohnern. Ich spreche daher fließend …« zu vervollständigen. Ein rekurrentes neuronales Netz wird damit aber höchstwahrscheinlich Probleme haben, da die relevante Information (»in Frankreich geboren«) ganz am Anfang des ersten Satzes steht – und bis zur Lücke 13 weitere Worte verarbeitet werden.

Encoder und Decoder | Viele Sprachmodelle bestehen aus zwei separaten Strukturen. Der Encoder sammelt die Informationen der Eingabe, indem es Wort für Wort verarbeitet und dabei jeweils einen »inneren Vektor« h aktualisiert. Anschließend wird dieser an den Decoder weitergereicht, der daraus beispielsweise eine Übersetzung erzeugt.

Das ist nicht nur zur Erzeugung von Texten hinderlich, sondern auch bei maschinellen Übersetzungen. Denn gerade, um Personalpronomen richtig in eine andere Sprache zu übertragen, muss man wissen, worauf sie sich beziehen. Selbst wenn es Tricks gibt, um rekurrente Netze zu verbessern, scheitern sie bei längeren Eingaben. Ein weiterer Nachteil ist, dass sich die Rechenschritte nicht parallelisieren lassen: Ein Computer kann die Inhalte nur Wort für Wort verarbeiten – man kann den Prozess nicht beschleunigen, indem man mehrere Rechner zusammenschaltet. Inzwischen hat sich daher ein neuer Ansatz durchgesetzt, den erfolgreiche Software wie das maschinelle Übersetzungsprogramm »DeepL« und die GPT-Algorithmen verwenden: Transformer.

Transformer sind Alleskönner

Der Umbruch kam mit einer Arbeit, die Mitarbeiterinnen und Mitarbeiter von Google Brain 2017 veröffentlicht haben: »Attention is all you need«. Dabei orientierten sie sich an einer Besonderheit der Funktionsweise unseres Gehirns: Aufmerksamkeit. Glücklicherweise nehmen wir nicht jedes Signal unserer Umgebung wahr, sondern richten die Aufmerksamkeit gezielt auf Dinge, die wichtig für uns sind. Zum Beispiel interessiert es uns während des Autofahrens nicht, ob an einem Busch auf dem Gehweg ein Blatt raschelt – aber wir müssen blitzschnell reagieren, wenn ein Fahrzeug vor uns plötzlich bremst. Das Gehirn filtert unentwegt unsere Sinneseindrücke und lenkt die Aufmerksamkeit auf für uns relevante Signale. Diesen Mechanismus versuchen Transformer-Netzwerke zu übernehmen – und das macht sie so überlegen.

Wieder einmal steht die richtige Worteinbettung im Vordergrund: Ziel eines Transformers ist es, alle relevanten Informationen einer Eingabe zu erfassen und die Wörter entsprechend zu codieren. Die Programme bestehen gewöhnlicherweise ebenfalls aus einem Encoder und einem Decoder. Möchte man etwa ein maschinelles Übersetzungsprogramm trainieren, übergibt man dem System zahlreiche deutschsprachige Sätze mit den französischen Gegenstücken. Der Encoder verarbeitet dann die deutschen Teile, während sich der Decoder den französischen widmet. Bei einem Sprachmodell, das Texte vervollständigt und neue Inhalte erzeugt, werden hingegen beide Seiten in der gleichen Sprache trainiert.

Das Training eines Transformers ist extrem aufwändig: In der Regel müssen Hochleistungsrechner mehrere Wochen lang auf Hochtouren laufen, um all die Daten zu verarbeiten. Wie drei Forscherinnen und Forscher 2019 berechnet haben, erzeugt das Training großer Sprachmodelle ebenso viel Treibhausgase wie fünf Autos während ihrer Lebensdauer. Und Google gab an, dass das Training seines Sprachmodells PaLM so viel Energie verbraucht hat, wie 300 US-Haushalte in einem Jahr.

Im Gegensatz zu rekurrenten neuronalen Netzen verarbeitet ein Transformer die gesamte Eingabe gleichzeitig – schließlich könnte ein Wort am Anfang des Texts drei Sätze später relevant sein. Daher setzt ein solches Netzwerk alle Inhalte zueinander in Bezug und versucht herauszufinden, was wie miteinander zusammenhängt.

Dafür überführt das Programm die einzelnen Wörter zunächst in passende Vektoren. Die benötigte Worteinbettung hat die KI während des Trainings gelernt. Auch wenn sich aus der Darstellung bereits grammatikalisch korrekte Sätze bilden lassen, berücksichtigt das Netzwerk noch nicht die semantischen Zusammenhänge der Eingabe. Um zu »verstehen«, was die übergebenen Inhalte bedeuten, muss man die einzelnen Wörter miteinander verknüpfen – und daraus eine neue mathematische Darstellung erzeugen.

Das ermöglicht der Aufmerksamkeitsmechanismus. Dafür haben die Informatikerinnen und Informatiker von Google Brain eine Methode entwickelt, bei der der Algorithmus jedes Wort mit allen anderen vergleicht und daraus berechnet, wie stark sie zusammenhängen.

Stellen Sie sich vor, Sie übergeben dem Algorithmus den Satz: »Ich lese das Spektrum-Heft, weil es mir gefällt«. Menschen wissen, dass sich das Pronomen »es« auf »Heft« bezieht. Damit der Transformer das auch erkennt, verwandelt er jedes Wort zunächst in einen hochdimensionalen Vektor mit mehreren hundert Einträgen. Anschließend nimmt er sich die Wörter des Satzes einzeln vor: Er startet mit »Ich« und möchte es mit den anderen Inhalten in Zusammenhang setzen. Also vergleicht er es mit der gesamten Eingabe, also »Ich«, »lese«, »das« und so weiter. Aus mathematischer Sicht bildet der Algorithmus dafür das Skalarprodukt aus den Vektoren, wodurch sich ein Zahlenwert ergibt. Dieser dient als Maß dafür, wie »ähnlich« sich zwei Vektoren sind – und wie stark die Wörter zusammenhängen. Durch diesen Vorgang lässt sich eine neue Darstellung der eingegebenen Wörter finden – und zwar eine, die den Inhalt des Satzes berücksichtigt.

Bedeutung der einzelnen Wörter füreinander | Indem man jedes Wort einer Eingabe mit allen anderen vergleicht, können Sprachmodelle nun auch längere Inhalte verarbeiten.

Transformer lassen sich besser trainieren

Der Vorteil: Man muss nicht jedes Wort nacheinander verarbeiten, sondern die Aufgabe lässt sich parallelisieren. Eine Recheneinheit kann die Darstellung des ersten Worts durch den Aufmerksamkeitsmechanismus ermitteln, während sich eine zweite Einheit zeitgleich dem zweiten Wort widmet und so weiter. Anders als bei rekurrenten neuronalen Netzen kann man eine Eingabe damit wesentlich schneller verarbeiten.

Die auf diese Weise neu erhaltenen Vektoren werden anschließend durch ein vorwärtsgerichtetes neuronales Netz geschickt, das die Vektoren in eine passende Darstellung für die weitere Bearbeitung umwandelt. Den Zyklus aus Aufmerksamkeit und vorwärtsgerichtetem neuronalem Netz durchläuft die Eingabe mehrmals: Sie passiert unterschiedliche Encoder-Strukturen mit jeweils eigenen Parametern. Dadurch kann der Transformer bei jedem Aufmerksamkeitsschritt auf verschiedene sprachwissenschaftliche Eigenschaften der Eingabe achten. Am Ende spuckt der Encoder zu jedem Wort einen Darstellungsvektor aus sowie die dazugehörigen Schlüssel- und Wertevektoren, die für die weitere Verarbeitung im Decoder relevant sind.

Transformer | Diese Art von neuronalem Netz hat die Sprachverarbeitung erheblich verbessert. Denn durch einen »Aufmerksamkeitsmechanismus« bringen die Strukturen alle eingegebenen Inhalte miteinander in Verbindung – unabhängig von ihrer Distanz zueinander.

Der Decoder funktioniert ähnlich wie der Encoder. Auch er führt einen Aufmerksamkeitsmechanismus durch. Die entsprechenden Matrizen, mit denen er die Berechnungen durchführt, unterscheiden sich allerdings von jenen im Encoder – in diesem Fall sind sie für die Aufgabe optimiert, die der Transformer erledigen soll: etwa die Eingabe übersetzen oder einen Satz vervollständigen.

Im Decoder gibt es einen zweiten Aufmerksamkeitsschritt, bei dem das System die ursprünglichen Eingabewerte berücksichtigt. Damit werden zum Beispiel die neu generierten fremdsprachigen Wörter mit der Eingabe abgeglichen – wieder nach dem Prinzip der Aufmerksamkeit, indem die Bedeutung der einzelnen Vektoren ermittelt wird.

Und auch ein vorwärtsgerichtetes neuronales Netz darf nicht fehlen, das die verarbeiteten Vektoren in die passende Form bringt und sie am Ende in Wörter zurückübersetzt. Das Ergebnis sollte dann etwa ein grammatikalisch korrekter Satz in einer anderen Sprache sein – und bestenfalls die Übersetzung der Eingabe.

Die Transformer-Struktur hat sich inzwischen bewährt: Zum Beispiel basiert das überaus erfolgreiche Übersetzungsprogramm »DeepL« auf einer Transformer-Architektur – auch wenn die deutsche Firma DeepL SE nicht die genauen Details des genutzten Modells preisgibt. Als Trainingsdatensatz dienten unter anderem Inhalte von »Linguee«, einer Datenbank mit zweisprachig übersetzten Satzpaaren.

Von Übersetzungsmodellen zu Sprachmodellen

Auch Sprachmodelle wie »GPT« (generative pre-trained transformer) von OpenAI oder »LaMDA« (Language Model for Dialogue Applications) von Google verwenden Transformer, um eigenständig Texte zu erzeugen. Allerdings haben diese keine Encoder-Decoder-Struktur, sondern nutzen meist nur eines von beiden. Die GPT-Versionen bestehen beispielsweise bloß aus zahlreichen hintereinander ausgeführten Decodern.

Grundlage für diese Vorgehensweise bildete die 2018 veröffentlichte Forschungsarbeit »Generating Wikipedia by Summarizing Long Sequences« von Google Brain. Darin haben die Informatiker gezeigt, dass man keinen Encoder braucht, um sinnvolle Texte zu erzeugen. Die Decoder-only-Architektur ist recht ähnlich aufgebaut wie die ursprünglich entwickelten Transformer – allerdings kommen sie ohne den zweiten Aufmerksamkeitsschritt aus, der Bezug auf die Encoder-Ausgabe nimmt.

Decoder-Only-Architektur | Sprachmodelle wie GPT bestehen nur aus Decodern – auf Encoder wurde verzichtet.

Das heißt konkret: Man kann dem Transformer eine Eingabe übergeben, etwa »Spektrum der Wissenschaft ist eine«, woraufhin dieser den Satz vervollständigt – und sogar ein paar Absätze darüber schreibt:
Spektrum der Wissenschaft ist eine deutsche, monatlich erscheinende Zeitschrift, die sich mit aktuellen Themen aus den Bereichen Naturwissenschaften, Technik und Medizin beschäftigt. Sie wurde erstmals im Jahr 1978 veröffentlicht und ist seitdem zu einer der bekanntesten und renommiertesten populärwissenschaftlichen Zeitschriften im deutschsprachigen Raum geworden. Das Ziel der Zeitschrift ist es, wissenschaftliche Themen verständlich und anschaulich für ein breites Publikum aufzubereiten und somit zur Verbreitung von wissenschaftlichem Wissen beizutragen.

Um solche Ausgaben zu produzieren, wandelt der Algorithmus eine Eingabe zunächst durch die gelernte Worteinbettung in eine vektorielle Darstellung um. Jedes Wort durchläuft anschließend den Aufmerksamkeitsmechanismus. Auch in diesem Fall bewertet der Decoder die Bedeutung der einzelnen Inhalte. Damit berechnet er eine neue vektorielle Darstellung, die die wichtigsten semantischen Informationen codiert.

Im Anschluss wird die Ausgabe durch ein vorwärtsgerichtetes neuronales Netz geleitet. Jenes erledigt dann die eigentliche Aufgabe des Netzwerks: Es sagt voraus, welches Wort am wahrscheinlichsten auf die Eingabe folgt. Diese Fähigkeiten hat es durch das Training mit den vielen Beispieldaten gelernt. Um gut zu funktionieren, ist der vorherige Aufmerksamkeitsschritt entscheidend: Nur so kann das neuronale Netz das passendste darauffolgende Wort bestimmen.

Diesen Decoder-Prozess durchläuft eine Eingabe mehrmals, wobei die einzelnen Netzwerke jeweils andere Gewichte haben, um verschiedene linguistische Merkmale einer Eingabe zu untersuchen. Das Sprachmodell GPT-3 besteht zum Beispiel aus 96 Decoder-Schichten.

Am Ende liefert der Transformer eine Wahrscheinlichkeitsverteilung: Für jedes Wort aus seinem Sprachschatz (der üblicherweise mehrere zehntausend Einträge enthält) berechnet er eine Zahl, die angibt, wie wahrscheinlich es auf die Eingabe folgt. Aus den besten Optionen wählt er dann eine aus: Für »Spektrum der Wissenschaft ist eine« hat ChatGPT beispielsweise »deutsche« genommen. Das Programm fügt anschließend das ausgegebene Wort zur ursprünglichen Eingabe hinzu und verarbeitet den gesamten Ausdruck nochmal, also »Spektrum der Wissenschaft ist eine deutsche«. Daraus leitet es das nächste Wort ab, nämlich »monatlich«. So macht es weiter, bis es zu einem Ende gelangt.

Alle sechs Monate ein neuer Durchbruch

Das erste Sprachmodell in Form eines Transformers hat OpenAI im Juni 2018 vorgestellt: GPT-1. Das Überraschende: Es war auch das erste gut funktionierende Sprachsystem, das nicht auf überwachtem Lernen basierte. GPT-1 hat ohne menschliche Anleitung gelernt, natürliche Sprache zu verarbeiten und überzeugende Texte zu liefern. Man hatte dem Algorithmus extrem viele unbeschriftete Trainingsdaten übergeben – es gab keine Beispieleingabe mit der dazu passenden Antwort. Dafür musste das Programm 4,5 Gigabyte unveröffentlichter Bücher durchforsten und auf der Grundlage die Parameter des Modells (etwa die Einträge der Matrizen zur Erzeugung der Vektoren) anpassen. Bücher eignen sich gut zum Training von Sprachmodellen, weil die Netzwerke dadurch lernen, Zusammenhänge über lange Textpassagen hinweg zu beachten.

Nur wenige Monate später, im Februar 2019, erschien schon das Nachfolgemodell GPT-2. Der grobe Aufbau des Transformers hatte sich nicht geändert, aber sowohl die Parameter als auch die Trainingsdaten hat OpenAI verzehnfacht: Die Entwicklerinnen und Entwickler trainierten das Netzwerk mit 40 Gigabyte an Text. Dieses Mal erstellte die Firma dafür einen eigenen Datensatz: Sie durchsuchte das Forum »Reddit« nach beliebten (mit mindestens drei Upvotes gewerteten) Antworten, die Links zu Webseiten enthalten und übernahmen deren Inhalte – damit hofften sie, qualitativ möglichst hochwertige Informationen zu sammeln.

Durch die vielen Daten funktioniert das Modell deutlich besser als sein Vorgänger. Es war sogar so gut, dass OpenAI den Zugang zum Sprachmodell zunächst einschränkte: Die Firma veröffentlichte nicht den vollen Quelltext; zudem hatten anfangs nur ausgewählte Personen Nutzungsrechte. Nach eigenen Angaben befürchtete das Unternehmen, die Technologie könnte zum Erstellen von Spam-Nachrichten oder Fake News genutzt werden. Das führte zu vielen Schlagzeilen, was OpenAI vielleicht auch beabsichtigt hatte.

Auch wenn der Quelltext nicht öffentlich einsehbar war, dauerte es nicht lange, bis andere Organisationen ähnliche Sprachmodelle nachbauten: Schließlich hatte OpenAI in mehreren Fachveröffentlichungen erklärt, welche Methoden sie genutzt hatten. So konnten zwei frischgebackene Universitätsabsolventen, Aaron Gokaslan und Vanya Cohen, im August 2019 OpenGPT-2 veröffentlichen. Ganz günstig war die Umsetzung aber nicht, die Rechenleistung für das Training kostete etwa 50 000 US-Dollar. Angesichts dieser Fortschritte und der ausbleibenden Flut an Spam oder Fake News veröffentlichte OpenAI drei Monate später schließlich das volle GPT-2-Modell.

Im Juni 2020 erschien die Nachfolgeversion GPT-3, die 175 Milliarden Parameter enthält und mit etwa 570 Gigabyte an Text trainiert wurde. Das Sprachmodell erstellt noch überzeugendere Inhalte als die Vorgängerversionen: Es kann Fragen beantworten, Dokumente zusammenfassen, Geschichten in unterschiedlichen Stilen erfinden, Algorithmen in verschiedenen Programmiersprachen erzeugen und Texte übersetzen. Besonders überraschend war, dass der enorme Fortschritt allein durch den Zuwachs an Trainingsdaten und Parametern entstand – die technischen Grundlagen waren dieselben wie jene von GPT-1 und GPT-2. Allerdings wurde diese Version erstmals nicht quelloffen veröffentlicht, ebenso wenig der Datensatz, mit dem es trainiert wurde.

GPT-3 ist extrem eindrucksvoll – besonders dann, wenn man weiß, wie eine Eingabe, der so genannte Prompt, am besten formuliert sein sollte. Das ist allerdings nicht immer einfach. Aus diesem Grund haben die Entwicklerinnen und Entwickler von OpenAI das Sprachmodell durch menschliches Feedback verbessert. Damit konnten sie die KI dazu bringen, besser auf die Anfragen von Nutzerinnen und Nutzern einzugehen

... und schließlich sind doch noch Menschen am Werk

Dafür waren drei Schritte nötig. Zunächst ließ OpenAI Beispielanfragen und Antworten von Menschen niederschreiben. Damit wurde die KI zusätzlich zu den gewöhnlichen Trainingsdaten gefüttert. Allerdings genügen die wenigen Beispiele, die Personen erzeugen können, nicht aus, um ein riesiges Modell wie GPT mit Milliarden von Parametern zu trainieren. Daher haben die Fachleute in einem zweiten Schritt mehrere Ausgaben zu einer einzigen Eingabe generieren lassen, wobei menschliche Tester bewertet haben, welche besser passt. Mit diesen Informationen konnten sie ein »Belohnungsmodell« trainieren – eine KI-Software, die lernt, wie gut einem Menschen eine Ausgabe von GPT gefällt. Damit ließ sich in einem dritten Schritt das Sprachmodell mit Hilfe des Belohnungsmodells weiterentwickeln: GPT erzeugt eine Ausgabe und das Belohnungsmodell bewertet das Ergebnis. Daraufhin passt GPT seine internen Parameter an, damit es künftig besser abschneidet.

Reinforcement-Learning | Das Reinforcement-Learning wurde genutzt, um das Sprachmodell auf passendere Antworten zu menschlichen Abfragen zu trainieren.

Die letzten beiden Schritte wurden mehrmals wiederholt: Sobald sich GPT durch das Belohnungsmodell aktualisiert hatte, setzte man es wieder Probanden vor, die die neuen Ausgaben bewerteten, womit sie das Belohnungsmodell weiter verfeinerten. Damit konnten die Entwicklerinnen und Entwickler den Transformer trainieren und die verbesserte Version erneut menschlichen Testern vorsetzen. »Das Reinforcement Learning hat das Sprachmodell so gut gemacht. Durch die Feinjustierung der Parameter kann es passende Antworten liefern und es halluziniert weniger als andere Modelle«, erklärt der KI-Experte Joachim Köhler vom Fraunhofer-Institut für Intelligente Analyse- und Informationssysteme IAIS. »Keiner hatte damit gerechnet, dass das so gut klappt.«

Wie sich herausstellte, schnitt ein kleineres Modell (eine Verfeinerung von GPT-3) mit bloß 1,3 Milliarden Parametern besser ab als das volle 175-Milliarden-Parameter-System. Ergebnis dieser Bemühungen war schließlich der Chat-Assistent »ChatGPT«, der Ende 2022 veröffentlicht wurde und seither für Furore sorgt. Das Programm ist frei nutzbar und kann verschiedenste Arten von Aufgaben überzeugend meistern: Es findet Fehler in Algorithmen, kann eine Abhandlung über allerlei Themen verfassen oder man kann sich auch schlicht und einfach damit unterhalten.

Das Programm wurde darauf optimiert, möglichst gefällige Antworten zu liefern. Deshalb steht und fällt die Qualität der Ausgaben mit dem Datensatz und dem Feedback der Menschen, die es trainiert haben. Die Datensammlung umfasst enorme Mengen an Texten, die bis Ende 2021 im Web verfügbar waren. Alles, was danach veröffentlicht wurde, kennt das Programm nicht. Das schließt neue Forschungsergebnisse, Bücher oder politische Ereignisse ein – zum Beispiel weiß die KI nicht, dass Russland 2022 die Ukraine angegriffen hat. Eine weitere Einschränkung ist die menschliche Fehlbarkeit: Wenn das Modell auf eine Frage »Das weiß ich nicht« antwortet, wird das höchstwahrscheinlich schlecht bewertet. Deshalb erfindet das GPT stattdessen eine überzeugende Antwort – die möglicherweise falsch ist, aber wider besseren Wissens gut eingestuft wird.

Als Nutzer kann man die Ausgaben von ChatGPT ebenfalls bewerten. Anhand dieses Feedbacks verbessert OpenAI die Software. So macht das Programm durch eine Aktualisierung im Februar 2023 inzwischen weniger Rechenfehler, was folgendes Beispiel verdeutlicht: Früher lieferte ChatGPT bei der Aufgabe: »Ein Schläger und ein Ball kosten insgesamt 1,10 Euro. Der Schläger kostet 1 Euro mehr als der Ball. Wie hoch ist der Preis des Balls?« die falsche Antwort »10 Cent« – was übrigens auch das am häufigsten von Menschen vorgebrachte Ergebnis ist. Inzwischen ist die KI durch menschliches Feedback allerdings cleverer geworden und sagt:
Angenommen, der Preis des Balls beträgt x Euro. Gemäß der Aufgabenstellung kostet der Schläger 1 Euro mehr als der Ball. Die Kosten für den Schläger wären also (x + 1) Euro. Jetzt wissen wir, dass die Gesamtkosten für den Schläger und den Ball 1,10 Euro betragen. Wir können also die folgende Gleichung aufstellen: x + (x + 1) = 1,10. Vereinfacht man die obige Gleichung, erhält man: 2x + 1 = 1,10. Subtrahiert man 1 von beiden Seiten, erhält man: 2x = 0,10. Dividiert man beide Seiten durch 2, erhält man: x = 0,05. Der Ball kostet also 0,05 Euro.

Angesichts all dieser beeindruckenden Ergebnisse gibt es nun einige andere Organisationen und Techfirmen, die mit ähnlichen Sprachmodellen nachziehen möchten. So ließen Reaktionen von Google und Meta nicht lange auf sich warten, aber auch Deutschland will mit OpenGPT-X eine Antwort auf GPT-3 liefern. »Es ist wichtig, dass wir auch in Europa eine solche Technologie entwickeln, die an unseren Werten und Bedürfnissen orientiert ist und zum Beispiel auch datenschutzkonform ist«, sagt Aljoscha Burchardt. Und Köhler stimmt ebenso zu: »Wir verlieren unsere Souveränität, wenn wir all unsere Daten, insbesondere Betriebsinterna, einem amerikanischen Unternehmen übergeben.«

Die größten Herausforderungen für solche Projekte stellen die riesigen Datensätze dar, sowie die Rechenkapazitäten. OpenGPT-X wird aktuell im Forschungszentrum Jülich trainiert. »Wenn es aber irgendwann um eine kommerzielle Nutzung geht, können wir nicht auf Forschungsrechenzentren zurückgreifen«, erklärt Köhler. Bislang fehlt es in Europa jedoch an kommerziellen Rechenzentren. Ein solches baut aktuell die Firma Aleph Alpha in Heidelberg auf. Aber auch das nachträgliche menschliche Reinforcement Learning der Modelle gestaltet sich für eine europäische Initiative komplizierter als für Firmen in Übersee wie OpenAI: »Wir müssen uns dabei an europäische Richtlinien wie den Datenschutz halten und die Personen für ihre Arbeit angemessen vergüten«, sagt Köhler.

Denn angesichts all der Begeisterung und Kritik, die die neuen Sprachmodelle hervorrufen, gerät eine wichtige Sache oft in den Hintergrund: der Mensch. Es sind die Bemühungen der Entwicklerinnen und Entwickler, denen wir diese Technologie verdanken – ebenso wie die Arbeit jener Personen, die die relevanten Datensätze erstellen und filtern sowie am Reinforcement Learning beteiligt sind. Bei Letzteren handelt es sich meist um Arbeitnehmer aus dem Niedriglohnsektor, die gewaltverherrlichende, pornografische oder strafbare Inhalte aus den Trainingsdaten entfernen. In Zukunft könnte hoffentlich zumindest diese undankbare Aufgabe aber eine Maschine übernehmen.

Schreiben Sie uns!

Beitrag schreiben

Wir freuen uns über Ihre Beiträge zu unseren Artikeln und wünschen Ihnen viel Spaß beim Gedankenaustausch auf unseren Seiten! Bitte beachten Sie dabei unsere Kommentarrichtlinien.

Tragen Sie bitte nur Relevantes zum Thema des jeweiligen Artikels vor, und wahren Sie einen respektvollen Umgangston. Die Redaktion behält sich vor, Zuschriften nicht zu veröffentlichen und Ihre Kommentare redaktionell zu bearbeiten. Die Zuschriften können daher leider nicht immer sofort veröffentlicht werden. Bitte geben Sie einen Namen an und Ihren Zuschriften stets eine aussagekräftige Überschrift, damit bei Onlinediskussionen andere Teilnehmende sich leichter auf Ihre Beiträge beziehen können. Ausgewählte Zuschriften können ohne separate Rücksprache auch in unseren gedruckten und digitalen Magazinen veröffentlicht werden. Vielen Dank!

Partnerinhalte

Bitte erlauben Sie Javascript, um die volle Funktionalität von Spektrum.de zu erhalten.