Alex Kirsch
Independent Scientist
DE | EN

Blog

Faszination Intelligenz: Sprache

Menschliche Sprache ist ein faszinierendes Forschungsthema, egal ob in der Linguistik, Philosophie, Neurobiologie, Psychologie oder eben der künstlichen Intelligenz. Während die einen noch darüber nachgrübeln, was Sprache eigentlich ist, erklären andere die Sprachverarbeitung für gelöst durch Rechenpower. In diesem Blog geht es um das facettenreiche Studienobjekt Sprache und mit welchen Ansätzen man Computer dazu bringen will menschliche Sprache zu beherrschen.
 

Teil 1: Wieso (mit Computern) sprechen?

07.05.2024
Die Sprache ist eines der charakteristischen Merkmale von Menschen. Sie unterscheidet uns von Tieren und von unserer unbelebten Umwelt. Sie scheint quasi der Spiegel unserer Intelligenz zu sein. Wieso kommen wir dann auf die Idee, dass eine Rechenmaschine ebenfalls Sprache beherrschen könnte und sollte?

Künstliche Intelligenz wird gern als Ingenieursdiziplin betrachtet: Wir versuchen Computer so zu programmieren, dass sie irgendeine Form von Intelligenz zeigen. Ich sehe die KI lieber als Forschungsgebiet zwischen anderen Zweigen der Intelligenzforschung wie Psychologie, Neurobiologie, Linguistik und Philosophie. In dieser Sichtweise dient der Computer als Forschungswerkzeug, um zu überprüfen, ob unsere Vorstellung von Intelligenz genau genug ist, dass wir sie mit einer Rechenmaschine nachbilden können. In diesem und folgenden Blogs geht es um die wissenschaftliche Faszination an der Intelligenz und wie wir versuchen sie mit Hilfe von Computern besser zu verstehen.

Aktuell steht künstliche Intelligenz hoch im Kurs und das nicht zuletzt wegen der erfolgreichen Large Language Models. Deshalb wenden wir uns in diesem Blog der Sprache zu.

Was ist Sprache?

Zunächst denkt man bei Sprache an Kommunikation. In der Tierwelt wird Kommunikation eingesetzt, um sich gegenseitig vor Feinden zu warnen oder Paarungsbereitschaft zu signalisieren. Menschliche Kommunikation geht aber deutlich weiter. Wir möchten andere vielleicht von einer Meinung überzeugen und sie so zu einer bestimmten Handlung motivieren. Sprache gilt auch als wichtige Voraussetzung für die komplexen Formen der Zusammenarbeit, die wir als Menschen praktizieren. Und diese Zusammenarbeit kann sogar die Grenzen der Zeit überbrücken, wenn wir unsere Gedanken für die Nachwelt festhalten, z.B. in geschriebener Form.

Ein Modell, um Kommunikation zu verstehen, kommt aus der Informationstheorie. Claude Shannon hat dabei den Prozess der Kommunikation mathematisch heruntergebrochen: ein Sender schickt eine Nachricht an einen Empfänger über einen Kommunikationskanal. Sender und Empfänger müssen bei dieser Prozedur nicht unbedingt Menschen sein.

Dieses Modell klingt erstmal plausibel. Wenn ich zum Beispiel einen Termin ausmachen möchte. Dann sende ich einer anderen Person eine Anfrage, ob wir uns an einem bestimmten Tag zu einer bestimmten Uhrzeit unterhalten können. Der Kanal kann vielleicht gesprochene Sprache in einer direkten Kommunikation oder eine E-Mail sein. Diese Kommunikation kann man also recht leicht in Sender, Empfänger, Nachricht und Kommunikationskanal einteilen. Aber ist das immer so einfach?

Wo kommt zum Beispiel die Nachricht her? Wie generiert eine Senderin die Worte, die sie anderen mitteilt? Der Ursprung solcher Nachrichten scheinen irgendwie unsere Gedanken zu sein, aber wie wandeln wir Gedanken (was sind Gedanken überhaupt?) in Worte um?

Und wo steckt eigentlich die Information in der Nachricht? Wenn wir guten Morgen sagen, haben wir nicht die Kommunikationsabsicht jemand anderen darauf hinzuweisen, dass der Tag gerade gestartet hat und wir der Meinung sind, dass dies ein besonders guter Morgen ist. Es ist vielmehr ein soziales Ritual, bei dem wir einer anderen Person zu verstehen geben, dass wir sie wahrgenommen haben und höflich sind. Wir können sogar durch die Art der Kommunikation die Bedeutung verändern. Wenn wir guten Morgen mit einem höhnischen Tonfall und herablassenden Blick kombinieren, können wir genau das Gegenteil ausdrücken: ich kann dich nicht leiden. Insofern kann man fragen, ob es sich hier überhaupt um Kommunikation handelt.

Und brauchen wir immer einen Sender? Die menschliche Wahrnehmung ist darauf ausgerichtet, soziale Interaktion, und damit auch Kommunikation, zu detektieren. Dabei kann es vorkommen, dass man Geräusche oder Gesten als Kommunikation interpretiert, die nie so gemeint waren, wo es also eigentlich keinen Sender gibt, der etwas mitteilen wollte. Ein amüsantes Beispiel dafür ist, wenn man aus einem englischsprachigen Lied deutsche Worte heraushört.

Anders herum können wir sprachliche Nachrichten aussenden ohne passenden Empfänger. Es gibt wahrscheinlich kaum ein Haustier, das nicht ab und zu mit einem freundlichen Guten Morgen, wie geht es dir heute? begrüßt wird. Selbst mit Geräten kann uns ab und zu Sprache herausrutschen (du blödes Ding, jetzt funktionier endlich!). Also auch wenn wir keine Antwort erwarten, scheint uns Sprache bei der Verarbeitung unserer Gedanken zu unterstützen. Auch hier ist fraglich, ob man das als Kommunikation bezeichnen möchte.

Und wenn wir tatsächlich kommunizieren, nutzen wir neben der Sprache vielfältige Kommunikationskanäle wie Gesten, Blickrichtung oder Körperhaltung. Auch damit können wir Gefühle, soziale Hinweise oder sogar Fakten (ich meine diese Tasse, nicht die da drüben) ausdrücken.

Sprache selbst kann in verschiedenen Formen auftreten. Für die meisten Menschen ist gesprochene Sprache die erste Form der Sprache, die sie erlernen. Wenn Gehör oder Sprachorgane dies nicht zulassen, kann stattdessen Gebärdensprache eingesetzt werden. Gebärdensprachen sind nicht zu verwechseln mit Gesten. Während Gesten nur eine eingeschränkte Kommunikation zulassen, sind Gebärdensprachen vollständige menschliche Sprachen, die ebenso wie gesprochene Sprachen über eine komplexe Grammatik verfügen und aus einzelnen Bausteinen zu immer neuen Äußerungen zusammengesetzt werden können.

Sprache und Intelligenz

Sprache erfüllt also viele verschiedene Funktionen, die über das reine Informationenaustauschen hinausgehen. Und das ist eigentlich auch nicht verwunderlich, weil im Gehirn alles mit allem zusammenspielt. Wir können kein einzelnes Sprachmodul im Gehirn identifizieren mit klaren Ein- und Ausgaben. Es gibt zwar Gehirnbereiche, die stärker bei der Erzeugung und dem Verständnis von Sprache benutzt werden, aber diese sind auf komplexe Weise mit anderen Gehirnbereichen verknüpft und übernehmen auch andere Aufgaben als nur die Sprache.

Nochmal zurück zu der Frage, wo eine sprachliche Äußerung überhaupt entsteht. Das Gedächtnis ist sicherlich in vielen Fällen involviert, wenn wir Sprache generieren. Nur leider wissen wir über die Organisation und Funktionsweise des Gedächnisses auch nicht viel mehr als über die Sprache.

Insbesondere ist nicht klar, in welcher Form Wissen im Gehirn abgespeichert ist. Man kann verschiedene Formen von speicherbaren Einheiten unterscheiden, z.B. Faktenwissen (wie heiße ich?) oder prozedurales Wissen (wie bindet man eine Schleife?). Aber selbst für diese Unterformen ist weder klar, wie sie genau im Gehirn repräsentiert werden, noch wie das Gehirn sie im richtigen Moment abruft. Wenn wir also davon ausgehen, dass zumindest bei einigen Fällen des Sprachgebrauchs eine Art Transformation von Gedanken in Worte und Sätze stattfindet, fehlt uns eine Hälfte der Gleichung, nämlich die Darstellung von Gedanken.

