Die besten Sprachsynthesizer online. SpeakIt!-Chrome-Erweiterung: In-Browser-Sprachsynthesizer für diejenigen, die zu faul zum Lesen sind

Das bringt etwas Würze und wenn ich anfange, mit anderen Engines zu experimentieren, bekomme ich den Hashtag #ReturnDashka in den Kommentaren. Es ist cool, das alles zu beobachten, aber der Prozess steht nicht still und viele Unternehmen entwickeln ihre eigenen Technologien. Gefallen hat mir zum Beispiel die Stimme, die ich auch mal ins Video stopfe.

Kürzlich stieß ich auf einen Komplex von Yandex-Sprachtechnologien, einschließlich Spracherkennung und -synthese, Sprachaktivierung und Auswahl semantischer Objekte im gesprochenen Text. Die Sprachtechnologie hat gelernt, die Sprachaktivierung zu erkennen, mit ihrer Hilfe können Sie SMS-Nachrichten aufzeichnen und Notizen per Sprache hinterlassen, ohne die Tastatur zu verwenden, und direkt auf das Backend zugreifen, das erfolgreich in mobilen Yandex-Anwendungen verwendet wird. Mit dem SpeechKit Mobile SDK können Sie beispielsweise Spracherkennung und -synthese sowie die Yandex-Sprachaktivierung in eine mobile Anwendung für iOS, Android (derzeit Russisch, Englisch, Türkisch und Ukrainisch) oder Windows Phone (Russisch) einbetten. Die Sprachsteuerung macht Ihre Anwendung benutzerfreundlicher, insbesondere wenn der Benutzer alle Hände voll zu tun hat. Ohne den Bildschirm zu berühren, kann er die gewünschte Funktion mit einem Satz aufrufen.

Ich war schon immer von der Sprachsynthese-Technologie angezogen, mit der Sie Text in Sprache übersetzen können. Ich habe schnell den Text skizziert, ihn vertont (Milena TTS [Russisch]) und ihn ins Video geschoben, zu irgendeinem Thema. Dies ist besonders interessant für Benutzer, die Sprachprobleme haben oder denen ihre Stimme aus irgendeinem Grund peinlich ist.

Die Stimmen von Yandex schienen eigenartig, nett und für das menschliche Ohr leicht wahrnehmbar, insbesondere die männlichen Stimmen von Zahar und Ermil. Die Frauenstimmen von jane, oksana, alyss und omazh haben mich wahnsinnig erschreckt und erreichen meiner Meinung nach nicht die Höhen von SuperDazhki. Wie hört man also neue Stimmen auf einem typischen Heimcomputer? Dazu musste ich das Internet freischaufeln und fand die Lösung in Form eines Skripts.

1. Zuerst müssen wir auf der Seite sein und auf die Schaltfläche „Entwicklerraum“ klicken.


Sofort gelangen Sie in Ihr persönliches Konto und drücken die Schaltfläche "Get the key". Klicken Sie anschließend auf die Schaltfläche „SpeechKit Cloud“.


Füllen Sie alle mit einem roten Sternchen markierten Felder aus und klicken Sie auf die Schaltfläche „Senden“.


Der Schlüssel wird sofort empfangen, danach muss er kopiert werden.


Lassen Sie uns nun zu diesem gehen, wo wir verschiedene Abfrageparameter, Sprecher (Stimme der synthetisierten Sprache), Antwortformat und URL-Beispiele sehen werden. Dieser chinesische Buchstabe wird einem gewöhnlichen Benutzer zu kompliziert erscheinen, also lassen Sie uns unsere Aktionen vereinfachen (oder umgekehrt komplizieren), indem wir ein einfaches Skript organisieren.

2. Laden Sie das Programm Notepad ++ auf Ihren Computer herunter (). Wir installieren.

3. Erstellen Sie eine index.html-Datei. Wer keine Lust hat, per Hand zu erstellen, lädt sich diese herunter.


Ändern Sie den Dateinamen: index.html. Dateityp: Alle Dateien. Kodierung: UTF-8. Drücken Sie die Schaltfläche "Speichern". Es ist wichtig, die Datei index.html im Stammverzeichnis des Systemlaufwerks oder in einem beliebigen Ordner auf dem Systemlaufwerk zu speichern.


Nun muss die gespeicherte Datei bearbeitet werden. Öffnen Sie die Datei mit Notepad++.


Eigentlich ist hier unser lang erwartetes Skript (). Bearbeiten Sie Ihre Datei richtig: Fügen Sie Ihren Schlüssel an der richtigen Stelle ein, ändern Sie die Stimme, speichern und verwenden Sie.

Doppelklicken Sie in Zukunft auf die Datei index.html und im Browser erhalten wir Folgendes.


Es bleibt, ein Gedicht in ein großes Fenster zu schreiben, und Zahar (oder eine andere ausgewählte Figur) wird es Ihnen vorlesen. Ich behaupte nicht, dass es möglich ist, dass ich es hier in die Regale stelle und niemand es morgen braucht, ich war nur an dem Prozess der Sprachsynthese von Yandex auf meinem Computer interessiert, den ich mit Ihnen geteilt habe.

Helfen Sie dem Projekt bei seiner Entwicklung:
Sberbank-Karte: 676280139020834994
Yandex.Geld: 410012054992141
Webmoney: WMR-Wallet R429054927097
WMZ Geldbörse Z401294377967

Spracherkennungstechnologie

Yandex Speechkit Autopoet.

Textvorbereitung

Aussprache und Intonation

Seite oder auf einer speziellen Ressourcenseite

Viele von Ihnen haben es wahrscheinlich schon geschafft, einen Computer oder ein Smartphone mit Ihrer Stimme zu steuern. Wenn Sie dem Navigator sagen "Let's go to Gogol, 25" oder eine Suchanfrage in der Yandex-Anwendung stellen, wandelt die Spracherkennungstechnologie Ihre Stimme in einen Textbefehl um. Aber es gibt auch eine umgekehrte Aufgabe: den Text, über den der Computer verfügt, in Sprache umzuwandeln.

Yandex verwendet Sprachsynthesetechnologie aus dem Yandex Speechkit-Komplex, um Texte zu sprechen. So können Sie zum Beispiel herausfinden, wie Fremdwörter und Phrasen im Übersetzer ausgesprochen werden. Dank Sprachsynthese erhielt Autopoet auch seine eigene Stimme.

Textvorbereitung

Aussprache und Intonation

Mit anderen Worten, es werden viele Daten verwendet, um alle 25 Millisekunden Sprache zu synthetisieren. Informationen über die unmittelbare Umgebung gewährleisten einen reibungslosen Übergang von Rahmen zu Rahmen und von Silbe zu Silbe, während Daten über die Phrase und den Satz als Ganzes benötigt werden, um die korrekte Intonation der synthetisierten Sprache zu erzeugen.

Um den vorbereiteten Text zu lesen, wird ein akustisches Modell verwendet. Es unterscheidet sich von dem akustischen Modell, das bei der Spracherkennung verwendet wird. Bei der Mustererkennung ist es notwendig, eine Entsprechung zwischen Lauten mit bestimmten Eigenschaften und Phonemen herzustellen. Im Falle der Synthese sollte das akustische Modell dagegen Beschreibungen von Klängen gemäß den Beschreibungen von Rahmen zusammenstellen.

Woher weiß das akustische Modell, wie es ein Phonem richtig ausspricht oder einem Fragesatz die richtige Intonation gibt? Sie lernt aus Texten und Tondateien. Sie können beispielsweise ein Hörbuch und den dazugehörigen Text hochladen. Je mehr Daten ein Modell lernt, desto besser sind Aussprache und Intonation.

Auf dieser Seite oder in einer speziellen Ressource erfahren Sie mehr über Technologien aus dem Yandex SpeechKit-Komplex. Wenn Sie ein Entwickler sind und die Cloud- oder mobile Version von SpeechKit testen möchten, hilft Ihnen die den Yandex-Technologien gewidmete Website.

","contentType":"text/html","amp":"

Viele von Ihnen haben es wahrscheinlich schon geschafft, einen Computer oder ein Smartphone mit Ihrer Stimme zu steuern. Wenn Sie dem Navigator sagen "Let's go to Gogol, 25" oder eine Suchanfrage in der Yandex-Anwendung stellen, wandelt die Spracherkennungstechnologie Ihre Stimme in einen Textbefehl um. Aber es gibt auch eine umgekehrte Aufgabe: den Text, über den der Computer verfügt, in Sprache umzuwandeln.

Wenn die Menge der zu sprechenden Texte relativ klein ist und in ihnen dieselben Ausdrücke vorkommen - wie beispielsweise bei Ansagen über die Abfahrt und Ankunft von Zügen am Bahnhof -, reicht es aus, einen Ansager einzuladen, die erforderlichen Wörter aufzuzeichnen und Phrasen im Studio und sammeln dann welche Botschaft. Bei beliebigen Texten funktioniert dieser Ansatz jedoch nicht. Hier kommt die Sprachsynthese ins Spiel.

