Erste Schritte mit AutoML Translation

Einführung

Angenommen, Sie betreiben einen Branchendienst für Finanznachrichten und haben nun die Möglichkeit, in neue Länder zu expandieren. Auf diesen Märkten wird erwartet, dass Ihre zeitkritischen Finanzdokumente in Echtzeit übersetzt werden. Statt dass Sie nun zweisprachige Finanzfachleute einstellen oder Fachübersetzer beauftragen – beides aufgrund des erforderlichen Expertenwissens und der notwendigen kurzen Bearbeitungszeiten teure Lösungen –, kann AutoML Translation Ihnen helfen, Ihr Übersetzungsaufkommen in variablem Umfang so zu automatisieren, dass Sie neue Märkte schnell erschließen können.

Übersetzung

Warum ist maschinelles Lernen (ML) das richtige Werkzeug für dieses Problem?

Bei der klassischen Programmierung muss der Programmierer dem Computer jeden Arbeitsschritt explizit vorgeben. Dieser Ansatz stößt jedoch beim Übersetzen schnell an seine Grenzen. Denn der Übersetzungsvorgang ist ebenso komplex wie die natürliche Sprache selbst. Daher ist die regelbasierte Übersetzung schon seit Jahrzehnten nicht mehr das bevorzugte Konzept. Heute erfolgt maschinelle Übersetzung fast ausschließlich anhand eines statistischen Ansatzes. An die Stelle immer spezifischerer Regelsätze, die von Linguisten manuell optimiert werden, treten dabei umfangreiche Korpora von Paralleltexten.

Sie als Nutzer benötigen ein System, das sich auf eine Vielzahl von Übersetzungsszenarien anwenden lässt und gleichzeitig auf Ihren Anwendungsfall und das aufgabenspezifische Fachgebiet in den für Sie relevanten Sprachpaaren abgestimmt ist. Da strikte Regeln auf Dauer exponentiell erweitert werden müssten, brauchen Sie stattdessen ein System, das aus Beispielen lernen kann. Genau auf diesem Gebiet sind Systeme für maschinelles Lernen gut geeignet.

Ist die Translation API oder AutoML Translation das richtige Tool für mich?

Die Translation API deckt eine Vielzahl von Sprachpaaren ab und eignet sich hervorragend für allgemeinsprachliche Texte. AutoML Translation hat seine Stärken auf der "letzten Meile" im Bereich zwischen allgemeinsprachlicher Übersetzung und spezialisiertem Fachvokabular. Unsere benutzerdefinierten Modelle beruhen auf dem allgemeinen Modell der Translation API, bieten jedoch eine zusätzliche Ebene. Mit ihrer Hilfe ist das Modell in der Lage, die richtige Übersetzung für die jeweils relevanten fachspezifischen Inhalte zu ermitteln.

Translation API mit AutoML Translation vergleichen

Translation API testen Erste Schritte mit AutoML

Welchen Beitrag leistet das maschinelle Lernen bei AutoML Translation?

Beim maschinellen Lernen werden Algorithmen mit Daten auf das gewünschte Ergebnis hin trainiert. Die Anforderungen an den Algorithmus und die Trainingsmethoden unterscheiden sich je nach Problembereich. Beim maschinellen Lernen gibt es viele verschiedene Unterkategorien, die auf das zu lösende Problem abgestimmt sind und jeweils mit unterschiedlichen Beschränkungen funktionieren. Mit AutoML Translation können Sie im Rahmen einer überwachten Lernphase einen Computer so trainieren, dass er in Paaren aus ausgangssprachlichen und übersetzten Sätzen Muster erkennt. Während dieser überwachten Lernphase wird ein benutzerdefiniertes Modell auf die Übersetzung speziell jener fachlichen Inhalte trainiert, die für Sie relevant sind.

Datenvorbereitung

Für das Trainieren eines benutzerdefinierten Modells mit AutoML Translation müssen Sie übereinstimmende Satzpaare in der Ausgangs- und Zielsprache bereitstellen. "Übereinstimmend" bedeutet hier, dass die Satzpaare in der Ausgangs- und Zielsprache die gleiche Bedeutung haben. Nun ist Übersetzung sicherlich keine exakte Wissenschaft, aber je mehr sich die Bedeutungen in Ihren Satzpaaren entsprechen, desto besser funktioniert das Modell.