Andererseits können wir diese Gleichung nutzen, um über die Sprache Einblicke in unsere Denkprozesse zu gewinnen. Wir wissen, dass Sprache aus klar unterscheidbaren Wörtern zusammengesetzt ist, in der KI nennt man so etwas symbolische Repräsentation. Wir benutzen also willkürliche Symbole (z.B. die Zeichenfolge oder das gesprochene Wort Haus) um teilweise sehr unterschiedliche Dinge in der Welt zu benennen (das Haus, in dem wir wohnen, das Nachbarshaus, aber auch das Rathaus oder das Weiße Haus in Washington D.C.). Das Wort Haus ist also eine Kategorie für verschiedene spezifische Objekte. Und nicht nur das, es ist auch ein Konzept, das gewisse Eigenschaften hat (es hat ein Dach) und mit anderen Konzepten verknüpft ist (z.B. Schutz). Wir verknüpfen also Laut- oder Zeichenfolgen mit Konzepten, die selbst wiederum mit anderen Konzepten verknüpft sind. Diese Verknüpfung wird auch als Assoziation bezeichnet, eine weitere kognitive Fähigkeit, die wir nur teilweise verstehen.

Das ganze ist noch ein wenig komplizierter, denn die Bedeutung von Wörtern wird durch den Kontext beeinflusst. Wenn man das Wort Telefon hört oder sieht, kann dies mit einem bestimmten Objekt verknüpft sein (das Telefon, das vor mir auf dem Schreibtisch liegt) oder mit einem allgemeinen Kommunikationskanal (der Telefonie als Möglichkeit mit anderen zu sprechen) oder auch mit einer notwendigen Handlung (das Telefon klingelt ist nicht unbedingt eine Aussage über das Gerät, das vor mir liegt, sondern eher ein Hinweis, den Anruf anzunehmen).

Insofern hängt Sprache auch mit unserer Wahrnehmung zusammen, einerseits für das Erkennen des Kontexts, andererseits auch für das Aufnehmen von sprachlichen Äußerungen durch das Gehör oder die Augen. Genau wie bei anderen Wahrnehmungsprozessen wissen wir jedoch sehr wenig darüber wie ein bestimmter Reiz im Gehirn zu einem Gedanken wird. Hier schließt sich quasi der Kreis, indem wir wieder nicht wissen, was mit unseren Wahrnehmungen passiert, wenn sie im Gehirn ankommen. Einige werden abgespeichert, andere werden direkt in Handlungen oder eine Änderung unseres emotionalen Zustands umgesetzt. Also auch hier fehlt uns gewissermaßen eine Hälfte der Gleichung: wir können die Wahrnehmung oder sprachliche Äußerung messen oder beobachten, aber wir wissen nicht, in welche Gedankenstrukturen diese transformiert werden.

Wenn wir also Sprache vollständig verstehen wollen, möglichst zu dem Punkt, dass wir sie in einem Computer nachbilden oder nutzen können, müssen wir eigentlich auch alle anderen Gehirnfunktionen verstehen. Und davon sind wir weit entfernt.

Oder geht es vielleicht doch einfacher? Gerade die aktuell groß diskutierten Large Language Models werfen genau diese Frage auf: Diese Modelle generieren Sprache ohne all die anderen gedanklichen Leistungen von Menschen nachzubilden. Kann es also doch Sprache geben ohne Kognition? Im zweiten und dritten Teil werden wir diese Frage noch einmal aufgreifen, wenn wir gesehen haben wie diese Modelle funktioneren.

Computer und Sprache

Wir haben gesehen, dass Sprache vielfältige Funktionen erfüllt. Auch wenn Computer nicht all diese Funktionen nachbilden können, so helfen sie uns schon seit geraumer Zeit Sprache in verschiedenen Formen zu verarbeiten.

Sprache als Daten

Während Sprache an sich als Eigenart der Spezies Homo sapiens gilt, so wie der aufrechte Gang und eine geschickte Hand, ist die geschriebene Sprache eine kulturelle Errungenschaft, ähnlich wie die Mathematik. Die Schrift hat es Menschen ermöglicht, schon vor der Erfindung des Telefons über weite Distanzen zu kommunizieren, die eigenen Gedanken mit vielen Menschen zu teilen anstatt nur mit einem Gesprächspartner, und Gedanken für die Nachwelt festzuhalten.

Insbesondere Alphabetschriften eigenen sich auch besonders gut für die Interaktion mit Computern, da damit Sprache auf eine begrenzte Anzahl von wiederverwendbaren Zeichen begrenzt wird, die sich wiederum leicht in Zahlen übertragen lassen (jeder Buchstabe des Alphabets und jedes Sonderzeichen erhält einfach eine bestimmte Nummer). So kann man Text nicht nur auf Papier schreiben, sondern auch in elektronischer Form speichern und verarbeiten. Diese Anwendung ist recht einfach, denn der Computer selbst muss die Sprache nicht verstehen. Er nimmt die Zeichen so hin wie sie sind und behandelt sie genauso wie andere Daten auch.

Interessanter wird es, wenn wir Unterstützung bei der Erstellung und Speicherung von Texten wünschen, z.B. in Form einer Rechtschreibprüfung. Auch hier muss die Maschine scheinbar nicht allzu viel über Sprache wissen. Wenn ich Ergeniss schreiben, ist klar, dass dieses Wort im Deutschen nicht existiert und über den Vergleich mit ähnlichen Zeichenfolgen, die korrekte Worte darstellen, kann ausgerechnet werden, dass hier vielleicht Ergebnis oder Ereignisse gemeint sein könnte. Doch viele Leute, die versuchen Deutsch zu lernen, werden über die Unterscheidung von den und dem fluchen. Das sind beides deutsche Wörter, aber es kommt auf den Zusammenhang an, welches das richtige ist. Hier fängt es an, dass auch eine Rechtschreibprüfung etwas mehr von Sprache verstehen muss. Trotzdem ist es noch eine vergleichsweise handhabbare Aufgabe, da es sich nur um Grammatik handelt. Man kann also Rechtschreibung und Grammatik in den meisten Fällen gut prüfen und korrigieren, auch ohne den tieferen Sinn des Textes zu verstehen.

Deutlich schwieriger ist automatische Übersetzung. Zwei Sprachen haben fast nie dieselbe grammatikalische Struktur und auch Worte werden anders kategorisiert (z.B. kann das französische Wort temps sowohl Zeit als auch Wetter bedeuten). Zumindest bei menschlichen ÜbersetzerInnen lösen das Problem dadurch, dass sie den Text in der einen Sprache verstehen und Text mit der gleichen Bedeutung in der anderen Sprache neu formulieren. Wenn wir aber das Verständnis des Textes in die Verarbeitungskette einbauen wollen, stehen wir wieder vor dem Problem, dass wir nicht wissen wie dieses Verständnis im Gehirn abläuft oder repräsentiert wird. Im zweiten Teil werden wir sehen wie man auch ohne Verständnis des Textes akzeptable Übersetzungsergebnisse erreicht.

Eine weitere Transformation, die praktisch sein kann, ist die Überführung von geschriebener in gesprochene Sprache und zurück. Das kann hilfreich sein, um beispielsweise Audio-Daten für hörgeschädigte Menschen zugänglich zu machen (oder Leute, die im Zug sitzen und keine Kopfhörer dabei haben). Es kann auch die Interaktion mit elektronischen Geräten vereinfachen, indem gesprochene Sprache als Eingabemodalität die Tastatur ersetzt.

Sprache als Ein- und Ausgabemodalität

Computer, also programmierbare Rechenmaschinen, sind deutlich flexibler als die meisten anderen Geräte, die wir benutzen, und dadurch schwieriger zu bedienen. Da die meisten Menschen deutlich lieber mit Sprache hantieren als mit Mathematik, wurde von Anfang an versucht, Sprache als User Interface, also als Ein- und Ausgabemöglichkeit für Computer, zu etablieren. Die Befehle von Kommandozeilenprogrammen sind eigentlich nichts anderes als eine vereinfachte Form von Sprache. Der Befehl

cp datei.txt ordner/
ist eine Kurzform von
copy datei.txt to ordner/
was nichts anderes bedeutet als kopiere die Datei datei.txt in den Ordner mit Namen ordner/. Sogar dieser einfache Befehl ist kontextsensitiv. Z.B. bedeutet
cp datei-1.txt datei-2.txt
kopiere Datei datei-1.txt in eine neue Datei mit Namen datei-2.txt oder wenn es datei-2.txt schon gibt ersetze Datei datei-2.txt durch die Daten in datei-1.txt.

Im Grunde verwenden wir also schon seit jeher eine recht komplexe sprachliche Interaktion mit Computern. Das ganze wirkt nur deshalb etwas kryptisch, weil wir zu faul zum Tippen sind und deshalb Abkürzungen verwenden.

