NMÜ-Modell anpassen

Mit der Cloud Translation Advanced API können Sie das NMÜ-Modell (neuronale maschinelle Übersetzung) von Google anpassen, ohne Code schreiben zu müssen. So können Sie ein benutzerdefiniertes Modell an Ihre domainspezifischen Inhalte anpassen und genauere Übersetzungen als mit dem standardmäßigen Google NMT-Modell erstellen.

Das NMÜ-Modell deckt eine Vielzahl von Sprachpaaren ab und eignet sich gut für allgemeine Texte. Ein benutzerdefiniertes Modell eignet sich besonders für spezielle Nischenvokabulare. Durch die Anpassung des NMÜ-Modells erhalten Sie die richtige Übersetzung von fachspezifischer Terminologie, die für Sie wichtig ist.

Angenommen, Sie betreiben einen spezialisierten Dienst für Finanznachrichten und haben nun die Möglichkeit, in neue Länder zu expandieren. Auf diesen Märkten wird erwartet, dass Ihre zeitkritischen Inhalte in Echtzeit korrekt übersetzt werden, einschließlich Fachterminologie. Statt zweisprachige Mitarbeiter einzustellen oder Fachübersetzer zu beauftragen, beides teure Lösungen, können Sie ein benutzerdefiniertes Modell erstellen und optimieren, das die Aufgabe in Echtzeit zu deutlich geringeren Kosten erledigt.

Datenvorbereitung

Zum Trainieren eines benutzerdefinierten Modells müssen Sie übereinstimmende Segmentpaare in der Ausgangs- und Zielsprache angeben. Das sind Wort- oder Wortgruppenpaare, die in der Sprache, aus der übersetzt, und in der Sprache, in die übersetzt werden soll, die gleiche Bedeutung haben. Je ähnlicher sich die Segmentpaare hinsichtlich der Bedeutung sind, desto besser funktioniert das Modell.

Gehen Sie beim Erstellen des Datasets mit übereinstimmenden Segmentpaaren vom Anwendungsfall aus:

  • Welches Ergebnis möchten Sie erzielen?

  • Welche Arten von Segmenten müssen korrekt übersetzt werden, um dieses Ergebnis zu erzielen? Kann das NMÜ-Modell das ohne Training leisten?

  • Lassen sich diese wichtigen Segmente von Menschen in zufriedenstellender Weise übersetzen? Wenn eine Übersetzungsaufgabe nicht klar lösbar ist und eine Person mit fließender Beherrschung beider Sprachen Schwierigkeiten hätte, ein zufriedenstellendes Ergebnis zu liefern, kann es sein, dass das NMÜ-Modell eine ähnliche Leistung bietet wie ein benutzerdefiniertes Modell.

  • Welche Beispiele geben am besten die Art und Bandbreite der Segmentpaare wieder, die das System übersetzen soll?

Daten an Ihren Problembereich anpassen

Sie möchten ein benutzerdefiniertes Übersetzungsmodell trainieren, da Sie ein Modell für ein bestimmtes Fachgebiet brauchen. Die Segmentpaare 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 benutzerdefinierte Modelle auf Ihren besonderen Anwendungsfall abgestimmt werden. 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 Segmentpaare 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 Segmentlängen und -strukturen. Ein Dataset mit gleich langen Segmenten oder mit Segmenten ähnlicher grammatikalischer Struktur liefert keine ausreichenden Informationen zum Erstellen eines alle Möglichkeiten abdeckenden guten benutzerdefinierten Modells.

Daten erheben

Nachdem Sie nun wissen, welche Art von Daten Sie benötigen, müssen Sie überlegen, woher Sie diese Daten bekommen. Zuerst einmal kommen alle Daten infrage, die Ihr Unternehmen ohnehin erfasst. 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.

Menschen in den Prozess einbinden

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

