DE202017105835U1 - Neuronale Maschinenübersetzungssysteme - Google Patents

Neuronale Maschinenübersetzungssysteme Download PDF

Info

Publication number
DE202017105835U1
DE202017105835U1 DE202017105835.2U DE202017105835U DE202017105835U1 DE 202017105835 U1 DE202017105835 U1 DE 202017105835U1 DE 202017105835 U DE202017105835 U DE 202017105835U DE 202017105835 U1 DE202017105835 U1 DE 202017105835U1
Authority
DE
Germany
Prior art keywords
input
sequence
output
neural
lstm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE202017105835.2U
Other languages
English (en)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of DE202017105835U1 publication Critical patent/DE202017105835U1/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/44Statistical methods, e.g. probability models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/55Rule-based translation
    • G06F40/56Natural language generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)

Abstract

Neuronales Maschinenübersetzungssystem, das durch einen oder mehrere Computer implementiert ist, wobei das neuronale Maschinenübersetzungssystem zum Empfangen einer Eingabesequenz von Eingabe-Token, die eine erste Sequenz von Wörtern in einer ersten natürlichen Sprache darstellt, und zum Generieren einer Ausgabesequenz von Ausgabe-Token, die eine zweite Sequenz von Wörtern darstellt, die eine Übersetzung der ersten Sequenz in eine zweite natürliche Sprache ist, konfiguriert ist, wobei das neuronale Maschinenübersetzungssystem umfasst: ein neuronales Codierer-Netzwerk, umfassend: eine Eingabevorwärts long short-term memory (LSTM) Schicht, die zum Verarbeiten von jedem Eingabe-Token in der Eingabesequenz in einer Vorwärtsreihenfolge zum Generieren einer jeweiligen Vorwärtsdarstellung jedes Eingabe-Tokens konfiguriert ist, eine Eingaberückwärts-LSTM-Schicht, die zum Verarbeiten von jedem Eingabe-Token in der Eingabesequenz in einer Rückwärtsreihenfolge zum Generieren einer jeweiligen Rückwärtsdarstellung von jedem Eingabe-Token konfiguriert ist, eine Kombinationsschicht, die konfiguriert ist, um für jedes Eingabe-Token in der Eingabesequenz die Vorwärtsdarstellung des Eingabe-Tokens und die Rückwärtsdarstellung des Eingabe-Tokens zum Generieren einer kombinierten Darstellung des Eingabe-Tokens zu kombinieren, und eine Vielzahl verborgener LSTM-Schichten, die zum Generieren einer jeweiligen codierten Darstellung von jedem der Eingabe-Token in der Eingabesequenz konfiguriert sind; und ein Decodierer-Subsystem, das zum Empfangen der jeweiligen codierten Darstellung von jedem der Eingabe-Token in der Eingabesequenz und zum Verarbeiten der codierten Darstellungen konfiguriert ist, um die Ausgabesequenz zu generieren.