Yandex verwendet Sprachsynthesetechnologie aus dem Yandex Speechkit-Komplex, um Texte zu sprechen. So können Sie zum Beispiel herausfinden, wie Fremdwörter und Phrasen im Übersetzer ausgesprochen werden. Dank Sprachsynthese erhielt Autopoet auch seine eigene Stimme.

Textvorbereitung

Die Aufgabe der Sprachsynthese wird in mehreren Stufen gelöst. Zunächst bereitet ein spezieller Algorithmus den Text so auf, dass der Roboter ihn bequem lesen kann: Er schreibt alle Zahlen in Wörter, erweitert die Abkürzungen. Dann wird der Text in Phrasen unterteilt, also in Phrasen mit durchgehender Betonung – der Computer konzentriert sich dabei auf Satzzeichen und stabile Konstruktionen. Für alle Wörter wird eine phonetische Transkription erstellt.

Um herauszufinden, wie man ein Wort liest und wo die Betonung darauf liegt, greift der Roboter zunächst auf die klassischen, handschriftlichen Wörterbücher zurück, die in das System integriert sind. Ist das gewünschte Wort nicht im Wörterbuch, baut der Computer die Transkription selbstständig auf – basierend auf den Regeln, die er aus akademischen Nachschlagewerken entlehnt hat. Wenn schließlich die üblichen Regeln nicht ausreichen – und dies geschieht, weil sich jede lebende Sprache ständig ändert – verwendet es statistische Regeln. Wenn ein Wort im Korpus der Trainingstexte angetroffen wird, merkt sich das System, welche Silbe die Sprecher darin normalerweise betont haben.

Aussprache und Intonation

Wenn die Transkription fertig ist, berechnet der Computer, wie lange jedes Phonem klingen wird, dh wie viele Frames es enthält - so werden Fragmente mit einer Länge von 25 Millisekunden genannt. Dann wird jeder Rahmen gemäß einer Reihe von Parametern beschrieben: zu welchem ​​Phonem er gehört und welchen Platz er darin einnimmt; Zu welcher Silbe gehört dieses Phonem? wenn es ein Vokal ist, wird er betont; Welchen Platz nimmt es in der Silbe ein? Silbe - mit einem Wort; Wort - in einem Satz; welche Satzzeichen stehen vor und nach diesem Satz; Welchen Platz nimmt die Phrase im Satz ein? schließlich, welches Zeichen am Ende des Satzes steht und was seine Hauptmelodie ist.

Mit anderen Worten, es werden viele Daten verwendet, um alle 25 Millisekunden Sprache zu synthetisieren. Informationen über die unmittelbare Umgebung gewährleisten einen reibungslosen Übergang von Rahmen zu Rahmen und von Silbe zu Silbe, während Daten über die Phrase und den Satz als Ganzes benötigt werden, um die korrekte Intonation der synthetisierten Sprache zu erzeugen.

Um den vorbereiteten Text zu lesen, wird ein akustisches Modell verwendet. Es unterscheidet sich von dem akustischen Modell, das bei der Spracherkennung verwendet wird. Bei der Mustererkennung ist es notwendig, eine Entsprechung zwischen Lauten mit bestimmten Eigenschaften und Phonemen herzustellen. Im Falle der Synthese sollte das akustische Modell dagegen Beschreibungen von Klängen gemäß den Beschreibungen von Rahmen zusammenstellen.

Woher weiß das akustische Modell, wie es ein Phonem richtig ausspricht oder einem Fragesatz die richtige Intonation gibt? Sie lernt aus Texten und Tondateien. Sie können beispielsweise ein Hörbuch und den dazugehörigen Text hochladen. Je mehr Daten ein Modell lernt, desto besser sind Aussprache und Intonation.

Abschließend noch zur Stimme selbst. Unsere Stimmen sind vor allem an der Klangfarbe zu erkennen, die von den strukturellen Merkmalen der Organe des Sprachapparates jeder Person abhängt. Die Klangfarbe Ihrer Stimme lässt sich modellieren, das heißt, ihre Eigenschaften können beschrieben werden – dazu genügt es, im Studio eine kleine Textsammlung zu lesen. Danach können Ihre Tondaten für die Sprachsynthese in jeder Sprache verwendet werden, sogar in einer, die Sie nicht kennen. Wenn der Roboter Ihnen etwas sagen muss, verwendet er einen Schallwellengenerator – einen Vocoder. Es ist mit Informationen über die Frequenzeigenschaften der aus dem akustischen Modell erhaltenen Phrase sowie mit Daten über das Timbre geladen, das der Stimme eine erkennbare Farbe verleiht.

Auf dieser Seite oder in einer speziellen Ressource erfahren Sie mehr über Technologien aus dem Yandex SpeechKit-Komplex. Wenn Sie ein Entwickler sind und die Cloud- oder mobile Version von SpeechKit testen möchten, hilft Ihnen die den Yandex-Technologien gewidmete Website.

","instantArticle":"

Viele von Ihnen haben es wahrscheinlich schon geschafft, einen Computer oder ein Smartphone mit Ihrer Stimme zu steuern. Wenn Sie dem Navigator sagen "Let's go to Gogol, 25" oder eine Suchanfrage in der Yandex-Anwendung stellen, wandelt die Spracherkennungstechnologie Ihre Stimme in einen Textbefehl um. Aber es gibt auch eine umgekehrte Aufgabe: den Text, über den der Computer verfügt, in Sprache umzuwandeln.

Wenn die Menge der zu sprechenden Texte relativ klein ist und in ihnen dieselben Ausdrücke vorkommen - wie beispielsweise bei Ansagen über die Abfahrt und Ankunft von Zügen am Bahnhof -, reicht es aus, einen Ansager einzuladen, die erforderlichen Wörter aufzuzeichnen und Phrasen im Studio und sammeln dann welche Botschaft. Bei beliebigen Texten funktioniert dieser Ansatz jedoch nicht. Hier kommt die Sprachsynthese ins Spiel.

Yandex verwendet Sprachsynthesetechnologie aus dem Yandex Speechkit-Komplex, um Texte zu sprechen. So können Sie zum Beispiel herausfinden, wie Fremdwörter und Phrasen im Übersetzer ausgesprochen werden. Dank Sprachsynthese erhielt Autopoet auch seine eigene Stimme.

Textvorbereitung

Die Aufgabe der Sprachsynthese wird in mehreren Stufen gelöst. Zunächst bereitet ein spezieller Algorithmus den Text so auf, dass der Roboter ihn bequem lesen kann: Er schreibt alle Zahlen in Wörter, erweitert die Abkürzungen. Dann wird der Text in Phrasen unterteilt, also in Phrasen mit durchgehender Betonung – der Computer konzentriert sich dabei auf Satzzeichen und stabile Konstruktionen. Für alle Wörter wird eine phonetische Transkription erstellt.

Um herauszufinden, wie man ein Wort liest und wo die Betonung darauf liegt, greift der Roboter zunächst auf die klassischen, handschriftlichen Wörterbücher zurück, die in das System integriert sind. Ist das gewünschte Wort nicht im Wörterbuch, baut der Computer die Transkription selbstständig auf – basierend auf den Regeln, die er aus akademischen Nachschlagewerken entlehnt hat. Wenn schließlich die üblichen Regeln nicht ausreichen – und dies geschieht, weil sich jede lebende Sprache ständig ändert – verwendet es statistische Regeln. Wenn ein Wort im Korpus der Trainingstexte angetroffen wird, merkt sich das System, welche Silbe die Sprecher darin normalerweise betont haben.

Aussprache und Intonation

Wenn die Transkription fertig ist, berechnet der Computer, wie lange jedes Phonem klingen wird, dh wie viele Frames es enthält - so werden Fragmente mit einer Länge von 25 Millisekunden genannt. Dann wird jeder Rahmen gemäß einer Reihe von Parametern beschrieben: zu welchem ​​Phonem er gehört und welchen Platz er darin einnimmt; Zu welcher Silbe gehört dieses Phonem? wenn es ein Vokal ist, wird er betont; Welchen Platz nimmt es in der Silbe ein? Silbe - mit einem Wort; Wort - in einem Satz; welche Satzzeichen stehen vor und nach diesem Satz; Welchen Platz nimmt die Phrase im Satz ein? schließlich, welches Zeichen am Ende des Satzes steht und was seine Hauptmelodie ist.

Mit anderen Worten, es werden viele Daten verwendet, um alle 25 Millisekunden Sprache zu synthetisieren. Informationen über die unmittelbare Umgebung gewährleisten einen reibungslosen Übergang von Rahmen zu Rahmen und von Silbe zu Silbe, während Daten über die Phrase und den Satz als Ganzes benötigt werden, um die korrekte Intonation der synthetisierten Sprache zu erzeugen.

Um den vorbereiteten Text zu lesen, wird ein akustisches Modell verwendet. Es unterscheidet sich von dem akustischen Modell, das bei der Spracherkennung verwendet wird. Bei der Mustererkennung ist es notwendig, eine Entsprechung zwischen Lauten mit bestimmten Eigenschaften und Phonemen herzustellen. Im Falle der Synthese sollte das akustische Modell dagegen Beschreibungen von Klängen gemäß den Beschreibungen von Rahmen zusammenstellen.