Das wäre nicht nötig, wenn der Computer gesprochene Sprache verarbeiten könnte. Vor allem bei Handys, wo eine Tastatur nur eingeschränkt zur Verfügung steht, ist die gesprochene Eingabe mittlerweile als Alternative gut zu gebrauchen. Die Eingabe ist weniger exakt und verlässlich im Vergleich zur Tastatureingabe, aber doch gut genug um in den meisten Fällen das gewünschte Ergebnis zu erhalten. Ähnlich ist der Fall bei SmartHome Anwendungen, wo man beispielsweise die Beleuchtung steuern möchte. Statt ortsgebundener Geräte wie Schaltern oder Fernbedienungen (diese sind auch immer nur an einem Ort, auch wenn dieser änderbar ist), hat man so die Möglichkeit einer Maschine spezifische Befehle zu übermitteln.

Interessant ist aber auch, dass trotz der Verfügbarkeit von Spracheingabe, Tastatur und Maus weiterhin ihre Bedeutung behalten. Das mag einerseits mit damit zusammenhängen, dass das damit verbundene Geräusch stören kann (z.B. in einem Großraumbüro). Es hat aber auch damit zu tun, dass ein Computer eben nur eingeschränkte Sprachkommandos verarbeitet. Sie ähneln eher den Kommandos, die man Hunden beibringt, als allgemeiner menschlicher Sprache. Und vielleicht ist das auch gut so, denn explizite Kommandos sind weniger leicht misszuverstehen als Sprache im Allgemeinen. Deshalb werden zum Beispiel beim Militär oder in der Luftfahrt feste Kommunikationsprotokolle verwendet, um Missverständnisse durch Mehrdeutigkeit zu vermeiden. Wir sollten uns also fragen, ob ein allgemeines Sprachverständnis für die Interaktion zwischen Menschen und Computern überhaupt sinnvoll ist. Unpräzise und mehrdeutig schaffen wir auch allein, dazu brauchen wir keine Maschinen.

Sprache als Simulation von Intelligenz

Aber irgendwie können wir es nicht lassen. Schon bevor überhaupt der erste Computer gebaut wurde, hat man darüber spekuliert, ob eine universelle Rechenmaschine nicht auch eine Denkmaschine sein könnte. Spätestens seit Alan Turing's berühmtem Artikel Computing Machinery and Intelligence [1] von 1950 träumt die Menschheit von denkenden Maschinen. In dem Artikel wird auch das berühmte Imitationsspiel beschrieben, das heute unter der Bezeichnung Turing Test bekannt ist. Turing hat dieses Spiel nicht als Test auf Intelligenz eines Computers verstanden, sondern als reines Gedankenexperiment um den Begriff der Intelligenz besser zu definieren. In jedem Fall kommt darin sprachliche Interaktion vor: ein Mensch kommuniziert (in elektronischer, geschriebener Form) entweder mit einer anderen Person oder einem Computer. Wenn man nicht mehr unterscheiden kann, ob man eine Person oder einen Computer als Kommunikationspartner hat, könnte man den Computer als intelligent bezeichnen. Wir werden nie erfahren, ob Alan Turing ChatGPT als intelligent bezeichnet hätte.

Spätestens seit den 1960er Jahren gibt es Programme, die in irgendeiner Form eine Konversation simulieren. Das erste und berühmteste war ELIZA von Joseph Weizenbaum. Damals wie heute hatten diese Systeme das Problem, das Weizenbaum in einem Interview auf den Punkt gebracht hat Worüber soll ich denn nun mit dem Computer reden?. Er wusste – und das galt damals wie heute – dass wir nicht wissen, wie Informationen und Gedanken in einem Gehirn abgespeichert sind und dass wir keine wirklich gute Simulation davon in einem Computer haben.

Seine Lösung war so einfach wie genial (und ist ebenso die Grundlage von ChatGPT): anstatt Sprache aus Gedanken zu generieren und wieder in ebensolche zu überführen, transformiert ELIZA einfach nur sprachliche Äußerungen in andere sprachliche Äußerungen. Wenn man in ELIZA einen Text eingibt wie Ich fühle mich schlecht. antwortet das Programm mit etwas wie Warum geht es dir schlecht?. Es wiederholt und transformiert also die Eingabe. Praktischerweise gibt es in der Psychotherapie eine Technik, die genau so funktioniert. Mit dieser Technik kann man PatientInnen zum (weiter-)sprechen anregen und ihnen damit helfen ihre Probleme und Sorgen selbst besser zu verstehen und in den Griff zu bekommen. Wir haben hier also eine Form von sprachlicher Interaktion, die eigentlich nicht der Kommunikation dient, aber trotzdem einen Nutzen haben kann.

Diese Form der Konversation um der Konversation willen hat sich in Chatbots gehalten. Es gab auch jahrelang Wettbewerbe, um den Turing Test zu bestehen. Die Aufgabe bestand also darin, möglichst lange eine Konversation am Laufen zu halten, die ein Mensch als glaubhaft erachtet. Eine wirkliche Anwendung war dabei nicht angedacht.

Spätestens in den 1980er Jahren wollte man das ganze dann aber doch in praktisch nutzbare Systeme überführen, indem man Chatbots mit klassischer Datenverarbeitung kombinieren wollte. Chatbots konnten zum Teil beeindruckend menschliche Sprache simulieren, während man andererseits in Datenbanken zumindest Faktenwissen speichern und effizient abrufen konnte. Was liegt also näher als Systeme zu bauen, die Menschen in bestimmten Lebenslagen mit Faktenwissen versorgen können und das auf eine natürlich wirkende Weise? Solche System wurden als Expertensysteme bezeichnet. Ihr Zweck waren spezifische Anwendungsgebiete wie Medizin, in denen so viel Wissen vorhanden ist, dass es für keinen Menschen vollständig beherrschbar ist, man dieses Wissen aber eigentlich gern stärker nutzen würde.

Die Forschung an Expertensystemen wurde in den 1980er Jahren vor allem in Japan und den USA mit viel Geld gefördert. Doch die Ergebnisse konnten nicht das erwünschte Niveau erreichen. Der Grund war nicht, dass die Forschung keine Ergebnisse hervorgebracht hätte, sondern dass die Erwartungen an ein wissendes und per Sprache kommunizierendes System zu sehr beeinflusst war von der Vorstellung, die man von menschlichen Experten hatte. Hier hat sich auch gezeigt, dass die Simulation von Sprache in Form von Chatbots zwar beeindruckend wirken kann, aber die Techniken nichts mit echter kognitiver Sprachverarbeitung zu tun haben. Deshalb konnte man sie auch nicht einfach vor eine Datenbank schrauben um ein kluges System zu bekommen.

Die Enttäuschung war so groß, dass die Finanzierung von KI-Forschung stark eingeschränkt wurde und ein sogenannter KI-Winter folgte. Der Begriff Expertensystem und auch künstliche Intelligenz wurden kaum noch verwendet. Erst in den 2000er Jahren hatte IBM den Mut, die Idee von Expertensystemen unter dem Stichwort Question Answering in ihrem Programm Watson wieder aufzugreifen. 2011 gewann das Programm spektakulär gegen zwei Menschen in der Quizsendung Jeopardy. Das lag nicht an der Unwissenheit der menschlichen Spieler, sondern auch daran, dass Watson die Fragen elektronisch bekam, während die Menschen die Frage erst einmal hören oder lesen mussten. Trotzdem war es eine beeindruckende Vorstellung.

Eine weitere Anwendung von Sprachverarbeitung wurde in der KI-Forschung ab und zu verfolgt: das Generieren von Geschichten. Diese Aufgabe wurde weniger wegen ihrer praktischen Anwendung angegangen, sondern eher, weil es eine spannende Aufgabe ist, bei der man verschiedene Bereiche von Intelligenz verbinden kann. Zum Beispiel ist ein Krimi nur deshalb interessant, weil es eine konsistente Abfolge von Ereignissen und Handlungen gibt, die man beim Lesen herausfinden möchte. Wenn die Handlung aber nicht konsistent ist, die Figuren einmal auftauchen und dann nie wieder erwähnt werden oder ihre Eigenarten ändern, wird die ganze Geschichte sinnlos. Damit wollte man eine Aufgabenstellung bearbeiten, die intelligente Mechanismen wie Wissensrepräsentation und Schlussfolgern mit Sprachgenerierung verbindet, ohne gleich alle Aspekte von Denken und Sprache auf einmal angehen zu müssen.

Bei den aktuell beliebten Systemen wie ChatGPT findet man Aspekte von all diesen Dingen. Sie können Texte generieren, eine Konversation simulieren und Fragen beantworten (manchmal sogar korrekt). Aus Anwendersicht ist dabei nicht ersichtlich, wie das System zu seiner Ausgabe kommt. Im nächsten Teil werde ich zeigen, wie zwei Grundprinzipien bei der Sprachverarbeitung angewendet wurden und werden und wie sich die Mode ab und zu ändert. Und dann können wir sehen, wo wir stehen auf dem Weg zum Verständnis von Sprache.

 

Teil 2: Wie man Computer zum Sprechen bringt