Description

  • HINTERGRUND
  • Diese Spezifikation betrifft Übersetzen von Text unter Verwendung neuronaler Netzwerke.
  • Maschinenlernmodelle empfangen eine Eingabe und generieren eine Ausgabe, z. B. eine vorhergesagte Ausgabe, basierend auf der empfangenen Eingabe. Einige Maschinenlernmodelle sind parametrische Modelle und generieren die Ausgabe basierend auf der empfangenen Eingabe und auf Werten der Parameter des Modells.
  • Einige Maschinenlernmodelle sind tiefe Modelle, die mehrere Schichten von Modellen verwenden, um eine Ausgabe für eine empfangene Eingabe zu generieren. Beispielsweise ist ein tiefes neuronales Netzwerk ein tiefes Maschinenlernmodell, das eine Ausgabeschicht und eine oder mehrere verborgene Schichten beinhaltet, wovon jede eine nicht lineare Transformation auf eine empfangene Eingabe anwendet, um eine Ausgabe zu generieren.
  • Einige neuronale Netzwerke sind wiederkehrende neuronale Netzwerke. Ein wiederkehrendes neuronales Netzwerk ist ein neuronales Netzwerk, das eine Eingabesequenz empfängt und eine Ausgabesequenz von der Eingabesequenz generiert. Insbesondere verwendet ein wiederkehrendes neuronales Netzwerk einige oder alle der internen Status des Netzwerks nach dem Verarbeiten einer vorherigen Eingabe in der Eingabesequenz durch Erzeugen einer Ausgabe von der aktuellen Eingabe in der Eingabesequenz.
  • KURZDARSTELLUNG
  • Diese Spezifikation beschreibt ein als Computerprogramme auf einem oder mehreren Computern an einem oder mehreren Standorten implementiertes System, das Text unter Verwendung neuronaler Netzwerke von einer Quellsprache in eine Zielsprache übersetzt.
  • In einigen Aspekten des beschriebenen Gegenstandes ist ein durch einen oder mehrere Computer implementiertes neuronales Maschinenübersetzungssystem zum Empfangen einer Eingabesequenz von Eingabe-Token konfiguriert, die eine erste Sequenz von Wörtern in einer ersten natürlichen Sprache darstellen, und zum Generieren einer Ausgabesequenz von Ausgabe-Token, die eine zweite Sequenz von Wörtern darstellt, die eine Übersetzung der ersten Sequenz in eine zweite natürliche Sprache ist, und umfasst: ein neuronales Codierer-Netzwerk und ein Decodierer-Subsystem. Das neuronale Codierer-Netzwerk umfasst wiederum: eine Eingabevorwärts long-short-term memory (LSTM) Schicht (auf Deutsch: Lang-Kurzzeitspeicherschicht), die zum Verarbeiten von jedem Eingabe-Token in der Eingabesequenz in einer Vorwärtsreihenfolge zum Generieren einer jeweiligen Vorwärtsdarstellung jedes Eingabe-Tokens konfiguriert ist, eine Eingaberückwärts-LSTM-Schicht, die zum Verarbeiten von jedem Eingabe-Token in der Eingabesequenz in einer Rückwärtsreihenfolge zum Generieren einer jeweiligen Rückwärtsdarstellung von jedem Eingabe-Token konfiguriert ist, eine Kombinationsschicht, die konfiguriert ist, um für jedes Eingabe-Token in der Eingabesequenz die Vorwärtsdarstellung und die Rückwärtsdarstellung des Eingabe-Tokens zum Generieren einer kombinierten Darstellung des Eingabe-Tokens zu kombinieren, und eine Vielzahl verborgener LSTM-Schichten, die zum Generieren einer jeweiligen codierten Darstellung von jedem der Eingabe-Token in der Eingabesequenz konfiguriert sind. Das Decodierer-Subsystem ist zum Empfangen der jeweiligen codierten Darstellung von jedem der Eingabe-Token in der Eingabesequenz, und zum Verarbeiten der codierten Darstellungen konfiguriert, um die Ausgabesequenz zu generieren.
  • In einigen dieser Aspekte werden die verborgenen LSTM-Schichten nacheinander in einem Stapel angeordnet, wobei die Vielzahl verborgener LSTM-Schichten mindestens sieben LSTM-Schichten umfasst. In einigen dieser Aspekte werden mindestens zwei der Vielzahl verborgener LSTM-Schichten mit einer Restverbindung verbunden.
  • In einigen dieser Aspekte umfasst das Decodierer-Subsystem: ein neuronales Decodierer-Netzwerk, wobei das neuronale Decodierer-Netzwerk umfasst: eine Vielzahl von LSTM-Schichten, die in einem Stapel aufeinander angeordnet, und für jede von einer Vielzahl von Positionen in der Ausgabesequenz konfiguriert sind zum: Empfangen eines Aufmerksamkeitskontextvektors und des Ausgabe-Tokens an einer vorangegangenen Position in der Ausgabesequenz, und Verarbeiten des Aufmerksamkeitskontextvektors und des Tokens an der vorangegangenen Position in der Ausgabesequenz zum Generieren einer LSTM-Ausgabe für die Position, und eine Softmax-Ausgabeschicht, wobei die Softmax-Ausgabeschicht zum Empfangen der LSTM-Ausgabe für die Position für jede der Vielzahl von Positionen, und zum Generieren einer jeweiligen Punktzahl für jedes Ausgabe-Token in einem Vokabular von Ausgabe-Token konfiguriert ist.
  • In einigen dieser Aspekte umfasst die Vielzahl von LSTM-Schichten in dem Decodierer mindestens acht LSTM-Schichten. In einigen dieser Aspekte umfasst die Vielzahl von LSTM-Schichten in dem Decodierer mindestens acht LSTM-Schichten. In einigen dieser Aspekte sind mindestens zwei der Vielzahl in dem Decodierer mit einer Restverbindung verbunden. In einigen dieser Aspekte ist eine erste LSTM-Schicht in dem Stapel für jede der Vielzahl von Positionen konfiguriert zum: Empfangen einer ersten Schichteingabe, die den Aufmerksamkeitskontextvektor umfasst, einer Schichtausgabe, die durch eine LSTM-Schicht direkt unter der ersten LSTM-Schicht in dem Stapel generiert wird, und einer Schichteingabe in die LSTM-Schicht direkt unter der ersten LSTM-Schicht in dem Stapel; und Verarbeiten der ersten Schichteingabe gemäß einem aktuellen verborgenen Status der ersten LSTM-Schicht zum Generieren einer ersten Schichtausgabe und zum Aktualisieren des aktuellen verborgenen Status.
  • In einigen dieser Aspekte umfasst das Decodierer-Subsystem ferner: ein Aufmerksamkeits-Subsystem, wobei das Aufmerksamkeits-Subsystem für jede der Vielzahl von Positionen konfiguriert ist zum: Empfangen einer Aufmerksamkeitseingabe, die eine unterste Schichtausgabe umfasst, die durch eine unterste LSTM-Schicht in dem Stapel von LSTM-Schichten in dem neuronalen Decodierer-Netzwerk für die vorangegangene Position generiert wird; und Verarbeiten der Aufmerksamkeitseingabe zum Generieren des Aufmerksamkeitskontextvektors für den Zeitschritt.
  • In einigen dieser Aspekte umfasst Verarbeiten der untersten Schichtausgabe und der jeweiligen codierten Darstellung von jedem der Eingabe-Token in der Eingabesequenz zum Generieren des Aufmerksamkeitskontextvektors für den Zeitschritt für jeden der Vielzahl von Zeitschritten: Verarbeiten der untersten Schichtausgabe und der codierten Darstellungen durch eine oder mehrere Netzwerkschichten zum Generieren einer jeweiligen Punktzahl für jedes der Eingabe-Token; Generieren eines jeweiligen Gewichts für jedes der Eingabe-Token von den jeweiligen Punktzahlen; und Bestimmen einer gewichteten Summe der codierten Darstellung gemäß den Gewichten.
  • In einigen dieser Aspekte sind die Eingabe- und Ausgabe-Token Wortteile.
  • In einigen dieser Aspekte sind das neuronale Codierer-Netzwerk und das Decodierer-Subsystem zum Ausführen quantifizierter Berechnungen während des Erzeugens der Ausgabesequenz konfiguriert.
  • Andere Aspekte beinhalten ein oder mehrere Computerspeichermedien, die mit Anweisungen codiert sind, die, wenn sie durch einen oder mehrere Computer ausgeführt werden, den einen oder die mehreren Computer zum Implementieren des neuronalen Maschinenübersetzungssystems von einem beliebigen der oben genannten Aspekte veranlassen.
  • Einige andere Aspekte beinhalten Computerprogrammprodukte, die Anweisungen enthalten, die, wenn sie durch einen Prozessor oder mehrere Prozessoren ausgeführt werden, den einen Prozessor oder die mehreren Prozessoren veranlassen, ein Verfahren zum Erzeugen einer Ausgabesequenz von Ausgabe-Token durchzuführen, die eine zweite Sequenz von Wörtern darstellt, die eine Übersetzung der ersten Sequenz von Wörtern in eine zweite natürliche Sprache ist, die die folgenden Aktionen beinhaltet: Erhalten einer Vielzahl von Kandidatenausgabesequenzen von einem neuronalen Maschinenübersetzungssystem; Aufrechterhalten höchstens einer zuvor festgelegten Anzahl der Kandidatenausgabesequenzen in einem Strahl zur weiteren Berücksichtigung durch das neuronale Maschinenübersetzungssystem, umfassend: Zuweisen einer jeweiligen Punktzahl für jede Kandidatenausgabesequenz; Einstufen der Kandidatenausgabesequenzen basierend auf den jeweiligen Punktzahlen; Entfernen aller Kandidatenausgabesequenzen von dem Strahl außer der zuvor festgelegten Anzahl von am höchsten eingestuften Kandidatenausgabesequenzen gemäß der Rangfolge; Bestimmen, ob eine beliebige der Kandidatenausgabesequenzen in dem Strahl als eine finalisierte Kandidatenausgabesequenz durch das neuronale Maschinenübersetzungssystem identifiziert wurde; und wenn mindestens eine der Kandidatenausgabesequenzen als eine finalisierte Kandidatenausgabesequenz identifiziert wurde: Entfernen aller Kandidatenausgabesequenzen von dem Strahl, die eine Punktzahl aufweisen, die mehr als ein Schwellenwert ist, der unter der Punktzahl für eine am höchsten eingestufte finalisierte Kandidatenausgabesequenz liegt.
  • In einigen dieser Aspekte umfasst Bestimmen, ob beliebige der Kandidatenausgabesequenzen als eine finalisierte Kandidatenausgabesequenz durch das neuronale Maschinenübersetzungssystem identifiziert wurden: Bestimmen, ob eine beliebige Kandidatenausgabesequenz mit einem zuvor festgelegten Satzende-Ausgabe-Token endet.
  • In einigen dieser Aspekte umfasst Zuweisen einer jeweiligen Punktzahl zu jeder Kandidatenausgabesequenz: Bestimmen einer Log-Likelihood (auf Deutsch: Protokollwahrscheinlichkeit) der Kandidatenausgabesequenz gemäß den durch das neuronale Maschinenübersetzungssystem generierten Ausgabepunktzahlen; und Normalisieren der Log-Likelihood basierend auf einer Anzahl von Ausgabe-Token in der Kandidatenausgabesequenz zum Generieren einer längennormalisierten Log-Likelihood.
  • In einigen dieser Aspekte umfasst Zuweisen einer jeweiligen Punktzahl zu jeder Kandidatenausgabesequenz ferner: Modifizieren der längennormalisierten Log-Likelihood unter Verwendung einer Abdeckungsstrafe, um Kandidatenausgabesequenzen zu begünstigen, die die Wörter in der ersten Sequenz vollständig abdecken.
  • In einigen dieser Aspekte, wenn alle der Kandidatenausgabesequenzen in dem Strahl als eine finalisierte Kandidatenausgabesequenz durch das neuronale Maschinenübersetzungssystem identifiziert wurden, beinhalten die Aktionen ferner Auswählen einer Kandidatenausgabesequenz mit der höchsten Punktzahl als die Ausgabesequenz.
  • Andere Aspekte beinhalten ein oder mehrere Computerspeichermedien, die mit Anweisungen codiert sind, die, wenn sie durch einen oder mehrere Computer ausgeführt werden, den einen oder die mehreren Computer zum Ausführen der Vorgänge nach einem beliebigen der oben genannten Verfahren veranlassen.
  • Andere Aspekte beinhalten ein System, das einen oder mehrere Computer und ein oder mehrere Speichergeräte, die Anweisungen speichern, die, wenn sie durch einen oder mehrere Computer ausgeführt werden, den einen oder die mehreren Computer nach einem beliebigen der oben genannten Verfahren veranlassen, die Vorgänge auszuführen.
  • Bestimmte Ausführungsformen des in dieser Spezifikation beschriebenen Gegenstands können so implementiert werden, dass sie einen oder mehrere der folgenden Vorteile verwirklichen.
  • Durch Verwenden einer bidirektionalen LSTM-Schicht als die unterste Schicht des Codierers kann der Kontext für die Wörter in der Eingabesequenz effektiv erfasst werden, was die Übersetzungsqualität verbessert. Da die anderen Codiererschichten unidirektional sind, kann Parallelisierung während Berechnungen immer noch erreicht werden, wodurch Trainings- und in manchen Fällen Schlussfolgerungszeiten reduziert werden.
  • Durch Verwenden tiefer Stapel von LSTM-Schichten im Codierer und im Decodierer, z. B. 8 oder mehr gesamte LSTM-Schichten in jedem von dem Decodierer und dem Codierer, sind der Codierer und Decodierer tief genug, um feine Unregelmäßigkeiten in der Quell- und Zielsprache zu erfassen, was die Genauigkeit von durch das System generierten Übersetzungen verbessert.
  • Durch Verbinden der untersten Schicht des Decodierers mit der obersten Schicht des Codierers durch das Aufmerksamkeits-Subsystem kann Parallelismus erhöht, und Trainingszeit kann dadurch verringert werden, wobei immer noch ein effektives Aufmerksamkeitsschema verwendet wird, das es dem neuronalen Decodierer-Netzwerk ermöglicht, die Quellsequenz genau zu übersetzen. Das heißt, weil das Aufmerksamkeits-Subsystem Eingaben von der untersten LSTM-Schicht in dem Decodierer, und nicht von beliebigen der anderen LSTM-Schichten in dem Decodierer und anders als bei herkömmlichen Aufmerksamkeitsschemen empfängt, kann die durch das Aufmerksamkeits-Subsystem ausgeführte Berechnung parallel zu anderen Berechnungen effektiv ausgeführt werden, die durch die anderen LSTM-Schichten ausgeführt werden, ohne die Qualität der Übersetzung negativ zu beeinträchtigen.
  • Durch Verwenden von Arithmetik mit geringer Präzision, d. h. quantifizierter Berechnung, während Schlussfolgerungsberechnungen, wie in dieser Spezifikation beschrieben, kann die endgültige Übersetzungszeit beschleunigt werden, während hohe Übersetzungsqualität aufrechterhalten wird.
  • Durch Decodieren unter Verwendung der beschriebenen Strahlensuchtechniken kann die Übersetzungszeit bei Schlussfolgerung verringert werden, während eine hohe Übersetzungsqualität relativ zu herkömmlichen Strahlensuchtechniken aufrechterhalten wird.
  • Die Details von einer oder mehreren Ausführungsformen des in dieser Patentschrift beschriebenen Gegenstandes sind in den begleitenden Zeichnungen und der nachfolgenden Beschreibung dargelegt. Weitere Merkmale, Aspekte und Vorteile des Gegenstands werden anhand der Beschreibung, der Zeichnungen und der Patentansprüche offensichtlich.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt ein exemplarisches neuronales Maschinenübersetzungssystem.
  • 2 zeigt ein Ablaufdiagramm eines exemplarischen Prozesses zum Generieren einer Übersetzung einer Eingabesequenz.
  • 3 zeigt ein Ablaufdiagramm eines exemplarischen Prozesses zum Generieren codierter Darstellungen von Token in einer Eingabesequenz.
  • 4 zeigt ein Ablaufdiagramm eines exemplarischen Prozesses zum Generieren einer Ausgabe für eine Position in einer Ausgabesequenz.
  • 5 zeigt ein Ablaufdiagramm eines exemplarischen Prozesses zum Generieren eines Aufmerksamkeitsvektors.
  • 6 zeigt ein Ablaufdiagramm eines exemplarischen Prozesses zum Aufrechterhalten eines Strahls von Kandidatenausgabesequenzen.
  • In den unterschiedlichen Zeichnungen werden gleiche Bezugszeichen und Bezeichnungen für gleiche Elemente verwendet.
  • AUSFÜHRLICHE BESCHREIBUNG
  • 1 zeigt ein exemplarisches neuronales Maschinenübersetzungssystem 100. Das neuronale Maschinenübersetzungssystem 100 ist ein exemplarisches System, das in Form von Computerprogrammen auf einem oder mehreren Computern an einem oder mehreren Standorten implementiert ist, in denen die nachfolgend beschriebenen Systeme, Komponenten und Techniken implementiert werden können.
  • Das neuronale Maschinenübersetzungssystem 100 übersetzt Quellsequenzen von Wörtern in einer natürlichen Quellsprache in Zielsequenzen von Wörtern in einer natürlichen Zielsprache, z. B. Sätze oder Phrasen auf Englisch in Sätze oder Phrasen auf Französisch, Sätze oder Phrasen auf Englisch in Sätze oder Phrasen auf Deutsch, oder Sätze oder Phrasen auf Koreanisch in Sätze oder Phrasen auf Spanisch. Beispielsweise kann das neuronale Maschinenübersetzungssystem 100 eine Quellsequenz 102 in der natürlichen Quellsprache empfangen und eine Zielsequenz 152 generieren, die eine Übersetzung der Quellsequenz 102 in die natürliche Zielsprache ist.
  • Das neuronale Maschinenübersetzungssystem beinhaltet ein neuronales Codierer-Netzwerk 110, ein neuronales Decodierer-Netzwerk 120 und ein Aufmerksamkeits-Subsystem 130.
  • Zum Generieren einer Eingabe in das neuronale Codierer-Netzwerk 110 tokenisiert das neuronale Maschinenübersetzungssystem 100 die Quellsequenz 102 in eine Eingabesequenz 104 von Eingabe-Token. Im Allgemeinen wird jedes Eingabe-Token der Eingabesequenz 104 von einem Vokabular von Eingabe-Token ausgewählt, das ein jeweiliges Token für jede von einer Gruppe von Worteinheiten beinhaltet. Zusätzlich zu den Worteinheiten beinhaltet das Vokabular von Eingabe-Token auch ein oder mehrere speziell bezeichnete Token, z. B. ein Satzanfangs-Token und ein Satzende-Token. In einigen Implementierungen sind die Worteinheiten Wörter in der natürlichen Quellsprache. In einigen anderen Implementierungen sind einige oder alle der Worteinheiten Subworteinheiten, z. B. Zeichen, gemischte Wörter/Zeichen usw.
  • Insbesondere sind die Worteinheiten in einigen dieser Implementierungen Wortteile und das System 100 tokenisiert die Sequenz 102, indem es zuerst die Wörter in der Sequenz unter Verwendung eines trainierten Wortteil-Maschinenlernmodells in Wortteile trennt, das zum Teilen der Wörter in Wortteile trainiert wurde, und die spezielle Wortbegrenzungssymbole beinhalten, sodass die ursprüngliche Wortsequenz von der Wortteilsequenz ohne Mehrdeutigkeit zurückgewonnen werden kann. Exemplarische Ansätze für Tokenisierungssequenzen in Wortteile sind in Schuster, M., und Nakajima, K. Japanese and Korean voice search (Japanische und Koreanische Sprachsuche) beschrieben. 2012 IEEE International Conference on Acoustics, Speech and Signal Processing (Internationale Konferenz über Akustik-, Sprach- und Signalverarbeitung) (2012) und Sennrich, R., Haddow, B., und Birch, A. Neural machine translation of rare words with subword units (Neuronale Maschinenübersetzung von seltenen Wörtern mit Subworteinheiten). In Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Verfahren des 54. Jahrestreffens des Verbandes für Computerlinguistik) (2016).
  • Das neuronale Codierer-Netzwerk 110 ist zum Empfangen der Eingabesequenz 104 und zum Verarbeiten der Eingabesequenz 104 konfiguriert, um eine jeweilige codierte Darstellung 112 von jedem Token in der Eingabesequenz 104 zu generieren.
  • Im Allgemeinen beinhaltet das neuronale Codierer-Netzwerk 110 mehrere neuronale Long Short-Term Memory(LSTM)-Netzwerkschichten. Genauer gesagt, beinhaltet das neuronale Codierer-Netzwerk 110 eine bidirektionale LSTM-Schicht 114, gefolgt von einem Stapel 116 unidirektionaler LSTM-Schichten. In einigen Fällen sind zwei oder mehr der LSTM-Schichten in dem Stapel 116 mit Restverbindungen 118 verbunden. Der Betrieb des neuronalen Codierer-Netzwerks wird nachfolgend unter Bezugnahme auf 2 und 3 ausführlicher beschrieben.
  • Das neuronale Decodierer-Netzwerk 120 und das Aufmerksamkeits-Subsystem 130 sind zum Verarbeiten der codierten Darstellungen 112 konfiguriert, um eine Ausgabesequenz 142 zu generieren, die Ausgabe-Token von einem Ausgabevokabular beinhaltet.
  • Im Allgemeinen beinhaltet das Ausgabevokabular ein jeweiliges Token für jede von einer Gruppe von Worteinheiten in der natürlichen Zielsprache. Zusätzlich zu den Worteinheiten beinhaltet das Vokabular auch ein oder mehrere speziell bezeichnete Token, z. B. ein Satzende-Token. In einigen Implementierungen sind die Worteinheiten Wörter in der natürlichen Zielsprache. In einigen anderen Implementierungen sind Worteinheiten Subworteinheiten, z. B. Zeichen, gemischte Wörter/Zeichen, Wortteile usw. für Wörter in der natürlichen Zielsprache. In einigen Fällen, wenn die Worteinheiten Wortteile sind, wird der Wortteil von der Quell- und Zielsprache gemeinsam genutzt, um zu ermöglichen, dass Strings von der Quellsequenz zur Zielsequenz kopiert werden.
  • Im Allgemeinen ist das neuronale Decodierer-Netzwerk 120 für jede Position in der Ausgabesequenz 142 zum Empfangen des Tokens an der vorangegangenen Position in der Ausgabesequenz 142 konfiguriert, z. B. ein Token 128 an der zweiten Position der Ausgabesequenz 142. Das neuronale Decodierer-Netzwerk 120 ist außerdem zum Empfangen eines Aufmerksamkeitskontextvektors konfiguriert, der von dem Aufmerksamkeits-Subsystem 130 für die Position generiert wird, z. B. ein Aufmerksamkeitskontextvektor 132 für die zweite Position der Ausgabesequenz 142, und zum Verarbeiten des vorangegangenen Tokens und des Aufmerksamkeitskontextvektors zum Generieren einer Gruppe von Punktzahlen, die eine jeweilige Punktzahl für jedes Ausgabe-Token in dem Ausgabevokabular beinhaltet.
  • Insbesondere beinhaltet das neuronale Decodierer-Netzwerk 120 einen Stapel 122 von LSTM-Schichten und eine Softmax-Ausgabeschicht 124. An jeder Position ist der Stapel 122 von LSTM-Schichten zum Verarbeiten des vorangegangenen Tokens und des Aufmerksamkeitskontextvektors konfiguriert, um eine LSTM-Ausgabe für die Position zu generieren, und die Softmax-Ausgabeschicht 124 ist zum Verarbeiten der LSTM-Ausgabe konfiguriert, um die Gruppe von Punktzahlen für die Position zu generieren. Wie bei dem neuronalen Codierer-Netzwerk 110 sind in einigen Implementierungen zwei oder mehr der LSTM-Schichten in dem Stapel 122 mit einer Restverbindung 126 verbunden.
  • Der Betrieb des neuronalen Codierer-Netzwerks wird nachfolgend unter Bezugnahme auf 4 ausführlicher beschrieben.
  • Das Aufmerksamkeits-Subsystem 130 ist konfiguriert, um an jeder Position in der Ausgabesequenz die LSTM-Ausgabe zu empfangen, die durch die unterste LSTM-Schicht in dem Stapel 122 an der vorangegangenen Position generiert wird, und um die empfangene LSTM-Ausgabe zum Generieren des Aufmerksamkeitskontextvektors für die Position zu verwenden. Im Allgemeinen ist der Aufmerksamkeitskontextvektor eine gewichtete Summe der codierten Darstellungen 112, wobei die Gewichte in der gewichteten Summe basierend auf der empfangenen LSTM-Ausgabe bestimmt werden. Der Betrieb des Aufmerksamkeits-Subsystems wird nachfolgend unter Bezugnahme auf 5 ausführlicher beschrieben.
  • Zum Generieren der Ausgabe an einer gegebenen Position in der Ausgabesequenz 142 wählt das System 100 ein Token basierend auf den Punktzahlen in der Gruppe von Punktzahlen in der Position aus, d. h. durch Auswählen des Tokens mit der höchsten Sequenz oder durch Sampeln eines Tokens gemäß den Punktzahlen von dem Vokabular von Ausgabe-Token.
  • Das System 100 fährt fort, Token auszuwählen und Token zu der Ausgabesequenz hinzuzufügen, bis das System 100 ein Satzende-Ausgabe-Token für die aktuelle Position in der Ausgabesequenz 142 auswählt. Sobald das Satzende-Ausgabe-Token ausgewählt ist, behandelt das System 100 die der Ausgabesequenz 142 vor der Satzende-Ausgabe als endgültige Ausgabesequenz 142 hinzugefügten Ausgaben.
  • In einigen Implementierungen generiert das System 100 die Ausgabesequenz 142 unter Verwendung von Strahlensuche. Das heißt, dass das System 100 einen Strahl von mehreren Kandidatenausgabesequenzen aufrechterhält, die parallel verarbeitet und erweitert werden, und fährt mit dem Verarbeiten fort, bis alle der Kandidatenausgabesequenzen in dem Strahl von dem Strahl finalisiert oder gestutzt sind. Eine exemplarische Technik zum Aufrechterhalten und Aktualisieren eines Strahls wird nachfolgend unter Bezugnahme auf 6 beschrieben.
  • Sobald die Ausgabesequenz 142 generiert wurde, generiert das System 100 die Zielsequenz 152 durch Konvertieren der durch die Token in der Ausgabesequenz 142 dargestellten Worteinheiten in Wörter in der Zielsprache.
  • In einigen Implementierungen sind das neuronale Codierer-Netzwerk 100 und das Decodierer-Subsystem, d. h. das neuronale Decodierer-Netzwerk 120 und das Aufmerksamkeits-Subsystem 130, zum Ausführen quantifizierter Berechnungen während des Generierens der Ausgabesequenz 142 konfiguriert. Insbesondere führen in einigen Implementierungen das neuronale Codierer-Netzwerk 100 und das Decodierer-Subsystem berechnungsmäßig intensive Vorgänge aus, z. B. Matrixmultiplikationen unter Verwendung von 8-Bit-Ganzzahlrechnungen, während fehlerempfindliche Akkumulatorwerte unter Verwendung von 16-Bit-Ganzzahlwerten gespeichert werden. In einigen Implementierungen werden nur die Berechnungen innerhalb der LSTM-Stapel der neuronalen Codierer- und Decodierer-Netzwerke quantifiziert, d. h. und nicht die Berechnungen der Softmax-Ausgabeschicht oder des Aufmerksamkeits-Subsystems.
  • 2 zeigt ein Ablaufdiagramm eines exemplarischen Prozesses 200 zum Generieren einer Ausgabesequenz, die eine Übersetzung einer Eingabesequenz ist. Der Einfachheit halber wird der Prozess 200 als etwas beschrieben, dass durch ein System von einem oder mehreren Computern ausgeführt wird, die sich an einem oder mehreren Standorten befinden. Beispielsweise kann ein neuronales Maschinenübersetzungssystem, z. B. das neuronale Maschinenübersetzungssystem 100 von 1, angemessen programmiert, den Prozess 200 ausführen.
  • Das System empfängt eine Eingabesequenz von Token (Schritt 202). Die Eingabesequenz von Token ist eine Sequenz, die eine erste Sequenz von Wörtern in einer natürlichen Sprache darstellt.
  • Das System verarbeitet die Eingabesequenz von Token unter Verwendung eines neuronalen Codierer-Netzwerks, um eine jeweilige codierte Darstellung für jedes der Token in der Eingabesequenz zu generieren (Schritt 204). Verarbeiten der Eingabesequenz von Token wird nachfolgend unter Bezugnahme auf 3 beschrieben.
  • Das System verarbeitet die codierten Darstellungen unter Verwendung eines Decodierer-Subsystems zum Generieren einer Ausgabesequenz von Ausgabe-Token, die eine Sequenz von Wörtern darstellt, die eine Übersetzung der ersten Sequenz von Wörtern in eine andere natürliche Sprache ist (Schritt 206). Das Decodierer-Subsystem beinhaltet insbesondere ein neuronales Decodierer-Netzwerk und ein Aufmerksamkeits-Subsystem. Verarbeiten der codierten Darstellungen unter Verwendung des Decodierer-Subsystems wird nachfolgend unter Bezugnahme auf 4 und 5 ausführlicher beschrieben.
  • 3 zeigt ein Ablaufdiagramm eines exemplarischen Prozesses 300 zum Generieren codierter Darstellungen der Token in einer Eingabesequenz. Der Einfachheit halber wird der Prozess 300 als etwas beschrieben, dass durch ein System von einem oder mehreren Computern ausgeführt wird, die sich an einem oder mehreren Standorten befinden. Beispielsweise kann ein neuronales Codierer-Netzwerk, z. B. das neuronale Maschinenübersetzungssystem 100 von 1, angemessen programmiert, den Prozess 300 ausführen.
  • Das neuronale Codierer-Netzwerk verarbeitet die Eingabesequenz durch eine Eingabevorwärts-LSTM-Schicht (Schritt 302). Die Eingabevorwärts-LSTM-Schicht ist zum Verarbeiten jedes Eingabe-Tokens in der Eingabesequenz in einer Vorwärtsreihenfolge konfiguriert, um eine jeweilige Vorwärtsdarstellung für jedes Eingabe-Token zu generieren.
  • Das neuronale Codierer-Netzwerk verarbeitet die Eingabesequenz durch eine Eingaberückwärts-LSTM-Schicht (Schritt 304). Die Eingaberückwärts-LSTM-Schicht ist zum Verarbeiten jedes Eingabe-Tokens in der Eingabesequenz in einer Rückwärtsreihenfolge konfiguriert, um eine jeweilige Rückwärtsdarstellung für jedes Eingabe-Token zu generieren.
  • Das neuronale Codierer-Netzwerk verarbeitet die Vorwärts- und Rückwärtsdarstellungen des Eingabe-Tokens durch eine Kombinationsschicht (Schritt 306). Die Kombinationsschicht ist konfiguriert, um für jedes Eingabe-Token die Vorwärtsdarstellung des Eingabe-Tokens und die Rückwärtsdarstellung des Eingabe-Tokens zu kombinieren, z. B. zu verketten, um eine kombinierte Darstellung des Eingabe-Tokens zu generieren.
  • Das neuronale Codierer-Netzwerk verarbeitet die kombinierten Darstellungen der Eingabe-Token durch einen Stapel mehrerer verborgener LSTM-Schichten (Schritt 308). Die mehreren verborgenen LSTM-Schichten sind zum Verarbeiten jeder kombinierten Darstellung in der Vorwärtsreihenfolge konfiguriert, um eine jeweilige codierte Darstellung von jedem der Eingabe-Token in der Eingabesequenz zu generieren. Insbesondere sind die mehreren verborgenen LSTM-Schichten in einem Stapel nach dem anderen angeordnet, und die codierte Darstellung eines gegebenen Eingabe-Tokens ist die Ausgabe der höchsten LSTM-Schicht in dem Stapel, nachdem die kombinierte Darstellung des gegebenen Eingabe-Tokens durch den Stapel verarbeitet wurde.
  • Daher ist die unterste Schicht des neuronalen Codierer-Netzwerks eine bidirektionale LSTM-Schicht, d. h. die Kombination der Eingabevorwärts-, Eingaberückwärts- und Kombinationsschicht verarbeitet effektiv die Eingabesequenz in der Vorwärts- und Rückwärtsrichtung, da die unterste Schicht des Codierers, der Kontext für die Wörter in der Eingabesequenz effektiv erfasst werden kann, was die Übersetzungsqualität verbessert. Da die anderen Codiererschichten, d. h. die verborgenen LSTM-Schichten in dem Stapel, unidirektional sind, kann Parallelisierung während Berechnungen immer noch erreicht werden, wodurch Trainings- und in einigen Fällen Schlussfolgerungszeiten reduziert werden.
  • Im Allgemeinen sind viele verborgene LSTM-Schichten in dem Stapel, d. h. sieben oder mehr, vorhanden, um dem neuronalen Codierer-Netzwerk zu ermöglichen, feine Unregelmäßigkeiten in der Quellsprache zu erfassen.
  • Zum Verbessern der Leistung des neuronalen Codierer-Netzwerks durch Fördern von Gradientenstrom zwischen den verborgenen Schichten während des Trainings, beinhaltet das neuronale Codierer-Netzwerk in einigen Implementierungen Restverbindungen zwischen einigen oder allen der verborgenen Schichten in dem Stapel. Beispielsweise beginnen in einigen Implementierungen Restverbindungen von dem Schichtdrittel vom Boden des Codierers, d. h. von der zweiten Schicht vom Boden des Stapels verborgener Schichten.
  • Wenn eine Restverbindung zwischen einer LSTM-Schicht A und einer LSTM-Schicht B direkt über der Schicht A in einem Stapel von LSTM-Schichten enthalten ist, empfängt Schicht B als Eingabe die Ausgabe von Schicht A und die Eingabe von Schicht A. Schicht B fügt dann pro Element die Ausgabe von Schicht A und die Eingabe von Schicht A hinzu, und verarbeitet dann die Summe als die neue Eingabe in die Schicht.
  • 4 zeigt ein Ablaufdiagramm eines exemplarischen Prozesses 400 zum Generieren einer Ausgabe für eine gegebene Position in einer Ausgabesequenz. Der Einfachheit halber wird der Prozess 400 als etwas beschrieben, dass durch ein System von einem oder mehreren Computern ausgeführt wird, die sich an einem oder mehreren Standorten befinden. Beispielsweise kann ein neuronales Codierer-Netzwerk, z. B. das neuronale Maschinenübersetzungssystem 100 von 1, angemessen programmiert, den Prozess 400 ausführen.
  • Das neuronale Decodierer-Netzwerk erhält einen Aufmerksamkeitskontextvektor für die gegebene Position und das Ausgabe-Token an der vorangegangenen Position, d. h. an der Position, die der gegebenen Position in der Ausgabesequenz unmittelbar vorangeht (Schritt 402). Im Allgemeinen ist der Aufmerksamkeitskontextvektor eine gewichtete Summe über die codierten Darstellungen der Eingabe-Token in der Eingabesequenz, die durch ein Aufmerksamkeits-Subsystem generiert wurde. Generieren des Aufmerksamkeitskontextvektors für eine gegebene Position wird nachfolgend unter Bezugnahme auf 5 ausführlicher beschrieben. Wenn sich die gegebene Position in der ersten Position in der Ausgabesequenz befindet, d. h. keine unmittelbar vorangegangene Position vorhanden ist, kann das empfangene Ausgabe-Token ein bezeichnetes Platzhalter-Token, z. B. ein zuvor festgelegtes Satzanfangs-Token, sein.
  • Das neuronale Decodierer-Netzwerk verarbeitet den Aufmerksamkeitskontextvektor und das Ausgabe-Token durch einen Stapel von LSTM-Schichten, um eine LSTM-Ausgabe für die Position zu generieren (Schritt 404). Im Allgemeinen beinhaltet der Stapel von LSTM-Schichten, um dem neuronale Decodierer-Netzwerk das Erfassen feiner Unregelmäßigkeiten in der Zielsprache zu ermöglichen, viele LSTM-Schichten, z. B. acht oder mehr LSTM-Schichten.
  • Die erste LSTM-Schicht in dem Stapel, d. h. die unterste LSTM-Schicht, ist zum Empfangen des Aufmerksamkeitskontextvektors und des Ausgabe-Tokens, und zum Verarbeiten des Ausgabe-Tokens konfiguriert, um eine unterste Schichtausgabe zu generieren. Jede andere LSTM-Schicht ist zum Empfangen einer Eingabe, die den Aufmerksamkeitskontextvektor und die Schichtausgabe beinhaltet, die durch die LSTM-Schicht direkt vor der Schicht in den Stapel generiert wird, und zum Verarbeiten einer Schichtausgabe für die Eingabe konfiguriert.
  • Wie bei dem neuronalen Codierer-Netzwerk beinhaltet das neuronale Codierer-Netzwerk in einigen Implementierungen Restverbindungen zwischen einigen oder allen der Schichten in dem Stapel zum Verbessern der Leistung des neuronalen Codierer-Netzwerks durch Fördern von Gradientenstrom zwischen den Schichten während des Trainings. Beispielsweise beginnen in einigen Implementierungen Restverbindungen von dem Schichtdrittel von dem Boden des Decodierers.
  • Das neuronale Decodierer-Netzwerk verarbeitet die LSTM-Ausgabe durch eine Softmax-Ausgabeschicht, um eine jeweilige Punktzahl, z. B. eine jeweilige Wahrscheinlichkeit, für jedes Ausgabe-Token in dem Vokabular von Ausgabe-Token zu generieren (Schritt 406).
  • Das System kann dann ein Ausgabe-Token für die Position unter Verwendung der Punktzahlen auswählen oder kann, wie nachfolgend beschrieben, die Punktzahlen zum Aktualisieren des aufrechterhaltenen Strahls von Kandidatenausgabesequenzen verwenden.
  • 5 zeigt ein Ablaufdiagramm eines exemplarischen Prozesses 500 zum Generieren eines Aufmerksamkeitskontextvektors für eine gegebene Position in einer Ausgabesequenz. Der Einfachheit halber wird der Prozess 500 als etwas beschrieben, dass durch ein System von einem oder mehreren Computern ausgeführt wird, die sich an einem oder mehreren Standorten befinden. Beispielsweise kann ein Aufmerksamkeits-Subsystem, z. B. das Aufmerksamkeits-Subsystem des neuronalen Maschinenübersetzungssystems 100 von 1, angemessen programmiert, den Prozess 500 ausführen.
  • Das Aufmerksamkeits-Subsystem empfängt die durch die unterste Schicht in dem Stapel von LSTM-Schichten in dem neuronalen Decodierer-Netzwerk generierte LSTM-Ausgabe für die vorangegangene Position in der Ausgabesequenz (Schritt 502). Insbesondere generiert das Aufmerksamkeits-Subsystem den Aufmerksamkeitskontextvektor nur von der Ausgabe, die durch die unterste LSTM-Schicht in dem Decodiererstapel während der Verarbeitung für die vorangegangene Position in der Ausgabesequenz (und die codierten Darstellungen der Eingabe-Token) generiert wurde, d. h. und nicht von den Ausgaben der anderen LSTM-Schichten in dem Decodiererstapel. Aus diesem Grund kann das Generieren des Aufmerksamkeitskontextvektors initiiert werden, bevor das Ausgabe-Token an der vorangegangenen Position abgeschlossen wurde, wodurch die Parallelisierung der durch das System ausgeführten Vorgänge verbessert, und die Zeit verringert wird, die zum Ausführen einer Schlussfolgerung und zum Trainieren des Systems notwendig ist.
  • Für die erste Position in der Ausgabesequenz kann die von dem Aufmerksamkeits-Subsystem empfangene LSTM-Ausgabe eine Platzhalterausgabe sein, oder kann z. B. die codierte Darstellung von einem der Token, z. B. das erste Token oder das letzte Token, in der Eingabesequenz sein.
  • Das Aufmerksamkeits-Subsystem generiert ein jeweiliges Aufmerksamkeitsgewicht für jede der codierten Darstellungen von der untersten LSTM-Ausgabe, und die codierten Darstellungen für die Eingabe-Token (Schritt 504). Insbesondere wendet das System eine Aufmerksamkeitsfunktion auf die unterste LSTM-Ausgabe und die codierten Darstellungen für die Eingabe-Token an, um eine jeweilige Punktzahl für jede der codierten Darstellungen zu generieren, und generiert dann die Gewichte durch Normalisieren der generierten Punktzahlen. In einigen Implementierungen ist die Aufmerksamkeitsfunktion ein neuronales Vorwärtsschubnetzwerk, z. B. ein neuronales Vorwärtsschubnetzwerk mit einer verborgenen Schicht. In einigen Implementierungen kann die Aufmerksamkeitsfunktion eine Distanzfunktion, z. B. eine Cosinus-Ähnlichkeitsfunktion, sein.
  • Das Aufmerksamkeits-Subsystem generiert den Aufmerksamkeitskontextvektor für die Ausgabeposition durch Bestimmen einer gewichteten Summe der codierten Darstellungen gemäß der entsprechenden Aufmerksamkeitsgewichte (Schritt 506).
  • 6 zeigt ein Ablaufdiagramm eines exemplarischen Prozesses 600 zum Aufrechterhalten eines Strahls von Kandidatenausgabesequenzen. Der Einfachheit halber wird der Prozess 600 als etwas beschrieben, dass durch ein System von einem oder mehreren Computern ausgeführt wird, die sich an einem oder mehreren Standorten befinden. Beispielsweise kann ein neuronales Maschinenübersetzungssystem, z. B. das neuronale Maschinenübersetzungssystem 100 von 1, angemessen programmiert, den Prozess 600 ausführen.
  • Das System kann wiederholt den Prozess 600 als Teil eines Strahlsuchen-Decodierverfahrens ausführen. Insbesondere kann das System wiederholt das Verfahren 600 ausführen, bis alle der Sequenzen in dem Strahl finalisiert wurden oder bis einige andere Beendigungskriterien für die Decodierung erfüllt sind, z. B. erfüllt nur eine bestimmte Anzahl von Kandidatenausgabesequenzen Kriterien, um in dem Strahl zu verbleiben, oder die längste Kandidatenausgabesequenz in dem Strahl weist mehr als eine Schwellenwertanzahl von Token auf.
  • Das System erhält eine Vielzahl von Kandidatenausgabesequenzen von einem neuronalen Maschinenübersetzungssystem, z. B. dem neuronalen Maschinenübersetzungssystem 100 von 1 (Schritt 602). Insbesondere können die Kandidatenausgabesequenzen jeweils eine finalisierte Kandidatensequenz, die sich in dem Strahl am Ende der vorangegangenen Iteration des Prozesses 600 befand, und für jede Kandidatensequenz, die sich in dem Strahl am Ende der vorangegangenen Iteration des Prozesses 600 befand, aber nicht finalisiert war, eine oder mehrere Erweiterungen der Kandidatensequenz beinhalten. Eine Erweiterung einer Kandidatensequenz weist ein neues Token auf, das an das Ende der Kandidatensequenz angehängt ist, wobei jede Erweiterung der Kandidatensequenz ein anderes Token aufweist, das an das Ende der Sequenz angehängt ist. Das System erhält zudem für jede Erweiterung eine lokale Punktzahl für das an das Ende der Sequenz angehängte Token, wie durch die neuronalen Maschinenübersetzungssysteme generiert.
  • In einigen Implementierungen verwirft das System für jede Kandidatensequenz, die sich in dem Strahl befand, jedoch nicht finalisiert wurde, die Erweiterungen der Kandidatensequenz, die eine lokale Punktzahl aufweisen, die mehr als ein Schwellenwert unter einer höchsten lokalen Punktzahl ist.
  • Das System hält dann höchstens eine zuvor festgelegte Anzahl der Kandidatenausgabesequenzen in dem Strahl zur weiteren Berücksichtigung durch das neuronale Maschinenübersetzungssystem, d. h. zur weiteren Verarbeitung durch das neuronale Maschinenübersetzungssystem, aufrecht.
  • Insbesondere weist das System zum Bestimmen, welche Kandidatenausgabesequenz in dem Strahl aufrechtzuerhalten ist, jeder der Kandidatenausgabesequenzen eine jeweilige Punktzahl zu (Schritt 604). Im Allgemeinen weist das System jeder der Sequenzen eine anfängliche Punktzahl zu, und modifiziert optional die anfängliche Punktzahl für jede Sequenz durch Anwenden einer Abdeckungsstrafe, einer Längennormalisierungsstrafe oder von beiden, auf die anfängliche Punktzahl, um die endgültige Punktzahl für die Sequenz zu generieren.
  • Insbesondere bestimmt das System die anfängliche Punktzahl für eine gegebene Sequenz basierend auf einer Log-Likelihood der Kandidatenausgabesequenz gemäß den durch das neuronale Maschinenübersetzungssystem generierten Ausgabepunktzahlen. Das heißt dass, wie oben beschrieben, bei jeder Position in einer Ausgabesequenz ein neuronales Maschinenübersetzungssystem eine jeweilige Punktzahl für jedes der mehreren möglichen Token in der Ausgabesequenz generiert. Zum Bestimmen der anfänglichen Punktzahl für eine Kandidatenausgabesequenz bestimmt das System eine Summe der Logarithmen der Punktzahlen, die für jedes der Token in der Sequenz durch das neuronale Maschinenübersetzungssystem an der Position generiert wurden, an der das Token positioniert ist. Da die durch das Übersetzungssystem generierten Punktzahlen im Allgemeinen Wahrscheinlichkeiten sind, wird die anfängliche Punktzahl typischerweise negativ sein, d. h. weil der Logarithmus einer Zahl zwischen Null und Eins eine negative Zahl ist.
  • In einigen Implementierungen verwirft das System vor dem Berechnen beliebiger anfänglicher Punktzahlen und für jede Kandidatensequenz der vorherigen Iteration des Prozesses jede beliebige Erweiterung der Kandidatensequenz, bei der die Punktzahl, die dem neuen Token durch das neuronale Maschinenübersetzungssystem zugewiesen war, um mehr als einen Schwellenwert niedriger als die höchste Punktzahl war, die einer beliebigen Erweiterung der Kandidatensequenz zugewiesen wurde.
  • In einigen Implementierungen, bei denen das System eine Längennormalisierungsstrafe anwendet, normalisiert das System dann die anfängliche Punktzahl für die Kandidatensequenz basierend auf einer Anzahl von Ausgabe-Token, die sich in der Ausgabesequenz befinden. Im Allgemeinen wendet das System die Strafe durch Teilen der anfänglichen Punktzahl durch eine Strafbedingung an, die umso größer ist, je mehr Ausgabe-Token sich in der Ausgabesequenz befinden. Verwenden einer solchen Strafe ermöglicht dem System, effektiv Kandidatensequenzen unterschiedlicher Längen während des Decodierens zu vergleichen, d. h. ohne kürzere Ergebnisse gegenüber längeren übermäßig zu begünstigen. In einigen Implementierungen ist die Strafbedingung die Länge der Sequenz, d. h. die Anzahl von Token, die sich in der Sequenz befinden. In einigen anderen Implementierungen ist die Strafbedingung die Längeα, wobei α eine Konstante zwischen Null und Eins ist, z. B. ein Wert zwischen 0,6 und 0,7, und Länge die Länge der Sequenz ist, d. h. die Anzahl von Token in der Sequenz. In weiteren Implementierungen kann die Strafe lp erfüllen:
    Figure DE202017105835U1_0002
    wobei b eine positive Konstante ist, z. B. 5, |Y| die Länge der Sequenz ist, und α zwischen Null und Eins konstant, z. B. 0,2, ist.
  • In Implementierungen, bei denen das System eine Abdeckungsstrafe anwendet, fügt das System dann eine Strafbedingung zu der normalisierten anfänglichen Punktzahl (oder wenn Längennormalisierung nicht verwendet wird, die anfängliche Punktzahl) hinzu. Im Allgemeinen begünstigt die Abdeckungsstrafenbedingung Kandidatenausgabesequenzen, die die Wörter in der ersten Sequenz vollständig abdecken, wie durch den Aufmerksamkeitsmechanismus bestimmt, der durch das neuronale Maschinenübersetzungssystem verwendet wird. Beispielsweise kann die Abdeckungsstrafenbedingung cp erfüllen: cp = β·∑ |X| / i=1log(min(∑ |Y| / j=1pi,j), 1) wobei β ein positiver konstanter Wert zwischen Null und Eins ist, z. B. 0,2, i sich über die Token in der Eingabesequenz erstreckt, j sich über die Token in der Kandidatenausgabesequenz erstreckt und pi,j das Gewicht ist, das durch den Aufmerksamkeitsmechanismus für das i. Eingabe-Token generiert wird, wenn es das j. Ausgabe-Token verarbeitet.
  • Das System stuft die Kandidatenausgabesequenzen basierend auf den endgültigen Punktzahlen ein, d. h. von der Kandidatenausgabesequenz, die die höchste endgültige Punktzahl aufweist, zu der Sequenz, die die niedrigste Punktzahl aufweist (Schritt 606).
  • Das System entfernt von dem Strahl alle Kandidatenausgabesequenzen, außer der zuvor festgelegten Anzahl von am höchsten eingestuften Kandidatenausgabesequenzen, gemäß der Rangfolge (Schritt 608).
  • Das System bestimmt dann, ob irgendwelche der verbleibenden Kandidatenausgabesequenzen in dem Strahl durch das neuronale Maschinenübersetzungssystem als finalisiert identifiziert wurden (Schritt 610). Im Allgemeinen wurde eine Ausgabesequenz als finalisiert identifiziert, wenn die Ausgabesequenz in einem bezeichneten Token, z. B. einem zuvor festgelegten Satzende-Ausgabe-Token, endet.
  • Wenn mindestens eine Kandidatenausgabesequenz finalisiert wurde, entfernt das System von dem Strahl alle Kandidatenausgabesequenzen, die eine Punktzahl aufweisen, die mehr als ein Schwellenwert ist, der unter der Punktzahl für die am höchsten eingestufte finalisierte Kandidatenausgabesequenz liegt (Schritt 612). Durch Stutzen des Strahls auf diese Weise kann das System die Anzahl zusätzlicher Iterationen verringern, die ausgeführt werden müssen, sobald eine genügend hohe Qualitätshypothese identifiziert wurde, wodurch Schlussfolgerungszeit abgesenkt wird, ohne eine bedeutende Auswirkung auf die Übersetzungsqualität auszuüben. Wenn nach diesem zusätzlichen Stutzen der Strahl nur finalisierte Sequenzen beinhaltet, kann das System die am höchsten eingestufte Kandidatensequenz als die Übersetzung für die Eingabesequenz auswählen. Wenn der Strahl immer noch nicht finalisierte Kandidatensequenzen beinhaltet, und bis dahin keine anderen Beendigungskriterien erfüllt sind, stellt das System die nicht finalisierten Kandidatensequenzen in dem Strahl dem neuronalen Maschinenübersetzungssystem zur weiteren Verarbeitung bereit. Das heißt, das System stellt jede nicht finalisierte Sequenz in dem Strahl dem neuronalen Maschinenübersetzungssystem bereit, sodass das neuronale Maschinenübersetzungssystem mögliche Erweiterungen für jede nicht finalisierte Sequenz mit Punktzahlen bewerten kann.
  • Wenn keine der Kandidatenausgabesequenzen finalisiert wurde, dann stutzt das System den Strahl nicht weiter, und stellt die Kandidatenausgabesequenzen in dem Strahl dem neuronalen Maschinenübersetzungssystem zur weiteren Verarbeitung bereit (Schritt 614).
  • In dieser Spezifikation wird der Begriff „konfiguriert“ in Verbindung mit Systemen und Computerprogrammkomponenten verwendet. Ein zur Ausführung bestimmter Operationen oder Aktionen konfiguriertes System aus einem oder mehreren Computern bedeutet, dass auf diesem System Software, Firmware, Hardware oder eine Kombination derselben installiert ist, die im Betrieb das System veranlassen, Operationen oder Aktionen auszuführen. Ein oder mehrere zur Ausführung bestimmter Operationen oder Aktionen konfigurierte Computerprogramme bedeutet, dass dieses eine oder die mehreren Programme Anweisungen beinhalten, die wenn sie durch die Datenverarbeitungsvorrichtung ausgeführt werden, die Vorrichtung veranlassen, die Operationen oder Aktionen durchzuführen.
  • Die in dieser Spezifikation beschriebenen Ausführungsformen des Gegenstands sowie Funktionsvorgänge können in digitalen elektronischen Schaltungen, in physisch enthaltener Computersoftware oder -firmware, in Computerhardware, einschließlich der in dieser Spezifikation offenbarten Strukturen und ihrer strukturellen Entsprechungen oder in Kombinationen von einer oder mehrerer derselben, implementiert werden.
  • Die in dieser Beschreibung beschriebenen Ausführungsformen des Gegenstandes können als ein oder mehrere Computerprogramme implementiert werden, d. h. als ein oder mehrere Module mit Computerprogrammanweisungen, die auf einem materiellen, nicht flüchtgen Programmträger kodiert sind, um dann von einem Datenverarbeitungsgerät ausgeführt zu werden bzw. den Betrieb desselben zu steuern. Alternativ oder ergänzend dazu können die Programmbefehle auf einem künstlich erzeugten, sich ausbreitenden Signal, wie beispielsweise einem maschinenerzeugten elektrischen, optischen oder elektromagnetischen Signal codiert werden, das erzeugt wird, um Informationen zur Übertragung an ein geeignetes Empfängergerät zu codieren, die dann von einem Datenverarbeitungsgerät ausgeführt werden. Bei dem Computer-Speichermedium kann es sich um ein maschinenlesbares Speichergerät, ein maschinenlesbares Speichersubstrat, einen frei adressierbaren oder seriellen Zugriffsspeicher oder eine Kombination aus einem oder mehreren derselben handeln.
  • Der Begriff „Datenverarbeitungsvorrichtung“ umfasst alle Arten von Vorrichtungen, Geräten und Maschinen zum Verarbeiten von Daten, einschließlich beispielsweise eines programmierbaren Prozessors, eines Rechners oder mehrerer Prozessoren oder Rechner. Die Vorrichtung kann eine Spezial-Logikschaltung, wie z. B. einen FPGA (feldprogrammierbarer Universalschaltkreis) oder einen ASIC (anwendungsspezifischen integrierten Schaltkreis) beinhalten. Die Vorrichtung kann neben der Hardware auch einen Code beinhalten, der eine Ausführungsumgebung für das betreffende Computerprogramm, z. B. einen Code, der Prozessor-Firmware, einen Protokollstapel, ein Datenbankverwaltungssystem, ein Betriebssystem, oder eine Kombination einer oder mehrerer der genannten, erstellt.
  • Ein Computerprogramm (auf das sich auch bezogen, oder das als Programm, Software, Softwareanwendung, Modul, Softwaremodul, Script oder Code beschrieben wird) kann in einer beliebigen Programmiersprachenform geschrieben sein, darunter auch in kompilierten oder interpretierten Sprachen, deklarativen oder verfahrensorientierten Sprachen, zudem kann das Programm in jeder beliebigen Form eingesetzt werden, darunter auch als unabhängiges Programm oder als Modul, Komponente, Subroutine oder eine andere Einheit, die zur Verwendung in einer Rechenumgebung geeignet ist. Ein Computerprogramm kann, muss jedoch nicht einer Datei in einem Dateisystem entsprechen. Ein Programm kann in einem Teil einer Datei gespeichert sein, die andere Programme oder Daten enthält, wie z. B. eine oder mehrere Scripts, die in Markup-Sprache in einem Dokument, in einer einzelnen Datei speziell für das betreffende Programm oder in mehreren koordinierten Dateien, z. B. Dateien gespeichert sind, die ein oder mehrere Module, Unterprogramme oder Teile von Code speichern. Ein Computerprogramm kann auf einem Computer oder auf mehreren Computern bereitgestellt und ausgeführt werden, die sich an einem Standort oder an mehreren Standorten verteilt befinden und über ein Kommunikationsnetzwerk miteinander verbunden sind.
  • Die in dieser Spezifikation beschriebenen Prozesse und Logikabläufe können von einem oder mehreren programmierbaren Prozessoren durchgeführt werden, die ein oder mehrere Computerprogramme ausführen, um Funktionen durch das Verarbeiten von Eingabedaten und das Erzeugen von Ausgaben auszuführen. Die Prozesse und Logikabläufe können zudem durch eine vorhabensgebundene Logikschaltung, wie z. B. einen FPGA (Universalschaltkreis) oder eine ASIC (anwendungsspezifische integrierte Schaltung) ausgeführt, und das Gerät in Form derselben implementiert werden.
  • Computer, die zur Ausführung eines Datenverarbeitungsprogramms geeignet sind, können beispielsweise allgemeine oder spezielle Mikroprozessoren oder beides oder eine andere Art von zentraler Verarbeitungseinheit beinhalten. Im Allgemeinen nimmt eine zentrale Recheneinheit Befehle und Daten von einem Nur-Lese-Speicher oder einem Direktzugriffsspeicher oder von beiden entgegen. Die wesentlichen Elemente eines Computers sind eine zentrale Recheneinheit zum Durchführen bzw. Ausführen von Befehlen und ein oder mehrere Speichergeräte zum Speichern von Befehlen und Daten. Im Allgemeinen beinhaltet ein Computer außerdem ein oder mehrere Massenspeichergeräte zum Speichern von Daten, wie z. B. Magnet-, magneto-optische oder optische Disketten, um Daten zu empfangen und/oder zu senden, oder derselbe ist operativ an ein solches Speichergerät gekoppelt. Ein Computer muss jedoch nicht über diese Geräte verfügen. Darüber hinaus kann ein Computer in einem anderen Gerät, unter anderem z. B. in einem Mobiltelefon, einem persönlichen digitalen Assistenten (PDA), einem mobilen Audio- oder Videoplayer, einer Spielekonsole, einem globalen Positionsbestimmungssystem (GPS) oder einem tragbaren Speichergerät, z. B. in einem USB-Stick, integriert sein.
  • Computerlesbare Medien, die zum Speichern von Computerprogrammanweisungen und Daten geeignet sind, beinhalten alle Formen von nicht flüchtigem Speicher, Medien und Speichergeräten, darunter auch beispielsweise Halbleiterspeichergeräte, wie z. B. EPROM, EEPROM und Flash-Speichergeräte, magnetische Platten, wie z. B. interne Festplattenlaufwerke oder Wechselplatten, magneto-optische Platten sowie CD-ROMs und DVD-ROMs. Der Prozessor und der Speicher können durch eine Spezial-Logikschaltung ergänzt oder in dieselbe integriert werden.
  • Um die Interaktion mit einem Benutzer zu ermöglichen, können in dieser Spezifikation beschriebene Ausführungsformen des Gegenstandes auf einem Computer mit einem Anzeigegerät, wie z. B. einem CRT-(Kathodenstrahlröhren) oder LCD-(Flüssigkristallanzeigen)-Monitor, mit welchem dem Benutzer Informationen angezeigt werden, sowie einer Tastatur und einem Zeigegerät, z. B. einer Maus oder einer Steuerkugel (Trackball), mit denen der Benutzer Eingaben an den Computer vornehmen kann, implementiert werden. Darüber hinaus können andere Geräte verwendet werden, um die Interaktion mit einem Benutzer zu ermöglichen; zum Beispiel kann es sich bei der Rückmeldung an den Benutzer um jegliche Art von sensorischer Rückmeldung, wie z. B. visuelle, akustische oder taktile Rückmeldungen, handeln; zudem können die Eingaben des Benutzers in beliebiger Form, darunter auch akustisch, sprachlich oder taktil, empfangen werden. Außerdem kann ein Computer durch das Senden von Dokumenten an und das Empfangen von Dokumenten von einem Gerät, das vom Benutzer verwendet wird, mit einem Benutzer interagieren, beispielsweise durch das Senden von Webseiten an einen Webbrowser auf dem Client-Gerät des Benutzers in Reaktion auf die vom Webbrowser empfangenen Anfragen.
  • Die in dieser Spezifikation beschriebenen Ausführungsformen des Gegenstandes können in einem Datenverarbeitungssystem implementiert werden, das eine Backend-Komponente wie z. B. einen Datenserver oder eine Middleware-Komponente, wie z. B. einen Anwendungsserver oder eine Frontend-Komponente, wie z. B. einen Client-Computer mit einer grafischen Benutzeroberfläche, oder eine beliebige Kombination einer oder mehrerer der besagten Backend-, Middleware- oder Frontend-Komponenten oder einen Webbrowser beinhaltet, durch den ein Benutzer mit einer in dieser Spezifikation beschriebenen Implementierung des Gegenstandes interagieren kann. Die Komponenten des Systems können durch eine beliebige Form oder ein beliebiges Medium digitaler Datenkommunikation, wie z. B. ein Kommunikationsnetzwerk, miteinander verbunden sein. So beinhalten beispielsweise Kommunikationsnetzwerke ein lokales Netzwerk („LAN“), ein Großraumnetzwerk („WAN“), z. B. das Internet.
  • Das Computersystem kann Clients und Server beinhalten. Ein Client und ein Server befinden sich im Allgemeinen entfernt voneinander und interagieren typischerweise über ein Kommunikationsnetzwerk. Die Beziehung zwischen Client und Server entsteht aufgrund von Computerprogrammen, die auf den jeweiligen Computern laufen und die eine Client-Server-Beziehung zueinander aufweisen.
  • Zwar enthält diese Spezifikation viele spezifische Implementierungsdetails, jedoch sollten diese nicht als Beschränkungen des Umfangs oder des Anspruchs ausgelegt werden, sondern vielmehr als Beschreibungen spezifischer Merkmale bestimmter Ausführungsformen bestimmter Erfindungen. Bestimmte Merkmale, die in dieser Spezifikation im Kontext der unterschiedlichen Ausführungsformen beschrieben werden, können auch in Kombination in einer einzelnen Ausführungsform implementiert werden. Andererseits können verschiedene Merkmale, die im Kontext einer einzelnen Ausführungsform beschrieben werden, in mehreren Ausführungsformen oder in einer geeigneten Teilkombination implementiert werden. Außerdem können, auch wenn die Merkmale vorstehend ggf. als in bestimmten Kombinationen wirkend beschrieben und zunächst auch als solche beansprucht werden, in einigen Fällen ein oder mehrere Merkmale einer beanspruchten Kombination aus der Kombination herausgenommen und die beanspruchte Kombination auf eine Teilkombination oder eine Variante einer Teilkombination gerichtet werden.
  • Gleichermaßen soll, obwohl die Operationen in den Zeichnungen in einer bestimmten Reihenfolge dargestellt sind, dies nicht so verstanden werden, dass die besagten Operationen in der dargestellten Reihenfolge oder in fortlaufender Reihenfolge durchgeführt werden müssen bzw. alle veranschaulichten Operationen durchgeführt werden müssen, um die erwünschten Ergebnisse zu erzielen. Unter bestimmten Umständen können Multitasking und Parallelverarbeitung von Vorteil sein. Darüber hinaus sollte die Trennung verschiedener Systemkomponenten in den vorstehend beschriebenen Ausführungsformen nicht als in allen Ausführungsformen erforderlich aufgefasst werden, und es versteht sich, dass die beschriebenen Programmkomponenten und Systeme im Allgemeinen zusammen in ein einziges Softwareprodukt integriert oder in mehrere Softwareprodukte aufgeteilt werden können.
  • Es wurden bestimmte Ausführungsformen des Gegenstands beschrieben. Weitere Ausführungsformen liegen innerhalb des Schutzumfangs der folgenden Ansprüche. Die in den Ansprüchen ausgeführten Vorgänge können beispielsweise in einer anderen Reihenfolge ausgeführt werden und dennoch wünschenswerte Ergebnisse erzielen. Die in den beigefügten Figuren dargestellten Verfahren erfordern beispielsweise nicht notwendigerweise die gezeigte Reihenfolge oder sequenzielle Reihenfolge, um erwünschte Ergebnisse zu erzielen. In bestimmten Implementierungen können Multitasking und eine Parallelverarbeitung vorteilhaft sein.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Nicht-Patentliteratur
    • Schuster, M., und Nakajima, K. Japanese and Korean voice search (Japanische und Koreanische Sprachsuche) beschrieben. 2012 IEEE International Conference on Acoustics, Speech and Signal Processing (Internationale Konferenz über Akustik-, Sprach- und Signalverarbeitung) (2012) [0040]
    • Sennrich, R., Haddow, B., und Birch, A. Neural machine translation of rare words with subword units (Neuronale Maschinenübersetzung von seltenen Wörtern mit Subworteinheiten). In Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Verfahren des 54. Jahrestreffens des Verbandes für Computerlinguistik) (2016) [0040]