Woher weiß das akustische Modell, wie es ein Phonem richtig ausspricht oder einem Fragesatz die richtige Intonation gibt? Sie lernt aus Texten und Tondateien. Sie können beispielsweise ein Hörbuch und den dazugehörigen Text hochladen. Je mehr Daten ein Modell lernt, desto besser sind Aussprache und Intonation.

Abschließend noch zur Stimme selbst. Unsere Stimmen sind vor allem an der Klangfarbe zu erkennen, die von den strukturellen Merkmalen der Organe des Sprachapparates jeder Person abhängt. Die Klangfarbe Ihrer Stimme lässt sich modellieren, das heißt, ihre Eigenschaften können beschrieben werden – dazu genügt es, im Studio eine kleine Textsammlung zu lesen. Danach können Ihre Tondaten für die Sprachsynthese in jeder Sprache verwendet werden, sogar in einer, die Sie nicht kennen. Wenn der Roboter Ihnen etwas sagen muss, verwendet er einen Schallwellengenerator – einen Vocoder. Es ist mit Informationen über die Frequenzeigenschaften der aus dem akustischen Modell erhaltenen Phrase sowie mit Daten über das Timbre geladen, das der Stimme eine erkennbare Farbe verleiht.

Auf dieser Seite oder in einer speziellen Ressource erfahren Sie mehr über Technologien aus dem Yandex SpeechKit-Komplex. Wenn Sie ein Entwickler sind und die Cloud- oder mobile Version von SpeechKit testen möchten, hilft Ihnen die den Yandex-Technologien gewidmete Website.

"),"proposedBody":("source":"

Viele von Ihnen haben es wahrscheinlich schon geschafft, einen Computer oder ein Smartphone mit Ihrer Stimme zu steuern. Wenn Sie dem Navigator sagen "Let's go to Gogol, 25" oder eine Suchanfrage in der Yandex-Anwendung stellen, wandelt die Spracherkennungstechnologie Ihre Stimme in einen Textbefehl um. Aber es gibt auch eine umgekehrte Aufgabe: den Text, über den der Computer verfügt, in Sprache umzuwandeln.

Wenn die Menge der zu sprechenden Texte relativ klein ist und in ihnen dieselben Ausdrücke vorkommen - wie beispielsweise bei Ansagen über die Abfahrt und Ankunft von Zügen am Bahnhof -, reicht es aus, einen Ansager einzuladen, die erforderlichen Wörter aufzuzeichnen und Phrasen im Studio und sammeln dann welche Botschaft. Bei beliebigen Texten funktioniert dieser Ansatz jedoch nicht. Hier kommt die Sprachsynthese ins Spiel.

Yandex verwendet Sprachsynthesetechnologie aus dem Yandex Speechkit-Komplex, um Texte zu sprechen. So können Sie zum Beispiel herausfinden, wie Fremdwörter und Phrasen im Übersetzer ausgesprochen werden. Dank Sprachsynthese erhielt Autopoet auch seine eigene Stimme.

Textvorbereitung

Die Aufgabe der Sprachsynthese wird in mehreren Stufen gelöst. Zunächst bereitet ein spezieller Algorithmus den Text so auf, dass der Roboter ihn bequem lesen kann: Er schreibt alle Zahlen in Wörter, erweitert die Abkürzungen. Dann wird der Text in Phrasen unterteilt, also in Phrasen mit durchgehender Betonung – der Computer konzentriert sich dabei auf Satzzeichen und stabile Konstruktionen. Für alle Wörter wird eine phonetische Transkription erstellt.

Um herauszufinden, wie man ein Wort liest und wo die Betonung darauf liegt, greift der Roboter zunächst auf die klassischen, handschriftlichen Wörterbücher zurück, die in das System integriert sind. Ist das gewünschte Wort nicht im Wörterbuch, baut der Computer die Transkription selbstständig auf – basierend auf den Regeln, die er aus akademischen Nachschlagewerken entlehnt hat. Wenn schließlich die üblichen Regeln nicht ausreichen – und dies geschieht, weil sich jede lebende Sprache ständig ändert – verwendet es statistische Regeln. Wenn ein Wort im Korpus der Trainingstexte angetroffen wird, merkt sich das System, welche Silbe die Sprecher darin normalerweise betont haben.

Aussprache und Intonation

Wenn die Transkription fertig ist, berechnet der Computer, wie lange jedes Phonem klingen wird, dh wie viele Frames es enthält - so werden Fragmente mit einer Länge von 25 Millisekunden genannt. Dann wird jeder Rahmen gemäß einer Reihe von Parametern beschrieben: zu welchem ​​Phonem er gehört und welchen Platz er darin einnimmt; Zu welcher Silbe gehört dieses Phonem? wenn es ein Vokal ist, wird er betont; Welchen Platz nimmt es in der Silbe ein? Silbe - mit einem Wort; das Wort ist in der Phrase; welche Satzzeichen stehen vor und nach diesem Satz; Welchen Platz nimmt die Phrase im Satz ein? schließlich, welches Zeichen am Ende des Satzes steht und was seine Hauptmelodie ist.

Mit anderen Worten, es werden viele Daten verwendet, um alle 25 Millisekunden Sprache zu synthetisieren. Informationen über die unmittelbare Umgebung gewährleisten einen reibungslosen Übergang von Rahmen zu Rahmen und von Silbe zu Silbe, während Daten über die Phrase und den Satz als Ganzes benötigt werden, um die korrekte Intonation der synthetisierten Sprache zu erzeugen.

Um den vorbereiteten Text zu lesen, wird ein akustisches Modell verwendet. Es unterscheidet sich von dem akustischen Modell, das bei der Spracherkennung verwendet wird. Bei der Mustererkennung ist es notwendig, eine Entsprechung zwischen Lauten mit bestimmten Eigenschaften und Phonemen herzustellen. Im Falle der Synthese sollte das akustische Modell dagegen Beschreibungen von Klängen gemäß den Beschreibungen von Rahmen zusammenstellen.

Woher weiß das akustische Modell, wie es ein Phonem richtig ausspricht oder einem Fragesatz die richtige Intonation gibt? Sie lernt aus Texten und Tondateien. Sie können beispielsweise ein Hörbuch und den dazugehörigen Text hochladen. Je mehr Daten ein Modell lernt, desto besser sind Aussprache und Intonation.

Abschließend noch zur Stimme selbst. Unsere Stimmen sind vor allem an der Klangfarbe zu erkennen, die von den strukturellen Merkmalen der Organe des Sprachapparates jeder Person abhängt. Die Klangfarbe Ihrer Stimme lässt sich modellieren, das heißt, ihre Eigenschaften können beschrieben werden – dazu genügt es, im Studio eine kleine Textsammlung zu lesen. Danach können Ihre Tondaten für die Sprachsynthese in jeder Sprache verwendet werden, sogar in einer, die Sie nicht kennen. Wenn der Roboter Ihnen etwas sagen muss, verwendet er einen Schallwellengenerator namens Vocoder. Es ist mit Informationen über die Frequenzeigenschaften der aus dem akustischen Modell erhaltenen Phrase sowie mit Daten über das Timbre geladen, das der Stimme eine erkennbare Farbe verleiht.

Auf dieser Seite oder in einer speziellen Ressource erfahren Sie mehr über Technologien aus dem Yandex SpeechKit-Komplex. Wenn Sie ein Entwickler sind und die Cloud- oder mobile Version von SpeechKit testen möchten, hilft Ihnen die den Yandex-Technologien gewidmete Website.

Viele von Ihnen haben es wahrscheinlich schon geschafft, einen Computer oder ein Smartphone mit Ihrer Stimme zu steuern. Wenn Sie dem Navigator sagen "Let's go to Gogol, 25" oder eine Suchanfrage in der Yandex-Anwendung stellen, wandelt die Spracherkennungstechnologie Ihre Stimme in einen Textbefehl um. Aber es gibt auch eine umgekehrte Aufgabe: den Text, über den der Computer verfügt, in Sprache umzuwandeln.

Wenn die Menge der zu sprechenden Texte relativ klein ist und in ihnen dieselben Ausdrücke vorkommen - wie beispielsweise bei Ansagen über die Abfahrt und Ankunft von Zügen am Bahnhof -, reicht es aus, einen Ansager einzuladen, die erforderlichen Wörter aufzuzeichnen und Phrasen im Studio und sammeln dann welche Botschaft. Bei beliebigen Texten funktioniert dieser Ansatz jedoch nicht. Hier kommt die Sprachsynthese ins Spiel.

Yandex verwendet Sprachsynthesetechnologie aus dem Yandex Speechkit-Komplex, um Texte zu sprechen. So können Sie zum Beispiel herausfinden, wie Fremdwörter und Phrasen im Übersetzer ausgesprochen werden. Dank Sprachsynthese erhielt Autopoet auch seine eigene Stimme.

Textvorbereitung