08.05.2024
Um Sprache im Computer verarbeiten zu können, muss man sie mathematisch greifbar machen. Dieser Teil stellt zwei grundlegende Herangehensweisen vor.

Künstliche Intelligenz verwendet im Vergleich zu anderen Intelligenzwissenschaften eine ganz spezifische Methode, um mehr über das Denken herauszufinden: Sie versucht Denkvorgänge per Programmierung nachzubilden oder zu simulieren, um so wissenschaftliche Theorien aus anderen Gebieten zu testen oder selbst welche zu entwickeln. Diese Methode schränkt die KI stark ein, wenn es darum geht Theorien zu entwickeln. Während man in der Psychologie die Vorstellung von Denkvorgängen in einem Diagramm darstellen würde oder in der Linguistik sprachliche Phänomene und Experimente per Sprache beschreibt, hat sich die KI auferlegt, eine Theorie in mathematischen Formeln ausdrücken zu können. Denn nur so kann ein Computer – eine Rechenmaschine – etwas damit anfangen.

Eine weitere Herausforderung ist, dass wir Intelligenz von null programmieren müssen. In einem psychologischen Experiment haben die Versuchspersonen ein funktionierendes Gedächtnis, Wahrnehmung, Lernvermögen usw. Selbst bei Patientengruppen mit eingeschränkten physischen oder kognitiven Möglichkeiten ist immer noch sehr viel menschliche Grundintelligenz gegeben. Ein Computer hat nichts davon. Er hat zwar einen Speicher, dieser funktioniert aber ganz anders als das menschliche Gedächtnis. All die mit Sprache verwobenen kognitiven Phänomene (s. Teil 1) sind in einem Computer nicht vorhanden.

Wenn man also Sprache vollständig nachbilden möchte, muss man all diese anderen Prozesse auch verstehen und nachbilden können. Bisher ist dies nicht einmal ansatzweise gelungen. Und vielleicht ist es auch nicht nötig, um trotzdem praktische Anwendungen im Zusammenhang mit Sprache zu haben. Je mehr man den Zweck und die Erwartungen an Sprachverarbeitung eingrenzt, desto besser können Ergebnisse sein, die man auch ohne vollständiges Verständnis kognitiver Prozesse erlangen kann.

Verhalten oder Denken?

Was bedeutet es eigentlich, dass man ein natürliches Phänomen im wissenschaftlichen Sinne verstanden hat? Oft wird Verständnis mit Vorhersage gleichgesetzt. Zum Beispiel in der Physik, wenn man eine Kugel eine Rampe herunterrollen lässt und die richtigen Parameter wie den Neigungswinkel der Rampe kennt, kann man ausrechnen, also vorhersagen, wann die Kugel unten ankommen wird. Wie die Kugel es anstellt, unten anzukommen, ist dabei eigentlich egal. Solange man aus den Eingangsparametern das Ergebnis vorhersagen kann, könnte man sagen, hat man den Vorgang genug verstanden.

Diese Sichtweise findet man in der psychologischen Strömung des Behaviorismus. Die Idee dabei ist, dass man Menschen ähnlich wie Computerprogramme betrachtet: man füttert eine Eingabe (oder Reiz) und daraufhin zeigt die Person (oder das Programm) ein bestimmtes Ausgabeverhalten (oder eine Reaktion). Wenn man beispielsweise einen Menschen in einem abgedunkelten Raum mit einer Couch lässt, ist es sehr wahrscheinlich, dass dieser Mensch irgendwann auf der Couch einschlafen wird. Wenn uns nur diese Reaktion auf die gegebenen Umstände interessiert, kann uns auch egal sein, warum Menschen einschlafen. Oder vielleicht ist es uns nicht egal, aber wir sehen ein, dass die Prozesse so komplex sind, dass wir sie sowieso in absehbarer Zeit nicht verstehen werden und beschränken uns deshalb auf das Ein-/Ausgabeverhalten.

In den 1960er und 70er Jahren wurde dieses Paradigma abgelöst durch den Kognitivismus, bei dem es mehr darum geht, die Denkvorgänge selbst zu beschreiben. Noam Chomsky hat diesen Paradigmenwechsel in der Linguistik vorangetrieben und mathematische Modelle entwickelt, die die Struktur, also die Grammatik, von Sprachen erklären erklären. Analog dazu wurden auch allgemein in der künstlichen Intelligenz und Informatik Methoden zur Wissensrepräsentation beliebt, die auf formaler Logik basieren. Diese beiden Methoden, formale Grammatik und logische Wissensrepräsentation, passen sehr gut zusammen und hegten die Hoffnung, dass man daraus ein vollständiges formales Denkmodell entwickeln könnte.

Klassische Sprachverarbeitung

Nach Chomsky setzen sich sprachliche Äußerungen aus wiederverwendbaren Modulen zusammen: Worten, Phrasen und Sätzen. Diese Module werden nach bestimmten Regeln zusammengesetzt. Zum Beispiel besteht ein typischer Satz im Deutschen aus einem Subjekt, einem Verb und einem Objekt. In Alex trinkt Tee. ist Alex das Subjekt, also die handelnde Person, trinkt, das Verb, beschreibt die Handlung, und Tee ist das Objekt, mit dem oder an dem die Handlung ausgeführt wird. Jedes Element hat dabei selbst eine Bedeutung, gewinnt aber auch weitere Bedeutung aus dem Kontext. In dem Satz Alex trinkt gern Tee. hat trinken eher die Bedeutung von mögen, während es in dem ersten Satz eine konkrete Handlung beschreibt. So können wir mit einer begrenzten Menge von Sprachbausteinen und Regeln beliebige Gegebenheiten ausdrücken.

Wenn ein Computer also Sprache verstehen soll, kann man mit Chomsky's Methoden Sätze in ihre Einzelteile zerlegen. Aber was dann? Wir wollen Sprache ja in so etwas wie Gedankenrepräsentationen verwandeln, also was mag das sein? Es muss etwas sein, womit ein Computer umgehen kann, z.B. eine Zahl oder Folge von Zahlen, ein Eintrag in einer (Datenbank-)Tabelle oder auch eine logische Formel wie lieblingsgetränk('Alex', 'Tee') Und daraus könnte man Abfragen generieren wie lieblingsgetränk('Alex', ?) oder in Sprache ausgedrückt Welches Getränk mag Alex?.

So können wir den Kommunikationskreis schließen: wenn wir die Grammatikregeln und Wortbedeutungen einer Sprache kennen, können wir sprachliche Äußerungen in mathematische Konstrukte umwandeln. Diese Konstrukte können weiterverarbeitet, verknüpft und umgerechnet werden, eben alles was ein Computer so kann. Das Resultat ist wieder ein mathematisches Konstrukt, das wir mit unserer Sprache-zu-Mathe-Umwandlung auch wieder zurücktransformieren können.

Klingt soweit einleuchtend. Die Methode hat nur einen Haken: sie funktioniert nicht. Das Problem daran ist, dass Chomsky's Theorie nur fast richtig ist. Man muss sich nur 10 Minuten in ein Café setzen und am Nachbartisch lauschen um zu merken, dass wir uns nicht immer an Grammatik halten. Wer es nicht glaubt, suche auf YouTube nach einem Video mit Untertiteln und lese nur diese. Erst beim Lesen fällt so richtig auf, wie oft gesprochene Sprache von den offiziellen Regeln abweicht. Für Menschen ist das kein Problem. Wir kennen den Zusammenhang und können mit falscher Grammatik oder gar unpassenden Wörtern in den allermeisten Fällen umgehen. Und wir können das so gut, dass es uns nicht einmal bewusst ist.

Ein weiteres Problem an der Methode ist, dass ein Computer nur sehr eingeschränkte Daten hat und verarbeiten kann. Und deshalb kann er auch nur sehr eingeschränkt Sprache verstehen. Vielleicht haben wir eine Datenbank mit Teesorten. Da kann man vielleicht abfragen, was ein bestimmter Tee kostet, wo er angebaut wurde und welche geschmacklichen Merkmale er hat. Trotzdem ist die Menge von Sätzen, die so ein Programm sinnvollerweise verstehen würde, sehr eingeschränkt. Es könnte nicht einmal etwas mit dem Satz Alex trinkt gern Tee anfangen, denn es kennt gar keine Alternativen wie Kaffee. Wir brauchen zu jeder Frage oder Äußerung ein passendes Gegenstück in den Datenstrukturen des Programms.

