Hello World!? Sprachsynthese und Spracherkennung mit freier Software
Hören
Diesen – gesprochenen - Text wollen wir jetzt erkennen. Um uns eine zeitraubendes Anlernen auf eine Sprecherstimme zu ersparen, installieren wir uns per
sudo apt-get install audacity sox python-pip
Python und die Audiosoftware Audacity. Darin kann man einen englischen Text aufnehmen und als 16000 Hz Mono Wav-Datei speichern (Projektfrequenz auf 16000 Hz stellen, die Spuren auswählen und Spuren/Abtastrate auf 16000 Hz herunterrechnen lassen, Spuren/Mix/Stereo zu Mono heruntermischen)
Per
sudo pip install deepspeech
installieren wir uns Mozilla Deepspeech und mit
wget https://github.com/mozilla/DeepSpeech/releases/download/v0.2.0/deepspeech-0.2.0-models.tar.gz
kann man sich ein 1,8 GB großes Beispielmodell herunterladen und per
tar xvfz deepspeech-0.2.0-models.tar.gz
entpacken.
Per
deepspeech --model models/output_graph.pbmm --alphabet models/alphabet.txt --lm models/lm.binary --trie models/trie --audio ./process.wav
hört DeepSpeech jetzt die Wav-Datei process.wav ab und gibt den erkannten Text aus. In unserem Fall mit dfki-prudence und dem aktuellen Deep Speech 0.2 sowie dem passenden DeepSpeech 0.2 Beispielmodell.
Probieren Sie es gerne einmal mit Ihrer eigenen Stimme, die Sie per Audacity als Wav-Datei exportieren mit Ihrem eigenen (englischen) gesprochenen Text.
Jochen Staerk
Deepspeech ist ein Kommandozeilenprogramm. Der erkannte Text steht unter »Running inference«.
Ein korrekt erkanntes Hello World erfordert vermutlich eine bessere synthetische Stimme und/oder ein besser trainiertes Modell. Ein solches Modell dürfen Sie durchaus selbst erstellen. Auch das ist aufwändig, aber wir reden hier von Open-Source-Projekten, die eine Beteiligung oder andere Formen der Einbringung nicht ausschlagen werden.
Mozilla Deep Speech basiert auf Machine Learning, genauer Googles TensorFlow. Google hat mit eigenen Modellen, vermutlich anderer Sprachsynthese und zusätzlichem Inhaltsverständnis, aber wahrscheinlich ähnlich gearteter Spracherkennenung im Rahmen von Google Duplex schon schöne Mensch/Maschine-Dialoge zeigen können: https://www.youtube.com/watch?v=bd1mEm2Fy08
Den Stand der Open-Source-Programmen
- lediglich zur Kenntnis nehmen und ignorieren ist das Einfachste,
- darüber zu lachen vermutlich das Schönste und
- beizutragen oder darauf aufzubauen, das Schwierigste.
Beitragen können Sie übrigens leicht, in fünf Minuten haben Sie auf voice.mozilla.org locker fünf Sprachbeispiele abgeliefert und fremde Beispiele bestätigt, ohne sich dafür auch nur registrieren zu müssen. Sie dürfen sich gern auch mehr Zeit nehmen und mehr zum Corpus beitragen.