DE102021116409A1 - Gemeinsame automatische spracherkennung und text-zu-sprache-umwandlung unter verwendung gegnerischer neuronaler netzwerke - Google Patents

Gemeinsame automatische spracherkennung und text-zu-sprache-umwandlung unter verwendung gegnerischer neuronaler netzwerke Download PDF

Info

Publication number
DE102021116409A1
DE102021116409A1 DE102021116409.5A DE102021116409A DE102021116409A1 DE 102021116409 A1 DE102021116409 A1 DE 102021116409A1 DE 102021116409 A DE102021116409 A DE 102021116409A DE 102021116409 A1 DE102021116409 A1 DE 102021116409A1
Authority
DE
Germany
Prior art keywords
text
neural network
audio
sample
tts
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.)
Pending
Application number
DE102021116409.5A
Other languages
English (en)
Inventor
Kaushik Balakrishnan
Praveen Narayanan
Francois Charette
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.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies 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 Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Publication of DE102021116409A1 publication Critical patent/DE102021116409A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L13/04Details of speech synthesis systems, e.g. synthesiser structure or memory management
    • G10L13/047Architecture of speech synthesisers
    • 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/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/24Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being the cepstrum
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Theoretical Computer Science (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Signal Processing (AREA)
  • Machine Translation (AREA)

Abstract

Diese Offenbarung stellt eine gemeinsame automatische Spracherkennung und Text-zu-Sprache-Umwandlung unter Verwendung gegnerischer neuronaler Netzwerke bereit. In dieser Schrift wird ein durchgängiges auf Deep Learning basierendes System offenbart, das sowohl ASR- als auch TTS-Probleme unter Verwendung ungepaarter Text- und Audioproben gemeinsam lösen kann. Ein gegnerisch trainierter Ansatz wird verwendet, um ein robusteres unabhängiges neuronales TTS-Netzwerk und ein neuronales ASR-Netzwerk zu generieren, die einzeln oder gleichzeitig eingesetzt werden können. Der Prozess zum Trainieren der neuronalen Netzwerke beinhaltet ein Generieren einer Audioprobe anhand einer Textprobe unter Verwendung des neuronalen TTS-Netzwerks und anschliel end ein Einspeisen der generierten Audioprobe in das neuronale ASR-Netzwerk zum Regenerieren des Texts. Die Differenz zwischen dem regenerierten Text und dem ursprünglichen Text wird als ein erster Verlust zum Trainieren der neuronalen Netzwerke verwendet. Ein ähnlicher Prozess wird für eine Audioprobe verwendet. Die Differenz zwischen der regenerierten Audioprobe und der ursprünglichen Audioprobe wird als ein zweiter Verlust verwendet. Ein Text- und ein Audiodiskriminator werden in ähnlicher Weise auf die Ausgabe des neuronalen Netzwerks angewendet, um zusätzliche Verluste für das Training zu generieren.

Description

  • GEBIET DER TECHNIK
  • Die Offenbarung betrifft im Allgemeinen Computerlinguistik und insbesondere automatische Spracherkennung und Text-zu-Sprache-Umwandlung.
  • ALLGEMEINER STAND DER TECHNIK
  • Zwei gebräuchliche und weit verbreitete Technologien in der Computerlinguistik sind die automatische Spracherkennung (Automatic Speech Recognition - ASR) und die Text-zu-Sprache(Text-to-speech - TTS)-Umwandlung. Es gibt jedoch kein gemeinsames System zum gleichzeitigen Trainieren und/oder Einsetzen beider Systeme. Derzeitige durchgängige auf Deep Learning basierende ASR- und TTS-Systeme erfordern gepaarte Proben (Text und Audio), die in ausreichenden Mengen für ein angemessenes Trainieren jedes der Systeme schwer zu erhalten sind.
  • KURZDARSTELLUNG
  • In einigen Ausführungsformen wird hierin eine Lösung für die vorstehenden Probleme unter Verwendung eines durchgängigen auf Deep Learning basierenden Systems offenbart, das sowohl ASR- als auch TTS-Probleme unter Verwendung ungepaarter Text- und Audioproben gemeinsam lösen kann. Das System beinhaltet einen gegnerisch trainierten Ansatz zum Generieren eines robusteren unabhängigen neuronalen TTS-Netzwerks und eines neuronalen ASR-Netzwerks, die einzeln oder gleichzeitig eingesetzt werden können.
  • Ein System aus einem oder mehreren Computern kann dazu konfiguriert sein, bestimmte Vorgänge oder Handlungen durchzuführen, indem auf dem System Software, Firmware, Hardware oder eine Kombination daraus installiert ist, die im Betrieb das System dazu veranlasst, die Handlungen durchzuführen. Ein oder mehrere Computerprogramme können dazu konfiguriert sein, bestimmte Vorgänge oder Handlungen durchzuführen, indem sie Anweisungen beinhalten, die bei Ausführung durch eine Datenverarbeitungsvorrichtung die Vorrichtung dazu veranlassen, die Handlungen durchzuführen. Ein allgemeiner Aspekt beinhaltet ein Verfahren zum Trainieren eines neuronalen Text-zu-Sprache(TTS)-Netzwerks und eines neuronalen Netzwerks zur automatischen Spracherkennung (ASR). Das Verfahren kann ein Empfangen einer ersten Textprobe als Eingabe in das neuronale TTS-Netzwerk und ein Generieren einer ersten Audioprobe, welche die erste Textprobe wiedergibt, unter Verwendung des neuronalen TTS-Netzwerks beinhalten. Die erste Audioprobenausgabe durch das neuronale TTS-Netzwerk kann in das neuronale ASR-Netzwerk eingespeist werden, das eine zweite Textprobe generieren kann, welche die erste Audioprobe wiedergibt. Der Verlust auf Grundlage der Differenz zwischen der ersten Textprobe (die in das neuronale TTS-Netzwerk eingespeist wird) und der zweiten Textprobe (die durch das neuronale ASR-Netzwerk ausgegeben wird) wird berechnet. Eine zweite Audioprobe wird in das neuronale ASR-Netzwerk eingegeben und eine dritte Textprobe, welche die zweite Audioprobe wiedergibt, wird durch das neuronale ASR-Netzwerk generiert. Die durch das neuronale ASR-Netzwerk generierte dritte Textprobe wird in das neuronale TTS-Netzwerk eingegeben, das eine dritte Audioprobe generiert, welche die dritte Textprobe wiedergibt. Ein zweiter Verlust auf Grundlage der Differenz zwischen der zweiten Audioprobe (die in das neuronale ASR-Netzwerk eingegeben wird) und der dritten Audioprobe (die durch das neuronale TTS-Netzwerk ausgegeben wird) wird berechnet. Das neuronale TTS-Netzwerk und das neuronale ASR-Netzwerk werden trainiert, indem Parameter jedes neuronalen Netzwerks auf Grundlage der berechneten Verluste eingestellt werden. Andere Ausführungsformen dieses Aspekts beinhalten entsprechende Computersysteme, Vorrichtungen und auf einer oder mehreren Computerspeichervorrichtungen aufgezeichnete Computerprogramme, die jeweils dazu konfiguriert sind, die Handlungen der Verfahren durchzuführen.
  • Umsetzungen können eines oder mehrere der folgenden Merkmale beinhalten. In einigen Ausführungsformen beinhaltet das neuronale TTS-Netzwerk einen Textcodierer und einen Audiodecodierer und beinhaltet das Trainieren des neuronalen TTS-Netzwerks ein Einstellen eines oder mehrerer Parameter des Textcodierers oder eines oder mehrerer Parameter des Audiodecodierers. In einigen Ausführungsformen beinhaltet das neuronale ASR-Netzwerk einen Audiocodierer und einen Textdecodierer und beinhaltet das Trainieren des neuronalen ASR-Netzwerks ein Einstellen eines oder mehrerer Parameter des Audiocodierers oder eines oder mehrerer Parameter des Textdecodierers.
  • In einigen Ausführungsformen kann das neuronale ASR-Netzwerk eine vierte Textprobe generieren, welche eine vierte Audioprobe wiedergibt, die als Eingabe in das neuronale ASR-Netzwerk empfangen wird. Die durch das ASR ausgegebene vierte Textprobe und eine fünfte Textprobe aus einer Textquelle werden einem Textdiskriminator bereitgestellt. Der Textdiskriminator kann einen dritten Verlust auf Grundlage der vierten Textprobe und der fünften Textprobe generieren. Das neuronale ASR-Netzwerk und/oder das neuronale TTS-Netzwerk können zumindest teilweise auf Grundlage des durch den Textdiskriminator berechneten dritten Verlusts trainiert werden. In einigen Ausführungsformen gibt der Textdiskriminator einen ersten Wert für eine gefälschte Textprobe (die durch das neuronale ASR-Netzwerk anhand einer Audioprobe generiert wird) und einen zweiten Wert für eine echte Textprobe (die anhand einer Textquelle generiert wird) aus.
  • In einigen Ausführungsformen kann das neuronale TTS-Netzwerk eine vierte Audioprobe generieren, welche eine vierte Textprobe wiedergibt, die als Eingabe in das neuronale TTS-Netzwerk empfangen wird. Die durch das neuronale TTS-Netzwerk ausgegebene vierte Audioprobe und eine fünfte Audioprobe aus einer Audioquelle werden einem Audiodiskriminator bereitgestellt. Der Audiodiskriminator kann einen dritten Verlust auf Grundlage der vierten Audioprobe und der fünften Audioprobe generieren. Das neuronale ASR-Netzwerk und/oder das neuronale TTS-Netzwerk können zumindest teilweise auf Grundlage des dritten Verlusts trainiert werden. In einigen Ausführungsformen ist der Audiodiskriminator dazu trainiert, einen ersten Wert für eine gefälschte Audioprobe (die durch das neuronale TTS-Netzwerk anhand einer Textprobe generiert wird) und einen zweiten Wert für eine echte Audioprobe (die anhand einer Audioquelle generiert wird) auszugeben.
  • In einigen Ausführungsformen wird das trainierte neuronale TTS-Netzwerk unabhängig von dem trainierten neuronalen ASR-Netzwerk eingesetzt. In einigen Ausführungsformen werden das trainierte neuronale TTS-Netzwerk und das trainierte neuronale ASR-Netzwerk gemeinsam in einer einzelnen Vorrichtung eingesetzt. Umsetzungen der beschriebenen Techniken können Hardware, ein Verfahren oder einen Prozess oder Computersoftware auf einem Medium, auf das ein Computer zugreifen kann, beinhalten.
  • Figurenliste
  • Ein tieferes Verständnis des Wesens und der Vorteile verschiedener Ausführungsformen kann unter Bezugnahme auf die folgenden Figuren erreicht werden. In den beigefügten Figuren können ähnliche Komponenten oder Merkmale das gleiche Bezugszeichen aufweisen. Ferner können verschiedene Komponenten der gleichen Art dadurch unterschieden werden, dass dem Bezugszeichen ein Strich und eine zweite Kennzeichnung folgt, die zwischen den ähnlichen Komponenten unterscheidet. Wenn in der Beschreibung nur das erste Bezugszeichen verwendet wird, gilt die Beschreibung für eine beliebige der ähnlichen Komponenten, die das gleiche erste Bezugszeichen aufweisen, unabhängig von dem zweiten Bezugszeichen.
    • 1 veranschaulicht ein Trainingssystem gemäl einigen Ausführungsformen.
    • 2 veranschaulicht eine Benutzervorrichtung mit einem eingesetzten neuronalen TTS-Netzwerk gemäl einigen Ausführungsformen.
    • 3 veranschaulicht eine Benutzervorrichtung mit einem eingesetzten neuronalen ASR-Netzwerk gemäl einigen Ausführungsformen.
    • 4 veranschaulicht das Trainingssystem während eines ersten Trainingszyklus gemäl einigen Ausführungsformen.
    • 5 veranschaulicht das Trainingssystem während eines zweiten Trainingszyklus gemäl einigen Ausführungsformen.
    • 6 veranschaulicht das Trainingssystem während eines dritten Trainingszyklus gemäl einigen Ausführungsformen.
    • 7 veranschaulicht das Trainingssystem während eines vierten Trainingszyklus gemäl einigen Ausführungsformen.
    • 8 veranschaulicht ein Verfahren zum gleichzeitigen gegnerischen Trainieren eines neuronalen ASR-Netzwerks und eines neuronalen TTS-Netzwerks gemäl einigen Ausführungsformen.
    • 9 veranschaulicht ein Computersystem gemäl einigen Ausführungsformen.
    • 10 veranschaulicht ein Cloud-Rechensystem gemäl einigen Ausführungsformen.
  • DETAILLIERTE BESCHREIBUNG
  • Wie vorstehend erörtert, werden in dieser Schrift ein System und Verfahren zum gemeinsamen Trainieren eines Text-zu-Sprache(TTS)-Systems (z. B. neuronalen Netzwerks) und eines Systems zur automatischen Spracherkennung (ASR) (z. B. neuronalen Netzwerks) offenbart. Das System erfordert keine gepaarten Text- und Audioproben für das Training und das Ergebnis ist ein robustes ASR-System und ein robustes TTS-System, die gemeinsam oder getrennt eingesetzt werden können. Der Prozess zum Trainieren beinhaltet vier Zyklen zum Trainieren von insgesamt 6 Komponenten (d. h. einem Textcodierer, einem Textdecodierer, einem Audiocodierer, einem Audiodecodierer, einem Textdiskriminator und einem Audiodiskriminator). Unter Verwendung einer Technik mit generativen gegnerischen Netzwerken können die Ausgabe des ASR-Systems und die Ausgabe des TTS-Systems als Eingaben füreinander und für Diskriminatoren verwendet werden, um das neuronale ASR-Netzwerk und das neuronale TTS-Netzwerk zu lehren, robust zu arbeiten, ohne dass gepaarte Proben erforderlich sind.
  • Nun wird auf 1 Bezug genommen, in der ein Trainingssystem 100 abgebildet ist. Das Trainingssystem 100 beinhaltet einen Textkorpus 105, einen Audiokorpus 110, eine Texteinbettungseinrichtung 115, eine Audioeinbettungseinrichtung 120, ein neuronales TTS-Netzwerk 125, ein neuronales ASR-Netzwerk 130, einen Audiodiskriminator 135, einen Textdiskriminator 140, ein Textverlust-Zyklus-1-Teilsystem 145, ein Audio-GAN-Verlust-Teilsystem 150, ein Text-GAN-Verlust-Teilsystem 155 und ein Audioverlust-Zyklus-2-Teilsystem 160. Wenngleich bestimmte Komponenten in dem Trainingssystem 100 abgebildet und beschrieben sind, können mehr oder weniger Komponenten in dem Trainingssystem 100 vorhanden sein, um Vorgänge durchzuführen, wie zum Beispiel Prozessoren und Speicher. Diese Komponenten sind zur einfacheren Beschreibung weggelassen. Ferner können einige Komponenten zusammengeführt oder in mehr Komponenten unterteilt sein, ohne vom Umfang dieser Offenbarung abzuweichen.
  • Der Textkorpus 105 beinhaltet Textproben, die aus Textquellen stammen. Zum Beispiel können Teile von Büchern oder ganze Bücher beinhaltet sein, wie zum Beispiel Krieg und Frieden von Leo Tolstoi und Illuminati von Dan Brown. Die Literaturformen dieser Proben können alle Genres und Schreibformen beinhalten. Des Weiteren können Textproben, die Beiträge auf Internetseiten beinhalten, und andere moderne Textkommunikationen beinhaltet sein.
  • Der Audiokorpus 110 beinhaltet Audioproben, die aus Audioquellen stammen. Zum Beispiel können Teile von Hörbüchern oder ganze Hörbücher beinhaltet sein, wie zum Beispiel Anna Karenina von Leo Tolstoi und Origin von Dan Brown. Die Audioproben können Musikproben beinhalten; Sprechproben können jedoch bevorzugt werden.
  • Die Texteinbettungseinrichtung 115 empfängt eine Textprobe und bettet die Textprobe in einen bekannten Vektorraum ein, sodass die Ausgabe der Texteinbettungseinrichtung 115 eine Texteinbettung ist. Die Texteinbettung kann zum Beispiel ein Vektor sein, der die Textprobe in dem bekannten Vektorraum wiedergibt.
  • Die Audioeinbettungseinrichtung 120 empfängt eine Audioprobe und bettet die Audioprobe in einen bekannten Vektorraum ein, sodass die Ausgabe der Audioeinbettungseinrichtung 120 eine Audioeinbettung ist. Die Audioeinbettung kann ein Mel-Spektrogramm sein, das die Audioprobe wiedergibt.
  • Das neuronale TTS-Netzwerk 125 ist ein Text-zu-Sprache-Netzwerk, das eine Texteinbettung als Eingabe empfängt und ein decodiertes Mel-Spektrogramm ausgibt, das die Texteinbettung wiedergibt. Das neuronale TTS-Netzwerk 125 beinhaltet einen Textcodierer und einen Audiodecodierer, wie unter Bezugnahme auf 2 ausführlicher erläutert wird.
  • Das neuronale ASR-Netzwerk 130 ist ein Netzwerk zur automatischen Spracherkennung (auch als System zur automatischen Stimmerkennung bekannt), das eine Audioeinbettung (z. B. ein Mel-Spektrogramm) als Eingabe empfängt und eine decodierte Texteinbettung ausgibt, welche die Audioeinbettung wiedergibt. Das neuronale ASR-Netzwerk 130 beinhaltet einen Audiocodierer und einen Textdecodierer, wie unter Bezugnahme auf 3 ausführlicher erläutert wird.
  • Der Audiodiskriminator 135 ist ein Diskriminierungssystem, das Mel-Spektrogramme als Eingaben verwendet. Er ist dazu trainiert, einen ersten Wert (z. B. „echt“, „1“ oder dergleichen) für ein Mel-Spektrogramm auszugeben, das anhand einer Audioprobe generiert wurde. Der Audiodiskriminator 135 ist ferner dazu trainiert, einen zweiten Wert (z. B. „gefälscht“, „0“ oder dergleichen) für ein Mel-Spektrogramm auszugeben, das über das neuronale TTS-Netzwerk 125 anhand von Text generiert wurde.
  • Der Textdiskriminator 140 ist ein Diskriminierungssystem, das Texteinbettungen als Eingaben verwendet. Er ist dazu trainiert, einen ersten Wert (z. B. „echt“, „1“ oder dergleichen) für eine Texteinbettung auszugeben, die anhand einer Textprobe generiert wurde. Der Textdiskriminator 140 ist ferner dazu trainiert, einen zweiten Wert (z. B. „gefälscht“, „0“ oder dergleichen) für eine Texteinbettung auszugeben, die über das neuronale ASR-Netzwerk 130 anhand einer Audioprobe generiert wurde.
  • Das Textverlust-Zyklus-1-Teilsystem 145 ist ein erstes Verlustberechnungsteilsystem, das im ersten Trainingszyklus verwendet wird. Wie unter Bezugnahme auf 4 genauer beschrieben wird, empfängt das Textverlust-Zyklus-1-Teilsystem 145 eine Texteinbettung anhand einer Textprobe, die durch die Texteinbettungseinrichtung 115 generiert wurde, sowie eine Texteinbettung, die anhand der Textprobe generiert wurde, nachdem die Textprobe durch die Texteinbettungseinrichtung 115, das neuronale TTS-Netzwerk 125 und das neuronale ASR-Netzwerk 130 geleitet wurde. Das Textverlust-Zyklus-1-Teilsystem 145 berechnet den Verlust zwischen den Texteinbettungen und verwendet das Ergebnis zum Trainieren der Komponenten des neuronalen TTS-Netzwerks 125 und des neuronalen ASR-Netzwerks 130. Dieser Prozess wird unter Bezugnahme auf 4 genauer beschrieben.
  • Das Audioverlust-Zyklus-2-Teilsystem 160 ist ein zweites Verlustberechnungsteilsystem, das im zweiten Trainingszyklus verwendet wird. Wie unter Bezugnahme auf 5 genauer beschrieben wird, empfängt das Audioverlust-Zyklus-2-Teilsystem 160 ein Mel-Spektrogramm anhand einer Audioprobe, das durch die Audioeinbettungseinrichtung 120 generiert wurde, sowie ein Mel-Spektrogramm, das anhand der Audioprobe generiert wurde, nachdem die Audioprobe durch die Audioeinbettungseinrichtung 120, das neuronale ASR-Netzwerk 130 und das neuronale TTS-Netzwerk 125 geleitet wurde. Das Audioverlust-Zyklus-2-Teilsystem 160 berechnet den Verlust zwischen den Mel-Spektrogrammen und verwendet das Ergebnis zum Trainieren der Komponenten des neuronalen TTS-Netzwerks 125 und des neuronalen ASR-Netzwerks 130. Dieser Prozess wird unter Bezugnahme auf 5 genauer beschrieben.
  • Das Text-GAN-Verlust-Teilsystem 155 ist ein drittes Verlustberechnungsteilsystem, das im dritten Trainingszyklus verwendet wird. Wie unter Bezugnahme auf 6 genauer beschrieben wird, empfängt das Text-GAN-Verlust-Teilsystem 155 die Ausgabe des Textdiskriminators 140 und die Texteinbettung von der Texteinbettungseinrichtung 115, bei der es sich um die „echte“ Texteinbettung handelt. Das Text-GAN-Verlust-Teilsystem 155 verwendet dann die Differenz zwischen den Ergebnissen des Textdiskriminators 140 und der Texteinbettung, um einen Verlust zu generieren, der zum Trainieren des Textdiskriminators 140 und der Komponenten des neuronalen ASR-Netzwerks 130 verwendet wird.
  • Das Audio-GAN-Verlust-Teilsystem 150 ist ein viertes Verlustberechnungsteilsystem, das im vierten Trainingszyklus verwendet wird. Wie unter Bezugnahme auf 7 genauer beschrieben wird, empfängt das Audio-GAN-Verlust-Teilsystem 150 die Ausgabe des Audiodiskriminators 135 und das Mel-Spektrogramm von der Audioeinbettungsvorrichtung 120, bei dem es sich um das „echte“ Mel-Spektrogramm handelt. Das Audio-GAN-Verlust-Teilsystem 150 verwendet dann die Differenz zwischen den Ergebnissen des Audiodiskriminators 135 und dem Mel-Spektrogramm, um einen Verlust zu generieren, der zum Trainieren des Audiodiskriminators 135 und der Komponenten des neuronalen TTS-Netzwerks 125 verwendet wird.
  • Eine genauere Beschreibung dessen, wie alle Komponenten des Trainingssystems 100 zusammen verwendet werden, wird in den Beschreibungen der folgenden Figuren bereitgestellt.
  • 2 veranschaulicht eine beispielhafte Benutzervorrichtung 200. Die Benutzervorrichtung 200 kann ein Computer, ein Smartphone, ein Tablet oder dergleichen eines Benutzers sein. Die Benutzervorrichtung 200 kann die Rechenvorrichtung 900 sein, wie unter Bezugnahme auf 9 beschrieben ist. Die Benutzervorrichtung 200 beinhaltet das neuronale TTS-Netzwerk 125 nach dem Training, das zum Bereitstellen von Text-zu-Sprache-Funktionalität eingesetzt wird. Die Benutzervorrichtung 200 beinhaltet ein Texteingabe-Teilsystem 205, ein UI-Teilsystem 210, einen Lautsprecher 225, die Texteinbettungseinrichtung 115 und das neuronale TTS-Netzwerk 125.
  • Das Texteingabe-Teilsystem 205 kann eine beliebige Eingabevorrichtung sein, einschliel lich zum Beispiel einer Tastatur, einer bildschirmbasierten Tastatur oder dergleichen. Zusätzlich kann der Benutzer Text aus einer Textquelle auswählen, um ihn als Eingabe über das Texteingabe-Teilsystem 205 bereitzustellen. Das UI-Teilsystem 210 stellt eine Schnittstelle bereit, über die der Benutzer Informationen an das neuronale TTS-Netzwerk 125 bereitstellt oder von diesem empfängt. Der Lautsprecher 225 kann eine beliebige geeignete Audioausgabevorrichtung sein, von welcher der Benutzer Töne hören kann.
  • Das neuronale TTS-Netzwerk 125 beinhaltet einen Textcodierer 215, der eine Texteinbettung als Eingabe verwendet und latenten Textcode ausgibt. Das neuronale TTS-Netzwerk 125 beinhaltet ferner einen Audiodecodierer 220, der den latenten Textcode als Eingabe verwendet und ein decodiertes Mel-Spektrogramm ausgibt. Wenngleich in dem neuronalen TTS-Netzwerk die beiden Komponenten eines Textcodierers 215 und eines Audiodecodierers 220 beschrieben sind, kann das neuronale TTS-Netzwerk 125 viele Schichten beinhalten, einschliel lich verborgener Schichten, in denen der Textcodierer 215 und der Audiodecodierer 220 beinhaltet sind. Zum Beispiel kann das neuronale TTS-Netzwerk 125 eine Eingabeschicht, eine Ausgabeschicht und eine oder mehrere verborgene Schichten beinhalten. In der beschriebenen Konfiguration empfängt das neuronale TTS-Netzwerk 125 eine Texteinbettung als Eingabe und gibt ein decodiertes Mel-Spektrogramm, das die Texteinbettung wiedergibt, als Ausgabe aus.
  • Dementsprechend kann der Benutzer Text in das Texteingabe-Teilsystem 205 eingeben. Das UI-Teilsystem 210 kann die Texteingabe empfangen und der Texteinbettungseinrichtung 115 bereitstellen. Die Texteinbettungseinrichtung 115 kann eine Texteinbettung generieren und die Texteinbettung als Eingabe in das neuronale TTS-Netzwerk 125 bereitstellen. Der Textcodierer 215 generiert anhand der Texteinbettung latenten Textcode und der Audiodecodierer 220 generiert anhand des latenten Textcodes das decodierte Mel-Spektrogramm. Das decodierte Mel-Spektrogramm wird an das UI-Teilsystem 210 ausgegeben, welches das decodierte Mel-Spektrogramm in eine Audioprobe umwandelt, das durch den Lautsprecher 225 ausgegeben werden kann, damit der Benutzer es hört. In einigen Ausführungsformen wandelt ein Umwandlungsmechanismus (nicht gezeigt) das decodierte Mel-Spektrogramm in eine Audioprobe um, die von dem UI-Teilsystem 210 für die Ausgabe unter Verwendung des Lautsprechers 225 verwendet wird.
  • 3 veranschaulicht eine beispielhafte Benutzervorrichtung 300. Die Benutzervorrichtung 300 kann in einigen Beispielen die gleiche wie die Benutzervorrichtung 200 sein und die Benutzervorrichtung 200 oder 300 kann sowohl das neuronale ASR-Netzwerk 130 als auch das neuronale TTS-Netzwerk 125 beinhalten. Die Benutzervorrichtung 300 kann ein Computer, ein Smartphone, ein Tablet oder dergleichen eines Benutzers sein. Die Benutzervorrichtung 300 kann die Rechenvorrichtung 900 sein, wie sie unter Bezugnahme auf 9 beschrieben ist. Die Benutzervorrichtung 300 beinhaltet das neuronale ASR-Netzwerk 130 nach dem Training, das zum Bereitstellen von Funktionalität zur automatischen Spracherkennung eingesetzt wird. Die Benutzervorrichtung 300 beinhaltet ein Audioeingabe-Teilsystem 305, ein UI-Teilsystem 310, eine Anzeige 325, die Audioeinbettungseinrichtung 120 und das neuronale ASR-Netzwerk 130.
  • Das Audioeingabe-Teilsystem 305 kann eine beliebige Eingabevorrichtung sein, einschließ lich beispielsweise eines Mikrofons, eines Audioauswahlsystems oder dergleichen. Zum Beispiel kann der Benutzer eine Audioprobe aus einer Audioquelle auswählen, um diese als Eingabe über das Audioeingabe-Teilsystem 305 bereitzustellen. Das UI-Teilsystem 310 stellt eine Schnittstelle bereit, über die der Benutzer Informationen an das neuronale ASR-Netzwerk 130 bereitstellt oder von diesem empfängt. Die Anzeige 325 kann eine beliebige geeignete Textausgabevorrichtung sein, auf welcher der Benutzer Text lesen kann.
  • Das neuronale ASR-Netzwerk 130 beinhaltet einen Audiocodierer 315, der ein Mel-Spektrogramm als Eingabe verwendet und latenten Audiocode ausgibt. Das neuronale ASR-Netzwerk 130 beinhaltet ferner einen Textdecodierer 320, der den latenten Audiocode als Eingabe verwendet und eine decodierte Texteinbettung ausgibt. Wenngleich in dem neuronalen ASR-Netzwerk die beiden Komponenten eines Audiocodierers 315 und eines Textdecodierers 320 beschrieben sind, kann das neuronale ASR-Netzwerk 125 viele Schichten beinhalten, einschließ lich verborgener Schichten, in denen der Audiocodierer 315 und der Textdecodierer 320 beinhaltet sind. Zum Beispiel kann das neuronale ASR-Netzwerk 130 eine Eingabeschicht, eine Ausgabeschicht und eine oder mehrere verborgene Schichten beinhalten. In der beschriebenen Konfiguration empfängt das neuronale ASR-Netzwerk 130 ein Mel-Spektrogramm als Eingabe und gibt eine decodierte Texteinbettung, die das Mel-Spektrogramm wiedergibt, als Ausgabe aus.
  • Dementsprechend kann der Benutzer eine Audioprobe in das Audioeingabe-Teilsystem 305 eingeben. Das UI-Teilsystem 310 kann die Audioeingabe empfangen und der Audioeinbettungseinrichtung 120 bereitstellen. Die Audioeinbettungseinrichtung 120 kann ein Mel-Spektrogramm generieren und das Mel-Spektrogramm als Eingabe in das neuronale ASR-Netzwerk 130 bereitstellen. Der Audiocodierer 315 generiert anhand des Mel-Spektrogramms latenten Audiocode und der Textdecodierer 320 generiert anhand des latenten Audiocodes die decodierte Texteinbettung. Die decodierte Texteinbettung wird an das UI-Teilsystem 310 ausgegeben, das die decodierte Texteinbettung in eine Textprobe umwandelt, die durch die Anzeige 325 ausgegeben werden kann, damit der Benutzer sie lesen kann. In einigen Ausführungsformen wird ein Umwandlungsmechanismus (nicht gezeigt) verwendet, um die Texteinbettung in eine Textprobe umzuwandeln, die dem UI-Teilsystem 310 zur Ausgabe durch die Anzeige 325 bereitgestellt wird.
  • Wenngleich das neuronale ASR-Netzwerk 130 der Darstellung in den 2 und 3 nach unabhängig von dem neuronalen TTS-Netzwerk 125 eingesetzt wird, können das neuronale ASR-Netzwerk 130 und das neuronale TTS-Netzwerk 125 auf einer einzigen Vorrichtung zur gleichzeitigen Verwendung zum Bereitstellen von sowohl TTS-Diensten als auch ASR-Diensten eingesetzt werden.
  • 4 veranschaulicht den ersten Zyklus des Trainings des neuronalen TTS-Netzwerks 125 und des neuronalen ASR-Netzwerks 130 in dem Trainingssystem 100. Eine Textprobe wird aus dem Textkorpus 105 ausgewählt und die Texteinbettungseinrichtung 115 generiert eine Texteinbettung, welche die Textprobe wiedergibt. Die Texteinbettung wird dem Textverlust-Zyklus-1-Teilsystem 145 und dem neuronalen TTS-Netzwerk 125 bereitgestellt.
  • Der erste Teil des ersten Trainingszyklus besteht darin, durch das neuronale TTS-Netzwerk 125 ein decodiertes Mel-Spektrogramm zu generieren, das die Texteinbettung wiedergibt. Der Textcodierer 215 generiert anhand der Texteinbettung latenten Textcode und der Audiodecodierer 220 generiert anhand des latenten Textcodes das decodierte Mel-Spektrogramm.
  • Der zweite Teil des ersten Trainingszyklus besteht darin, durch das neuronale ASR-Netzwerk 130 eine decodierte Texteinbettung zu generieren, die das decodierte Mel-Spektrogramm wiedergibt. Dies wird erreicht, indem die Ausgabe des neuronalen TTS-Netzwerks 125 in die Eingabe des neuronalen ASR-Netzwerks 130 eingespeist wird. Dementsprechend wird das decodierte Mel-Spektrogramm von dem neuronalen TTS-Netzwerk 125 in das neuronale ASR-Netzwerk 130 eingespeist. Der Audiocodierer 315 generiert anhand des decodierten Mel-Spektrogramms latenten Audiocode und der Textdecodierer 320 generiert anhand des latenten Audiocodes eine decodierte Texteinbettung. Die decodierte Texteinbettung wird in das Textverlust-Zyklus-1-Teilsystem eingespeist.
  • Die decodierte Texteinbettung, die durch das Leiten der Textprobe durch das neuronale TTS-Netzwerk 125 und das neuronale ASR-Netzwerk 130 generiert wird, würde mit der Texteinbettung von der Texteinbettungseinrichtung 115 übereinstimmen, wenn das neuronale TTS-Netzwerk 125 und das neuronale ASR-Netzwerk 130 perfekt funktionieren würden. Das Ergebnis ähnelt jedoch ein wenig dem Kinderspiel „Stille Post“. Nachdem die gleichen Informationen von einer Person an die nächste weitergegeben wurden, indem sie in das Ohr der nächsten Person in der Reihe geflüstert wurden, können einige der Details verloren gegangen sein und kann das Endergebnis ein unverständlicher unsinniger Satz sein. Dementsprechend vergleicht das Textverlust-Zyklus-1-Teilsystem die decodierte Texteinbettung mit der Texteinbettung von der Texteinbettungseinrichtung 115, um einen ersten Zyklusverlust zu generieren. Dieser Zyklus kann während des Trainings viele Male durchgeführt werden. Der erste Zyklusverlust kann Folgendes sein: L Zyklus 1 = E [ | X Text P Text | ]
    Figure DE102021116409A1_0001
  • In der vorstehenden Gleichung ist XText eine Probe aus einer Textquelle, wie etwa eine Textprobe aus dem Textkorpus 105. PText ist die Ausgabe, die erhalten wird, nachdem XText durch einen vollständigen Zyklus des Systems, welches das neuronale TTS-Netzwerk 125 und das neuronale ASR-Netzwerk 130 beinhaltet, verarbeitet wurde.
  • 5 veranschaulicht den zweiten Zyklus des Trainings des neuronalen TTS-Netzwerks 125 und des neuronalen ASR-Netzwerks 130 in dem Trainingssystem 100. Der zweite Zyklus ist dem ersten Zyklus sehr ähnlich, beginnt jedoch stattdessen mit einer Audioprobe. Eine Audioprobe wird aus dem Audiokorpus 110 ausgewählt und die Audioeinbettungseinrichtung 120 generiert ein Mel-Spektrogramm, das die Audioprobe wiedergibt. Das Mel-Spektrogramm wird dem Audioverlust-Zyklus-2-Teilsystem 160 und dem neuronalen ASR-Netzwerk 130 bereitgestellt.
  • Der erste Teil des zweiten Trainingszyklus besteht darin, durch das neuronale ASR-Netzwerk 130 eine decodierte Texteinbettung zu generieren, die das Mel-Spektrogramm wiedergibt. Der Audiocodierer 315 generiert anhand des Mel-Spektrogramms latenten Audiocode und der Textdecodierer 320 generiert anhand des latenten Audiocodes die decodierte Texteinbettung.
  • Der zweite Teil des zweiten Trainingszyklus besteht darin, durch das neuronale TTS-Netzwerk 125 ein decodiertes Mel-Spektrogramm zu generieren, das die decodierte Texteinbettung wiedergibt. Dies wird erreicht, indem die Ausgabe des neuronalen ASR-Netzwerks 130 in die Eingabe des neuronalen TTS-Netzwerks 125 eingespeist wird. Dementsprechend wird die decodierte Texteinbettung von dem neuronalen ASR-Netzwerk 130 in das neuronale TTS-Netzwerk 125 eingespeist. Der Textcodierer 215 generiert anhand der decodierten Texteinbettung latenten Textcode und der Audiodecodierer 220 generiert anhand des latenten Textcodes ein decodiertes Mel-Spektrogramm. Das decodierte Mel-Spektrogramm wird in das Audioverlust-Zyklus-2-Teilsystem 160 eingespeist.
  • Das decodierte Mel-Spektrogramm, das durch das Leiten der Audioprobe durch das neuronale ASR-Netzwerk 130 und das neuronale TTS-Netzwerk 125 generiert wird, würde mit dem Mel-Spektrogramm von der Audioeinbettungseinrichtung 120 übereinstimmen, wenn das neuronale TTS-Netzwerk 125 und das neuronale ASR-Netzwerk 130 perfekt funktionieren würden. Das Endergebnis kann jedoch wie in Zyklus 1 eine unverständliche unsinnige Probe sein. Dementsprechend vergleicht das Audioverlust-Zyklus-2-Teilsystem 160 das decodierte Mel-Spektrogramm mit dem Mel-Spektrogramm von der Audioeinbettungseinrichtung 120, um einen zweiten Zyklusverlust zu generieren. Dieser Zyklus kann ebenfalls während des Trainings viele Male durchgeführt werden. Der zweite Zyklusverlust kann Folgendes sein: L Zyklus 2 = E [ | X Audio P Audio | ]
    Figure DE102021116409A1_0002
  • In der vorstehenden Gleichung ist XAudio eine Probe aus einer Audioquelle, wie etwa eine Audioprobe aus dem Audiokorpus 110. PAudio ist die Ausgabe, die erhalten wird, nachdem XAudio durch einen vollständigen Zyklus des Systems, welches das neuronale ASR-Netzwerk 130 und das neuronale TTS-Netzwerk 125 beinhaltet, verarbeitet wurde.
  • 6 veranschaulicht den dritten Zyklus des Trainings des neuronalen TTS-Netzwerks 125 und des neuronalen ASR-Netzwerks 130 in dem Trainingssystem 100. In dem dritten Zyklus werden eine Textprobe aus dem Textkorpus 105 und eine Audioprobe aus dem Audiokorpus 110 ausgewählt. Die Proben müssen nicht miteinander in Beziehung stehen.
  • Die Audioprobe wird der Audioeinbettungseinrichtung 120 bereitgestellt, um ein Mel-Spektrogramm zur Eingabe in das neuronale ASR-Netzwerk 130 zu generieren. Der Audiocodierer 315 generiert latenten Audiocode, der das Mel-Spektrogramm wiedergibt, und der Textdecodierer 320 generiert anhand des latenten Audiocodes die decodierte Texteinbettung. Die decodierte Texteinbettung wird in den Textdiskriminator 140 eingespeist.
  • Die Textprobe aus dem Textkorpus 105 wird der Texteinbettungseinrichtung 115 bereitgestellt. Die Texteinbettungseinrichtung 115 generiert eine Texteinbettung und stellt die Texteinbettung dem Textdiskriminator 140 und dem Text-GAN-Verlust-Teilsystem 155 bereit.
  • Der Textdiskriminator 140 ist dazu trainiert, einen ersten Wert (z. B. „echt“, „1“ oder dergleichen) für Texteinbettungen auszugeben, die von der Texteinbettungseinrichtung 115 anhand einer Textquelle generiert wurden. Der Textdiskriminator 140 ist zudem dazu trainiert, einen zweiten Wert (z. B. „gefälscht“, „0“ oder dergleichen) für decodierte Texteinbettungen auszugeben, die durch das neuronale ASR-Netzwerk 130 generiert wurden. Der Textdiskriminator 140 generiert einen Ausgabewert, welcher der Texteinbettung von der Texteinbettungseinrichtung 115 zugeordnet ist, und für die decodierte Texteinbettung. Die Ausgabewerte werden dem Text-GAN-Verlust-Teilsystem 155 bereitgestellt.
  • Das Text-GAN-Verlust-Teilsystem 155 verwendet die Texteinbettungsinformationen von der Texteinbettungseinrichtung 115, um zu bestimmen, welche Texteinbettung „echt“ (d. h. von der Texteinbettungseinrichtung 115) und welche „gefälscht“ (d. h. von dem neuronalen ASR-Netzwerk 130) ist. Das Text-GAN-Verlust-Teilsystem 155 kann bestimmen, ob der Textdiskriminator 140 korrekte Bestimmungen getroffen hat. Die durch das Text-GAN-Verlust-Teilsystem 155 berechneten Verluste können verwendet werden, um den Textdiskriminator 140 und das neuronale ASR-Netzwerk 130 zu trainieren.
  • Der erste Verlust für den Textdiskriminator 140 wird verwendet, um den Textdiskriminator 140 zu trainieren. Der erste Verlust kann wie folgt beschrieben werden: L T e x t d i s k r i m i n a t o r = E e c h t [ log D ( X e c h t e r T e x t ) ] E g e f a ¨ l s c h t [ log ( 1 D ( X g e f a ¨ l s c h t e r T e x t ) ) ]
    Figure DE102021116409A1_0003
  • In der vorstehenden Gleichung ist Xechter Text eine Probe aus einer Textquelle, wie etwa eine Textprobe aus dem Textkorpus 105. Xgefälschter Text ist die Ausgabe, die erhalten wird, nachdem eine Audioprobe (z. B. aus dem Audiokorpus 110) durch das neuronale ASR-Netzwerk 130 verarbeitet wurde.
  • Der zweite durch das Text-GAN-Verlust-Teilsystem 155 berechnete Verlust wird verwendet, um das neuronale ASR-Netzwerk 130 zu trainieren. Der zweite Verlust kann wie folgt beschrieben werden: L T e x t g e n e r a t o r = E g e f a ¨ l s c h t [ log ( 1 D ( X g e f a ¨ l s c h t e r T e x t ) ) ]
    Figure DE102021116409A1_0004
  • 7 veranschaulicht den vierten Zyklus des Trainings des neuronalen TTS-Netzwerks 125 und des neuronalen ASR-Netzwerks 130 in dem Trainingssystem 100. In dem vierten Zyklus werden eine Textprobe aus dem Textkorpus 105 und eine Audioprobe aus dem Audiokorpus 110 ausgewählt. Die Proben müssen nicht miteinander in Beziehung stehen.
  • Die Audioprobe wird der Audioeinbettungseinrichtung 120 bereitgestellt, um ein Mel-Spektrogramm zur Eingabe in den Audiodiskriminator 135 und das Audio-GAN-Verlust-Teilsystem 150 zu generieren.
  • Die Textprobe aus dem Textkorpus 105 wird der Texteinbettungseinrichtung 115 bereitgestellt. Die Texteinbettungseinrichtung 115 generiert eine Texteinbettung und stellt die Texteinbettung dem neuronalen TTS-Netzwerk 125 bereit. Der Textcodierer 215 generiert latenten Textcode, der die Texteinbettung wiedergibt, und der Audiodecodierer 220 generiert anhand des latenten Textcodes das decodierte Mel-Spektrogramm. Das decodierte Mel-Spektrogramm wird in den Audiodiskriminator 135 eingespeist.
  • Der Audiodiskriminator 135 ist dazu trainiert, einen ersten Wert (z. B. „echt“, „1“ oder dergleichen) für Mel-Spektrogramme auszugeben, die von der Audioeinbettungseinrichtung 120 anhand einer Audioquelle generiert wurden. Der Audiodiskriminator 135 ist zudem dazu trainiert, einen zweiten Wert (z. B. „gefälscht“, „0“ oder dergleichen) für decodierte Mel-Spektrogramme auszugeben, die durch das neuronale TTS-Netzwerk 125 generiert wurden. Der Audiodiskriminator 135 generiert einen Ausgabewert, der dem Mel-Spektrogramm von der Audioeinbettungseinrichtung 120 zugeordnet ist, und für das decodierte Mel-Spektrogramm. Die Ausgabewerte werden dem Audio-GAN-Verlust-Teilsystem 150 bereitgestellt.
  • Das Audio-GAN-Verlust-Teilsystem 150 verwendet die Mel-Spektrogramminformationen von der Audioeinbettungsvorrichtung 120, um zu bestimmen, welches Mel-Spektrogramm „echt“ (d. h. von der Audioeinbettungseinrichtung 120) und welches „gefälscht“ (d. h. von dem neuronalen TTS-Netzwerk 125) ist. Das Audio-GAN-Verlust-Teilsystem 150 kann bestimmen, ob der Audiodiskriminator 135 korrekte Bestimmungen getroffen hat. Die durch das Audio-GAN-Verlust-Teilsystem 150 berechneten Verluste können verwendet werden, um den Audiodiskriminator 135 und das neuronale TTS-Netzwerk 125 zu trainieren.
  • Der erste Verlust für den Audiodiskriminator 135 wird verwendet, um den Audiodiskriminator 135 zu trainieren. Der erste Verlust kann wie folgt beschrieben werden: L A u d i o d i s k r i m i n a t o r = E e c h t [ log D ( X e c h t e A u d i o p r o b e ) ] E g e f a ¨ l s c h t [ log 1 D ( X g e f a ¨ l s c h t e A u d i o p r o b e ) ) ]
    Figure DE102021116409A1_0005
  • In der vorstehenden Gleichung ist Xechte Audioprobe eine Probe aus einer Audioquelle, wie etwa eine Audioprobe aus dem Audiokorpus 110. Xgefälschte Audioprobe ist die Ausgabe, die erhalten wird, nachdem eine Textprobe (z. B. aus dem Textkorpus 105) durch das neuronale TTS-Netzwerk 125 verarbeitet wurde.
  • Der zweite durch das Audio-GAN-Verlust-Teilsystem 150 berechnete Verlust wird verwendet, um das neuronale TTS-Netzwerk 125 zu trainieren. Der zweite Verlust kann wie folgt beschrieben werden: L A u d i o g e n e r a t o r = E g e f a ¨ l s c h t [ log 1 D ( X g e f a ¨ l s c h t e A u d i o p r o b e ) ) ]
    Figure DE102021116409A1_0006
  • Der Textdiskriminator 140 wird durch Minimieren einer LTextdiskriminator-Verlustfunktion trainiert. Die Verlustfunktion wird minimiert, indem der Verlustwert dem Textdiskriminator 140 bereitgestellt wird und Ausgabeparameter des Textdiskriminators 140 auf Grundlage des Verlustwerts so eingestellt werden, dass die Verlustfunktion bei zukünftigen Ausführungen des Textdiskriminators 140 minimiert wird. Gleichermal en wird der Audiodiskriminator 135 durch Minimieren einer LAudiodiskriminator-- Verlustfunktion trainiert. Die Verlustfunktion für den Audiodiskriminator 135 wird minimiert, indem der Verlustwert dem Audiodiskriminator 135 bereitgestellt wird und Ausgabeparameter des Audiodiskriminators 135 auf Grundlage des Verlustwerts so eingestellt werden, dass die Verlustfunktion bei zukünftigen Ausführungen des Audiodiskriminators 135 minimiert wird. Der Textcodierer 215, der Textdecodierer 320, der Audiocodierer 315 und der Audiodecodierer 220 werden durch Minimieren der gesamten generativen und Zyklusverluste trainiert. L gesamt = L Zyklus 1 + L Zyklus 2 + L Textgenerator + L Audiogenerator
    Figure DE102021116409A1_0007
  • Die gesamten generativen Verluste und Zyklusverluste werden minimiert, indem die Verlustwerte wieder in die entsprechenden neuronalen Netzwerke eingespeist und verwendet werden, um Ausgabeparameter so einzustellen, dass zukünftige Ausführungen der neuronalen Netzwerke den Verlustwert minimieren. Zum Beispiel werden LZyklus 1 und LZyklus 2 dem neuronalen TTS-Netzwerk 125 (d. h. dem Textcodierer 215 und dem Audiodecodierer 220) und dem neuronalen ASR-Netzwerk 130 (d. h. dem Audiocodierer 315 und dem Textdecodierer 320) bereitgestellt, um Ausgabeparameter jedes neuronalen Netzwerks so einzustellen, dass die Verluste in zukünftigen Ausführungen der neuronalen Netzwerke minimiert werden. LTextgenerator wird ebenfalls wieder in das neuronale ASR-Netzwerk 130 eingespeist und LAudiogenerator wird wieder in das neuronale TTS-Netzwerk 125 eingespeist, um Ausgabeparameter so einzustellen, dass der Verlust miniert wird.
  • Die GAN-Verluste helfen dabei, die generative Fähigkeit des Textcodierers 215, des Audiocodierers 315, des Textdecodierers 320 und des Audiodecodierers 220 insgesamt zu verbessern. Dies liegt daran, dass das neuronale TTS-Netzwerk 125 und das neuronale ASR-Netzwerk 130 nicht nur realistische Texteinbettungen und Mel-Spektrogramme erzeugen müssen, sondern auch versuchen müssen, die jeweiligen Diskriminatoren zu täuschen, wie es in die Verlustfunktionen eingebaut ist. Demnach werden nicht nur die Zyklusverluste, sondern auch die generativen Verluste (LTextgenerator und LAudiogenerator) zum Trainieren des Textcodierers 215, des Audiocodierers 315, des Textdecodierers 320 und des Audiodecodierers 220 genutzt. Dies verbessert die Gesamtausgabequalität sowohl des neuronalen ASR-Netzwerks 130 als auch des neuronalen TTS-Netzwerks 125.
  • 8 veranschaulicht ein Verfahren 800 zum Trainieren eines neuronalen TTS-Netzwerks und eines neuronalen ASR-Netzwerks. Das Verfahren 800 kann durch ein Rechensystem, wie etwa das unter Bezugnahme auf 1 beschriebene Trainingssystem, durchgeführt werden. Das Verfahren 800 beginnt bei Schritt 805, bei dem das Trainingssystem eine erste Textprobe als Eingabe in ein neuronales TTS-Netzwerk empfängt. Zum Beispiel kann eine Textprobe aus dem Textkorpus 105 erhalten werden. Die Texteinbettungseinrichtung 115 kann eine Texteinbettung der Textprobe generieren und die Texteinbettung dem neuronalen TTS-Netzwerk 125 bereitstellen.
  • Bei Schritt 810 kann das neuronale TTS-Netzwerk eine erste Audioprobe generieren, welche die erste Textprobe wiedergibt. Zum Beispiel kann das neuronale TTS-Netzwerk 125 die Textprobe von der Texteinbettungseinrichtung 115 empfangen. Der Textcodierer 215 des neuronalen TTS-Netzwerks kann anhand der Texteinbettung latenten Textcode generieren und der Audiodecodierer 220 kann anhand des latenten Textcodes ein decodiertes Mel-Spektrogramm generieren. Das decodierte Mel-Spektrogramm kann die Audioprobe sein, welche die Textprobe wiedergibt.
  • Bei Schritt 815 kann das neuronale ASR-Netzwerk eine zweite Textprobe generieren, welche die erste Audioprobe wiedergibt. Zum Beispiel kann das decodierte Mel-Spektrogramm von dem neuronalen TTS-Netzwerk 125 dem neuronalen ASR-Netzwerk 130 bereitgestellt werden. Der Audiocodierer 315 kann anhand des Mel-Spektrogramms latenten Audiocode generieren und der Textdecodierer 320 kann anhand des latenten Audiocodes eine decodierte Texteinbettung generieren. Die decodierte Texteinbettung kann die zweite Textprobe sein.
  • Bei Schritt 820 kann das Trainingssystem einen ersten Verlust auf Grundlage der Differenz zwischen der ersten Textprobe und der zweiten Textprobe berechnen. Zum Beispiel kann das Textverlust-Zyklus-1-Teilsystem den ersten Verlust auf Grundlage der Differenz zwischen der Texteinbettung, die durch die Texteinbettungseinrichtung 115 anhand der aus dem Textkorpus 105 erhaltenen Textprobe erstellt wird, und der decodierten Texteinbettung, die durch das neuronale ASR-Netzwerk 130 anhand des decodierten Mel-Spektrogramms erstellt wird, das durch das neuronale TTS-Netzwerk 125 anhand der ursprünglichen Textprobe generiert wurde, berechnen.
  • Bei Schritt 825 kann das Trainingssystem eine zweite Audioprobe als Eingabe in das neuronale ASR-Netzwerk empfangen. Zum Beispiel kann eine Audioprobe aus dem Audiokorpus 110 erhalten werden. Die Audioeinbettungseinrichtung 120 kann ein Mel-Spektrogramm der Audioprobe generieren und das Mel-Spektrogramm dem neuronalen ASR-Netzwerk 130 bereitstellen.
  • Bei Schritt 830 kann das neuronale ASR-Netzwerk eine dritte Textprobe generieren, welche die zweite Audioprobe wiedergibt. Zum Beispiel kann das Mel-Spektrogramm von der Audioeinbettungseinrichtung 120 durch den Audiocodierer 315 verwendet werden, um latenten Audiocode zu generieren. Der Textdecodierer 320 kann eine decodierte Texteinbettung des latenten Audiocodes generieren. Die decodierte Texteinbettung kann die dritte Textprobe sein.
  • Bei Schritt 835 kann das neuronale TTS-Netzwerk eine dritte Audioprobe generieren, welche die dritte Textprobe wiedergibt. Zum Beispiel kann die decodierte Texteinbettung in das neuronale TTS-Netzwerk 125 eingespeist werden. Der Textcodierer 215 kann anhand der decodierten Texteinbettung latenten Textcode generieren und der Audiodecodierer 220 kann anhand des latenten Textcodes ein decodiertes Mel-Spektrogramm generieren. Das decodierte Mel-Spektrogramm kann die dritte Audioprobe sein.
  • Bei Schritt 840 kann das Trainingssystem einen zweiten Verlust auf Grundlage der Differenz zwischen der zweiten Audioprobe und der dritten Audioprobe berechnen. Zum Beispiel kann das Audioverlust-Zyklus-2-Teilsystem 160 den zweiten Verlust auf Grundlage der Differenz zwischen dem Mel-Spektrogramm, das durch die Audioeinbettungseinrichtung 120 anhand der aus dem Audiokorpus 110 erhaltenen Audioprobe erstellt wird, und dem decodierten Mel-Spektrogramm, das durch das neuronale TTS-Netzwerk 125 anhand der decodierten Texteinbettung erstellt wird, die durch das neuronale ASR-Netzwerk 130 anhand der ursprünglichen Audioprobe generiert wurde, berechnen.
  • Bei Schritt 845 kann das Trainingssystem das neuronale TTS-Netzwerk trainieren, indem Parameter des neuronalen TTS-Netzwerks zumindest teilweise auf Grundlage des ersten und des zweiten Verlusts eingestellt werden. Zum Beispiel kann das Trainingssystem den ersten und den zweiten Verlust wieder in das neuronale TTS-Netzwerk 125 einspeisen. Das neuronale TTS-Netzwerk 125 kann Parameter des Textcodierers 215 und des Audiodecodierers 220 so einstellen, dass die Verlustwerte aus den Verlustfunktionen bei zukünftigen Ausführungen des neuronalen TTS-Netzwerks 125 minimiert werden.
  • Bei Schritt 850 kann das Trainingssystem das neuronale ASR-Netzwerk trainieren, indem Parameter des neuronalen ASR-Netzwerks zumindest teilweise auf Grundlage des ersten und des zweiten Verlusts eingestellt werden. Zum Beispiel kann das Trainingssystem den ersten und den zweiten Verlust wieder in das neuronale ASR-Netzwerk 130 einspeisen. Das neuronale ASR-Netzwerk 130 kann Parameter des Audiocodierers 315 und des Textdecodierers 320 so einstellen, dass die Verlustwerte aus den Verlustfunktionen bei zukünftigen Ausführungen des neuronalen ASR-Netzwerks 130 minimiert werden.
  • Beispiele für Rechenumgebungen zum Umsetzen bestimmter Ausführungsformen
  • Ein beliebiges geeignetes Rechensystem oder eine Gruppe von Rechensystemen kann verwendet werden, um die in dieser Schrift beschriebenen Vorgänge durchzuführen. Zum Beispiel veranschaulicht 10 ein Cloud-Rechensystem 1000, das zumindest einen Teil der Funktionalität des Trainingssystems 100 bieten kann. 9 bildet ein Beispiel für eine Rechenvorrichtung 900 ab, die zumindest einen Teil des Trainingssystems 100 darstellen kann. Die Umsetzung der Rechenvorrichtung 900 könnte für eines oder mehrere der in 1 abgebildeten Teilsysteme verwendet werden. In einer Ausführungsform kombiniert ein einzelnes Trainingssystem 100, das Vorrichtungen ähnlich den in 9 abgebildeten (z. B. einen Prozessor, einen Speicher usw.) aufweist, den einen oder die mehreren Vorgänge und Datenspeicher, die in 1 als separate Teilsysteme abgebildet sind.
  • 9 veranschaulicht ein Blockdiagramm eines Beispiels für ein Computersystem 900. Das Computersystem 900 kann ein beliebiger der hierin beschriebenen Computer sein, einschliel lich beispielsweise des Trainingssystems 100, der Benutzervorrichtung 200, der Benutzervorrichtung 300 und dergleichen. Die Rechenvorrichtung 900 kann zum Beispiel ein integrierter Computer, ein Laptop-Computer, ein Desktop-Computer, ein Tablet, ein Server, ein Smartphone oder eine andere elektronische Vorrichtung sein oder einen solchen/ein solches/eine solche beinhalten.
  • Die Rechenvorrichtung 900 kann einen Prozessor 940 beinhalten, der über einen Bus 905 eine Schnittstelle mit anderer Hardware bildet. Ein Speicher 910, der ein beliebiges geeignetes physisches (und nichttransitorisches) computerlesbares Medium beinhalten kann, wie etwa RAM, ROM, EEPROM oder dergleichen, kann Programmkomponenten (z. B. Programmcode 915) verkörpern, die den Betrieb der Rechenvorrichtung 900 konfigurieren. Der Speicher 910 kann den Programmcode 915, Programmdaten 917 oder beides speichern. In einigen Beispielen kann die Rechenvorrichtung 900 Eingabe-/Ausgabe(„E/A“)-Schnittstellenkomponenten 925 (z. B. zum Bilden einer Schnittstelle mit einer Anzeige 945, einer Tastatur, einer Maus und dergleichen) und zusätzlichen Datenspeicher 930 beinhalten.
  • Die Rechenvorrichtung 900 führt den Programmcode 915 aus, der den Prozessor 940 dazu konfiguriert, einen oder mehrere der in dieser Schrift beschriebenen Vorgänge durchzuführen. Beispiele für den Programmcode 915 beinhalten in verschiedenen Ausführungsformen die Texteinbettungseinrichtung 115, das neuronale TTS-Netzwerk 125, den Audiodiskriminator 135, die Audioeinbettungseinrichtung 120, das neuronale ASR-Netzwerk 130, den Textdiskriminator 140, das Textverlust-Zyklus-1-Teilsystem 145, das Audio-GAN-Verlust-Teilsystem 150, das Text-GAN-Verlust-Teilsystem 155, das Audioverlust-Zyklus-2-Teilsystem 160 oder beliebige andere geeignete Systeme oder Teilsysteme, die einen oder mehrere in dieser Schrift beschriebene Vorgänge durchführen (z. B. ein oder mehrere Entwicklungssysteme zum Konfigurieren einer interaktiven Benutzerschnittstelle). Der Programmcode 915 kann sich in dem Speicher 910 oder einem beliebigen geeigneten computerlesbaren Medium befinden und kann durch den Prozessor 940 oder einen beliebigen anderen geeigneten Prozessor ausgeführt werden.
  • Die Rechenvorrichtung 900 kann Programmdaten 917 generieren oder empfangen, indem sie den Programmcode 915 ausführt. Zum Beispiel sind Textproben, Audioproben, die Daten im Textkorpus 105, die Daten im Audiokorpus 110 und so weiter alle Beispiele für Programmdaten 917, die während der Ausführung des Programmcodes 915 durch die Rechenvorrichtung 900 verwendet werden können.
  • Die Rechenvorrichtung 900 kann Netzwerkkomponenten 920 beinhalten. Die Netzwerkkomponenten 920 können eine oder mehrere beliebige Komponenten darstellen, die eine Netzwerkverbindung ermöglichen. In einigen Beispielen können die Netzwerkkomponenten 920 eine drahtlose Verbindung ermöglichen und drahtlose Schnittstellen, wie etwa IEEE 802.11, Bluetooth oder Funkschnittstellen zum Zugreifen auf Mobiltelefonnetzwerke (z. B. einen Sendeempfänger/eine Antenne zum Zugreifen auf CDMA, GSM, UMTS oder ein anderes mobiles Kommunikationsnetzwerk) beinhalten. In anderen Beispielen können die Netzwerkkomponenten 920 drahtgebunden sein und Schnittstellen, wie etwa Ethernet, USB oder IEEE 1394, beinhalten.
  • Wenngleich 9 eine einzelne Rechenvorrichtung 900 mit einem einzelnen Prozessor 940 abbildet, kann das System eine beliebige Anzahl an Rechenvorrichtungen 900 und eine beliebige Anzahl an Prozessoren 940 beinhalten. Zum Beispiel können mehrere Rechenvorrichtungen 900 oder mehrere Prozessoren 940 über ein drahtgebundenes oder drahtloses Netzwerk (z. B. ein Weitverkehrsnetzwerk, ein lokales Netzwerk oder das Internet) verteilt sein. Die mehreren Rechenvorrichtungen 900 oder mehreren Prozessoren 940 können beliebige der Schritte der vorliegenden Offenbarung einzeln oder in Abstimmung miteinander durchführen.
  • In einigen Ausführungsformen kann die durch das Trainingssystem 100 bereitgestellte Funktionalität als Cloud-Dienste durch einen Cloud-Dienst-Anbieter angeboten werden. Zum Beispiel bildet 10 ein Beispiel für ein Cloud-Rechensystem 1000 ab, das einen Trainingsdienst bietet, das durch eine Reihe von Benutzerabonnenten unter Verwendung von Benutzervorrichtungen 1025a, 1025b und 1025c in einem Datennetzwerk 1020 verwendet werden kann. Die Benutzervorrichtungen 1025a, 1025b, 1025c könnten Beispiele für ein Fahrzeug 105, wie vorstehend beschrieben, sein. In dem Beispiel kann der Trainingsdienst oder das trainierte neuronale TTS-Netzwerk oder das trainierte neuronale ASR-Netzwerk gemäl einem Software-als-Dienst(Software as a Service - SaaS)-Modell angeboten werden. Ein oder mehrere Benutzer können den Trainingsdienst, das trainierte neuronale ASR-Netzwerk und/oder das trainierte neuronale TTS-Netzwerk abonnieren und das Cloud-Rechensystem führt die Verarbeitung zum Bereitstellen des Trainingsdiensts, des ASR-Diensts und/oder des TTS-Diensts für die Abonnenten durch. Das Cloud-Rechensystem kann einen oder mehrere entfernte Servercomputer 1005 beinhalten.
  • Die entfernten Servercomputer 1005 beinhalten ein beliebiges nichttransitorisches computerlesbares Medium zum Speichern von Programmcode (z. B. des Trainingssystems 100) und Programmdaten 1010 oder beidem, die durch das Cloud-Rechensystem 1000 zum Bereitstellen der Cloud-Dienste verwendet werden. Ein computerlesbares Medium kann eine beliebige elektronische, optische, magnetische oder andere Speichervorrichtung beinhalten, die dazu in der Lage ist, einem Prozessor computerlesbare Anweisungen oder anderen Programmcode bereitzustellen. Nicht einschränkende Beispiele für ein computerlesbares Medium beinhalten eine Magnetplatte, einen Speicherchip, einen ROM, einen RAM, eine ASIC, einen optischen Datenspeicher, ein Magnetband oder einen anderen magnetischen Datenspeicher oder ein beliebiges anderes Medium, von dem eine Verarbeitungsvorrichtung Anweisungen lesen kann. Die Anweisungen können prozessorspezifische Anweisungen beinhalten, die durch einen Compiler oder einen Interpreter anhand von Code generiert werden, der in einer beliebigen geeigneten Computerprogrammiersprache geschrieben ist, einschliel lich zum Beispiel C, C++, C#, Visual Basic, Java, Python, Perl, JavaScript und ActionScript. In verschiedenen Beispielen können die Servercomputer 1005 flüchtigen Speicher, nichtflüchtigen Speicher oder eine Kombination daraus beinhalten.
  • Einer oder mehrere der Server 1005 führen den Programmcode 1010 aus, der einen oder mehrere Prozessoren der Servercomputer 1005 dazu konfiguriert, einen oder mehrere der Vorgänge durchzuführen, die Trainingsdienste, ASR-Dienste und/oder TTS-Dienste bereitstellen. Wie in der Ausführungsform in 10 abgebildet, stellen der eine oder die mehreren Server 1005 die Dienste über das Trainingssystem 100, das neuronale ASR-Netzwerk 130 und/oder das neuronale TTS-Netzwerk 125 bereit. Beliebige andere geeignete Systeme oder Teilsysteme, die einen oder mehrere in dieser Schrift beschriebene Vorgänge durchführen (z. B. ein oder mehrere Entwicklungssysteme zum Konfigurieren einer interaktiven Benutzerschnittstelle), können ebenfalls durch das Cloud-Rechensystem 1000 umgesetzt werden.
  • In bestimmten Ausführungsformen kann das Cloud-Rechensystem 1000 die Dienste durch das Ausführen von Programmcode und/oder das Verwenden von Programmdaten 1010 umsetzen, die sich in einer Speichervorrichtung der Servercomputer 1005 oder einem beliebigen geeigneten computerlesbaren Medium befinden können und durch die Prozessoren der Servercomputer 1005 oder einen beliebigen anderen geeigneten Prozessor ausgeführt werden können.
  • In einigen Ausführungsformen beinhalten die Programmdaten 1010 ein(en) oder mehrere Datensätze und Modelle, die in dieser Schrift beschrieben sind. Beispiele für diese Datensätze beinhalten den Textkorpus 105 und den Audiokorpus 110 und so weiter. In einigen Ausführungsformen sind ein(e) oder mehrere Datensätze, Modelle und Funktionen in der gleichen Speichervorrichtung gespeichert. In zusätzlichen oder alternativen Ausführungsformen können eine/s/r oder mehrere der Programme, Datensätze, Modelle und Funktionen, die in dieser Schrift beschrieben sind, in unterschiedlichen Speichervorrichtungen gespeichert sein, auf die über das Datennetzwerk 1015 zugegriffen werden kann.
  • Das Cloud-Rechensystem 1000 beinhaltet zudem eine Netzwerkschnittstellenvorrichtung 1015, die Kommunikation zu und von dem Cloud-Rechensystem 1000 ermöglicht. In bestimmten Ausführungsformen beinhaltet die Netzwerkschnittstellenvorrichtung 1015 eine beliebige Vorrichtung oder Gruppe von Vorrichtungen, die zum Herstellen einer drahtgebundenen oder drahtlosen Datenverbindung mit den Datennetzwerken 1020 geeignet ist. Nicht einschränkende Beispiele für die Netzwerkschnittstellenvorrichtung 1015 beinhalten einen Ethernet-Netzwerkadapter, ein Modem und/oder dergleichen. Das Trainingssystem 100 ist in der Lage, unter Verwendung der Netzwerkschnittstellenvorrichtung 1015 über das Datennetzwerk 1020 mit den Benutzervorrichtungen 1025a, 1025b und 1025c zu kommunizieren.
  • Allgemeine Überlegungen
  • Wenngleich der vorliegende Gegenstand in Bezug auf spezifische Aspekte davon ausführlich beschrieben worden ist, versteht es sich, dass der Fachmann beim Erlangen eines Verständnisses des Vorstehenden ohne Weiteres Veränderungen an, Variationen von und Äquivalente für derartige Aspekte erzeugen kann. Zahlreiche spezifische Details sind in dieser Schrift dargelegt, um ein umfassendes Verständnis des beanspruchten Gegenstands bereitzustellen. Der Fachmann wird jedoch verstehen, dass der beanspruchte Gegenstand ohne diese spezifischen Details umgesetzt werden kann. In anderen Fällen wurden Verfahren, Vorrichtungen oder Systeme, die dem Durchschnittsfachmann bekannt wären, nicht im Detail beschrieben, um den beanspruchten Gegenstand nicht zu verdecken. Dementsprechend wurde die vorliegende Offenbarung zu Beispielzwecken und nicht zur Einschränkung dargelegt und schliel t die Einbeziehung derartiger Modifikationen, Variationen und/oder Hinzufügungen zum vorliegenden Gegenstand, die für den Durchschnittsfachmann ohne Weiteres ersichtlich wären, nicht aus.
  • Sofern nicht ausdrücklich etwas anderes angegeben ist, versteht es sich, dass sich in dieser Beschreibung Erörterungen, die Ausdrücke wie etwa „Verarbeiten“, „Ausrechnen“, „Berechnen“, „Bestimmen“ und „Identifizieren“ oder dergleichen nutzen, auf Handlungen oder Prozesse einer Rechenvorrichtung beziehen, wie etwa eines oder mehrerer Computer oder einer ähnlichen elektronischen Rechenvorrichtung oder ähnlicher elektronischer Rechenvorrichtungen, die Daten, die als physische elektronische oder magnetische Größen innerhalb von Speichern, Registern oder anderen Informationsspeichervorrichtungen, - übertragungsvorrichtungen oder -anzeigevorrichtungen der Rechenplattform dargestellt sind, manipulieren oder transformieren. Die Verwendung von „dazu ausgelegt“ oder „dazu konfiguriert“ soll in dieser Schrift eine offene und einschließende Formulierung sein, die Vorrichtungen, die dazu ausgelegt oder konfiguriert sind, zusätzliche Aufgaben oder Schritte durchzuführen, nicht ausschliel t. Zusätzlich soll die Verwendung von „auf Grundlage von“ offen und einschliel end sein, sodass ein Prozess, ein Schritt, eine Berechnung oder eine andere Handlung „auf Grundlage von“ einer oder mehreren genannten Bedingungen oder Werten in der Praxis auf zusätzlichen Bedingungen oder Werten jenseits der genannten beruhen kann. Überschriften, Listen und Nummerierungen, die in dieser Schrift beinhaltet sind, dienen lediglich der einfacheren Erläuterung und sollen nicht einschränkend sein.
  • Aspekte der in dieser Schrift offenbarten Verfahren können beim Betrieb derartiger Rechenvorrichtungen durchgeführt werden. Das System oder die Systeme, die in dieser Schrift erörtert werden, sind nicht auf eine konkrete Hardware-Architektur oder - Konfiguration beschränkt. Eine Rechenvorrichtung kann eine beliebige geeignete Anordnung von Komponenten beinhalten, die ein Ergebnis bereitstellen, das von einer oder mehreren Eingaben abhängig ist. Geeignete Rechenvorrichtungen beinhalten Universalcomputersysteme auf Mikroprozessorbasis, die auf gespeicherte Software zugreifen, die das Rechensystem von einer Universalrechenvorrichtung zu einer Spezialrechenvorrichtung zum Umsetzen eines oder mehrerer Aspekte des vorliegenden Gegenstands programmiert oder konfiguriert. Eine beliebige geeignete Programmierung, Skripterstellung oder eine andere Art von Sprache oder Kombinationen von Sprachen kann/können verwendet werden, um die hierin enthaltenen Lehren in Software umzusetzen, die beim Programmieren oder Konfigurieren einer Rechenvorrichtung verwendet wird. Die Reihenfolge der in den vorangehenden Beispielen dargestellten Blöcke kann variiert werden - zum Beispiel können Blöcke neu angeordnet, kombiniert und/oder in Unterblöcke unterteilt werden. Bestimmte Blöcke oder Prozesse können parallel durchgeführt werden.
  • Gemäl der vorliegenden Erfindung beinhaltet ein Verfahren zum Trainieren eines neuronalen Text-zu-Sprache(TTS)-Netzwerks und eines neuronalen Netzwerks zur automatischen Spracherkennung (ASR) Folgendes: Empfangen einer ersten Textprobe als Eingabe in das neuronale TTS-Netzwerk; Generieren einer ersten Audioprobe, welche die erste Textprobe wiedergibt, unter Verwendung des neuronalen TTS-Netzwerks; Generieren einer zweiten Textprobe, welche die erste Audioprobe wiedergibt, unter Verwendung des neuronalen ASR-Netzwerks; Berechnen eines ersten Verlusts auf Grundlage einer ersten Differenz zwischen der ersten Textprobe und der zweiten Textprobe; Empfangen einer zweiten Audioprobe als Eingabe in das neuronale ASR-Netzwerk; Generieren einer dritten Textprobe, welche die zweite Audioprobe wiedergibt unter Verwendung des neuronalen ASR-Netzwerks; Generieren einer dritten Audioprobe, welche die dritte Textprobe wiedergibt, unter Verwendung des neuronalen TTS-Netzwerks; Berechnen eines zweiten Verlusts auf Grundlage einer zweiten Differenz zwischen der zweiten Audioprobe und der dritten Audioprobe; Trainieren des neuronalen TTS-Netzwerks durch Einstellen von Parametern des neuronalen TTS-Netzwerks zumindest teilweise auf Grundlage des ersten Verlusts und des zweiten Verlusts; und Trainieren des neuronalen ASR-Netzwerks durch Einstellen von Parametern des neuronalen ASR-Netzwerks zumindest teilweise auf Grundlage des ersten Verlusts und des zweiten Verlusts.
  • Gemäl einer Ausführungsform umfasst das neuronale TTS-Netzwerk einen Textcodierer und einen Audiodecodierer und wobei das Trainieren des neuronalen TTS-Netzwerks ein Einstellen eines oder mehrerer Parameter des Textcodierers oder eines oder mehrerer Parameter des Audiodecodierers umfasst.
  • Gemäl einer Ausführungsform umfasst das neuronale ASR-Netzwerk einen Audiocodierer und einen Textdecodierer und wobei das Trainieren des neuronalen ASR-Netzwerks ein Einstellen eines oder mehrerer Parameter des Audiocodierers oder eines oder mehrerer Parameter des Textdecodierers umfasst.
  • Gemäl einer Ausführungsform ist die Erfindung ferner durch Folgendes gekennzeichnet: Generieren einer vierten Textprobe, die eine vierte Audioprobe, die als Eingabe in das neuronale ASR-Netzwerk empfangen wird, wiedergibt, unter Verwendung des neuronalen ASR-Netzwerks; Empfangen der vierten Textprobe und einer fünften Textprobe aus einer Textquelle als Eingaben in einen Textdiskriminator; Generieren eines dritten Verlusts auf Grundlage der vierten Textprobe und der fünften Textprobe durch den Textdiskriminator; weiteres Trainieren des neuronalen TTS-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts; und weiters Trainieren des neuronalen ASR-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts.
  • Gemäl einer Ausführungsform ist der Textdiskriminator dazu trainiert, einen ersten Wert für eine gefälschte Textprobe auszugeben, wobei die gefälschte Textprobe anhand einer Audioprobe generiert wird, und wobei der Textdiskriminator dazu trainiert ist, einen zweiten Wert für eine echte Textprobe auszugeben, wobei die echte Textprobe anhand einer Textquelle generiert wird.
  • Gemäl einer Ausführungsform ist die Erfindung ferner durch Folgendes gekennzeichnet: Generieren einer vierten Audioprobe, die eine vierte Textprobe, die als Eingabe in das neuronale TTS-Netzwerk empfangen wird, wiedergibt, unter Verwendung des neuronalen TTS-Netzwerks; Empfangen der vierten Audioprobe und einer fünften Audioprobe aus einer Audioquelle als Eingaben in einen Audiodiskriminator; Generieren eines dritten Verlusts auf Grundlage der vierten Audioprobe und der fünften Audioprobe durch den Audiodiskriminator; weiteres Trainieren des neuronalen TTS-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts; und weiters Trainieren des neuronalen ASR-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts.
  • Gemäl einer Ausführungsform ist der Audiodiskriminator dazu trainiert, einen ersten Wert für eine gefälschte Audioprobe auszugeben, wobei die gefälschte Audioprobe anhand einer Textprobe generiert wird, und wobei der Audiodiskriminator dazu trainiert ist, einen zweiten Wert für eine echte Audioprobe auszugeben, wobei die echte Audioprobe anhand einer Audioquelle generiert wird.
  • Gemäl einer Ausführungsform ist die Erfindung ferner durch Folgendes gekennzeichnet: Einsetzen des trainierten neuronalen TTS-Netzwerks.
  • Gemäß einer Ausführungsform ist die Erfindung ferner durch Folgendes gekennzeichnet: Einsetzen des trainierten neuronalen ASR-Netzwerks.
  • Gemäß der vorliegenden Erfindung wird ein System bereitgestellt, das Folgendes aufweist: ein neuronales Text-zu-Sprache(TTS)-Netzwerk; ein neuronales Netzwerk zur automatischen Spracherkennung (ASR); einen oder mehrere Prozessoren; und einen Speicher, auf dem Anweisungen gespeichert sind, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Bereitstellen einer ersten Textprobe als Eingabe in eine neuronales TTS-Netzwerk; Empfangen einer ersten Audioprobe, welche die erste Textprobe wiedergibt, von dem neuronalen TTS-Netzwerk; Bereitstellen der ersten Audioprobe als Eingabe in das neuronale ASR-Netzwerk; Empfangen einer zweiten Textprobe, welche die erste Audioprobe wiedergibt, von dem neuronalen ASR-Netzwerk; Berechnen eines ersten Verlusts auf Grundlage einer ersten Differenz zwischen der ersten Textprobe und der zweiten Textprobe; Bereitstellen einer zweiten Audioprobe als Eingabe in das neuronale ASR-Netzwerk; Empfangen einer dritten Textprobe, welche die zweite Audioprobe wiedergibt, von dem neuronalen ASR-Netzwerk; Bereitstellen der dritten Textprobe als Eingabe in das neuronale TTS-Netzwerk; Empfangen einer dritten Audioprobe, welche die dritte Textprobe wiedergibt, von dem neuronalen TTS-Netzwerk; Berechnen eines zweiten Verlusts auf Grundlage einer zweiten Differenz zwischen der zweiten Audioprobe und der dritten Audioprobe; Trainieren des neuronalen TTS-Netzwerks durch Einstellen von Parametern des neuronalen TTS-Netzwerks zumindest teilweise auf Grundlage des ersten Verlusts und des zweiten Verlusts; und Trainieren des neuronalen ASR-Netzwerks durch Einstellen von Parametern des neuronalen ASR-Netzwerks zumindest teilweise auf Grundlage des ersten Verlusts und des zweiten Verlusts.
  • Gemäß einer Ausführungsform umfasst das neuronale TTS-Netzwerk einen Textcodierer und einen Audiodecodierer und wobei die Anweisungen zum Trainieren des neuronalen TTS-Netzwerks Anweisungen umfassen, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren dazu veranlassen, einen oder mehrere Parameter des Textcodierers oder einen oder mehrere Parameter des Audiodecodierers einzustellen.
  • Gemäß einer Ausführungsform umfasst das neuronale ASR-Netzwerk einen Audiocodierer und einen Textdecodierer und wobei die Anweisungen zum Trainieren des neuronalen ASR-Netzwerks Anweisungen umfassen, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren dazu veranlassen, einen oder mehrere Parameter des Audiocodierers oder einen oder mehrere Parameter des Textdecodierers einzustellen.
  • Gemäß einer Ausführungsform umfassen die Anweisungen weitere Anweisungen, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Empfangen einer vierten Textprobe, die eine vierte Audioprobe, die als Eingabe in das neuronale ASR-Netzwerk bereitgestellt wird, wiedergibt, von dem neuronalen ASR-Netzwerk; Bereitstellen der vierten Textprobe und einer fünften Textprobe aus einer Textquelle als Eingabe in einen Textdiskriminator; Empfangen eines dritten Verlusts auf Grundlage der vierten Textprobe und der fünften Textprobe von dem Textdiskriminator; weiteres Trainieren des neuronalen TTS-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts; und weiteres Trainieren des neuronalen ASR-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts.
  • Gemäß einer Ausführungsform ist der Textdiskriminator dazu trainiert, einen ersten Wert für eine gefälschte Textprobe auszugeben, wobei die gefälschte Textprobe anhand einer Audioprobe generiert wird, und wobei der Textdiskriminator dazu trainiert ist, einen zweiten Wert für eine echte Textprobe auszugeben, wobei die echte Textprobe anhand einer Textquelle generiert wird.
  • Gemäß einer Ausführungsform umfassen die Anweisungen ferner Anweisungen, die bei Ausführung durch einen oder mehrere Prozessoren den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Empfangen einer vierten Audioprobe, welche die vierte Textprobe, die als Eingabe in das neuronale TTS-Netzwerk bereitgestellt wird, wiedergibt, von dem neuronalen TTS-Netzwerk; Bereitstellen der vierten Audioprobe und einer fünften Audioprobe aus einer Audioquelle als Eingaben in einen Audiodiskriminator; Empfangen eines dritten Verlusts auf Grundlage der vierten Audioprobe und der fünften Audioprobe von dem Audiodiskriminator; weiteres Trainieren des neuronalen TTS-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts; und weiteres Trainieren des neuronalen ASR-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts.
  • Gemäß einer Ausführungsform ist der Audiodiskriminator dazu trainiert, einen ersten Wert für eine gefälschte Audioprobe auszugeben, wobei die gefälschte Audioprobe anhand einer Textprobe generiert wird, und wobei der Audiodiskriminator dazu trainiert ist, einen zweiten Wert für eine echte Audioprobe auszugeben, wobei die echte Audioprobe anhand einer Audioquelle generiert wird.
  • Gemäß einer Ausführungsform werden das trainierte neuronale TTS-Netzwerk und das trainierte neuronale ASR-Netzwerk unabhängig voneinander eingesetzt.
  • Gemäß einer Ausführungsform werden das trainierte neuronale TTS-Netzwerk und das trainierte neuronale ASR-Netzwerk zur Verwendung auf einer einzelnen Vorrichtung eingesetzt.
  • Gemäß der vorliegenden Erfindung wird ein System bereitgestellt, das Folgendes aufweist: ein neuronales Text-zu-Sprache (TTS) -Netz; ein neuronales Netzwerk zur automatischen Spracherkennung (ASR); einen Textdiskriminator; und einen Audiodiskriminator, wobei das neuronale TTS-Netzwerk und das neuronale ASR-Netzwerk gleichzeitig unter Verwendung eines generativen gegnerischen Netzwerks trainiert wurden, das den Textdiskriminator und den Audiodiskriminator beinhaltet.
  • Gemäß einer Ausführungsform werden das neuronale TTS-Netzwerk und das neuronale ASR-Netzwerk unabhängig voneinander eingesetzt.