Anwendungsfall bewerten

Gehen Sie beim Erstellen des Datasets immer vom konkreten Anwendungsfall aus. Folgende Fragestellungen können Ihnen am Anfang helfen:

  • Welches Ergebnis möchte ich erzielen?
  • Welche Arten von zu übersetzenden Sätzen sind für dieses Ergebnis erforderlich? Ist dies eine Aufgabe, die von der Translation API ohne Training ausgeführt werden kann?
  • Lassen sich diese Sätze von Menschen in zufriedenstellender Weise übersetzen? Wenn die Texte, die übersetzt werden sollen, nicht eindeutig sind und eine Person mit fließender Beherrschung beider Sprachen Schwierigkeiten hätte, ein zufriedenstellendes Ergebnis zu liefern, kann AutoML Translation allenfalls eine ähnliche Leistung erzielen.
  • Welche Beispiele geben am besten die Art und Bandbreite der Daten wieder, die das System übersetzen soll?

Das Kernprinzip der ML-Produkte von Google ist ein auf den Menschen ausgerichtetes maschinelles Lernen. Bei diesem Ansatz stehen verantwortungsbewusste Vorgehensweisen in Bezug auf künstliche Intelligenz einschließlich Fairness im Vordergrund. Bei Fairness in ML geht es darum, eine ungerechte oder voreingenommene Behandlung von Menschen aufgrund ihrer Herkunft, ihres Einkommens, ihrer sexuellen Orientierung, ihrer Religion, ihres Geschlechts und anderer diskriminierender und ausgrenzender Charakteristiken, die von den Algorithmen bei der Entscheidungsfindung verwendet werden, zu verstehen und zu verhindern. Weitere Informationen dazu finden Sie in unserem Leitfaden. In den Richtlinien weiter unten erhalten Sie außerdem "Fair-aware"-Hinweise ✽ zu diesem Thema. Wir empfehlen Ihnen, Fairness im Machine Learning zu berücksichtigen, während Sie sich die Richtlinien für die Erstellung Ihres Datasets durchlesen, sofern dies für Ihren Anwendungsfall relevant ist.

Daten erheben

Nachdem Sie nun wissen, welche Art von Daten Sie benötigen, müssen Sie überlegen, woher Sie sie bekommen. Zuerst werden alle Daten berücksichtigt, die Ihr Unternehmen ohnehin erhebt. Vielleicht werden die zum Trainieren eines Übersetzungsmodells benötigten Daten ja bereits erhoben. Wenn die erforderlichen Daten nicht verfügbar sind, können Sie sie manuell erfassen oder von einem Drittanbieter beziehen.

Daten an Ihren Problembereich anpassen

Sie möchten ein benutzerdefiniertes Übersetzungsmodell trainieren, da Sie ein Modell für ein bestimmtes Fachgebiet brauchen. Die Satzpaare sollten deshalb bestmöglich auf das Vokabular, die speziellen Ausdrucksweisen und auch die grammatikalischen Besonderheiten Ihrer Branche oder Ihres Fachgebiets abgestimmt sein. Verwenden Sie Dokumente mit typischen Wendungen, die in den künftigen Übersetzungsaufgaben vorkommen können, und achten Sie darauf, dass die Sätze der Paralleltexte in Bezug auf die Bedeutung so exakt wie möglich übereinstimmen. Sprachen sind im Hinblick auf das Vokabular oder die Syntax sicherlich oft nicht komplett deckungsgleich. Versuchen Sie aber nach Möglichkeit, zumindest die gesamte semantische Vielfalt zu erfassen, die bei der Übersetzungsaufgabe auftreten kann. Sie bauen auf einem Modell auf, das beim Übersetzen von allgemeinsprachlichen Texten bereits sehr gut funktioniert. Ihre Beispiele sind nun der spezielle letzte Schritt, mit dem AutoML Translation auf Ihren besonderen Anwendungsfall abgestimmt wird. Achten Sie deshalb darauf, dass die Beispiele relevant sind und das erwartete Sprachmaterial gut abbilden.

Vielfalt Ihres sprachlichen Felds erfassen