Die Aufgabe der Sprachsynthese wird in mehreren Stufen gelöst. Zunächst bereitet ein spezieller Algorithmus den Text so auf, dass der Roboter ihn bequem lesen kann: Er schreibt alle Zahlen in Wörter, erweitert die Abkürzungen. Dann wird der Text in Phrasen unterteilt, also in Phrasen mit durchgehender Betonung – der Computer konzentriert sich dabei auf Satzzeichen und stabile Konstruktionen. Für alle Wörter wird eine phonetische Transkription erstellt.

Um herauszufinden, wie man ein Wort liest und wo die Betonung darauf liegt, greift der Roboter zunächst auf die klassischen, handschriftlichen Wörterbücher zurück, die in das System integriert sind. Ist das gewünschte Wort nicht im Wörterbuch, baut der Computer die Transkription selbstständig auf – basierend auf den Regeln, die er aus akademischen Nachschlagewerken entlehnt hat. Wenn schließlich die üblichen Regeln nicht ausreichen – und dies geschieht, weil sich jede lebende Sprache ständig ändert – verwendet es statistische Regeln. Wenn ein Wort im Korpus der Trainingstexte angetroffen wird, merkt sich das System, welche Silbe die Sprecher darin normalerweise betont haben.

Aussprache und Intonation

Wenn die Transkription fertig ist, berechnet der Computer, wie lange jedes Phonem klingen wird, dh wie viele Frames es enthält - so werden Fragmente mit einer Länge von 25 Millisekunden genannt. Dann wird jeder Rahmen gemäß einer Reihe von Parametern beschrieben: zu welchem ​​Phonem er gehört und welchen Platz er darin einnimmt; Zu welcher Silbe gehört dieses Phonem? wenn es ein Vokal ist, wird er betont; Welchen Platz nimmt es in der Silbe ein? Silbe - mit einem Wort; Wort - in einem Satz; welche Satzzeichen stehen vor und nach diesem Satz; Welchen Platz nimmt die Phrase im Satz ein? schließlich, welches Zeichen am Ende des Satzes steht und was seine Hauptmelodie ist.

Mit anderen Worten, es werden viele Daten verwendet, um alle 25 Millisekunden Sprache zu synthetisieren. Informationen über die unmittelbare Umgebung gewährleisten einen reibungslosen Übergang von Rahmen zu Rahmen und von Silbe zu Silbe, während Daten über die Phrase und den Satz als Ganzes benötigt werden, um die korrekte Intonation der synthetisierten Sprache zu erzeugen.

Um den vorbereiteten Text zu lesen, wird ein akustisches Modell verwendet. Es unterscheidet sich von dem akustischen Modell, das bei der Spracherkennung verwendet wird. Bei der Mustererkennung ist es notwendig, eine Entsprechung zwischen Lauten mit bestimmten Eigenschaften und Phonemen herzustellen. Im Falle der Synthese sollte das akustische Modell dagegen Beschreibungen von Klängen gemäß den Beschreibungen von Rahmen zusammenstellen.

Woher weiß das akustische Modell, wie es ein Phonem richtig ausspricht oder einem Fragesatz die richtige Intonation gibt? Sie lernt aus Texten und Tondateien. Sie können beispielsweise ein Hörbuch und den dazugehörigen Text hochladen. Je mehr Daten ein Modell lernt, desto besser sind Aussprache und Intonation.

Abschließend noch zur Stimme selbst. Unsere Stimmen sind vor allem an der Klangfarbe zu erkennen, die von den strukturellen Merkmalen der Organe des Sprachapparates jeder Person abhängt. Die Klangfarbe Ihrer Stimme lässt sich modellieren, das heißt, ihre Eigenschaften können beschrieben werden – dazu genügt es, im Studio eine kleine Textsammlung zu lesen. Danach können Ihre Tondaten für die Sprachsynthese in jeder Sprache verwendet werden, sogar in einer, die Sie nicht kennen. Wenn der Roboter Ihnen etwas sagen muss, verwendet er einen Schallwellengenerator – einen Vocoder. Es ist mit Informationen über die Frequenzeigenschaften der aus dem akustischen Modell erhaltenen Phrase sowie mit Daten über das Timbre geladen, das der Stimme eine erkennbare Farbe verleiht.

Auf dieser Seite oder in einer speziellen Ressource erfahren Sie mehr über Technologien aus dem Yandex SpeechKit-Komplex. Wenn Sie ein Entwickler sind und die Cloud- oder mobile Version von SpeechKit testen möchten, hilft Ihnen die den Yandex-Technologien gewidmete Website.

","contentType":"text/html"),"authorId":"24151397","slug":"kak-eto-rabotaet-sintez-rechi","canEdit":false,"canComment":false," isBanned":false,"canPublish":false,"viewType":"minor","isDraft":false,"isOnModeration":false,"isOutdated":false,"isSubscriber":false,"commentsCount":55," modificationDate":"Tue Apr 03 2018 18:56:00 GMT+0000 (UTC)","isAutoPreview":false,"showPreview":true,"approvedPreview":("source":"

Wenn Sie dem Navigator „Auf geht's nach Gogol, 25“ sagen oder eine Suchanfrage laut aussprechen, wandelt die Spracherkennungstechnologie Ihre Stimme in einen Textbefehl um. Es gibt auch eine umgekehrte Aufgabe: Text in Sprache umzuwandeln. Manchmal reicht es aus, einen Ansager einzuladen und nur die notwendigen Wörter und Sätze aufzuschreiben, aber das funktioniert nicht mit beliebigen Texten. Hier kommt die Sprachsynthese ins Spiel.

","contentType":"text/html"),"proposedPreview":("source":"

Wenn Sie dem Navigator „Auf geht's nach Gogol, 25“ sagen oder eine Suchanfrage laut aussprechen, wandelt die Spracherkennungstechnologie Ihre Stimme in einen Textbefehl um. Es gibt auch eine umgekehrte Aufgabe: Text in Sprache umzuwandeln. Manchmal reicht es aus, einen Ansager einzuladen und nur die notwendigen Wörter und Sätze aufzuschreiben, aber das funktioniert nicht mit beliebigen Texten. Hier kommt die Sprachsynthese ins Spiel.

Wenn Sie dem Navigator „Auf geht's nach Gogol, 25“ sagen oder eine Suchanfrage laut aussprechen, wandelt die Spracherkennungstechnologie Ihre Stimme in einen Textbefehl um. Es gibt auch eine umgekehrte Aufgabe: Text in Sprache umzuwandeln. Manchmal reicht es aus, einen Ansager einzuladen und nur die notwendigen Wörter und Sätze aufzuschreiben, aber das funktioniert nicht mit beliebigen Texten. Hier kommt die Sprachsynthese ins Spiel.