Claims (15)

  1. Verfahren zum Trainieren eines neuronalen Text-zu-Sprache(TTS)-Netzwerks und eines neuronalen Netzwerks zur automatischen Spracherkennung (ASR), wobei das Verfahren Folgendes umfasst: Empfangen einer ersten Textprobe als Eingabe in das neuronale TTS-Netzwerk; Generieren einer ersten Audioprobe, welche die erste Textprobe wiedergibt, unter Verwendung des neuronalen TTS-Netzwerks; Generieren einer zweiten Textprobe, welche die erste Audioprobe wiedergibt, unter Verwendung des neuronalen ASR-Netzwerks; Berechnen eines ersten Verlusts auf Grundlage einer ersten Differenz zwischen der ersten Textprobe und der zweiten Textprobe; Empfangen einer zweiten Audioprobe als Eingabe in das neuronale ASR-Netzwerk; Generieren einer dritten Textprobe, welche die zweite Audioprobe wiedergibt, unter Verwendung des neuronalen ASR-Netzwerks; Generieren einer dritten Audioprobe, welche die dritte Textprobe wiedergibt, unter Verwendung des neuronalen TTS-Netzwerks; Berechnen eines zweiten Verlusts auf Grundlage einer zweiten Differenz zwischen der zweiten Audioprobe und der dritten Audioprobe; Trainieren des neuronalen TTS-Netzwerks durch Einstellen von Parametern des neuronalen TTS-Netzwerks zumindest teilweise auf Grundlage des ersten Verlusts und des zweiten Verlusts; und Trainieren des neuronalen ASR-Netzwerks durch Einstellen von Parametern des neuronalen ASR-Netzwerks zumindest teilweise auf Grundlage des ersten Verlusts und des zweiten Verlusts.
  2. Verfahren nach Anspruch 1, wobei das neuronale TTS-Netzwerk einen Textcodierer und einen Audiodecodierer umfasst und wobei das Trainieren des neuronalen TTS-Netzwerks ein Einstellen eines oder mehrerer Parameter des Textcodierers oder eines oder mehrerer Parameter des Audiodecodierers umfasst.
  3. Verfahren nach Anspruch 1, wobei das neuronale ASR-Netzwerk einen Audiocodierer und einen Textdecodierer umfasst und wobei das Trainieren des neuronalen ASR-Netzwerks ein Einstellen eines oder mehrerer Parameter des Audiocodierers oder eines oder mehrerer Parameter des Textdecodierers umfasst.
  4. Verfahren nach Anspruch 1, ferner umfassend: Generieren einer vierten Textprobe, welche eine vierte Audioprobe, die als Eingabe in das neuronale ASR-Netzwerk empfangen wird, wiedergibt, unter Verwendung des neuronalen ASR-Netzwerks; Empfangen der vierten Textprobe und einer fünften Textprobe aus einer Textquelle als Eingaben in einen Textdiskriminator; Generieren eines dritten Verlusts auf Grundlage der vierten Textprobe und der fünften Textprobe durch den Textdiskriminator; weiteres Trainieren des neuronalen TTS-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts; und weiteres Trainieren des neuronalen ASR-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts.
  5. Verfahren nach Anspruch 4, wobei der Textdiskriminator dazu trainiert ist, einen ersten Wert für eine gefälschte Textprobe auszugeben, wobei die gefälschte Textprobe anhand einer Audioprobe generiert wird, und wobei der Textdiskriminator dazu trainiert ist, einen zweiten Wert für eine echte Textprobe auszugeben, wobei die echte Textprobe anhand einer Textquelle generiert wird.
  6. Verfahren nach Anspruch 1, ferner umfassend: Generieren einer vierten Audioprobe, welche eine vierte Textprobe, die als Eingabe in das neuronale TTS-Netzwerk empfangen wird, wiedergibt, unter Verwendung des neuronalen TTS-Netzwerks; Empfangen der vierten Audioprobe und einer fünften Audioprobe aus einer Audioquelle als Eingaben in einen Audiodiskriminator; Generieren eines dritten Verlusts auf Grundlage der vierten Audioprobe und der fünften Audioprobe durch den Audiodiskriminator; weiteres Trainieren des neuronalen TTS-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts; und weiteres Trainieren des neuronalen ASR-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts.
  7. Verfahren nach Anspruch 6, wobei der Audiodiskriminator dazu trainiert ist, einen ersten Wert für eine gefälschte Audioprobe auszugeben, wobei die gefälschte Audioprobe anhand einer Textprobe generiert wird, und wobei der Audiodiskriminator dazu trainiert ist, einen zweiten Wert für eine echte Audioprobe auszugeben, wobei die echte Audioprobe anhand einer Audioquelle generiert wird.
  8. Verfahren nach einem der Ansprüche 1-4 oder 6, ferner umfassend: Einsetzen des trainierten neuronalen TTS-Netzwerks.
  9. Verfahren nach einem der Ansprüche 1-4 oder 6, ferner umfassend: Einsetzen des trainierten neuronalen ASR-Netzwerks.
  10. System, umfassend: ein neuronales Text-zu-Sprache(TTS)-Netzwerk; ein neuronales Netzwerk zur automatischen Spracherkennung (ASR); einen oder mehrere Prozessoren; und einen Speicher, auf dem Anweisungen gespeichert sind, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Bereitstellen einer ersten Textprobe als Eingabe in das neuronale TTS-Netzwerk; Empfangen einer ersten Audioprobe, welche die erste Textprobe wiedergibt, von dem neuronalen TTS-Netzwerk; Bereitstellen der ersten Audioprobe als Eingabe in das neuronale ASR-Netzwerk; Empfangen einer zweiten Textprobe, welche die erste Audioprobe wiedergibt, von dem neuronalen ASR-Netzwerk; Berechnen eines ersten Verlusts auf Grundlage einer ersten Differenz zwischen der ersten Textprobe und der zweiten Textprobe; Bereitstellen einer zweiten Audioprobe als Eingabe in das neuronale ASR-Netzwerk; Empfangen einer dritten Textprobe, welche die zweite Audioprobe wiedergibt, von dem neuronalen ASR-Netzwerk; Bereitstellen der dritten Textprobe als Eingabe in das neuronale TTS-Netzwerk; Empfangen einer dritten Audioprobe, welche die dritte Textprobe wiedergibt, von dem neuronalen TTS-Netzwerk; Berechnen eines zweiten Verlusts auf Grundlage einer zweiten Differenz zwischen der zweiten Audioprobe und der dritten Audioprobe; Trainieren des neuronalen TTS-Netzwerks durch Einstellen von Parametern des neuronalen TTS-Netzwerks zumindest teilweise auf Grundlage des ersten Verlusts und des zweiten Verlusts; und Trainieren des neuronalen ASR-Netzwerks durch Einstellen von Parametern des neuronalen ASR-Netzwerks zumindest teilweise auf Grundlage des ersten Verlusts und des zweiten Verlusts.
  11. System nach Anspruch 10, wobei das neuronale TTS-Netzwerk einen Textcodierer und einen Audiodecodierer umfasst und wobei die Anweisungen zum Trainieren des neuronalen TTS-Netzwerks Anweisungen umfassen, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren dazu veranlassen, einen oder mehrere Parameter des Textcodierers oder einen oder mehrere Parameter des Audiodecodierers einzustellen.
  12. System nach Anspruch 10, wobei das neuronale ASR-Netzwerk einen Audiocodierer und einen Textdecodierer umfasst und wobei die Anweisungen zum Trainieren des neuronalen ASR-Netzwerks Anweisungen umfassen, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren dazu veranlassen, einen oder mehrere Parameter des Audiocodierers oder einen oder mehrere Parameter des Textdecodierers einzustellen.
  13. System nach einem der Ansprüche 10-12, wobei die Anweisungen ferner Anweisungen umfassen, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Empfangen einer vierten Textprobe, welche eine vierte Audioprobe, die als Eingabe in das neuronale ASR-Netzwerk bereitgestellt wird, wiedergibt, von dem neuronalen ASR-Netzwerk; Bereitstellen der vierten Textprobe und einer fünften Textprobe aus einer Textquelle als Eingaben in einen Textdiskriminator; Empfangen eines dritten Verlusts auf Grundlage der vierten Textprobe und der fünften Textprobe von dem Textdiskriminator; weiteres Trainieren des neuronalen TTS-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts; und weiteres Trainieren des neuronalen ASR-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts.
  14. System nach einem der Ansprüche 10-12, wobei die Anweisungen ferner Anweisungen umfassen, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren zu Folgendem veranlassen: Empfangen einer vierten Audioprobe, welche eine vierte Textprobe, die als Eingabe in das neuronale TTS-Netzwerk bereitgestellt wird, wiedergibt, von dem neuronalen TTS-Netzwerk; Bereitstellen der vierten Audioprobe und einer fünften Audioprobe aus einer Audioquelle als Eingaben in einen Audiodiskriminator; Empfangen eines dritten Verlusts auf Grundlage der vierten Audioprobe und der fünften Audioprobe von dem Audiodiskriminator; weiteres Trainieren des neuronalen TTS-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts; und weiteres Trainieren des neuronalen ASR-Netzwerks zumindest teilweise auf Grundlage des dritten Verlusts.
  15. System, umfassend: ein neuronales Text-zu-Sprache(TTS)-Netzwerk; ein neuronales Netzwerk zur automatischen Spracherkennung (ASR); einen Textdiskriminator; und einen Audiodiskriminator, wobei das neuronale TTS-Netzwerk und das neuronale ASR-Netzwerk gleichzeitig unter Verwendung eines generativen gegnerischen Netzwerks trainiert wurden, das den Textdiskriminator und den Audiodiskriminator beinhaltet.