Trotzdem wurde diese Herangehensweise zur Sprachverarbeitung über Jahrzehnte alternativlos verfolgt. Man hoffte vermutlich, dass man mit genügend Arbeitseinsatz die Schwierigkeiten überwinden könnte. Ein Beispiel für einen derartiken Versuch ist die Wissensdatenbank Cyc. Diese versucht seit 1984 die Lücke zu schließen zwischen den Begriffen, die ein Computer kennt und dem reichen Wortschatz von Menschen. Cyc definiert Wörter so, dass ein Computer daraus automatisiert logische Schlüsse ziehen kann. Cyc existiert noch immer, aber der große Durchbruch in der klassischen Sprachverarbeitung ist ausgeblieben. Ob dies daran liegt, dass trotz der großen Bemühungen bei weitem nicht sämtliche menschliche Konzepte abgebildet werden konnten oder ob unser Bedürfnis nach logischen Schlussfolgerungen geringer ist als gedacht, bleibt offen. Fest steht aber, dass der klassische Sprachverarbeitungsansatz nicht den gewünschen Erfolg gebracht hat.

Jetzt kann man sich fragen, ob die Linguistik nichts besseres zu bieten hatte als das Chomsky-Modell. Die Antwort ist: sie hatte. Beispielsweise hat George Lakoff, ein Schüler von Chomsky, interessante Arbeiten über das Entstehen und die Verwendung von Kategorien (also quasi Wörtern) verfasst. Und insgesamt ist die Linguistik längst davon abgekommen, menschliche Sprache mit formalen mathematischen Modellen vollständig beschreiben zu wollen. Das Problem dabei ist nur: in der KI brauchen wir die Mathematik. Ein linguistisches Modell nützt uns erst dann etwas, wenn wir daraus Formeln ableiten können. Das ist nun mal die einzige Sprache, die ein Computer versteht.

Sprachverarbeitung ohne Regeln

Irgendwann kam dann aber doch der Punkt, an dem große US-Firmen weiterkommen wollten mit Sprachverarbeitung. Durch die Verbreitung des Internet war die Notwendigkeit auch dringender geworden: Suchmaschinen sollten herausfinden was auf Webseiten geschrieben steht, man musste Spam von erwünschten E-Mails trennen und mit der Ausbreitung der Digitalisierung wollte man sicherstellen, dass möglichst viele Menschen daran teilhaben können, auch wenn sie nicht sehen oder hören können.

Der dabei eingeschlagene Weg ist eigentlich ein Schritt zurück zum Behaviorismus. Die aktuell erfolgreichen Methoden versuchen gar nicht erst die komplette Bandbreite der Kognition zu verstehen, es geht darum in Standardsituationen eine sinnvolle Lösung liefern zu können.

In diesem Zusammenhang werden oft Modelle erwähnt. Aber was heißt das eigentlich?

Eine Nachbildung (Darstellung, Wiedergabe oder Reproduktion) eines Gegenstands, bei dem die für wesentlich erachteten Eigenschaften hervorgehoben werden. Die als nebensächlich angesehenen Aspekte lässt man außer Acht. Ein Modell ist in diesem Sinn also ein vereinfachtes Abbild der Wirklichkeit. Was wichtig ist, hängt vom Betrachter (Benutzer) des Modells ab. Von Bedeutung ist dabei, was man mit einem Modell erreichen will bzw. wozu es dient.
Landesbildungsserver Baden-Württemberg: Modell
Im Bereich der Sprachverarbeitung bedeutet das, dass wir das komplexe Phänomen Sprache auf leicht zu beschreibende Merkmale reduzieren, typischerweise sind das einzelne Wörter oder Satzschnipsel. Damit wird zunächst auch der Anspruch an Sprachverarbeitung reduziert auf das Umsetzen von spezifischen praktischen Anwendungen.

Wortverarbeitung

Die allgemeine Definition eines Modells sagt erstmal nicht, ob dieses als Text, Abbildung oder Formel vorliegt. Wie immer brauchen wir in der KI eine Formel. Nur wo bekommen wir diese her?

Wenn wir zum Beispiel einen Spamfilter wollen, dann brauchen wir eine Formel, die einen Text als Eingabe nimmt und entweder den Wert ist-Spam oder den Wert ist-kein-Spam ausgibt. Texte im Allgemeinen sind schlecht standardisiert, sie haben zum Beispiel unterschiedliche Längen und verwenden natürlich unterschiedliche Wörter. Wenn unsere Formel für verschiedene Texte funktionieren soll, müssen wir die Eingabe irgendwie vereinfachen. Und das ist ja auch der Witz an einem Modell: Vereinfachung.

Bei Sprache drängt sich eine Art der Vereinfachung geradezu auf: einzelne Wörter. Wir zerlegen also unseren Text in die Wörter, die darin vorkommen und zählen vielleicht noch, wie oft jedes Wort enthalten ist. Damit suchen wir jetzt nach einer Formel, die die Wörter und die Anzahl ihres Auftretens als Eingabe erhält und wie gehabt ist-Spam oder ist-kein-Spam zurückliefert.

Das sieht schon mal besser aus. Wir könnten uns jetzt eine Liste von bösen Wörtern anlegen, z.B. Mahnung, Abnehmen, Gewinn und bei jeder E-Mail testen, ob sie eines dieser Wörter enthält. Falls dies der Fall ist, geben wir den Wert ist-Spam aus, andernfalls ist-kein-Spam. Man kann die Erkennunsqualität noch verbessern, indem man zum Beispiel zählt wie viele böse Worte vorkommen. Oder man kann doch ein wenig Grammatik anwenden und nicht mit den Worten direkt aus dem Text arbeiten, sondern sie zunächst in ihre Grundform überführen.

Trotzdem ist das Verfahren mit viel Fummelei verbunden und die gern verwendeten Wörter in Spam-Mails können sich auch mal ändern. Nachdem es ja nicht gerade an Beispielen für Spam-Mails mangelt, können wir unsere Liste von bösen Wörtern nicht einfach von einem Computer erstellen lassen? Und ja, das geht. Dazu müssen wir nur genügend Spam-Mails haben, diese genauso vorverarbeiten wie die Mails, die wir hinterher testen wollen (also in Worte zerlegen und diese vielleicht noch in Grundformen umwandeln) und durchzählen, welche Wörter wie oft vorkommen. Natürlich werden in Spam-Mails auch Wörter verwendet, die in gutartigen E-Mails vorkommen. Wir brauchen daher auch Beispiele für Nicht-Spam-Mails und müssen die dort vorkommenden Wörter als nicht-böse einstufen.

Damit haben wir unsere Gesamtaufgabe sogar in zwei Modelle (Formeln) aufgeteilt

  1. Eingabe: alle Wörter im Text, Ausgabe: ist-Spam oder ist-kein-Spam
  2. Eingabe: ein Wort, Ausgabe: böse oder nicht-böse
Die sehen ziemlich ähnlich aus und sind damit nicht allein. Ein ähnliches Problem hat man, wenn man herausfinden will, ob ein Foto verschwommen ist oder nicht. Diese Art von Aufgabenstellung bezeichnet man als Klassifikation. Aus irgendeiner Eingabe soll eine Zugehörigkeit zu einer Klasse (ist-Spam, ist-kein-Spam) erfolgen. Vor allem bei Modell~2 sieht man auch ein typisches Problem von Klassifikationsaufgaben: die Zuordnung ist nicht immer eindeutig. Wir werden sowohl Spam- als auch in Nicht-Spam-Mails finden, in denen das Wort Abnehmen vorkommt, nur kommt es in Spam vielleicht häufiger vor. Auf Mathematisch heißt das, wir nutzen Statistik, die macht nämlich genau das: Werte durchzählen und aufzeigen, ob in einer Gruppe ein Wert deutlich häufiger vorkommt als in einer anderen.

Und jetzt haben wir Glück: nachdem Klassifikationsaufgaben recht häufig vorkommen, gibt es dafür schon Lösungsmethoden. Ich rede vom berühmten maschinellen Lernen, genaugenommen statistischen maschinellen Lernen. Ich hoffe, es ist soweit klar geworden, dass die Verfahren, die unter diesem Begriff zusammengefasst werden, nichts mit der Fülle der menschlichen Fähigkeit zu Lernen gemein haben. Aber sie sind nützliche Werkzeuge, wenn man eben das Problem hat, dass man aus vorhandenen Daten ein Modell, also eine Formel, erstellen möchte, das bestimmte Werte aus den Daten auf bestimmte Ausgabewerte abbildet.

Sind damit alle Fragen geklärt? Können wir unseren Spamfilter jetzt automatisch lernen lassen, wenn wir nur genügend Spam- und Nicht-Spam-Emails bereitstellen können? Nicht ganz. Wir müssten uns erst noch entscheiden, welches unserer zwei Modelle wir lernen lassen wollen. Wir könnten Modell 2 lernen lassen und dieses Modell in unserem Programm verwenden, in dem wir für jedes Wort in einer E-Mail bestimmen lassen, ob es gut oder böse ist und ab einer bestimmten Anzahl von bösen Wörtern (diese Anzahl ist ein Parameter, den man wieder durch Fummelei festlegen muss) klassifiziert man die E-Mail als Spam. Wir hätten also Modell 1 per Hand programmiert unter Zuhilfenahme des generierten Modells 2.