","contentType":"text/html"),"titleImage":("h32":("height":32,"path":"/get-yablogs/47421/file_1475751201967/h32","width": 58,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/h32"),"major1000":("height":246,"path":"/get- yablogs/47421/file_1475751201967/major1000","width":444,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major1000"),"major288":(" height":156,"path":"/get-yablogs/47421/file_1475751201967/major288","width":287,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421 /file_1475751201967/major288"),"major300":("path":"/get-yablogs/47421/file_1475751201967/major300","fullPath":"https://avatars.mds.yandex.net/get-yablogs/ 47421/file_1475751201967/major300","width":300,"height":150),"major444":("path":"/get-yablogs/47421/file_1475751201967/major444","fullPath":"https:/ /avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major444","width":444,"height":246),"major900":("path":"/get-yablogs/47421/ file_1475751 201967/major900","fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major900","width":444,"height":246),"minor288": ("path":"/get-yablogs/47421/file_1475751201967/minor288","fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/minor288","width": 288,"height":160),"orig":("height":246,"path":"/get-yablogs/47421/file_1475751201967/orig","width":444,"fullPath":"https: //avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/orig"),"touch288":("path":"/get-yablogs/47421/file_1475751201967/touch288","fullPath":"https ://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/touch288","width":444,"height":246),"touch444":("path":"/get-yablogs/ 47421/file_1475751201967/touch444","fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/touch444","width":444,"height":246),"touch900 ":("height":246,"path":"/get-yablogs/47421/file_1475751201967/touch900","width":444,"fullPath":"https://avatars.mds.yandex.net/get -yab logs/47421/file_1475751201967/touch900")","w1000":("height":246,"path":"/get-yablogs/47421/file_1475751201967/w1000","width":444,"fullPath":" https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w1000"),"w260h260":("height":246,"path":"/get-yablogs/47421/file_1475751201967/w260h260 " ,"width":260,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w260h260"),"w260h360":("height":246,"path " :"/get-yablogs/47421/file_1475751201967/w260h360","width":260,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w260h360"), " w288":("height":156,"path":"/get-yablogs/47421/file_1475751201967/w288","width":282,"fullPath":"https://avatars.mds.yandex.net /get-yablogs/47421/file_1475751201967/w288"),"w288h160":("height":160,"path":"/get-yablogs/47421/file_1475751201967/w288h160","width":288,"fullPath" : "https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w288h160"),"w300":("height":162,"path":"/get-yablogs/47421/file_1475751 201967/w300","width":292,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w300"),"w444":("height":246 ,"path":"/get-yablogs/47421/file_1475751201967/w444","width":444,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w444 "),"w900":("height":246,"path":"/get-yablogs/47421/file_1475751201967/w900","width":444,"fullPath":"https://avatars.mds. yandex.net/get-yablogs/47421/file_1475751201967/w900")","major620":("path":"/get-yablogs/47421/file_1475751201967/major620","fullPath":"https://avatars. mds .yandex.net/get-yablogs/47421/file_1475751201967/major620","width":444,"height":150)),"tags":[("displayName":"Yandex technologies","slug": " technologii-yandeksa","url":"/blog/unternehmen? ?tag=tekhnologii-yandeksa"),("displayName":"wie funktioniert es?","slug":"kak-eto-rabotaet","url":"/blog/company??tag=kak-eto - rabotaet")],"isModerator":false,"isTypography":false,"metaDescription":"","metaKeywords":"","relatedTitle":"","isAutoRelated":false,"commentsEnabled":true , "url":"/blog/company/kak-eto-rabotaet-sintez-rechi","urlTemplate":"/blog/company/%slug%","fullBlogUrl":"https://yandex.ru/ blog /company","addCommentUrl":"/blog/createComment/company/kak-eto-rabotaet-sintez-rechi","updateCommentUrl":"/blog/updateComment/company/kak-eto-rabotaet-sintez-rechi" , "addCommentWithCaptcha":"/blog/createWithCaptcha/company/kak-eto-rabotaet-sintez-rechi","changeCaptchaUrl":"/blog/api/captcha/new","putImageUrl":"/blog/image/put " ,"urlBlog":"/blog/company","urlEditPost":"/blog/57f4dd21ccb9760017cf4ccf/edit","urlSlug":"/blog/post/generateSlug","urlPublishPost":"/blog/57f4dd21ccb9760017cf4ccf/publish " ,"urlUnpublishPost":"/blog/57f4dd21ccb9760017cf4ccf/unpublish","urlRemovePost":"/blog/57f4dd21ccb 9760017cf4ccf/removePost","urlDraft":"/blog/company/kak-eto-rabotaet-sintez-rechi/draft","urlDraftTemplate":"/blog/company/%slug%/draft","urlRemoveDraft":" /blog/57f4dd21ccb9760017cf4ccf/removeDraft","urlTagSuggest":"/blog/api/suggest/company","urlAfterDelete":"/blog/company","isAuthor":false,"subscribeUrl":"/blog/api/ Subscribe/57f4dd21ccb9760017cf4ccf","unsubscribeUrl":"/blog/api/unsubscribe/57f4dd21ccb9760017cf4ccf","urlEditPostPage":"/blog/company/57f4dd21ccb9760017cf4ccf/edit","urlForRelate":"/blog/post/translate"sue": "/blog/post/updateIssue","urlUpdateTranslate":"/blog/post/updateTranslate","urlLoadTranslate":"/blog/post/loadTranslate","urlTranslationStatus":"/blog/company/kak-eto -rabotaet -sintez-rechi/translationInfo","urlRelatedArticles":"/blog/api/relatedArticles/company/kak-eto-rabotaet-sintez-rechi","author":("id":"24151397","uid": ("value":"24151397","lite":false,"hosted":false),"aliases":("13":"chistyakova"),"login":"amarantta","display_name": (" name":"Sveta Chi styakova","avatar":("default":"24700/24151397-15660497","empty":false)),"address":" [E-Mail geschützt] ","defaultAvatar":"24700/24151397-15660497","imageSrc":"https://avatars.mds.yandex.net/get-yapic/24700/24151397-15660497/islands-middle","isYandexStaff": true),"originalModificationDate":"2018-04-03T15:56:07.719Z","socialImage":("h32":("height":32,"path":"/get-yablogs/47421/file_1475751201967/ h32","width":58,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/h32"),"major1000":("height":246," path":"/get-yablogs/47421/file_1475751201967/major1000","width":444,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major1000") ,"major288":("height":156,"path":"/get-yablogs/47421/file_1475751201967/major288","width":287,"fullPath":"https://avatars.mds.yandex. net/get-yablogs/47421/file_1475751201967/major288"),"major300":("path":"/get-yablogs/47421/file_1475751201967/major300","fullPath":"https://avatars.mds.yandex .net/get-yablogs/47421/file_1475751201967/major300","width":300,"height":150),"major444":("path":"/get-yablogs/47421/file_147575 1201967/major444","fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major444","width":444,"height":246),"major900": ("path":"/get-yablogs/47421/file_1475751201967/major900","fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major900","width": 444,"height":246),"minor288":("path":"/get-yablogs/47421/file_1475751201967/minor288","fullPath":"https://avatars.mds.yandex.net/get- yablogs/47421/file_1475751201967/minor288","width":288,"height":160),"orig":("height":246,"path":"/get-yablogs/47421/file_1475751201967/orig", "width":444,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/orig"),"touch288":("path":"/get-yablogs/ 47421/file_1475751201967/touch288","fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/touch288","width":444,"height":246),"touch444 ":("path":"/get-yablogs/47421/file_1475751201967/touch444","fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_14757512 01967/touch444","width":444,"height":246),"touch900":("height":246,"path":"/get-yablogs/47421/file_1475751201967/touch900","width": 444,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/touch900"),"w1000":("height":246,"path":"/get- yablogs/47421/file_1475751201967/w1000","width":444,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w1000")","w260h260":( " height":246,"path":"/get-yablogs/47421/file_1475751201967/w260h260","width":260,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/ 47421 /file_1475751201967/w260h260"),"w260h360":("height":246,"path":"/get-yablogs/47421/file_1475751201967/w260h360","width":260,"fullPath":"https:/ / avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w260h360"),"w288":("height":156,"path":"/get-yablogs/47421/file_1475751201967/w288"," width ":282,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w288"),"w288h160":("height":160,"path":" /get-yablogs/47421/file_14 75751201967/w288h160","width":288,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w288h160"),"w300":("height":162 ,"path":"/get-yablogs/47421/file_1475751201967/w300","width":292,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w300 "),"w444":("height":246,"path":"/get-yablogs/47421/file_1475751201967/w444","width":444,"fullPath":"https://avatars.mds. yandex.net/get-yablogs/47421/file_1475751201967/w444"),"w900":("height":246,"path":"/get-yablogs/47421/file_1475751201967/w900","width":444, "fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/w900"),"major620":("path":"/get-yablogs/47421/file_1475751201967/major620" ,"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1475751201967/major620","width":444,"height":150)))))">

SpeechKit Cloud ist ein Programm, das Entwicklern Zugriff auf Yandex-Spracherkennungs- und -synthesetechnologien bietet. Die Integration wird mit dem Yandex TTS-Modul implementiert, das über den Add-ons Market des MajorDoMo-Systems erhältlich ist.

Die Installation und Konfiguration ist sehr einfach und erfolgt in wenigen Schritten.

1. Gehen Sie zur Systemsteuerung

2. Gehen Sie zum Add-On-Markt

3. Gehen Sie zum Abschnitt "Interaktion".

4. Fügen Sie das Modul zum MajorDomo-System hinzu - Control Panel - Add-ons Market - Interaction - Yandex TTS - Add:

5. Das System informiert uns über die erfolgreiche Installation und leitet auf die Seite „Add-ons Market“ weiter:

6. Zur weiteren Konfiguration des Moduls benötigen Sie den Yandex Api Key, den Sie mit einem bestehenden Yandex-Account kostenlos im Developer Office erhalten:

7. Weisen Sie dem erstellten Schlüssel einen Namen zu und klicken Sie auf SpeechKit Cloud:

8. Füllen Sie die erforderlichen Felder mit Daten aus und klicken Sie auf die Schaltfläche "Senden":

9. Wenn alles richtig gemacht wurde, erscheint rechts in der Liste der generierte API-Schlüssel, der in die Zwischenablage kopiert werden muss:

10. Öffnen Sie die Einstellungen des Yantex TTS-Moduls (MajorDoMo - Systemsteuerung - Anwendungen - Yandex TTS), fügen Sie den im vorherigen Schritt kopierten Schlüssel in das API-Schlüsselfeld ein, wählen Sie die Stimme, die Stimmung und stellen Sie außerdem sicher, dass das Modul ist aktiviert:

11. Einrichtung abgeschlossen!

Beachtung! Ein Test-Yandex-Api-Schlüssel wird für 1 Monat generiert, danach hört das System auf, neue (nicht zwischengespeicherte) Phrasen auszusprechen. Um einen permanenten Schlüssel zu erhalten, müssen Sie einen Brief an Yandex mit der Bitte senden, den Schlüssel in einen permanenten Schlüssel umzuwandeln.

Auf der Yet another Conference 2013 präsentierten wir Entwicklern unsere neue Yandex SpeechKit-Bibliothek. Dies ist eine öffentliche Spracherkennungs-API, die Android- und iOS-Entwickler verwenden können. Sie können SpeechKit herunterladen und die Dokumentation lesen.

Mit Yandex SpeechKit können Sie direkt auf das Backend zugreifen, das erfolgreich in mobilen Yandex-Anwendungen verwendet wird. Wir haben dieses System lange entwickelt und erkennen jetzt 94 % der Wörter in Navigator und Mobile Maps sowie 84 % der Wörter in Mobile Browser korrekt. In diesem Fall dauert die Erkennung etwas mehr als eine Sekunde. Dies ist bereits eine sehr gute Qualität, und wir arbeiten aktiv daran, sie zu verbessern.

Es kann argumentiert werden, dass sich Sprachschnittstellen in naher Zukunft in der Zuverlässigkeit praktisch nicht von klassischen Eingabemethoden unterscheiden werden. Eine detaillierte Geschichte darüber, wie wir es geschafft haben, solche Ergebnisse zu erzielen, und wie unser System funktioniert, finden Sie unter dem Schnitt.

Spracherkennung ist eine der interessantesten und komplexesten Aufgaben der künstlichen Intelligenz. Dabei fließen die Errungenschaften ganz unterschiedlicher Bereiche ein: von der Computerlinguistik bis zur digitalen Signalverarbeitung. Um zu verstehen, wie eine Maschine, die Sprache versteht, aufgebaut sein sollte, wollen wir zunächst verstehen, womit wir es zu tun haben.

I. Grundlagen
Erklingende Sprache ist für uns zunächst einmal ein digitales Signal. Und wenn wir uns die Aufzeichnung dieses Signals ansehen, werden wir dort keine Wörter oder deutlich ausgedrückte Phoneme sehen - verschiedene „Sprachereignisse“ fließen nahtlos ineinander, ohne klare Grenzen zu bilden. Dieselbe Phrase, die von verschiedenen Personen oder in verschiedenen Umgebungen gesprochen wird, sieht auf der Signalebene unterschiedlich aus. Gleichzeitig erkennen die Menschen irgendwie die Sprache des anderen: Daher gibt es Invarianten, nach denen es möglich ist, aus dem Signal wiederherzustellen, was tatsächlich gesagt wurde. Die Suche nach solchen Invarianten ist die Aufgabe der akustischen Modellierung.

Angenommen, die menschliche Sprache besteht aus Phonemen (dies ist eine grobe Vereinfachung, aber in erster Näherung richtig). Definieren wir ein Phonem als eine minimale semantische Einheit einer Sprache, dh einen Laut, dessen Ersetzung zu einer Änderung der Bedeutung eines Wortes oder einer Phrase führen kann. Nehmen wir einen kleinen Teil des Signals, sagen wir 25 Millisekunden. Nennen wir diesen Abschnitt "Rahmen". Welches Phonem wurde in diesem Frame ausgesprochen? Es ist schwierig, diese Frage eindeutig zu beantworten - viele Phoneme sind einander extrem ähnlich. Aber wenn keine eindeutige Antwort gegeben werden kann, dann kann man mit „Wahrscheinlichkeiten“ argumentieren: Für ein bestimmtes Signal sind einige Phoneme wahrscheinlicher, andere weniger wahrscheinlich, und andere können ganz von der Betrachtung ausgeschlossen werden. Tatsächlich ist ein akustisches Modell eine Funktion, die einen kleinen Abschnitt eines akustischen Signals (Rahmen) als Eingabe nimmt und die Wahrscheinlichkeitsverteilung verschiedener Phoneme in diesem Rahmen ausgibt. Das akustische Modell gibt uns also die Möglichkeit, das Gesagte klanglich zu rekonstruieren – mit unterschiedlicher Sicherheit.

Ein weiterer wichtiger Aspekt der Akustik ist die Übergangswahrscheinlichkeit zwischen verschiedenen Phonemen. Aus Erfahrung wissen wir, dass einige Phonemkombinationen leicht auszusprechen sind und häufig vorkommen, während andere schwieriger auszusprechen sind und in der Praxis weniger häufig verwendet werden. Diese Informationen können wir verallgemeinern und bei der Beurteilung der „Plausibilität“ einer bestimmten Phonemfolge berücksichtigen.

Jetzt haben wir alle Werkzeuge, um eines der wichtigsten "Arbeitspferde" der automatischen Spracherkennung zu konstruieren - das Hidden-Markov-Modell (HMM, Hidden Markov Model). Stellen wir uns dazu für eine Weile vor, dass wir nicht das Problem der Spracherkennung lösen, sondern das genaue Gegenteil – die Text-zu-Sprache-Konvertierung. Nehmen wir an, wir möchten die Aussprache des Wortes "Yandex" erhalten. Lassen Sie das Wort „Yandex“ aus einer Reihe von Phonemen bestehen, sagen wir [d][a][n][d][e][k][s]. Lassen Sie uns eine Zustandsmaschine für das Wort "Yandex" erstellen, in der jedes Phonem durch einen separaten Zustand dargestellt wird. Zu jedem Zeitpunkt befinden wir uns in einem dieser Zustände und „sprechen“ die Klangcharakteristik dieses Phonems aus (wir wissen, wie jedes der Phoneme dank des akustischen Modells ausgesprochen wird). Aber einige Phoneme halten lange an (wie [a] im Wort "Yandex"), andere werden praktisch verschluckt. Hier sind Informationen über die Wahrscheinlichkeit des Übergangs zwischen Phonemen hilfreich. Nachdem wir einen Ton erzeugt haben, der dem aktuellen Zustand entspricht, treffen wir eine Wahrscheinlichkeitsentscheidung: im selben Zustand bleiben oder zum nächsten (und dementsprechend zum nächsten Phonem) übergehen.

Formaler kann HMM wie folgt dargestellt werden. Zunächst führen wir den Emissionsbegriff ein. Wie wir uns aus dem vorherigen Beispiel erinnern, "erzeugt" jeder der HMM-Zustände eine Lautcharakteristik dieses bestimmten Zustands (d. h. Phoneme). Auf jedem Rahmen wird der Ton aus der dem gegebenen Phonem entsprechenden Wahrscheinlichkeitsverteilung "ausgespielt". Zweitens sind Übergänge zwischen Zuständen möglich, die ebenfalls vorgegebenen Wahrscheinlichkeitsmustern gehorchen. Beispielsweise ist die Wahrscheinlichkeit hoch, dass sich das Phonem [a] „dehnt“, was für das Phonem [e] nicht gesagt werden kann. Die Emissionsmatrix und die Übergangsmatrix definieren eindeutig das Hidden-Markov-Modell.

Okay, wir haben gesehen, wie ein Hidden-Markov-Modell verwendet werden kann, um Sprache zu erzeugen, aber wie wendet man es auf das umgekehrte Problem der Spracherkennung an? Der Viterbi-Algorithmus kommt zur Rettung. Wir haben eine Reihe von Observablen (eigentlich Ton) und ein probabilistisches Modell, das verborgene Zustände (Phoneme) und Observablen korreliert. Mit dem Viterbi-Algorithmus können Sie die wahrscheinlichste Folge verborgener Zustände wiederherstellen.

Lassen Sie es nur zwei Wörter in unserem Erkennungswörterbuch geben: „Ja“ ([d] [a]) und „Nein“ ([n "] [e] [t]). Somit haben wir zwei versteckte Markov-Modelle. Als Nächstes Nehmen wir an, wir haben eine Aufzeichnung der Stimme des Benutzers, die „Ja“ oder „Nein“ sagt. Der Viterbi-Algorithmus ermöglicht es uns, eine Antwort auf die Frage zu erhalten, welche der Erkennungshypothesen wahrscheinlicher ist.

Unsere Aufgabe ist es nun, die wahrscheinlichste Folge von Zuständen des Hidden-Markov-Modells wiederherzustellen, das die uns präsentierte Audioaufnahme „hervorgebracht“ hat (genauer gesagt erzeugen könnte). Wenn der Benutzer „ja“ sagt, dann kann die entsprechende Folge von Zuständen auf 10 Frames zum Beispiel sein: [d][d][d][d][a][a][a][a][a] [a] oder [e][a][a][a][a][a][a][a][a][a]. Ebenso sind unterschiedliche Aussprachen für „nein“ möglich – zum Beispiel [n „] [n“] [n“] [e] [e] [e] [e] [t] [t] [t] und [n " ] [n "] [e] [e] [e] [e] [e] [e] [t] [t]. Jetzt werden wir die „beste“, d. h. die wahrscheinlichste Art der Aussprache finden Bei jedem Frame fragen wir unser akustisches Modell, wie wahrscheinlich es ist, dass hier ein bestimmtes Phonem erklingt (z. B. [d] und [a]), außerdem berücksichtigen wir die Übergangswahrscheinlichkeiten ([d] ->[d], [d]->[ a], [a]->[a]).So erhalten wir die wahrscheinlichste Art, jede der Hypothesen auszusprechen, außerdem erhalten wir für jede von ihnen ein Maß wie wahrscheinlich es ist, dass dieses bestimmte Wort ausgesprochen wurde (wir können dieses Maß als die Länge des kürzesten Weges durch den entsprechenden Graphen betrachten).

Der Viterbi-Algorithmus ist ziemlich einfach zu implementieren (dynamische Programmierung wird verwendet) und läuft zeitproportional zu dem Produkt aus der Anzahl von HMM-Zuständen und der Anzahl von Rahmen. Es reicht jedoch nicht immer aus, den wahrscheinlichsten Weg zu kennen; zum Beispiel muss man beim Trainieren eines akustischen Modells die Wahrscheinlichkeit jedes Zustands in jedem Rahmen abschätzen. Dazu wird der Forward-Backward-Algorithmus verwendet.

Das akustische Modell ist jedoch nur ein Teil des Systems. Was ist, wenn das Erkennungswörterbuch nicht wie in dem oben diskutierten Beispiel aus zwei Wörtern besteht, sondern aus Hunderttausenden oder sogar Millionen? Viele von ihnen werden sich in der Aussprache sehr ähnlich sein oder sogar übereinstimmen. Gleichzeitig fällt die Rolle der Akustik in Gegenwart des Kontexts zurück: undeutliche, laute oder mehrdeutige Wörter können „durch Bedeutung“ wiederhergestellt werden. Auch hier werden Wahrscheinlichkeitsmodelle verwendet, um den Kontext zu berücksichtigen. Zum Beispiel versteht ein russischer Muttersprachler, dass die Natürlichkeit (in unserem Fall die Wahrscheinlichkeit) des Satzes „Mama hat den Rahmen gewaschen“ höher ist als „Mama hat das Zyklotron gewaschen“ oder „Mutter hat den Rahmen gewaschen“. Das heißt, das Vorhandensein eines festen Kontexts "Mutterseife ..." legt die Wahrscheinlichkeitsverteilung für das nächste Wort fest, was sowohl Semantik als auch Morphologie widerspiegelt. Diese Art von Sprachmodellen wird als N-Gramm-Sprachmodelle bezeichnet (Trigramme im obigen Beispiel); Natürlich gibt es viel komplexere und leistungsfähigere Möglichkeiten, eine Sprache zu modellieren.

II. Was steckt unter der Haube von Yandex ASR?
Wenn wir uns nun die allgemeine Struktur von Spracherkennungssystemen vorstellen, werden wir die Details der Yandex-Technologie - das nach unseren Angaben beste russische Spracherkennungssystem - ausführlicher beschreiben.
Bei den obigen Spielzeugbeispielen haben wir bewusst einige Vereinfachungen vorgenommen und einige wichtige Details weggelassen. Insbesondere haben wir argumentiert, dass der grundlegende „Baustein“ der Sprache das Phonem ist. Tatsächlich ist das Phonem eine zu große Einheit; Um die Aussprache eines einzelnen Phonems angemessen zu modellieren, werden drei getrennte Zustände verwendet – der Anfang, die Mitte und das Ende des Phonems. Zusammen bilden sie dasselbe HMM wie oben dargestellt. Außerdem sind Phoneme positions- und kontextabhängig: Formal klingt das „gleiche“ Phonem deutlich unterschiedlich, je nachdem in welchem ​​Wortteil es steht und an welche Phoneme es angrenzt. Eine einfache Aufzählung aller möglichen Varianten kontextabhängiger Phoneme wird jedoch eine sehr große Anzahl von Kombinationen zurückgeben, von denen viele im wirklichen Leben nie vorkommen; Um die Anzahl der akustischen Ereignisse als angemessen zu betrachten, werden eng kontextabhängige Phoneme früh im Training gepoolt und zusammen betrachtet.
Wir haben also erstens die Phoneme kontextabhängig gemacht und zweitens jedes von ihnen in drei Teile geteilt. Diese Objekte – „Teile von Phonemen“ – bilden nun unser phonetisches Alphabet. Sie werden auch Senons genannt. Jeder Zustand unseres HMM ist Senone. Unser Modell verwendet 48 Phoneme und etwa 4000 Senonen.

Unser akustisches Modell nimmt also immer noch Schall als Eingabe und gibt am Ausgang eine Wahrscheinlichkeitsverteilung über Senons an. Schauen wir uns nun an, was genau eingegeben wird. Wie gesagt, der Ton wird in Abschnitte von 25 ms („Frames“) geschnitten. In der Regel beträgt der Slicing-Schritt 10 ms, sodass sich benachbarte Frames teilweise überlappen. Es ist klar, dass "roher" Klang - die Amplitude von Schwingungen über der Zeit - nicht die informativste Form der akustischen Signaldarstellung ist. Das Spektrum dieses Signals ist schon viel besser. In der Praxis wird meist ein logarithmisches und skaliertes Spektrum verwendet, was den Gesetzmäßigkeiten der menschlichen Hörwahrnehmung entspricht (Mel-Umwandlung). Die erhaltenen Werte werden einer diskreten Kosinustransformation (DCT) unterzogen, und das Ergebnis ist MFCC - Mel Frequency Cepstral Coefficients. (Das Wort Cepstral wird durch Neuanordnung der Buchstaben in Spectral erhalten, was das Vorhandensein eines zusätzlichen DCT widerspiegelt). MFCC ist ein Vektor aus 13 (normalerweise) reellen Zahlen. Sie können als Eingabe für ein akustisches Rohmodell verwendet werden, werden jedoch häufiger vielen zusätzlichen Transformationen unterzogen.

Das akustische Modelltraining ist ein komplexer und mehrstufiger Prozess. Für das Training werden Algorithmen der Expectation-Maximization-Familie verwendet, wie etwa der Baum-Welsh-Algorithmus. Das Wesen solcher Algorithmen ist der Wechsel von zwei Schritten: Beim Erwartungsschritt wird das vorhandene Modell zur Berechnung des Erwartungswertes der Likelihood-Funktion verwendet, beim Maximierungsschritt werden die Modellparameter so verändert, dass sie maximieren diese Schätzung. In den frühen Stadien des Trainings werden einfache akustische Modelle verwendet: einfache MFCC-Merkmale werden als Eingabe gegeben, Phoneme werden als aus dem Zusammenhang gerissen betrachtet, und eine Mischung aus Gaußschen mit diagonalen Kovarianzmatrizen (Diagonal-GMMs – Gaussian Mixture Models) wird verwendet, um die zu modellieren Emissionswahrscheinlichkeit in HMM. Die Ergebnisse jedes vorherigen akustischen Modells sind der Ausgangspunkt zum Trainieren eines komplexeren Modells mit einer komplexeren Eingangs-, Ausgangs- oder Emissionswahrscheinlichkeitsverteilungsfunktion. Es gibt viele Möglichkeiten, das akustische Modell zu verbessern, aber der bedeutendste Effekt ist der Übergang vom GMM-Modell zum DNN (Deep Neural Network), wodurch die Erkennungsqualität nahezu verdoppelt wird. Neuronale Netze sind frei von vielen Beschränkungen von Gaußschen Mischungen und haben eine bessere Verallgemeinerungsfähigkeit. Darüber hinaus sind akustische Modelle, die auf neuronalen Netzen basieren, widerstandsfähiger gegen Rauschen und haben eine bessere Leistung.

Das neuronale Netz zur akustischen Modellierung wird in mehreren Stufen trainiert. Um das neuronale Netzwerk zu initialisieren, wird ein Stack von Restricted Boltzmann Machines (RBM) verwendet. RBM ist ein stochastisches neuronales Netzwerk, das ohne Lehrer trainiert. Obwohl die erlernten Gewichte nicht direkt zur Unterscheidung von Klassen akustischer Ereignisse verwendet werden können, bilden sie die Struktur der Sprache im Detail ab. Sie können sich RBM als Feature Extractor vorstellen – das resultierende generative Modell ist ein ausgezeichneter Ausgangspunkt für den Aufbau eines diskriminativen Modells. Das Diskriminanzmodell wird mit dem klassischen Backpropagation-Algorithmus trainiert, während eine Reihe von Techniken angewendet werden, die die Konvergenz verbessern und eine Überanpassung verhindern. Als Ergebnis gibt es am Eingang des neuronalen Netzwerks mehrere Frames von MFCC-Merkmalen (der mittlere Frame unterliegt der Klassifizierung, der Rest bildet den Kontext), am Ausgang gibt es etwa 4000 Neuronen, die verschiedenen Senons entsprechen. Dieses neuronale Netz wird als akustisches Modell in einem Produktionssystem verwendet.

Schauen wir uns den Dekodierungsprozess genauer an. Für das Problem der spontanen Spracherkennung bei großem Vokabular ist der im ersten Abschnitt beschriebene Ansatz nicht anwendbar. Was benötigt wird, ist eine Datenstruktur, die alle möglichen Sätze miteinander verbindet, die das System erkennen kann. Eine geeignete Struktur ist ein gewichteter Finite-State-Transducer (WFST) – eigentlich nur eine Finite-State-Maschine mit einem Ausgangsband und Gewichten an den Rändern. Am Eingang dieses Automaten stehen Senons, am Ausgang Worte. Der Dekodierungsprozess läuft darauf hinaus, den besten Pfad in diesem Automaten zu wählen und eine Ausgabefolge von Wörtern bereitzustellen, die diesem Pfad entspricht. In diesem Fall besteht der Preis für die Passage entlang jedes Bogens aus zwei Komponenten. Die erste Komponente ist im Voraus bekannt und wird bei der Montage des Automaten berechnet. Es beinhaltet die Kosten der Aussprache, den Übergang in einen bestimmten Zustand, die Wahrscheinlichkeitsbewertung durch das Sprachmodell. Die zweite Komponente wird für einen bestimmten Rahmen separat berechnet: Es ist das akustische Gewicht des Senons, das dem Eingabesymbol des betrachteten Bogens entspricht. Die Dekodierung erfolgt in Echtzeit, daher werden nicht alle möglichen Pfade erkundet: Spezielle Heuristiken begrenzen die Menge der Hypothesen auf die wahrscheinlichsten.

Der technisch interessanteste Teil ist natürlich der Bau eines solchen Automaten. Diese Aufgabe wird offline gelöst. Um von einfachen HMMs für jedes kontextsensitive Phonem zu linearen Automaten für jedes Wort überzugehen, müssen wir ein Aussprachewörterbuch verwenden. Das Erstellen eines solchen Wörterbuchs ist manuell nicht möglich, hier werden Methoden des maschinellen Lernens verwendet (und die Aufgabe selbst heißt in der wissenschaftlichen Community Grapheme-To-Phoneme oder G2P). Die Wörter "verbinden" sich wiederum zu einem Sprachmodell, das ebenfalls als endliche Zustandsmaschine dargestellt wird. Die zentrale Operation hier ist die WFST-Zusammensetzung, aber verschiedene Techniken zum Optimieren von WFST hinsichtlich Größe und Speicherstapeleffizienz sind ebenfalls wichtig.

Das Ergebnis des Dekodierungsprozesses ist eine Liste von Hypothesen, die weiterverarbeitet werden können. Beispielsweise kann ein leistungsfähigeres Sprachmodell verwendet werden, um die wahrscheinlichsten Hypothesen neu einzustufen. Die resultierende Liste wird dem Benutzer sortiert nach dem Vertrauenswert zurückgegeben - dem Grad unseres Vertrauens, dass die Erkennung korrekt war. Oft bleibt nur noch eine Hypothese übrig, in welchem ​​Fall die Client-Anwendung sofort mit der Ausführung des Sprachbefehls fortfährt.

Lassen Sie uns abschließend auf die Frage nach den Qualitätsmetriken von Spracherkennungssystemen eingehen. Die beliebteste Metrik ist die Wortfehlerrate (und ihre umgekehrte Wortgenauigkeit). Im Wesentlichen spiegelt es den Anteil falsch erkannter Wörter wider. Um die Wortfehlerrate für ein Spracherkennungssystem zu berechnen, werden manuell gekennzeichnete Korpora von Sprachabfragen verwendet, die dem Gegenstand der Anwendung unter Verwendung von Spracherkennung entsprechen.

Manchmal müssen wir gedruckten Text mit einer Stimme lesen. Am häufigsten werden solche Programme von denen verwendet, die Fremdsprachen lernen, um die richtige Intonation und Betonung zu bestimmen, auch zum Lesen von Büchern und einfach zum Spaß und zum Scherzen von Freunden. Um die Sprachausgabe des Textes zu verwenden, müssen keine Programme auf Ihren Computer heruntergeladen werden, da in der Online-Version (im Gegensatz) eine ausreichende Anzahl davon vorhanden ist. Dieser Artikel befasst sich mit den besten menschlichen Sprachsynthesizern, die Sie online verwenden können.

Translate.google.com ist ein kostenloser Textübersetzungs- und Synthesedienst.

Google Translate ist einer der beliebtesten und besten Dienste, der eine Reihe verschiedener Dienste anbietet. Beispielsweise hat ein bekannter Übersetzer die Funktion, den eingegebenen Text zu vertonen, und zwar in allen unterstützten Sprachen. Die Tonqualität ist stellenweise etwas dürftig, aber insgesamt akzeptabel. Wenn Sie gedruckten Text zum Sprachenlernen in Sprache übersetzen, ist der Google Übersetzer-Synthesizer perfekt für Sie. Das Wichtigste an diesem Dienst ist, dass er einfach und für jeden Benutzer im Internet zugänglich ist.


So synthetisieren Sie Text in Translate.google.com

Um den Dienst von Google zu nutzen:

  1. Gehen Sie zu https://translate.google.com ;
  2. Wählen Sie die gewünschte Sprache aus, indem Sie auf die Schaltfläche "Sprache definieren" klicken;
  3. Geben Sie dann den Text in das Fenster ein, in dem Sie die Sprache ausgewählt haben;
  4. Klicken Sie nun auf das Grammophon-Symbol am unteren Rand des Fensters, und Sie können die Wiedergabe des Textes in einer weiblichen Stimme hören.

Sein Nachteil ist die Unfähigkeit, die reproduzierte Sprachsynthese in einer Datei auf Ihren Computer herunterzuladen. Es gibt auch keine Spracheinstellungen oder Künstlerauswahl.

Acapela - kostenlose Text-zu-Sprache-Software

Acapela ist der beliebteste und einer der besten Online-Sprachsynthesizer. Der Dienst unterstützt mehr als 30 Sprachen sowie eine große Anzahl von Darstellern zur Auswahl, sowohl männlich als auch weiblich. Für Englisch stehen bis zu 20 Klangfarben zur Auswahl - weiblich, männlich, Teenager, Kind, rauer Mann, weiche Frau usw. Das Programm ist hochgradig anpassbar und einfach zu bedienen. Die Site verfügt über ein Programm für die Offline-Nutzung. Sie haben die Möglichkeit, eine Demoversion des Sprachsynthesizers auszuprobieren, indem Sie auf den entsprechenden Punkt in der Menüleiste klicken.


So verwenden Sie Acapela

Um die Online-Sprachsynthese einzurichten, verwenden Sie den Block auf der linken Seite der Seite http://www.acapela-group.com/voices/demo/ .

Also wie funktioniert es:

  1. Wählen Sie in der ersten Zeile die Sprache des gesprochenen Textes aus.
  2. Die zweite Zeile wird nicht benötigt, wenn Sie Russisch auswählen, da es nur eine Option gibt - Alyona.
  3. Geben Sie in der dritten Zeile Ihren Text ein, den Sie sprechen möchten. Sie können bis zu 300 Zeichen eingeben.
  4. Stimmen Sie als Nächstes den Nutzungsbedingungen zu, indem Sie das Kästchen „Ich stimme den Nutzungsbedingungen zu“ aktivieren.
  5. Klicken Sie unten auf die Schaltfläche "Bitte akzeptieren Sie die Allgemeinen Geschäftsbedingungen".

Die Sprachausgabe über diesen Dienst ist von durchschnittlicher Qualität. Die Intonation ist bei fast allen Wörtern korrekt. Das Produkt ist für alle Plattformen verfügbar.

Next.2yxa.mobi - Online-Dienst zum Lesen von Text

Der Onlinedienst Next.2yxa.mobi ist ein einfacher und kostengünstiger Synthesizer zur Wiedergabe von getipptem Text. Die Website wurde für mobile Geräte entwickelt, sodass wir beim Aufrufen über einen Webbrowser über ein leichtes und schnelles Textsynthese-Tool verfügen. In dieser Hinsicht hat die Website einige Einschränkungen in ihrer Arbeit. Wenn Sie beispielsweise den heruntergeladenen Text „lesen“ müssen, sollte die Dateigröße 100 KB nicht überschreiten. Sie können den Text eingeben und sofort sprechen.

Dazu benötigen Sie:


Vocalizer - Sprachsynthesizer für die Online-Textwiedergabe

Ein weiterer unter den besten Sprachsynthesizern für den Online-Sprachtest, der von ausländischen Entwicklern entwickelt wurde, ist Vocalizer. Es ist unter http://www.nuance.com/landing-pages/playground/Vocalizer_Demo2/vocalizer_modal.html verfügbar. Dies ist ein einfacher und verständlicher Service. Das Menü und die Benutzeroberfläche sind vollständig auf Englisch, aber es wird sehr einfach sein, es herauszufinden. Wir können den Onlinedienst als Demoversion nutzen. Das System bietet Ihnen 100 verschiedene Sprachoptionen und 47 Sprachen.


So verwenden Sie Vocalizer

Sprachsynthese online mit diesem Programm ist sehr einfach. Dafür:

  1. Wählen Sie im Punkt „Sprache / Dialekt“ die Sprache;
  2. Wählen Sie bei „Geschlecht“ eine männliche oder weibliche Sprecherstimme aus (männlich – männlich, weiblich – weiblich);
  3. Geben Sie unten im großen Block den Text für die Sprachausgabe ein und drücken Sie die blaue Taste an der Seite, um ihn abzuspielen.