DE102021116409.5A 2020-07-02 2021-06-24 Gemeinsame automatische spracherkennung und text-zu-sprache-umwandlung unter verwendung gegnerischer neuronaler netzwerke Pending DE102021116409A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/919,315 US11574622B2 (en) 2020-07-02 2020-07-02 Joint automatic speech recognition and text to speech conversion using adversarial neural networks
US16/919,315 2020-07-02

Publications (1)

Publication Number Publication Date
DE102021116409A1 true DE102021116409A1 (de) 2022-01-05

Family

ID=79019778

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021116409.5A Pending DE102021116409A1 (de) 2020-07-02 2021-06-24 Gemeinsame automatische spracherkennung und text-zu-sprache-umwandlung unter verwendung gegnerischer neuronaler netzwerke

Country Status (3)

Country Link
US (1) US11574622B2 (de)
CN (1) CN114093346A (de)
DE (1) DE102021116409A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112037760B (zh) * 2020-08-24 2022-01-07 北京百度网讯科技有限公司 语音频谱生成模型的训练方法、装置及电子设备
US11908454B2 (en) * 2021-12-01 2024-02-20 International Business Machines Corporation Integrating text inputs for training and adapting neural network transducer ASR models

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6078886A (en) 1997-04-14 2000-06-20 At&T Corporation System and method for providing remote automatic speech recognition services via a packet network
US7577569B2 (en) 2001-09-05 2009-08-18 Voice Signal Technologies, Inc. Combined speech recognition and text-to-speech generation
US7677569B2 (en) 2006-07-12 2010-03-16 O'hara Thomas A Stock car racing card game
US10199034B2 (en) 2014-08-18 2019-02-05 At&T Intellectual Property I, L.P. System and method for unified normalization in text-to-speech and automatic speech recognition
US9824692B1 (en) * 2016-09-12 2017-11-21 Pindrop Security, Inc. End-to-end speaker recognition using deep neural network
US10332520B2 (en) 2017-02-13 2019-06-25 Qualcomm Incorporated Enhanced speech generation
US10475438B1 (en) * 2017-03-02 2019-11-12 Amazon Technologies, Inc. Contextual text-to-speech processing
US20180314932A1 (en) 2017-04-28 2018-11-01 Intel Corporation Graphics processing unit generative adversarial network
US10796686B2 (en) * 2017-10-19 2020-10-06 Baidu Usa Llc Systems and methods for neural text-to-speech using convolutional sequence learning
US11238843B2 (en) 2018-02-09 2022-02-01 Baidu Usa Llc Systems and methods for neural voice cloning with a few samples
EP3776532A4 (de) * 2018-03-28 2021-12-01 Telepathy Labs, Inc. System und verfahren zur text-zu-sprache-synthese
EP3557503A1 (de) 2018-04-20 2019-10-23 Facebook, Inc. Erzeugung von personalisierten inhaltszusammenfassungen für benutzer
US11114094B2 (en) * 2018-06-29 2021-09-07 Google Llc Audio processing in a low-bandwidth networked system
US11094326B2 (en) * 2018-08-06 2021-08-17 Cisco Technology, Inc. Ensemble modeling of automatic speech recognition output
US10210861B1 (en) * 2018-09-28 2019-02-19 Apprente, Inc. Conversational agent pipeline trained on synthetic data
US11538463B2 (en) * 2019-04-12 2022-12-27 Adobe Inc. Customizable speech recognition system
US10789956B1 (en) * 2019-08-20 2020-09-29 Capital One Services, Llc Text-to-speech modeling
US11138964B2 (en) * 2019-10-21 2021-10-05 Baidu Usa Llc Inaudible watermark enabled text-to-speech framework
US11587551B2 (en) * 2020-04-07 2023-02-21 International Business Machines Corporation Leveraging unpaired text data for training end-to-end spoken language understanding systems
US11881210B2 (en) * 2020-05-05 2024-01-23 Google Llc Speech synthesis prosody using a BERT model
US11222620B2 (en) * 2020-05-07 2022-01-11 Google Llc Speech recognition using unspoken text and speech synthesis