Claims (20)

  1. Neuronales Maschinenübersetzungssystem, das durch einen oder mehrere Computer implementiert ist, wobei das neuronale Maschinenübersetzungssystem zum Empfangen einer Eingabesequenz von Eingabe-Token, die eine erste Sequenz von Wörtern in einer ersten natürlichen Sprache darstellt, und zum Generieren einer Ausgabesequenz von Ausgabe-Token, die eine zweite Sequenz von Wörtern darstellt, die eine Übersetzung der ersten Sequenz in eine zweite natürliche Sprache ist, konfiguriert ist, wobei das neuronale Maschinenübersetzungssystem umfasst: ein neuronales Codierer-Netzwerk, umfassend: eine Eingabevorwärts long short-term memory (LSTM) Schicht, die zum Verarbeiten von jedem Eingabe-Token in der Eingabesequenz in einer Vorwärtsreihenfolge zum Generieren einer jeweiligen Vorwärtsdarstellung jedes Eingabe-Tokens konfiguriert ist, eine Eingaberückwärts-LSTM-Schicht, die zum Verarbeiten von jedem Eingabe-Token in der Eingabesequenz in einer Rückwärtsreihenfolge zum Generieren einer jeweiligen Rückwärtsdarstellung von jedem Eingabe-Token konfiguriert ist, eine Kombinationsschicht, die konfiguriert ist, um für jedes Eingabe-Token in der Eingabesequenz die Vorwärtsdarstellung des Eingabe-Tokens und die Rückwärtsdarstellung des Eingabe-Tokens zum Generieren einer kombinierten Darstellung des Eingabe-Tokens zu kombinieren, und eine Vielzahl verborgener LSTM-Schichten, die zum Generieren einer jeweiligen codierten Darstellung von jedem der Eingabe-Token in der Eingabesequenz konfiguriert sind; und ein Decodierer-Subsystem, das zum Empfangen der jeweiligen codierten Darstellung von jedem der Eingabe-Token in der Eingabesequenz und zum Verarbeiten der codierten Darstellungen konfiguriert ist, um die Ausgabesequenz zu generieren.
  2. Neuronales Maschinenübersetzungssystem nach Anspruch 1, wobei die verborgenen LSTM-Schichten nacheinander in einem Stapel angeordnet werden, und wobei die Vielzahl verborgener LSTM-Schichten mindestens sieben LSTM-Schichten umfasst.
  3. Neuronales Maschinenübersetzungssystem nach Anspruch 2, wobei mindestens zwei der Vielzahl verborgener LSTM-Schichten mit einer Restverbindung verbunden sind.
  4. Neuronales Maschinenübersetzungssystem nach einem der Ansprüche 1–3, wobei das Decodierer-Subsystem umfasst: ein neuronales Decodierer-Netzwerk, wobei das neuronale Decodierer-Netzwerk umfasst: eine Vielzahl von LSTM-Schichten, die in einem Stapel aufeinander angeordnet, und für jede der Vielzahl von Positionen in der Ausgabesequenz konfiguriert sind zum: Empfangen eines Aufmerksamkeitskontextvektors und des Ausgabe-Tokens an einer vorangegangenen Position in der Ausgabesequenz, und Verarbeiten des Aufmerksamkeitskontextvektors und des Tokens an der vorangegangenen Position zum Generieren einer LSTM-Ausgabe für die Position, und eine Softmax-Ausgabeschicht, wobei die Softmax-Ausgabeschicht zum Empfangen der LSTM-Ausgabe für die Position für jede der Vielzahl von Positionen und zum Generieren einer jeweiligen Punktzahl für jedes Ausgabe-Token in einem Vokabular von Ausgabe-Token konfiguriert ist.
  5. Neuronales Maschinenübersetzungssystem nach Anspruch 4, wobei die Vielzahl von LSTM-Schichten mindestens acht LSTM-Schichten umfasst.
  6. Neuronales Maschinenübersetzungssystem nach einem der Ansprüche 4 oder 5, wobei mindestens zwei der Vielzahl von LSTM-Schichten mit einer Restverbindung verbunden sind.
  7. Neuronales Maschinenübersetzungssystem nach Anspruch 6, wobei eine erste LSTM-Schicht in dem Stapel für jede der Vielzahl von Positionen konfiguriert zum: Empfangen einer ersten Schichteingabe, die den Aufmerksamkeitskontextvektor umfasst, einer Schichtausgabe, die durch eine LSTM-Schicht direkt unter der ersten LSTM-Schicht in dem Stapel generiert wird, und einer Schichteingabe in die LSTM-Schicht direkt unter der ersten LSTM-Schicht in dem Stapel; und Verarbeiten der ersten Schichteingabe gemäß einem aktuellen verborgenen Status der ersten LSTM-Schicht zum Generieren einer ersten Schichtausgabe und zum Aktualisieren des aktuellen verborgenen Status.
  8. Neuronales Maschinenübersetzungssystem nach einem der Ansprüche 4–7, wobei das Decodierer-Subsystem ferner umfasst: ein Aufmerksamkeits-Subsystem, wobei das Aufmerksamkeits-Subsystem für jede der Vielzahl von Positionen konfiguriert ist zum: Empfangen einer Aufmerksamkeitseingabe, die eine unterste Schichtausgabe umfasst, die durch eine unterste LSTM-Schicht in dem Stapel von LSTM-Schichten in dem neuronalen Decodierer-Netzwerk für die vorangegangene Position generiert wird; und Verarbeiten der Aufmerksamkeitseingabe zum Generieren des Aufmerksamkeitskontextvektors für den Zeitschritt.
  9. Neuronales Maschinenübersetzungssystem nach Anspruch 8, wobei Verarbeiten der untersten Schichtausgabe und der jeweiligen codierten Darstellung von jedem der Eingabe-Token in der Eingabesequenz zum Generieren des Aufmerksamkeitskontextvektors für den Zeitschritt für jeden der Vielzahl von Zeitschritten umfasst: Verarbeiten der untersten Schichtausgabe und der codierten Darstellungen durch eine oder mehrere Netzwerkschichten zum Generieren einer jeweiligen Punktzahl für jedes der Eingabe-Token; Generieren eines jeweiligen Gewichts für jedes der Eingabe-Token von den jeweiligen Punktzahlen; und Bestimmen einer gewichteten Summe der codierten Darstellung gemäß den Gewichten.
  10. Neuronales Maschinenübersetzungssystem nach einem der Ansprüche 1–9, wobei die Eingabe- und Ausgabe-Token Wortteile sind.
  11. Neuronales Maschinenübersetzungssystem nach einem der Ansprüche 1–10, wobei das neuronale Codierer-Netzwerk und das Decodierer-Subsystem zum Ausführen quantifizierter Berechnungen während des Generierens der Ausgabesequenz konfiguriert sind.
  12. Computerprogrammprodukt, das Anweisungen enthält, die, wenn sie durch einen Prozessor oder mehrere Prozessoren ausgeführt werden, den einen Prozessor oder die mehreren Prozessoren veranlassen, ein Verfahren zum Generieren einer Ausgabesequenz von Ausgabe-Token durchzuführen, die eine zweite Sequenz von Wörtern darstellt, die eine Übersetzung der ersten Sequenz von Wörtern in eine zweite natürliche Sprache ist umfassend: Erhalten einer Vielzahl von Kandidatenausgabesequenzen von einem neuronalen Maschinenübersetzungssystem; Aufrechterhalten höchstens einer zuvor festgelegten Anzahl der Kandidatenausgabesequenzen in einem Strahl zur weiteren Berücksichtigung durch das neuronale Maschinenübersetzungssystem, wobei das Verfahren umfasst: Zuweisen einer jeweiligen Punktzahl für jede Kandidatenausgabesequenz; Einstufen der Kandidatenausgabesequenzen basierend auf den jeweiligen Punktzahlen; Entfernen aller Kandidatenausgabesequenzen von dem Strahl außer der zuvor festgelegten Anzahl von am höchsten eingestuften Kandidatenausgabesequenzen gemäß der Rangfolge; Bestimmen, ob beliebige der Kandidatenausgabesequenzen in dem Strahl als eine finalisierte Kandidatenausgabesequenz durch das neuronale Maschinenübersetzungssystem identifiziert wurden; und wenn mindestens eine der Kandidatenausgabesequenzen als eine finalisierte Kandidatenausgabesequenz identifiziert wurde: Entfernen aller Kandidatenausgabesequenzen von dem Strahl, die eine Punktzahl aufweisen, die mehr als ein Schwellenwert ist, der unter der Punktzahl für eine am höchsten eingestufte finalisierte Kandidatenausgabesequenz liegt.
  13. Computerprogrammprodukt nach Anspruch 12, wobei das neuronale Maschinenübersetzungssystem das neuronale Maschinenübersetzungssystem nach einem der Ansprüche 1–11 ist.
  14. Computerprogrammprodukt nach einem der Ansprüche 12 oder 13, wobei Bestimmen, ob beliebige der Kandidatenausgabesequenzen als eine finalisierte Kandidatenausgabesequenz durch das neuronale Maschinenübersetzungssystem identifiziert wurden, umfasst: Bestimmen, ob eine beliebige der Kandidatenausgabesequenzen mit einem Satzende-Ausgabe-Token endet.
  15. Computerprogrammprodukt nach einem der Ansprüche 12–14, wobei Zuweisen einer jeweiligen Punktzahl zu jeder Kandidatenausgabesequenz umfasst: Bestimmen einer Log-Likelihood der Kandidatenausgabesequenz gemäß den durch das neuronale Maschinenübersetzungssystem generierten Ausgabepunktzahlen; und Normalisieren der Log-Likelihood basierend auf einer Anzahl von Ausgabe-Token in der Kandidatenausgabesequenz zum Generieren einer längennormalisierten Log-Likelihood.
  16. Computerprogrammprodukt nach Anspruch 15, wobei Zuweisen einer jeweiligen Punktzahl zu jeder Kandidatenausgabesequenz ferner umfasst: Modifizieren der längennormalisierten Log-Likelihood unter Verwendung einer Abdeckungsstrafe, um Kandidatenausgabesequenzen zu begünstigen, die die Wörter in der ersten Sequenz vollständig abdecken.
  17. Computerprogrammprodukt nach einem der Ansprüche 12–16, das Verfahren ferner umfassend: wenn alle der Kandidatenausgabesequenzen in dem Strahl als eine finalisierte Kandidatenausgabesequenz durch das neuronale Maschinenübersetzungssystem identifiziert wurden, Auswählen einer Kandidatenausgabesequenz mit der höchsten Punktzahl als die Ausgabesequenz.
  18. Eines oder mehrere Computerspeichermedien, die Anweisungen speichern, die, wenn sie durch einen oder mehrere Computer ausgeführt werden, den einen oder die mehreren Computer zum Implementieren des Systems nach einem der Ansprüche 1–11 veranlassen.
  19. Eines oder mehrere Computerspeichermedien, die mit Anweisungen codiert sind, die, wenn sie durch einen oder mehrere Computer ausgeführt werden, den einen oder die mehreren Computer zum Ausführen der Vorgänge des jeweiligen Verfahrens eines Computerprogrammprodukts nach einem der Ansprüche 12–17 veranlassen.
  20. System, das einen oder mehrere Computer und ein oder mehrere Speichergeräte umfasst, die Anweisungen speichern, die, wenn sie durch den einen oder die mehreren Computer ausgeführt werden, den einen oder die mehreren Computer zum Ausführen der Vorgänge des jeweiligen Verfahrens eines Computerprogrammprodukts nach einem der Ansprüche 12–17 veranlassen.