Oder wir lernen Modell 1 direkt ohne Umweg. Das bedeutet weniger Programmierung für uns, aber auch weniger Kontrolle. Zum Beispiel der Parameter ab welcher Anzahl von bösen Wörtern ein Text als Spam eingestuft wird: wir müssen uns nicht mehr darum kümmern, können damit aber auch keine fehlerhaften Klassifikationen mehr beheben. Und wir müssen uns überlegen, wie wir einer Formel alle Wörter im Text gemeinschaftlich präsentieren, denn die Modelle, die man mit maschinellem Lernen erstellen kann, brauchen eine standardisierte Eingabe. Wir müssen also Texte unterschiedlicher Länge irgendwie standardisieren. Das können wir z.B. mit dem mathematischen Konstrukt eines Vektors machen. Ein Vektor ist nichts weiter als eine Liste von Zahlen. Diese Zahlen könnten in unserem Fall jeweils ein Wort repräsentieren. Wir könnten zum Beispiel einen Vektor der Länge 3 definieren, bei dem der erste Wert die Anzahl der Vorkommen des Wortes Abnehmen darstellt, der zweite die Vorkommen des Wortes Affe und der dritte die Vorkommen des Wortes Auto. Der Vektor (1 0 2) würde also für einen Text stehen, in dem das Wort Abnehmen einmal, Affe gar nicht und Auto zweimal vorkommt.

Natürlich würde man realistischerweise einen Vektor definieren, bei dem wir jedes Wort der deutschen Sprache repräsentieren (Kleinzeug wie Artikel und Präpositionen kann man vorher herausfiltern). So ein Vektor ist natürlich recht lang, aber mit genügend Fummelei (ja, die gibt es auch beim maschinellen Lernen) kann man einen vernünftigen Kompromiss zwischen repräsentierten Worten und Vektorlänge finden. So ein riesiger Eingabevektor hat übrigens noch lange nichts mit großen Sprachmodellen zu tun, so ein Vektor gilt in der KI noch als normal.

Zusammengefasst: Für bestimmte Zwecke kann man sinnvolle Anwendungen hervorbringen, indem man Sprache auf einfache Parameter beschränkt, wie die verwendeten Wörter. Aus dieser vereinfachten Repräsentation kann man Modelle, genaugenommen Formeln, erstellen, die Wörter oder Mengen von Wörtern (repräsentiert als Vektoren) als Eingabe verwenden und eine gewisse Art von Ergebnis ausgeben (im Beispiel waren das sogenannte Klassen, es können aber auch Zahlen oder sogar wieder Wörter sein). Ein Modell kann man per Hand, also durch Programmierung, erstellen oder durch sogenannte statistische maschinelle Lernverfahren aus Daten extrahieren.

Satzschnipselverarbeitung

Mit der Reduktion auf Worte können wir uns also Sprachmodelle bauen. Aber Wörter kommen irgendwo an ihre Grenzen. Denken wir an automatische Übersetzung. Bei sehr verwandten Sprachen wie Deutsch und Niederländisch kann man durch Wort-für-Wort-Übersetzung vielleicht ein einigermaßen sinnvolles Ergebnis erhalten, aber schon bei Deutsch und Englisch wird man dabei scheitern, ganz zu schweigen von Sprachen, die vollkommen anders aufgebaut sind.

Müssen wir uns jetzt also doch wieder mit Grammatik und dem Verstehen von Inhalten auseinandersetzen? Vielleicht nicht! Es gibt noch etwas dazwischen und das sind Textschnipsel. Nehmen wir den Satz Morgenstund hat Gold im Mund. Diesen können wir in überlappende Textschnipsel der Länge 3 zerlegen: Morgenstund hat Gold, hat Gold im und Gold im Mund. Auch hier hat man, wie immer, Parameter: die Länge der Schnipsel, aber zum Beispiel auch, was man mit dem Anfang und dem Ende des Satzes macht. Wir könnten, je nach Aufgabe, auch noch folgende Schnipsel verwenden: [Textanfang] Morgenstund hat und im Mund [Textende]. Also wieder Fummelei.

Das Interessante an dieser Repräsentation ist, dass man damit die Fortsetzung von Texten gut modellieren kann. Und das entspricht ja auch irgendwie der menschlichen Erfahrung. Es genügt eigentlich schon, dass jemand Morgenstund sagt und wir ergänzen mental hat Gold im Mund. Das funktioniert nicht mit jedem Wort und jedem Satzanfang, aber der Mechanismus ist vorhanden, so wie wir auch die Melodie eines Liedes weitersingen können.

Bei automatischer Übersetzung, zum Beispiel von Deutsch auf Englisch, braucht man (mindestens) zwei Modelle:

  1. Eingabe: deutschsprachiger Textschnipsel, Ausgabe: englischsprachiger Textschnipsel
  2. Eingabe: englischsprachiger Textschnipsel, Ausgabe: sinnvolle nächste Worte, die den Schnipsel ergänzen könnten
Diese Modelle können im Detail wieder sehr unterschiedlich definiert sein. Zum Beispiel kann Modell~2 direkt ein Wort ausgeben oder wieder einen Vektor mit Werten, die angeben, wie gut ein bestimmtes Wort sich als Fortsetzung des Schnipsels eignen würde. In jedem Fall spielen zwei Modelle zusammen: eines das die beiden Sprachen in Beziehung setzt und an anderes, das die Fortführung des Textes in der Zielsprache beeinflusst. Damit bekommt man einerseits eine inhaltliche Entsprechung des Textes und andererseits die Grammatik der Zielsprache.

So mancher fragt sich jetzt vielleicht: Und das funktioniert? Ja, tut es, zumindest wenn man die Modellparameter lange genug hingefummelt hat, wenn es genügend Textmaterial zum Erstellen der Modelle gibt und wenn die zu übersetzenden Texte inhaltlich und strukturell ähnlich sind zu den Texten aus denen die Modelle generiert wurden. Zum Beispiel lassen sich Rechtstexte sehr gut übersetzen. Einerseits sind darin die Satzstrukturen recht trocken, andererseits gibt es in der EU viel Trainingsmaterial, da alle EU-Gesetze in sämtliche Mitgliedssprachen übersetzt werden müssen. Auch der Spruch Morgenstund hat Gold im Mund wird zum Beispiel von Google Translate korrekt übersetzt als The early bird catches the worm. Das kommt oft genug vor, und vermutlich nutzt Google auch längere Textschnipsel als in meinem Beispiel oben gezeigt. Auch Passagen aus Büchern werden gut übersetzt, dann diese wurden schon einmal von Menschen übersetzt. Diese Originalübersetzung kann automatisch entstehen, wenn die Schnipsellängen lang genug sind oder wenn man also neben den bereits beschriebenen Techniken noch einen Test einbaut, ob ein Schnipsel oder ein ganzer Text genau so in vorhandenen Daten existiert.

Andererseits kommt es oft genug vor, dass automatische Übersetzung verwendet wird (zum Beispiel auf Webseiten) und man sich fragt, wie jemand auf die Idee kommen kann, so einen Quatsch auf die Menschheit los zu lassen. Das sind dann eben Texte, die nicht zu dem Trainingsmaterial der Modelle passen oder die eine Satzstruktur haben, die man nicht gut mit Satzschnipseln fassen kann. Und dann ist auch immer die Frage, was eine richtig gute Übersetzung ist. Zum Beispiel dieser Ausschnitt aus der Beschreibung eines Videos auf dem YouTube-Kanal von todoListo:

Elektronische Erinnerungen vom Handy oder Computer helfen das Gedächtnis zu entlasten und sich entspannter zu fühlen. Diese Entspannung ist vorbei in dem Moment wo die Erinnerung hochpoppt oder lospiepst. Dann werden wir nämlich aus unserer Tätigkeit gerissen und abgelenkt.
Google macht im Englischen folgendes daraus:
Electronic reminders from your cell phone or computer help to relieve your memory and feel more relaxed. This relaxation is over the moment the memory pops up or starts beeping. Then we are torn from our activity and distracted.
DeepL liefert fast dasselbe Ergebnis:
Electronic reminders from your cell phone or computer help to relieve your memory and make you feel more relaxed. This relaxation is over the moment the reminder pops up or beeps. Then we are torn from our activities and distracted.
Diese Übersetzungen geben zwar den Sinn irgendwie wieder, ich finde sie aber beide sehr holprig. Meine Übersetzung ist deutlich freier, nach meiner Ansicht aber auch deutlich eleganter:
Reminders and notifications are a way to reduce cognitive load and provide peace of mind. But they also have downsides: they can be a significant distraction.
Durch reine Skalierung der Schnipselmodelle, zum Beispiel mehr Trainingstexte oder eine längere Schnipsellänge, ist so eine freie Übersetzung nicht zu erwarten. Daher sehe ich Übersetzungsprogramme als Hilfsmittel, nicht als Ersatz von menschlicher Übersetzung. Ich nutze sie ab und zu als ersten Aufschlag für eine Übersetzung und oft genug kann man diesen auch verwenden. Aber oft gefällt er mir auch nicht und dann übernehme ich.