Also Published As

Publication number Publication date
US11574622B2 (en) 2023-02-07
CN114093346A (zh) 2022-02-25
US20220005457A1 (en) 2022-01-06

Similar Documents

Publication Publication Date Title
DE202017106363U1 (de) Neuronale Antwort-auf-Frage-Netze
DE60126564T2 (de) Verfahren und Anordnung zur Sprachsysnthese
DE112012002524B4 (de) Statistische Verbesserung von Sprachausgabe aus einem Text-To-Speech-Synthesesystem
DE102017125256A1 (de) Suche nach einer neuronalen Architektur
DE102019000433A1 (de) Generieren einer themenbasierten Zusammenfassung eines Textinhalts
DE102019112383A1 (de) Neuronalnetzwerk zur Sprachentrauschung, das mit tiefen Merkmalsverlusten trainiert wird
DE102018007055A1 (de) Erzeugen einer zielgerichteten Zusammenfassung eines Textinhalts, die auf ein Zielpublikum-Vokabular abgestimmt ist
DE602004012909T2 (de) Verfahren und Vorrichtung zur Modellierung eines Spracherkennungssystems und zur Schätzung einer Wort-Fehlerrate basierend auf einem Text
DE102019107928A1 (de) Generative Modellierung von neuronalen Netzen zum Transformieren von Sprachäußerungen und Erweitern von Trainingsdaten
DE102021116409A1 (de) Gemeinsame automatische spracherkennung und text-zu-sprache-umwandlung unter verwendung gegnerischer neuronaler netzwerke
DE112015004185T5 (de) Systeme und Verfahren zur Wiederherstellung von Sprachkomponenten
DE112018007846B4 (de) Gesprochene-sprache-separationseinrichtung, gesprochene-sprache-separationsverfahren, gesprochene-sprache separationsprogramm und gesprochene-sprache-separationssystem
DE112013000760B4 (de) Automatisches korrigieren von Sprechfehlern in Echtzeit
DE112020002858T5 (de) Synchronisierte tonerzeugung aus videos
DE112016006549B4 (de) Antworterzeugungsvorrichtung, dialogsteuersystem und antworterzeugungsverfahren
DE112015003382T5 (de) Spracherkennungseinrichtung und Spracherkennungsverfahren
DE60133537T2 (de) Automatisches umtrainieren eines spracherkennungssystems
DE19942178C1 (de) Verfahren zum Aufbereiten einer Datenbank für die automatische Sprachverarbeitung
DE102014107028B4 (de) Verbesserte biometrische Passwortsicherheit
DE602004008666T2 (de) Verfolgen von Vokaltraktresonanzen unter Verwendung eines nichtlinearen Prädiktors
DE602004002312T2 (de) Verfahren und Vorrichtung zur Bestimmung von Formanten unter Benutzung eines Restsignalmodells
EP3095114A1 (de) Verfahren und system zur erzeugung eines steuerungsbefehls
DE102021121496A1 (de) Simulationstestsystem und -verfahren zur Unterdrückung von Fahrbahngeräuschen eines Fahrzeugs
DE212016000292U1 (de) System zur Text-zu-Sprache-Leistungsbewertung
DE10022586A1 (de) Verfahren zum Erzeugen einer Sprachdatenbank für einen Zielwortschatz zum Trainieren eines Spracherkennungssystems

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: LORENZ SEIDLER GOSSEL RECHTSANWAELTE PATENTANW, DE