Es ist eine verführerische Vorstellung, dass Menschen so einheitlich über ein bestimmtes Fachgebiet schreiben, dass eine kleine Anzahl von Textbeispielen, übersetzt von einer kleinen Anzahl an Übersetzern, genügt, um ein Modell zu trainieren, das sich anschließend auch für alle anderen gut eignet, die über dieses Fachgebiet schreiben. Aber jeder Mensch ist anders und so ist auch unsere Art zu schreiben jeweils Ausdruck unserer individuellen Persönlichkeit. Ein Trainings-Dataset, das Satzpaare einer breiten Auswahl von Autoren und Übersetzern umfasst, liefert in einem vielfältigen Unternehmen eher ein hilfreiches Modell zur Übersetzung von Texten als ein Modell, das sich nur auf eine schmale Basis stützt. Berücksichtigen Sie außerdem unterschiedliche Satzlängen und -strukturen. Ein Dataset mit gleich langen Sätzen oder mit Sätzen ähnlicher grammatikalischer Struktur liefert AutoML Translation keine ausreichenden Informationen zum Erstellen eines alle Möglichkeiten abdeckenden guten Modells.

Menschen in den Prozess einbinden

Nach Möglichkeit sollten Sie von einer Person, die beide Sprachen gut beherrscht, überprüfen lassen, ob die Satzpaare richtig zugeordnet, die Sätze verständlich und die Übersetzungen korrekt sind. Ein simpler Fehler wie die falsche Zuordnung von Zeilen in Ihrer Trainingstabelle kann zu unsinnigen Übersetzungen führen. AutoML Translation benötigt unbedingt hochwertige Daten, damit ein für Ihr Unternehmen brauchbares Modell erstellt werden kann.

Unstrukturierte Daten bereinigen

Bei der Vorverarbeitung von Daten kann es schnell zu Fehlern kommen, die das AutoML Translation-Modell unbrauchbar machen. Achten Sie besonders auf folgende leicht zu übersehende Datenprobleme:

  • Identische Ausgangs- und Zielsätze.
  • Falsch zugeordnete Ausgangs- und Zielsätze.
  • Nicht mit der angegebenen Sprache übereinstimmende Sätze, beispielsweise englische Sätze in einem chinesischen Dataset.
  • Sätze mit Elementen aus verschiedenen Sprachen, beispielsweise ein Zielsatz, der versehentlich nicht übersetzte Wörter aus dem Ausgangssatz enthält.
  • Sätze mit Rechtschreib- oder Grammatikfehlern, die von Ihrem Modell dann wahrscheinlich gelernt werden.
  • Doppelte Sätze in den Trainings- und Test-Datasets (siehe weitere Informationen zu Trainings- und Test-Datasets).
  • Textpaare mit mehreren Sätzen. Wenn Sie mit einem Dataset trainieren, in dem viele Elemente mehr als etwa 50 Tokens (Wörter) enthalten, leidet die Qualität des Modells. Teilen Sie längere Texteinheiten nach Möglichkeit in einzelne Sätze auf.

So erfolgt die Vorverarbeitung Ihrer Daten durch AutoML

AutoML Translation unterbricht das Parsen Ihrer Dateneingabedatei, wenn:

  • die Formatierung ungültig ist
  • ein Satzpaar unverhältnismäßig lang (10 MB) ist
  • die Datei eine andere Codierung als UTF-8 aufweist

Bei Problemen, die AutoML Translation erkennen kann, werden Fehler ignoriert, z. B. bei folgenden Problemen:

  • Ein <tu>-Element in einer TMX-Datei enthält keine Ausgangs- oder Zielsprache.
  • Eines der eingegebenen Satzpaare ist leer.

Im AutoSplit-Modus führt AutoML Translation zusätzliche Verarbeitungsschritte aus:

  • Nachdem das Dataset hochgeladen wurde, werden Satzpaare mit identischen Ausgangssätzen entfernt.
  • Die Daten werden vor dem Training nach dem Zufallsprinzip in drei Gruppen mit einem Verhältnis von 8:1:1 aufgeteilt.

Wie AutoML Translation anhand Ihres Datasets ein benutzerdefiniertes Modell erstellt