DE202017105835.2U 2016-09-26 2017-09-26 Neuronale Maschinenübersetzungssysteme Active DE202017105835U1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201662399990P 2016-09-26 2016-09-26
US62/399,990 2016-09-26

Publications (1)

Publication Number Publication Date
DE202017105835U1 true DE202017105835U1 (de) 2018-01-02

Family

ID=60084077

Family Applications (2)

Application Number Title Priority Date Filing Date
DE102017122276.6A Pending DE102017122276A1 (de) 2016-09-26 2017-09-26 Neuronale maschinenübersetzungssysteme
DE202017105835.2U Active DE202017105835U1 (de) 2016-09-26 2017-09-26 Neuronale Maschinenübersetzungssysteme

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE102017122276.6A Pending DE102017122276A1 (de) 2016-09-26 2017-09-26 Neuronale maschinenübersetzungssysteme

Country Status (10)

Country Link
US (2) US11113480B2 (de)
EP (1) EP3516591A1 (de)
JP (1) JP6870076B2 (de)
KR (1) KR102323548B1 (de)
CN (2) CN113553862A (de)
DE (2) DE102017122276A1 (de)
GB (1) GB2556674A (de)
IE (1) IE20170201A1 (de)
SG (1) SG10201707936TA (de)
WO (1) WO2018058046A1 (de)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108629743A (zh) * 2018-04-04 2018-10-09 腾讯科技(深圳)有限公司 图像的处理方法、装置、存储介质和电子装置
CN108984539A (zh) * 2018-07-17 2018-12-11 苏州大学 基于模拟未来时刻的翻译信息的神经机器翻译方法
CN109033094A (zh) * 2018-07-18 2018-12-18 五邑大学 一种基于序列到序列神经网络模型的文言文白话文互译方法及系统
CN111401078A (zh) * 2020-03-17 2020-07-10 江苏省舜禹信息技术有限公司 神经网络文本翻译模型的运行方法、装置、设备、及介质
CN112364119A (zh) * 2020-12-01 2021-02-12 国家海洋信息中心 基于lstm编解码模型的海洋浮标轨迹预测方法
CN113095092A (zh) * 2021-04-19 2021-07-09 南京大学 通过建模协同关系提高非自回归神经机器翻译质量的方法
US11726750B1 (en) * 2021-11-17 2023-08-15 Outsystems—Software Em Rede, S.A. Constrained decoding and ranking of language models for code generation

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11113480B2 (en) * 2016-09-26 2021-09-07 Google Llc Neural machine translation systems
JP6705506B2 (ja) * 2016-10-04 2020-06-03 富士通株式会社 学習プログラム、情報処理装置および学習方法
US10558750B2 (en) 2016-11-18 2020-02-11 Salesforce.Com, Inc. Spatial attention model for image captioning
EP3745394B1 (de) * 2017-03-29 2023-05-10 Google LLC End-zu-end-text-zu-sprache-umwandlung
US11501076B2 (en) 2018-02-09 2022-11-15 Salesforce.Com, Inc. Multitask learning as question answering
CN108388549B (zh) * 2018-02-26 2021-02-19 腾讯科技(深圳)有限公司 信息转换方法、装置、存储介质和电子装置
CN108563640A (zh) * 2018-04-24 2018-09-21 中译语通科技股份有限公司 一种多语言对的神经网络机器翻译方法及系统
CN108920468B (zh) * 2018-05-07 2019-05-14 内蒙古工业大学 一种基于强化学习的蒙汉双语种互译方法
CN108932232A (zh) * 2018-05-07 2018-12-04 内蒙古工业大学 一种基于lstm神经网络的蒙汉互译方法
CN110489761B (zh) 2018-05-15 2021-02-02 科大讯飞股份有限公司 一种篇章级文本翻译方法及装置
WO2019222751A1 (en) * 2018-05-18 2019-11-21 Google Llc Universal transformers
US11574122B2 (en) * 2018-08-23 2023-02-07 Shenzhen Keya Medical Technology Corporation Method and system for joint named entity recognition and relation extraction using convolutional neural network
CN109271646B (zh) * 2018-09-04 2022-07-08 腾讯科技(深圳)有限公司 文本翻译方法、装置、可读存储介质和计算机设备
US10672382B2 (en) * 2018-10-15 2020-06-02 Tencent America LLC Input-feeding architecture for attention based end-to-end speech recognition
US10891951B2 (en) 2018-10-17 2021-01-12 Ford Global Technologies, Llc Vehicle language processing
CN109634578B (zh) * 2018-10-19 2021-04-02 北京大学 一种基于文本说明的程序生成方法
CN111178099B (zh) * 2018-11-28 2023-03-10 腾讯科技(深圳)有限公司 一种文本翻译的方法以及相关装置
CN109598334B (zh) * 2018-12-03 2021-06-29 中国信息安全测评中心 一种样本生成方法及装置
US11822897B2 (en) 2018-12-11 2023-11-21 Salesforce.Com, Inc. Systems and methods for structured text translation with tag alignment
US10963652B2 (en) * 2018-12-11 2021-03-30 Salesforce.Com, Inc. Structured text translation
CN109558605B (zh) * 2018-12-17 2022-06-10 北京百度网讯科技有限公司 用于翻译语句的方法和装置
CN111368558B (zh) * 2018-12-25 2024-01-02 Tcl科技集团股份有限公司 基于神经网络的实时翻译方法、智能终端及存储介质
CN111476039B (zh) * 2019-01-04 2023-06-30 深圳永德利科技股份有限公司 智能车载系统的即时语言翻译方法及相关产品
US10740571B1 (en) * 2019-01-23 2020-08-11 Google Llc Generating neural network outputs using insertion operations
US20220207243A1 (en) * 2019-05-07 2022-06-30 Ntt Docomo, Inc. Internal state modifying device
JP7170594B2 (ja) * 2019-06-25 2022-11-14 Kddi株式会社 同一事象に対して時系列に発生した異なるメディアデータを統合した学習モデルを構築するプログラム、装置及び方法
US11983609B2 (en) 2019-07-10 2024-05-14 Sony Interactive Entertainment LLC Dual machine learning pipelines for transforming data and optimizing data transformation
US11250322B2 (en) * 2019-07-15 2022-02-15 Sony Interactive Entertainment LLC Self-healing machine learning system for transformed data
CN110489766B (zh) * 2019-07-25 2020-07-10 昆明理工大学 基于编码归纳-解码推敲的汉-越低资源神经机器翻译方法
KR102286999B1 (ko) * 2019-08-05 2021-08-09 강원대학교산학협력단 듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 장치 및 방법
CN110442880B (zh) * 2019-08-06 2022-09-30 上海海事大学 一种机器翻译译文的翻译方法、装置及存储介质
CN112765998A (zh) * 2019-11-01 2021-05-07 华为技术有限公司 机器翻译方法、机器翻译模型训练方法、装置及存储介质
CN110941966A (zh) * 2019-12-10 2020-03-31 北京小米移动软件有限公司 机器翻译模型的训练方法、装置及系统
CN111178092B (zh) * 2019-12-20 2023-04-07 沈阳雅译网络技术有限公司 一种动态调整长度惩罚及译文长度的翻译模型优化方法
CN111325000B (zh) 2020-01-23 2021-01-26 北京百度网讯科技有限公司 语言生成方法、装置及电子设备
KR20210097588A (ko) 2020-01-30 2021-08-09 삼성전자주식회사 컨텍스트 정보와 대응되는 문장을 획득하는 전자 장치 및 그 동작 방법
CN111523329A (zh) * 2020-04-10 2020-08-11 昆明理工大学 基于编码器-转换器-解码器框架的神经网络机器翻译方法
US11868737B2 (en) * 2020-04-24 2024-01-09 Direct Cursus Technology L.L.C Method and server for processing text sequence for machine processing task
DE102020114046A1 (de) 2020-05-26 2021-12-02 Thomas Eißfeller Neuronales Maschinenübersetzungsverfahren, neuronales Maschinenübersetzungssystem, Lernverfahren, Lernsystem und Programm
US11875131B2 (en) 2020-09-16 2024-01-16 International Business Machines Corporation Zero-shot cross-lingual transfer learning
US20220129645A1 (en) * 2020-10-27 2022-04-28 Samsung Electronics Co., Ltd. Electronic device and method for controlling same
US11989528B2 (en) * 2020-12-30 2024-05-21 Direct Cursus Technology L.L.C Method and server for training a machine learning algorithm for executing translation
CN112836485B (zh) * 2021-01-25 2023-09-19 中山大学 一种基于神经机器翻译的相似病历预测方法
WO2023219752A1 (en) * 2022-05-13 2023-11-16 Alexander Waibel Face-translator: end-to-end system for speech-translated lip-synchronized and voice preserving video generation

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006083690A2 (en) * 2005-02-01 2006-08-10 Embedded Technologies, Llc Language engine coordination and switching
ES2435093B1 (es) * 2012-06-15 2014-12-16 Centro De Investigaciones Energéticas, Medioambientales Y Tecnológicas (Ciemat) Procedimiento de entrenamiento de redes neuronales para detectores centelleadores.
US10181098B2 (en) 2014-06-06 2019-01-15 Google Llc Generating representations of input sequences using neural networks
US10133739B2 (en) * 2014-10-24 2018-11-20 Google Llc Neural machine translation systems with rare word processing
KR102305584B1 (ko) 2015-01-19 2021-09-27 삼성전자주식회사 언어 모델 학습 방법 및 장치, 언어 인식 방법 및 장치
JP6313730B2 (ja) * 2015-04-10 2018-04-18 タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited 異常検出システムおよび方法
CN105068998B (zh) * 2015-07-29 2017-12-15 百度在线网络技术(北京)有限公司 基于神经网络模型的翻译方法及装置
US10606846B2 (en) * 2015-10-16 2020-03-31 Baidu Usa Llc Systems and methods for human inspired simple question answering (HISQA)
JP6876061B2 (ja) * 2016-01-26 2021-05-26 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. ニューラル臨床パラフレーズ生成のためのシステム及び方法
US11113480B2 (en) * 2016-09-26 2021-09-07 Google Llc Neural machine translation systems
WO2018094295A1 (en) 2016-11-18 2018-05-24 Salesforce.Com, Inc. Adaptive attention model for image captioning
US10733380B2 (en) * 2017-05-15 2020-08-04 Thomson Reuters Enterprise Center Gmbh Neural paraphrase generator
EP3568852B1 (de) * 2017-12-15 2020-06-03 Google LLC Training und/oder verwendung eines encoder-modells zu bestimmen von responsive(n) aktion(en) für natürliche spracheingabe
US10585988B2 (en) * 2018-06-08 2020-03-10 Microsoft Technology Licensing, Llc Graph representations for identifying a next word
US12014143B2 (en) * 2019-02-25 2024-06-18 Disney Enterprises, Inc. Techniques for performing contextual phrase grounding

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Schuster, M., und Nakajima, K. Japanese and Korean voice search (Japanische und Koreanische Sprachsuche) beschrieben. 2012 IEEE International Conference on Acoustics, Speech and Signal Processing (Internationale Konferenz über Akustik-, Sprach- und Signalverarbeitung) (2012)
Sennrich, R., Haddow, B., und Birch, A. Neural machine translation of rare words with subword units (Neuronale Maschinenübersetzung von seltenen Wörtern mit Subworteinheiten). In Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Verfahren des 54. Jahrestreffens des Verbandes für Computerlinguistik) (2016)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108629743A (zh) * 2018-04-04 2018-10-09 腾讯科技(深圳)有限公司 图像的处理方法、装置、存储介质和电子装置
CN108984539A (zh) * 2018-07-17 2018-12-11 苏州大学 基于模拟未来时刻的翻译信息的神经机器翻译方法
CN108984539B (zh) * 2018-07-17 2022-05-17 苏州大学 基于模拟未来时刻的翻译信息的神经机器翻译方法
CN109033094A (zh) * 2018-07-18 2018-12-18 五邑大学 一种基于序列到序列神经网络模型的文言文白话文互译方法及系统
CN111401078A (zh) * 2020-03-17 2020-07-10 江苏省舜禹信息技术有限公司 神经网络文本翻译模型的运行方法、装置、设备、及介质
CN112364119A (zh) * 2020-12-01 2021-02-12 国家海洋信息中心 基于lstm编解码模型的海洋浮标轨迹预测方法
CN113095092A (zh) * 2021-04-19 2021-07-09 南京大学 通过建模协同关系提高非自回归神经机器翻译质量的方法
CN113095092B (zh) * 2021-04-19 2024-05-31 南京大学 通过建模协同关系提高非自回归神经机器翻译质量的方法
US11726750B1 (en) * 2021-11-17 2023-08-15 Outsystems—Software Em Rede, S.A. Constrained decoding and ranking of language models for code generation

