(Teil 1) Maschinelle Übersetzung mit Tiefen Neuronalen Netzen

Maschinelle Übersetzung mit Tiefen Neuronalen Netzen (Teil 1)


Sprache und Intelligenz

Auch wenn Intelligenz schwer zu definieren ist – eines ist klar: Sprache und Intelligenz sind eng miteinander verwoben. Sprache ist ein Werkzeug, mit dem wir nicht nur mit anderen Menschen kommunizieren. Sprache spiegelt wider, wie unser Gehirn die Welt abstrahiert und konzeptualisiert.

Das soll nicht heißen, dass man Konzepte, die in der eigenen Sprache nicht vorkommen, nicht verstehen kann. Die Sprache definiert eher so etwas wie “Denkautobahnen”, also gedankliche Muster, die viel öfter benutzt werden als andere und somit leichter von der Hand gehen. Zum Beispiel gibt es in bestimmten Sprachen keine egozentrischen Richtungsangaben. Bei den Guugu Yimidhirr, australischen Ureinwohnern, die die gleichnamige Sprache sprechen, werden Richtungsangaben stets in Bezug zu Himmelsrichtungen gemacht und nie relativ zur eigenen Perspektive. An der Kreuzung biegen sie also nicht nach links ab, sondern Richtung Westen. Die Orientierungsfähigkeiten eines Guugu Yimidhirrs sind fantastisch, egal ob im australischen Outback oder in städtischen Häuserschluchten. Das Gehirn eines Kindes, das gerade die Sprache erlernt, muss also das viel schwierigere Konzept der Himmelsrichtungen begreifen – ein Prozess, der bei den Guugu Yimidhirr mehrere Jahre dauert.

In der künstlichen Intelligenz ist daher auch Sprache ein wichtiges Thema und ein eigenes Forschungsfeld names Natural Language Processing (NLP). Hier tummeln sich viele unterschiedliche Aufgabenstellungen. Von Spracherkennungs- und Sprachsynthesesystemen über die Analyse grammatikalischer Strukturen bis zur Durchdringung der Semantik; man findet im NLP quasi alle Aspekte von Sprache wieder. Viele Probleme des Natural Language Processing sind allerdings nicht trivial und trotz großer Fortschritte (siehe Siri, Alexa und Co.) können wir immer noch nicht mit dem Computer über Gott und die Welt sprechen. Noch immer können Computer nicht fehlerfrei die Bedeutung von Texten erfassen und noch immer klingen sie etwas blechern.


Geschichte des Natural Language Processing

Bereits in den frühen Jahren der KI wurde an maschinellen Übersetzungssystemen geforscht. Wie auch in anderen Disziplinen der KI wurden Texte mit starren, mensch-gemachten Regeln verarbeitet. Im Georgetown-IBM Experiment konnte 1954 ein Programm mit einer Übersetzungsprozedur aus nur sechs festen grammatikalischen Regeln mehr als sechzig Sätze aus dem Russischen ins Englische übersetzen. Die frühen Erfolge führten zu viel Optimismus und reichlich Forschungsgeldern.

Die Komplexität des Problems wurde jedoch unterschätzt und die anfangs vielversprechenden Ansätze blieben weit hinter den Erwartungen zurück. Mit dem Ausbleiben der Erfolge verschwand ein Großteil der Forschungsgelder und das Natural Language Processing musste immer wieder KI-Winter überstehen.

Zu nennenswerten Erfolgen kam es, als die starren Regelsysteme nach und nach durch statistische Lernverfahren ersetzt wurden. Stochastische Modelle wie HMMs (Hidden Markov Models) führten zu großen Fortschritten und einer Vielzahl an kommerziell erfolgreichen Produkten.

In den letzten Jahren brachte die allgemeine Deep Learning-Explosion auch Lösungen für Probleme des Natural Language Processing hervor, die inzwischen die Leistungsfähigkeit von fast allen nicht-neuronalen Systemen signifikant übertreffen. So wurde beispielsweise das Backend von Google Translate im September 2016 durch ein Deep Learning System ersetzt.


Deep Machine Translation

Die maschinelle Übersetzung besteht aus komplexen Teilaufgaben, die in fast jedem Problem im Natural Language Processing vorkommen und viele Jahre nicht zu lösen waren. Für eine Übersetzung müssen nicht nur die Wörter einer Sprache mit denen der anderen ausgetauscht werden. Es muss der Sinn, die hinter den Worten liegende Bedeutung, erfasst und in geeignete Worte der Zielsprache wiederverpackt werden.

Methoden des Deep Learning werden heutzutage auch im NLP eingesetzt. Grundlage sind auch hier wieder neuronale Netze. Der Vorteil liegt einerseits in der Möglichkeit ohne Vorprozessierung, direkt die Bedeutung und schließlich die Übersetzung aus den Rohdaten zu extrahieren. Diese End-to-End genannte Strategie funktioniert allerdings nur gut, wenn andererseits die relevanten Dateneigenschaften “erlernt” werden. Früher wurden diese Features noch händisch durch Experten definiert. Heutzutage sind tiefe neuronale Netze die Methode der Wahl, ein Modell der Sprache direkt aus einer großen Datenmenge abzuleiten. Schauen wir uns an, wie moderne neuronale Übersetzungssoftware, ähnlich wie sie von Google Translate verwendet wird, aufgebaut ist.