Wir haben also in der Sprachverarbeitung zwei philosophische Grundannahmen:

  1. Sprache ist ein kognitiver Prozess. Um sie vollständig im Computer abzubilden, müssen wir kognitive Prozesse im Allgemeinen verstehen.
  2. Auch ohne tieferes Verständnis kann man mit vereinfachten, aus Daten extrahierten Modellen, vernünftige Ergebnisse für bestimmte Aufgaben erzielen.
Annahme 2 wird durch vorhandene Software klar bestätigt. Für bestimmte Aufgaben, die mit Sprache zu tun haben, können uns Computer gut unterstützen. Annahme 1 wird dadurch aber nicht widerlegt. Es geht nämlich um eine ganz andere Aufgabenstellung: vollständiges Verständnis von Sprache versus spezifische Anwendungen. Dann hätten irgendwie alle recht.

Wie sind dann aber die aktuellen Werbebotschaften aus dem Silicon Valley zu beurteilen, wie diese Aussage von Elon Musk:

Wenn man AGI [Artificial General Intelligence] als intelligenter als der intelligenteste Mensch definiert, denke ich, dass es wahrscheinlich nächstes Jahr, oder innerhalb von zwei Jahren so weit sein wird.
[Heise online, 09.04.2024]
Ich würde Sprache mal als Teil dieser Vision einstufen. Wie solche Versprechen (oder Drohungen?) zu beurteilen sind, diskutieren wir im dritten Teil.

 

Teil 3: Sprache verstehen

14.05.2024
Wieweit helfen uns die Verfahren der künstlichen Intelligenz das Phänomen Sprache besser zu verstehen? Sind Large Language Models ein fundamentaler Durchbruch?

Wir haben also gesehen, dass es zwei Herangehensweisen gibt, um Sprache im Computer handhabbar zu machen: einerseits der Versuch Denkprozesse in mathematischen Strukturen nachzubilden und andererseits die Beschränkung auf das Ein- und Ausgabeverhalten von Sprache, abbildbar in aus Daten generierten Modellen. Bei beiden Herangehensweisen es ist beeindruckend, was man schon mit recht einfachen Methoden erreichen kann. Schon ELIZA war damals ein Hit. Ich denke, dafür gibt es zwei Gründe: 1) Sprache ist zwar mit Intelligenz verknüpft, aber nicht für jede Anwendung von Sprache braucht man auch die volle Macht menschlicher Intelligenz. Eingeschränkte Sprachbefehle genügen ebenso um mit Computern zu interagieren wie sie genügen Hunde zu trainieren oder den Flugverkehr zu kontrollieren. 2) Menschen neigen dazu, alles was irgendwie nach Sprache aussieht oder klingt als solche zu interpretieren und die Quelle der Äußerung als intelligentes Interaktionsobjekt anzuerkennen. Schon bei ELIZA wurden die sprachlichen Fähigkeiten der Maschine überbewertet und man fing an Computern Intelligenz zu unterstellen.

Zu diesen beiden Gründen kommt noch ein dritter hinzu: menschliche Sturheit. Bei der klassischen Herangehensweise in Teil 2 habe ich bereits beschrieben, wie man jahrzehntelang nur die analytischen Methoden von Chomsky verfolgt hat und mit aller Macht versucht hat sie irgendwie doch noch zum Erfolg zu führen. Ein ähnlicher Vorgang passiert gerade mit vereinfachten Sprachmodellen. Sie werden mit unvorstellbarer Rechenpower, unbegreiflichen Datenmengen und nicht zu rechtfertigenden Stromrechnungen skaliert um eine noch bessere Illusion von Intelligenz zu erzeugen.

Modellgrößenwahn

Was macht ein Modell jetzt eigentlich groß? Im zweiten Teil haben wir Vektoren von der Länge eines Wörterbuchs kennen gelernt. Das ist noch lange nicht groß. Groß werden die Modelle durch Kombinatorik, also dadurch, dass man Dinge zusammenwürfelt und damit nicht die Summe an Parametern oder benötigter Datenmenge bekommt, sondern eine exponentielle Beziehung.

Nehmen wir nochmal die Übersetzung. Ich habe diese mit zwei Modellen erklärt: eines, das Sprachschnipsel von einer Sprache in eine andere abbildet, und ein zweites, das Sprachschnipsel einer Sprache fortsetzt. In beiden spielt die Länge der Sprachschnipsel eine Rolle. Sagen wir, wir haben eine Sprache, die nur 5 Wörter kennt und deren Grammatik es erlaubt jedes Wort mit jedem anderen beliebig zu kombinieren. Wenn wir jetzt eine zweite derart seltsame Sprache haben, die ebenfalls nur 5 Wörter kennt, müssen wir für das Übersetzungsmodell genau 5 Wortpaare speichern, wenn wir mit einer Schnipsellänge von eins arbeiten, also mit einzelnen Wörtern. Die Übersetzung wird damit nicht besonders gut funktionieren. Zur Verbesserung könnten wir Schnipsel der Länge 2 speichern. Das wären 5 * 5, also 25 Schnipsel, von denen wir jeweils das Gegenstück zur anderen Sprache herausfinden und speichern müssten. Oder wir machen die Schnipsel noch länger, zum Beispiel 10. Dann müssen wir 5 * 5 * 5 * 5 * 5 * 5 * 5 * 5 * 5 * 5 = 510 = 9.765.625 Paare von Ausdrücken mit ihrem Gegenstück in der anderen Sprache abspeichern.

Das ist nicht nur deutlich mehr Speicherplatz, sondern wenn wir die Modelle aus Daten extrahieren wollen, brauchen wir auch deutlich mehr Daten. Ein Modell mit Einwortschnipseln könnten wir schon aus einer E-Mail und ihrer Übersetzung in diesen seltsamen Sprachen herausbekommen. Aber um alle 10er-Satzfetzen zu finden, müssten wir wahrscheinlich ganze Bücher mit ihrer jeweiligen Übersetzung kennen.

Eine andere Möglichkeit, um Modelle groß zu bekommen, ist sie zu kombinieren. Anstatt zwei Modelle für die Übersetzung zu verwenden, könnten wir alles zusammen in einem Modell abbilden, so wie wir es am Beispiel des Spamfilters getan haben. Dort hatten wir als Optionen ein einfacheres Modell (Wörter klassifizieren in böse und nicht-böse) mit einem programmierten Modell zu kombinieren oder gleich die eigentliche Aufgabe als ein Modell zu betrachten (Text klassifizieren in ist-Spam und ist-kein-Spam). Für die zweite Option braucht unser Modell mehr Parameter, die im Zuge des Trainings justiert werden müssen. Das dauert länger und benötigt auch wieder mehr Daten. Aber wir müssen selbst weniger Handarbeit anlegen.

Andererseits wird es dadurch schwieriger Fehler gezielt zu korrigieren. Wenn man Übersetzung mit zwei Modellen betreibt, gibt es immer noch Parameter im Gesamtsystem, die man selbst steuern kann (aber eben auch muss). Bei einem großen Modell ist es alles oder nichts. Es kann passieren, dass das Übersetzungsprogramm tausende von Texten perfekt übersetzt, aber bei einem Text nicht nur daneben liegt, sondern das Ergebnis auch beleidigend, diskriminierend oder auf sonstige Weise inakzeptabel ist. Die einzige Chance, den Fehler für diesen einen Text zu beheben, ist das komplette Modell neu zu trainieren und dabei hat man relativ wenige Hebel (die Daten, die man dazu verwendet und vielleicht ein paar indirekte Parameter), der Rest ist Glückssache. Vielleicht schafft man es dann, das unerwünschte Ergebnis zu vermeiden, hat aber vielleicht auch das Ergebnis der bisher gut funktionierenden Fälle verschlechtert. Und natürlich kann es immer wieder passieren, dass bei einem bestimmten Text wieder ein größerer Fehler auftritt. Eine andere Option zur Behebung von vereinzelten Fehler ist, dass man das Modell an sich unverändert lässt und drumherum einen Test programmiert, der die Anfrage, bei der das Problem auftritt, herausfiltert bevor sie überhaupt mit dem Modell bearbeitet wird und stattdessen eine vorprogrammierte Antwort gibt.

Man sieht also, was bei der Arbeit mit diesen Modellen noch groß ist: das Gefummel. OpenAI hatte 2024 laut Wikipedia 1200 Angestellte. Ich frage mich, was die alle tun, wenn das Märchen, das uns Silicon Valley gern über vollautomatische KI erzählt, wahr wäre. Natürlich ist dieses Märchen nicht wahr. Große Sprachmodelle benötigen einen ungeheuren Aufwand in der Erstellung, Wartung und Weiterentwicklung. Es ist sogar gewissermaßen ein Vorteil für große Firmen, dass das Verfahren so aufwendig ist. Das bedeutet nämlich weniger Konkurrenz und weniger staatliche Kontrolle.