Also Published As

Publication number Publication date
GB2556674A (en) 2018-06-06
SG10201707936TA (en) 2018-04-27
US20200034435A1 (en) 2020-01-30
CN107870902A (zh) 2018-04-03
CN113553862A (zh) 2021-10-26
JP2019537096A (ja) 2019-12-19
IE20170201A1 (en) 2018-04-04
US11113480B2 (en) 2021-09-07
GB201715516D0 (en) 2017-11-08
JP6870076B2 (ja) 2021-05-12
KR102323548B1 (ko) 2021-11-08
CN107870902B (zh) 2021-07-09
EP3516591A1 (de) 2019-07-31
US20210390271A1 (en) 2021-12-16
KR20190039817A (ko) 2019-04-15
DE102017122276A1 (de) 2018-03-29
WO2018058046A1 (en) 2018-03-29

Similar Documents

Publication Publication Date Title
DE202017105835U1 (de) Neuronale Maschinenübersetzungssysteme
DE102016125831B4 (de) Spracherkennungssystem und -verfahren
DE202017106363U1 (de) Neuronale Antwort-auf-Frage-Netze
DE102020205786B4 (de) Spracherkennung unter verwendung von nlu (natural language understanding)-bezogenem wissen über tiefe vorwärtsgerichtete neuronale netze
DE102018009243A1 (de) Abstrahierendes Zusammenfassen langer Dokumente unter Nutzung des Deep-Learning strukturierter Dokumente
DE102017125256A1 (de) Suche nach einer neuronalen Architektur
DE112017004397T5 (de) System und Verfahren zur Einstufung von hybriden Spracherkennungsergebnissen mit neuronalen Netzwerken
DE102019004300A1 (de) Verwendung eines dynamischen speichernetzwerks zum verfolgen digitaler dialogzustände und erzeugen von antworten
DE112019001533T5 (de) Erweiterung von trainingsdaten für die klassifikation von natürlicher sprache
DE102019000294A1 (de) Erstellen unternehmensspezifischer Wissensgraphen
DE102016125838A1 (de) Komprimierte rekurrente neuronale netzmodelle
DE112018005244T5 (de) Strukturieren von inkohärenten knoten durch überlagern eines basis-wissensgraphen
DE102017124264A1 (de) Bestimmen phonetischer Beziehungen
DE112020003365T5 (de) Überwachte kreuzmodale wiedergewinnung für zeitreihen und text unter verwendung von multimodalen triplettverlusten
DE102021004562A1 (de) Abwandlung von Szenengraphen auf Grundlage von Befehlen in natürlicher Sprache
DE112020003538T5 (de) Kreuzmodale wiedergewinnung mit wortüberlappungsbasiertem clustern
DE112020002886T5 (de) Kontextabhängiges data-mining
DE112020003909T5 (de) Verfahren zum multimodalen abrufen bzw. wiedergewinnen und clustern unter verwendung einer tiefen cca und aktiver paarweiser abfragen
DE112018005272T5 (de) Suchen von mehrsprachigen dokumenten auf grundlage einer extraktion der dokumentenstruktur
DE112013007333T5 (de) Mustererkennungsvorrichtung und Mustererkennungsverfahren
DE112018004140T5 (de) Abstraktion und übertragbarkeit auf eine absichtserkennung
DE112020001853T5 (de) Abänderung von trainingsdaten zum trainieren eines modells
DE112017007361T5 (de) Unterstützen von interaktivem textmining-prozess mit dialog in natürlicher sprache
US11481609B2 (en) Computationally efficient expressive output layers for neural networks
DE102023202711A1 (de) System und verfahren mit entitätstypklarstellung für feinkörnigen faktenwissenabruf

Legal Events

Date Code Title Description
R207 Utility model specification
R081 Change of applicant/patentee

Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US

Free format text: FORMER OWNER: GOOGLE INC., MOUNTAIN VIEW, CALIF., US

R082 Change of representative

Representative=s name: MAIKOWSKI & NINNEMANN PATENTANWAELTE PARTNERSC, DE

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017280000

Ipc: G06F0040400000

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0040400000

Ipc: G06F0040440000

R150 Utility model maintained after payment of first maintenance fee after three years
R151 Utility model maintained after payment of second maintenance fee after six years