Segmentpaare fair entwickeln

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. Das Ziel von Fairness in ML ist es, eine ungerechte oder voreingenommene Behandlung von Menschen in Bezug auf Rasse, Einkommen, sexuelle Orientierung, Religion, Geschlecht und andere Merkmale, die in der Vergangenheit mit Diskriminierung und Ausgrenzung in Verbindung gebracht wurden, zu verstehen und zu verhindern, wenn und wo sie sich in algorithmischen Systemen oder algorithmisch unterstützten Entscheidungen manifestieren. Weitere Informationen finden Sie in unserem Leitfaden und in den folgenden Fair-aware-Hinweisen:

  • Prüfen Sie die rechtlichen Vorgaben in Ihrer Region und an den Standorten, an denen die Anwendung eingesetzt werden soll. Informieren Sie sich auch über die vorhandene Forschung über vorhandene Produkte in Ihrem Fachgebiet, damit Sie den rechtlichen Rahmen und mögliche kulturelle Probleme kennen. Weitere Informationen

  • Überlegen Sie, ob Ihr Anwendungsfall oder Ihr Produkt die wirtschaftlichen oder anderen wichtigen Lebenschancen von Menschen negativ beeinflussen könnte. Weitere Informationen

  • Wenn Sie zu einer bestimmten Untergruppe nur wenige Daten haben, achten Sie darauf, dass die Daten repräsentativ zwischen dem Trainings- und dem Test-Dataset aufgeteilt sind. Führen Sie dazu die Trainings-/Testaufteilung selbst durch.

  • Denken Sie beim Testen sorgfältig über Ihren Problembereich und dessen Potenzial für Ungerechtigkeit und Voreingenommenheit nach. Stellen Sie sich Fälle vor, die sich nachteilig auf Ihre Nutzer auswirken würden, wenn man sie in der Produktionsumgebung bemerken würde. Testen Sie diese zuerst. Weitere Informationen

  • Wenn Sie einen Anwendungsfall haben, bei dem Fairness-Überlegungen angebracht wären, können Sie sich darüber informieren, wie Sie Ihr Modell so einsetzen, dass Verzerrungen oder negative Ergebnisse verringert werden. Weitere Informationen

  • Weitere Richtlinien für Daten zur Fairness

Unstrukturierte Daten bereinigen

Bei der Vorverarbeitung von Daten kann es schnell zu Fehlern kommen, die das benutzerdefinierte Modell unbrauchbar machen. Beheben Sie gegebenenfalls insbesondere folgende Datenprobleme:

  • Entfernen Sie doppelte Quellsegmente, vor allem wenn für diese unterschiedliche Zielübersetzungen ausgegeben werden. Die Cloud Translation Advanced API verwendet nur das erste Beispiel und löscht alle anderen Paare beim Import. Durch das Entfernen von Duplikaten sorgen Sie dafür, dass die Cloud Translation Advanced API Ihre bevorzugte Übersetzung nutzt.
  • Ordnen Sie die Quellsegmente den korrekten Zielsegmenten zu.
  • Ordnen Sie Segmente der jeweiligen Sprache zu. Beispielsweise sollten Sie nur chinesische Segmente in ein chinesisches Dataset aufnehmen.
  • Bei Zielsegmenten mit gemischten Sprachen sollten Sie darauf achten, dass feste Begriffe, z. B. Namen von Produkten oder Unternehmen, nicht übersetzt wurden. Zielsegmente, bei denen solche Begriffe fälschlicherweise übersetzt wurden, verzerren Ihre Trainingsdaten und können die Qualität eines Modells verringern.
  • Korrigieren Sie Segmente mit Rechtschreib- oder grammatikalischen Fehlern, damit Ihr Modell diese Fehler nicht übernimmt.
  • Entfernen Sie nicht übersetzbare Inhalte wie Platzhalter-Tags und HTML-Tags. Nicht übersetzbare Inhalte können zu Satzzeichenfehlern führen.
  • Vermeiden Sie Segmentpaare, bei denen allgemeine Entitäten durch bestimmte Begriffe ersetzt werden. Vermeiden Sie beispielsweise ein Beispiel, in dem ein allgemeiner Begriff wie Präsident in den Namen eines bestimmten Präsidenten wie JFK übersetzt wird. Das Modell könnte dann lernen, dass alle Instanzen von president in JFK geändert werden sollen. Entfernen Sie stattdessen diese Segmentpaare oder ändern Sie die jeweiligen Substantive in allgemeine Begriffe.
  • Entfernen Sie doppelte Segmente in den Trainings- und Test-Datasets (siehe Dataset aufteilen).
  • Teilen Sie mehrere Segmente in verschiedene Segmentpaare auf. 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.
  • Verwenden Sie eine einheitliche Groß- und Kleinschreibung. Die Groß- und Kleinschreibung wirkt sich darauf aus, wie ein Modell lernt, z. B. zur Unterscheidung zwischen Überschrift und Fließtext.
  • Entfernen Sie TMX-Tags beim Importieren von Daten aus einer TSV-Datei. So kann es vorkommen, dass das vorhandene Translation Memory in eine TSV-Datei mit TMX-Tags exportiert wird. Die Cloud Translation Advanced API bereinigt die Tags von Übersetzungseinheiten jedoch nur, wenn Sie aus einer TMX-Datei (und nicht aus TSV-Dateien) importieren.