In gewisser Weise sagt uns das auch etwas über menschliche Intelligenz (oder das Gegenteil davon): wenn wir etwas mit Technik nicht elegant lösen können, dann halt durch menschliche Arbeitskraft. So sind schon die Pyramiden in Ägypten enstanden. Man hatte zwar weder Kran noch Presslufthammer, aber irgendwie ging es schon. So ähnlich geht das heute. Wir haben Techniken, die in bestimmten Fällen ganz gut funktionieren, aber wir wollen mehr, also wird mit Arbeitskraft und Rechenpower daran rumgeschraubt, bis es zumindest so aussieht als wüssten wir was wir tun.

Andererseits, wenn das zum gewünschten Ergebnis führt, warum nicht? Die Frage ist, können diese Modelle so skaliert werden (im Notfall eben mit roher Gewalt), dass sie echte Intelligenz zeigen werden? Im Prinzip gibt es nichts was dagegen spricht. Wenn man Daten davon hätte, wie sich Menschen in bestimmten Situationen verhalten, was sie jeweils sagen und wie sie auf Eingaben in Form von Sprache oder anderen Wahrnehmungen reagieren, dann müsste man dies auch in einem gigantischen Modell beschreiben können. Die Fülle von Situationen ist aber derart groß, dass damit in absehbarer Zeit nicht zu rechnen ist. Selbst die besten Modelle bilden heute nur einen winzigsten Bruchteil der menschlichen Erfahrungswelt ab.

Und eigentlich finde ich die Frage auch uninteressant. Ich will nicht wissen, ob man mit genügend Schweiß, Strom und Daten etwas hingebastelt bekommt, das man mit genügend Marketing als intelligent bezeichnen kann. Mich interessiert viel mehr, wie unser Gehirn es schafft, mit wenig Bioenergie und kluger Konstruktion, Sprache und andere kognitive Leistungen hervorzubringen.

Sprachverarbeitung als Wissenschaft

Ich habe die künstliche Intelligenz als Zweig der Intelligenzwissenschaften eingeführt. Was bringen uns die 60 oder 70 Jahre, in denen Sprachverarbeitung mit dem Computer mehr oder minder erfolgreich betrieben wurde?

Zunächst einmal gibt uns Chomsky einen Anhaltspunkt was die komplexe Sprache von Menschen von Kommunikationsformen anderer Lebewesen unterscheidet: Wir erzeugen aus einer begrenzten Menge von Lauten (je nach Sprache werden unterschiedliche verwendet) eine ebenfalls begrenzte Menge von Wörtern, die wir als Bausteine für eine unbegrenzte Menge an Aussagen, Gefühlsäußerungen, Fragen oder sonstigen Äußerungen verwenden. Die daraus abgeleitete mathematische Beschreibung dieses modularen Aufbaus, hat sich als zu starr und vereinfacht herausgestellt. Die Wirklichkeit ist noch viel spannender. Worte an sich repräsentieren komplexe Konzepte. Und zusätzlich ergibt sich die Bedeutung von Worten aus dem Kontext einer Äußerung (Alex trinkt Tee. vs. Alex trinkt gern Tee.), aber auch aus dem Situationskontext (von welcher Person ist hier die Rede?).

Aber das ist noch nicht alles. Sprache ist eben nicht nur ein Instrument der Kommunikation, wo eine Person eine Nachricht zu einer anderen übermittelt. Wir nutzen Begrüßungs- und Höflichkeitsfloskeln, können gemeinsam Liedtexte mitgrölen oder smalltalken über das Wetter. Sprache ist also auch ein Instrument der sozialen Interaktion, vielleicht so wie sich Affen gegenseitig entlausen. Und da kommt es gar nicht so sehr auf den Inhalt an, sondern dass man die richtigen Formeln kennt.

Wir haben gesehen, wie man automatisch Sätze weiterdenkt oder vervollständigt. Diesen Punkt vernachlässigt der klassische Ansatz komplett, während neuere Sprachmodelle ihn oft überbewerten. In ein menschliches Kurzzeitgedächtnis passen etwa 5–7 Informationseinheiten. Was immer diese Einheiten genau sind, als erste Näherung können wir annehmen, dass es sowas wie Worte sein könnten. Dieser Wert passt auch recht gut zu der Länge einer Phrase. Phrasen sind Satzteile, die gemeinsam im Gehirn verarbeitet werden und eine logische Einheit bilden. Diese Phrasen ergeben sich aber aus der Satzkonstruktion, zum Beispiel als Nebensätze und nicht einfach nur als was kommt als nächstes?. Und sie haben eine begrenzte Länge, also vielleicht 7 oder auch mal 10, aber definitiv nicht 50.

Das Gehirn nutzt also verschiedene Mechanismen und das ist sicher auch situationsabhängig. Und um das ganze noch spannender zu machen, gehen die verschiedenen Verwendungen von Sprache auch nahtlos ineinander über. In einer Geschäftsbesprechung wird man sich erstmal begrüßen, vielleicht auch fragen wie der Ausflug am Wochenende war oder sich darüber beschweren, dass es das ganze Wochenende lang nur geregnet hat. Dann wird man auch Informationen austauschen, die für die Arbeit der Anwesenden wichtig sind. Aber auch dabei wird sozial interagiert. Gerade für Leute, die neu in einem Projekt oder einer Organisation sind, sind diese nebenbei gesendeten Signale nicht immer verständlich. Vielleicht gibt es eine Konkurrenz zwischen zwei Abteilungen oder zwei Beteiligte kennen sich so gut, dass sie vieles gar nicht sagen müssen oder schon beim Töpferkurs ausgehandelt haben.

Manchmal scheint es auch so weit zu gehen, dass der Inhalt der Sprache nahezu bedeutungslos wird. Wieviel Text wird in einem Unternehmen pro Tag in Form von E-Mails, Dokumentationen, Berichten und Pressemitteilungen produziert und wieviel wird davon je wieder gelesen? Der Erfolg von ChatGPT und ähnlichen Systemen ist für mich ein klarer Hinweis darauf, dass es einen großen Bedarf gibt an Text dessen Inhalt nebensächlich ist. Ich wundere mich immer über die wohlgemeinten Angebote von E-Mail Diensten oder sonstigen Kommunikationswerkzeugen, Antworten auf Nachrichten zu generieren. Wenn meine Antwort nur ein knappes Ok, danke sein soll, dann spart mir das nicht besonders viel Arbeit. Und für alles andere kann umgeht es die Kommunikationsabsicht. Wenn mir jemand eine Nachricht schickt, dann möchte mir diese Person etwas mitteilen und eine Auskunft von mir haben (eine, die sie nicht selbst im Internet nachschlagen kann, denn dann würde sie mich nicht fragen). Eine generierte Antwort ist also in jeder Hinsicht nutzlos: ich werde nicht wissen, was mir die Person mitteilen wollte und sie wird auch nicht die gewünschte Information von mir bekommen.

Bevor wir uns also Gedanken machen wie weit man diese Sprachmodelle noch treiben kann, sollte man vielleicht auch mal fragen, was davon wir brauchen und wann der Einsatz von Sprache sinnvoll ist. Wir haben bereits sehr nützliche Anwendungen zur Sprachverarbeitung und vielleicht werden diese in Zukunft auch besser. Aber mein persönlicher Bedarf an sprachlicher Interaktion mit Computern ist eigentlich gedeckt. Am Ende bin immer ich dafür verantwortliche was und wie ich mit anderen Menschen kommuniziere und diese Verantwortung kann und soll mir kein Computer abnehmen.

Und in jedem Fall bleiben eine Menge Forschungsfragen über menschliche Sprache offen. Wenn die KI dabei weiterhin mitmischen möchte, sollte sie nicht so tun als wären alle Fragen dazu geklärt. Und ich mir wünschen, dass man sich nicht immer jahrzehntelang auf eine Methode festnagelt und diese bis zum Erbrechen optimiert. Intelligenz und Sprache sind so komplexe Phänomene, dass wir nur dann eine Chance haben, sie wirklich zu verstehen, wenn wir von verschiedenen Seiten her attakieren. Und dabei sollte man nicht immer nach der Anwendbarkeit fragen. Keine Universität dieser Welt wird Forschungsarbeiten hervorbringen können, die sofort vergleichbare Ergebnisse wie ChatGPT bringen wird. Aber wenn wir Sprache besser verstehen, kann man nützliche Anwendungen in Zukunft vielleicht mit weniger Aufwand bauen und nebenbei würden wir uns selbst als denkende Wesen weiter ergründen.

← Zurück zur Blog-Übersicht