Zu Ihrem Dataset gehören Trainings-, Validierungs- und Test-Datasets. Wenn Sie keine Aufteilung angeben (siehe Trainingsdaten vorbereiten) und Ihr Dataset weniger als 100.000 Satzpaare enthält, verwendet AutoML Translation automatisch 80 % des Inhalts der Dokumente für das Training, 10 % für die Validierung und 10 % für Tests. Wenn Sie mehr Daten haben, müssen Sie die Aufteilung selbst vornehmen.

Trainings-Dataset

Die überwiegende Mehrheit Ihrer Daten sollte im Trainings-Dataset enthalten sein. Das sind die Daten, die Ihr Modell während des Trainings "sieht". Damit werden die Parameter des Modells erlernt, vor allem die Gewichtung der Verbindungen zwischen den Knoten des neuronalen Netzes.

Validierungs-Dataset

Während des Trainingsvorgangs wird auch das Validierungs-Dataset, oft als "dev"-Dataset bezeichnet, verwendet. Beim Modell-Lernen wird zuerst eine Reihe von Kandidatenmodellen vom Framework mithilfe des Trainings-Datasets trainiert. Das Kandidatenmodell, das anschließend in Bezug auf das Validierungs-Dataset die beste Leistung zeigt, wird dann als bestes unter den generierten Modellen ausgewählt. Anhand der Leistung des Modells bei der Verarbeitung des Validierungs-Datasets werden die Hyperparameter des Modells optimiert. Hyperparameter sind Variablen, die die Struktur des Modells angeben. Wenn Sie die Hyperparameter ebenfalls mit dem Trainings-Dataset optimieren würden, würde sich das Modell aufgrund des mehrfachen Trainings mit den Trainingsdaten zu stark an ihnen orientieren. Wenn Sie aber beim Validierungsschritt für die Feinabstimmung der Modellstruktur relativ neuartige Daten verwenden, ermöglicht das dem Modell potenziell eine bessere Verallgemeinerung.

Test-Dataset

Das Test-Dataset wird völlig unabhängig vom Trainingsvorgang eingesetzt. Nachdem das Training des Modells abgeschlossen ist, nutzen wir das Test-Dataset als komplett neue Aufgabe für das Modell. Anhand der Leistung des Modells beim Test-Dataset lässt sich relativ genau absehen, wie gut es später mit Realdaten funktionieren wird.

Manuelle Aufteilung

Sie haben die Möglichkeit, Ihre Daten automatisch von AutoML in Trainings-, Validierungs- und Test-Datasets aufteilen zu lassen. Wenn Sie aber mehr Kontrolle über den Vorgang möchten, eine andere Aufteilung vorziehen oder Wert darauf legen, dass bestimmte Beispiele in einem bestimmten Teil des Modelltrainingszyklus verwendet werden, können Sie die Aufteilung selbst vornehmen.

 

Daten für den Import vorbereiten

Nachdem Sie sich für die manuelle oder automatische Aufteilung Ihrer Daten entschieden haben, gibt es zwei Möglichkeiten, Daten in AutoML Translation hinzuzufügen:

  • Sie können die Daten als tabulatorgetrennte Werte (TSV, tab-separated values) importieren, die Ausgangs- und Zielsätze enthalten (ein Satzpaar pro Zeile).
  • Sie können die Daten als TMX-Datei importieren. Das ist ein Standardformat für die Bereitstellung von Satzpaaren für computergestützte Übersetzungsmodelltools (weitere Informationen zum unterstützten TMX-Format). Wenn die TMX-Datei ungültige XML-Tags enthält, werden diese von AutoML Translation ignoriert. Wenn die Datei nicht dem richtigen XML- und TMX-Format entspricht, also wenn beispielsweise ein End-Tag oder ein <tmx>-Element fehlt, wird sie von AutoML Translation nicht verarbeitet. AutoML Translation bricht die Verarbeitung auch dann mit einer Fehlermeldung ab, wenn mehr als 1.024 ungültige <tu>-Elemente übersprungen werden.

Bewerten

Nachdem Ihr Modell trainiert ist, erhalten Sie eine zusammenfassende Bewertung der Modellleistung. Klicken Sie nach Abschluss des Trainings auf den Tab Trainieren, um eine detaillierte Analyse anzusehen.