Datenverarbeitung

Die Cloud Translation Advanced API unterbricht das Parsen Ihrer Dateneingabedatei, wenn:

  • Die Formatierung ist ungültig.
  • ein Segmentpaar unverhältnismäßig lang (10 MB) ist
  • Die Datei verwendet eine andere Codierung als UTF-8.

Bei Problemen, die die Cloud Translation Advanced API nicht erkennen kann, werden Fehler ignoriert, z. B. bei folgenden Problemen:

  • Ein <tu>-Element in einer TMX-Datei, in dem die Ausgangs- oder Zielsprache nicht angegeben ist.
  • Eines der eingegebenen Segmentpaare ist leer.

Für die automatische Datenaufteilung führt die Cloud Translation Advanced API zusätzliche Verarbeitungsschritte aus (siehe Dataset-Aufteilung):

  • Nachdem das Dataset hochgeladen wurde, werden Segmentpaare mit identischen Ausgangssegmenten entfernt.

  • Die Daten werden vor dem Training nach dem Zufallsprinzip in drei Gruppen mit einem Verhältnis von 8:1:1 (Training:Validierung:Test) aufgeteilt.

Dataset-Aufteilung

Ihr Dataset mit Segmentpaaren wird in drei Teilmengen für Training, Validierung und Tests unterteilt:

  • Trainings-Dataset
    Die meisten Ihrer Daten sollten im Trainings-Dataset enthalten sein. Das sind die Daten, die Ihr Modell während des Trainings „sieht“. Damit werden die Parameter des Modells erlernt und die Gewichtungen der Verbindungen zwischen den Knoten des neuronalen Netzes berechnet.

  • 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-Datensatzes trainiert. Das Kandidatenmodell, das anschließend in Bezug auf den Validierungs-Datensatz die beste Leistung zeigt, wird dann als bestes unter den generierten Modellen ausgewählt. Anhand der Leistung des Modells bei der Verarbeitung des Validierungs-Datensatzes werden die Hyperparameter des Modells optimiert. Hyperparameter sind Variablen, die die Struktur des Modells angeben. Wenn Sie die Hyperparameter ebenfalls mit dem Trainings-Datensatz 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 dies dem Modell potenziell bessere Verallgemeinerungen.

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

Wenn Sie nicht manuell angeben, wie Ihr Dataset zwischen diesen Funktionen aufgeteilt wird (siehe Trainingsdaten vorbereiten), und Ihr Dataset weniger als 100.000 Segmentpaare enthält, verwendet die Cloud Translation – Advanced API 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 explizit angeben, wie sie aufgeteilt werden sollen. Die manuelle Aufteilung gibt Ihnen mehr Kontrolle über den Prozess. Sie können nicht nur die Aufteilungsprozentsätze festlegen, sondern auch bestimmte Sets angeben, in die bestimmte Segmentpaare aufgenommen werden sollen.