Ein modernes neuronales Übersetzungssystem besteht im Wesentlichen aus drei Komponenten. Zuerst müssen die Eingabedaten, also die Sequenz der Buchstaben, in eine numerische Form überführt werden. Dann wird die Eingabesequenz in eine interne Repräsentation übersetzt, von der aus dann die Dekodierung in die Ausgabesprache erfolgt. Alle Teile von dem System werden dabei zusammen (“End-to-End”) mit dem Backpropagation-Algorithmus optimiert. Dies erfordert, dass die Ableitung der einzelnen Komponenten bestimmbar sein muss. Die Grundlagen des Lernens mit neuronalen Architekturen werden im Artikel "Reinforcement Learning" erläutert.


Embedding der Eingabedaten

Im Gegensatz zu Bild- oder Sprachdaten besteht Text aus diskreten Symbolen (zum Beispiel Buchstaben oder Wörtern), die nicht ohne weiteres in einem neuronalen Netz verwendet werden können. Daher muss im ersten Teil der maschinellen Übersetzung die Eingabe numerisch dargestellt werden. Zwar könnte man einfach jedem Symbol eine eindeutige Zahl zuordnen und einen Satz in eine entsprechende Liste von Zahlen überführen. Gebräuchlicher ist es allerdings, eine Liste von Zahlen pro Symbol zu benutzen, also eine Vektorrepräsentation oder sogenanntes Embedding. Heutzutage ist es noch üblich, die Eingabe auf Wortebene zu repräsentieren – hauptsächlich, weil dadurch das Gesamtsystem schneller trainiert und ausgeführt werden kann. Als Vektor repräsentiert kann man ein Wort als einen Punkt in einem hochdimensionalen Raum auffassen. Dies hat im Gegensatz zu einer eindeutigen Identifizierungsnummer den Vorteil, dass ähnliche Worte (wie auch immer Ähnlichkeit definiert wird) sich nah beieinander häufen können und schon ganz früh in der Wortrepräsentation eine Bedeutung kodiert werden kann.  

In vielen Sprachen können Wörter in unterschiedlichen Formen auftreten. Verben können konjugiert, Nomen dekliniert werden und trotzdem sollten sich alle Formen die gleiche Repräsentation teilen, da sie ja das gleiche bedeuten. Um das neuronale Modell zu entlasten und diese Abbildung nicht selber lernen zu lassen, wird meist eine sogenannte Lemmatisierung der Wörter durchgeführt, eine Vorprozessierung, in der jedes Wort durch seine Grundform ersetzt wird.

Eine naive Vektordarstellung von diskreten Symbolen sind sogenannte One-Hot Vektoren. Dabei wird jedes Symbol (also z. B. jedes Wort) durch einen Vektor der Länge des Vokabulars ersetzt. Dieser Vektor besteht nur aus Nullen und einer einzigen Eins. Die Position dieser Eins identifiziert jedes Symbol im Vokabular. Wenn der Trainingsdatensatz also 100.000 Worte enthält, dann wird jedes Wort durch einen Vektor der Länge 100.000 ersetzt. Der Vektor für das Wort “Ja” könnte dann zum Beispiel die Form [1, 0, 0, ....] haben, der für das Wort “Nein” [0, 1, 0, …], usw.

Da diese Repräsentation sehr ineffizient ist, wird in der Praxis aus den One-Hot Vektoren durch eine Matrixmultiplikation ein meist viel kürzerer Vektor gemacht, der dann endlich unserem Wort-Embedding entspricht. Wenn unser Embedding eine Länge von 100 Elementen haben soll und unser Vokabular 100.000 Wörter enthält, dann kann diese Abbildung durch eine Matrix mit 100 Zeilen und 100.000 Spalten dargestellt werden. Aber wie muss diese Matrix nun aussehen? Da eine Matrixmultiplikation ableitbar ist, können wir das Embedding als Teil des Gesamtsystems mittrainieren.

Die Bedeutung eines Wortes hängt vom Kontext ab: Eine Bank zum Sitzen ist etwas anderes als das Institut, das Ersparnisse verwaltet. Lesen Sie im zweiten Teil, wie eine KI diesen Unterschied bewältigt.

Kommentare
Einen Kommentar schreiben
Entschuldigung

Ihr Browser ist leider nicht aktuell genug.
Um diese Webseite zu benutzen, benötigen Sie einen aktuellen Browser
Wir empfehlen einen der folgenden Browser in der aktuellsten Version zu installieren.

Auf iOS Geräten sollte mindestens die Betriebssystem Version iOS 9 installiert sein.

Mozilla Firefox Google Chrome Microsoft Edge Internet Explorer