Was sollte ich beachten, bevor ich mein Modell bewerte?

Bei der Fehlerbehebung eines Modells geht es in erster Linie darum, Fehler in den Daten statt im Modell zu beheben. Reagiert Ihr Modell unerwartet, wenn Sie seine Leistung vor und nach der Freigabe für die Produktion auswerten, sollten Sie einen Schritt zurückgehen und überprüfen, wo die Daten verbessert werden können.

BLEU-Score

Der BLEU-Score ist ein Standardverfahren zur Messung der Qualität eines Systems zur maschinellen Übersetzung. AutoML Translation stützt sich auf den BLEU-Score als wichtigste Bewertungsmessgröße, die anhand der von Ihnen bereitgestellten Testdaten berechnet wird. Weitere Informationen zu BLEU-Scores

Das NMÜ-Modell von Google (Neuronale Maschinenübersetzung), auf dem die Translation API basiert, ist für die Verwendung mit allgemeinsprachlichen Texten vorgesehen. Es ist aber für Sie möglicherweise nicht die optimale Lösung, wenn es Ihnen um Fachübersetzungen in Ihrem Spezialgebiet geht. Ein trainiertes benutzerdefiniertes Modell liefert für die Fachgebiete, die mit Ihrem Trainings-Dataset abgebildet werden, in der Regel bessere Ergebnisse als das NMÜ-Modell.

Nachdem Sie das benutzerdefinierte Modell mit Ihrem eigenen Dataset trainiert haben, werden auf dem Tab Train (Trainieren) die BLEU-Werte des benutzerdefinierten Modells und des Google NMÜ-Modells angezeigt. So lässt sich anhand des BLEU-Scores auf dem Tab Train (Trainieren) ablesen, welche Leistungssteigerung das benutzerdefinierte Modell ergeben hat. Je höher der BLEU-Wert, desto besser die Übersetzungen, die vom Modell für solche Sätze ausgegeben werden, die Ihren Trainingsdaten ähnlich sind. Die vom Modell gelieferten Übersetzungen gelten als qualitativ gut, wenn der BLEU-Score (als Prozentwert) zwischen 30 und 40 liegt.

Modell testen

Auch wenn der BLEU-Score eine gute Leistung ausweist, sollten Sie das Modell noch einmal einer Plausibilitätsprüfung unterziehen, damit die Leistung Ihren Erwartungen entspricht. Denn wenn die Trainings- und Testdaten auf demselben fehlerhaften Textkorpus beruhen, ist ein guter BLEU-Score auch dann noch möglich, wenn die Übersetzung selbst unsinnig ist. Entwickeln Sie einige Beispiele für die Plausibilitätsprüfung. Geben Sie sie in AutoML Translation auf dem Tab Prognose ein und vergleichen Sie die Ergebnisse mit jenen des NMÜ-Basismodells von Google. Sie können auch gemäß der Anleitung auf diesem Tab die AutoML API aufrufen, um mit Ihrem Modell automatisierte Tests durchzuführen. Unter Umständen trifft Ihr Modell die gleichen Vorhersagen wie das Basismodell, speziell bei kurzen Sätzen oder bei einem kleineren Trainings-Dataset. Das ist keine Überraschung – das Basismodell ist für eine Vielzahl von Anwendungsfällen bereits ziemlich gut geeignet. Versuchen Sie es mit längeren oder komplexeren Sätzen. Wenn jedoch alle Ihre Sätze mit den Vorhersagen des Basismodells übereinstimmen, kann das auf ein Problem mit den Daten hinweisen.

Wenn Sie Bedenken haben, dass Ihr Modell bestimmte Fehler ausgeben könnte (z. B. aufgrund einer Besonderheit des Sprachpaares, über die auch menschliche Übersetzer häufig stolpern, oder eines Übersetzungsfehlers, der Sie finanziell oder in Bezug auf Ihren Ruf teuer zu stehen kommen könnte), sollten Sie darauf achten, dass diese Fehler in Ihrem Test-Dataset oder im Rahmen des Testverfahrens ausreichend berücksichtigt sind, damit Sie das Modell später im Tagesgeschäft bedenkenlos einsetzen können.