Daten werden importiert

Nachdem Sie sich für eine manuelle oder automatische Aufteilung Ihrer Daten entschieden haben, haben Sie zwei Möglichkeiten, Daten hinzuzufügen:

  • Sie können die Daten als tabulatorgetrennte Werte (TSV) importieren, die Ausgangs- und Zielsegmente enthalten (ein Segmentpaar pro Zeile).

  • Sie können Daten als TMX-Datei importieren. Dies ist ein Standardformat für die Bereitstellung von Segmentpaaren für computergestützte Übersetzungsmodelltools (weitere Informationen zum TMX-Format). Wenn eine TMX-Datei ungültige XML-Tags enthält, werden diese von der Cloud Translation – Advanced API ignoriert. Wenn die TMX-Datei XML- oder TMX-Fehler enthält, z. B. wenn ein End-Tag oder ein <tmx>-Element fehlt, beendet die Cloud Translation – Advanced API die Verarbeitung und gibt einen Fehler zurück, wenn mehr als 1.024 ungültige -Elemente übersprungen werden.

Vorläufige Bewertung Ihres benutzerdefinierten Modells

Nachdem das Modell trainiert wurde, erhalten Sie eine Zusammenfassung der Modellleistung. Klicken Sie auf den Tab Trainieren, um eine detaillierte Analyse aufzurufen. Auf dem Tab Train (Trainieren) werden der BLEU-Wert Ihres benutzerdefinierten Modells und des standardmäßigen Google-NMÜ-Modells sowie die Leistungssteigerung des BLEU-Werts durch die Verwendung des benutzerdefinierten Modells angezeigt.

Je höher der BLEU-Score, desto besser die Übersetzungen, die vom Modell für Segmente ausgegeben werden, die Ihren Trainingsdaten ähnlich sind. Werte zwischen 30 und 40 gelten als gut. Eine detaillierte Erklärung von BLEU-Scores finden Sie unter The BLEU translation quality metric BLEU.

Es gibt andere Bewertungsmetriken, die oft zuverlässiger sind als der BLEU-Score. Informationen zu diesen Bewertungsoptionen finden Sie unter Übersetzungsmodelle bewerten.

Debugging

Bei der Fehlerbehebung eines benutzerdefinierten Modells geht es eher darum, Fehler in den Daten statt im Modell zu beheben. Wenn Ihr Modell nicht wie gewünscht übersetzt, sollten Sie Ihre Daten prüfen, um festzustellen, wo sie verbessert werden können.

Test

Auch wenn der BLEU-Score eine gute Leistung ausweist, sollten Sie das Modell noch einmal prüfen, 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. Fügen Sie einige Beispiele als Eingabe über den Tab Vorhersagen hinzu und vergleichen Sie die Ergebnisse aus dem benutzerdefinierten Modell mit dem NMÜ-Basismodell von Google. Möglicherweise trifft Ihr Modell die gleichen Vorhersagen wie das Basismodell, speziell bei kurzen Segmenten oder bei einem kleineren Trainings-Dataset, da das Basismodell bereits für eine Vielzahl von Anwendungsfällen sehr gut geeignet ist. Versuchen Sie es in diesem Fall mit längeren oder komplexeren Segmenten. Wenn jedoch alle Ihre Segmente mit den Vorhersagen des Basismodells übereinstimmen, kann das auf ein Problem mit den Daten hinweisen.

Wenn Sie sich Sorgen machen, dass Ihr Modell einen bestimmten Fehler macht (z. B. einen Übersetzungsfehler, der Sie Geld oder Ansehen kosten könnte), sollten Sie dafür sorgen, dass Ihr Testsatz oder Ihre Testprozedur diesen Fall angemessen abdeckt, damit Sie sich bei der Verwendung Ihres Modells für alltägliche Aufgaben sicher fühlen können.

Nächste Schritte

  • Weitere Informationen zum Erstellen eines eigenen Datasets und eines benutzerdefinierten Modells finden Sie unter Trainingsdaten vorbereiten.