Mozilla hat die Spracherkennungs-Engine DeepSpeech 0.6 eingeführt

Eingereicht von Veröffentlichung der von Mozilla entwickelten Spracherkennungs-Engine DeepSpeech 0.6, das die gleichnamige Spracherkennungsarchitektur implementiert, vorgeschlagen von Forschern aus Baidu. Die Implementierung ist in Python unter Verwendung der TensorFlow-Plattform für maschinelles Lernen geschrieben vertrieben von unter der kostenlosen MPL 2.0-Lizenz. Unterstützt die Arbeit unter Linux, Android, macOS und Windows. Die Leistung reicht aus, um die Engine auf LePotato-, Raspberry Pi 3- und Raspberry Pi 4-Boards zu verwenden.

Ebenfalls im Set enthalten angeboten ausgebildete Modelle, Beispiele Sounddateien und Erkennungstools über die Befehlszeile. Um die Spracherkennungsfunktion in Ihre Programme zu integrieren, werden fertige Module für Python, NodeJS, C++ und .NET angeboten (Drittentwickler haben separat vorbereitete Module dafür). Rust и Go). Das fertige Modell wird nur für Englisch, aber auch für andere Sprachen geliefert beigefügt Anleitung Sie können das System selbst damit trainieren Sprachdaten, gesammelt vom Common Voice-Projekt.

DeepSpeech ist viel einfacher als herkömmliche Systeme und bietet gleichzeitig eine qualitativ hochwertigere Erkennung bei Vorhandensein von Fremdgeräuschen. Es umgeht traditionelle akustische Modelle und das Konzept der Phoneme und verwendet stattdessen ein hochoptimiertes, auf einem neuronalen Netzwerk basierendes maschinelles Lernsystem, das die Entwicklung separater Komponenten zur Modellierung verschiedener Anomalien wie Rauschen, Echo und Sprachmerkmale überflüssig macht.

Der Nachteil dieses Ansatzes besteht darin, dass die DeepSpeech-Engine eine große Menge heterogener Daten benötigt, um eine qualitativ hochwertige Erkennung und ein Training eines neuronalen Netzwerks zu erhalten, die unter realen Bedingungen von verschiedenen Stimmen und in Gegenwart von natürlichem Rauschen diktiert werden.
Ein in Mozilla erstelltes Projekt sammelt solche Daten. Gemeinsame Stimme, Bereitstellung eines verifizierten Datensatzes mit 780 Stunden Englisch, 325 auf Deutsch, 173 auf Französisch und 27 Stunden auf Russisch.

Das ultimative Ziel des Common Voice-Projekts besteht darin, 10 Stunden Aufzeichnungen verschiedener Aussprachen typischer Phrasen der menschlichen Sprache zu sammeln, um ein akzeptables Maß an Erkennungsfehlern zu erreichen. In der jetzigen Form haben die Projektteilnehmer bereits insgesamt 4.3 Tausend Stunden diktiert, davon wurden 3.5 Tausend Stunden getestet. Beim Training des endgültigen englischen Sprachmodells für DeepSpeech wurden 3816 Stunden Sprache verwendet, zusätzlich zu Common Voice, das Daten aus den Projekten LibriSpeech, Fisher und Switchboard abdeckt, sowie etwa 1700 Stunden transkribierte Radiosendungsaufzeichnungen.

Bei Verwendung des zum Download angebotenen vorgefertigten englischen Sprachmodells beträgt die Erkennungsfehlerrate in DeepSpeech bei Auswertung mit einem Testset 7.5 % LibriSpeech. Zum Vergleich die Fehlerquote bei der menschlichen Erkennung geschätzt in 5.83%.

DeepSpeech besteht aus zwei Subsystemen – einem akustischen Modell und einem Decoder. Das akustische Modell verwendet Methoden des tiefen maschinellen Lernens, um die Wahrscheinlichkeit zu berechnen, dass bestimmte Zeichen im Eingabeton vorhanden sind. Der Decoder verwendet einen Strahlensuchalgorithmus, um Zeichenwahrscheinlichkeitsdaten in eine Textdarstellung umzuwandeln.

Haupt- Innovationen DeepSpeech 0.6 (0.6-Zweig ist nicht mit früheren Versionen kompatibel und erfordert Code- und Modellaktualisierungen):

  • Es wird ein neuer Streaming-Decoder vorgeschlagen, der eine höhere Reaktionsfähigkeit bietet und unabhängig von der Größe der verarbeiteten Audiodaten ist. Dadurch gelang es der neuen Version von DeepSpeech, die Latenz für die Erkennung auf 260 ms zu reduzieren, was 73 % schneller als zuvor ist und die Verwendung von DeepSpeech in Spracherkennungslösungen im laufenden Betrieb ermöglicht.
  • Es wurden Änderungen an der API vorgenommen und an der Vereinheitlichung der Funktionsnamen gearbeitet. Es wurden Funktionen hinzugefügt, um zusätzliche Metadaten zur Synchronisierung zu erhalten, sodass Sie nicht nur eine Textdarstellung als Ausgabe erhalten, sondern auch die Bindung einzelner Zeichen und Sätze an eine Position im Audiostream verfolgen können.
  • Dem Toolkit für Schulungsmodule wurde Unterstützung für die Verwendung der Bibliothek hinzugefügt CuDNN um die Arbeit mit wiederkehrenden neuronalen Netzen (RNN) zu optimieren, was eine deutliche (ungefähr zweifache) Steigerung der Modelltrainingsleistung ermöglichte, jedoch Änderungen am Code erforderte, die die Kompatibilität mit zuvor erstellten Modellen beeinträchtigten.
  • Die Mindestanforderungen an die TensorFlow-Version wurden von 1.13.1 auf 1.14.0 angehoben. Unterstützung für die Lightweight-Edition von TensorFlow Lite hinzugefügt, wodurch die Größe des DeepSpeech-Pakets von 98 MB auf 3.7 MB reduziert wird. Für die Verwendung auf eingebetteten und mobilen Geräten wurde außerdem die Größe der gepackten Datei mit dem Modell von 188 MB auf 47 MB ​​reduziert (die Quantisierungsmethode wird zur Komprimierung verwendet, nachdem das Modell trainiert wurde).
  • Das Sprachmodell wurde in ein anderes Datenstrukturformat übersetzt, das die Zuordnung von Dateien in den Speicher beim Laden ermöglicht. Die Unterstützung für das alte Format wurde eingestellt.
  • Der Modus zum Laden einer Datei mit einem Sprachmodell wurde geändert, was zu einem geringeren Speicherverbrauch und weniger Verzögerungen bei der Verarbeitung der ersten Anfrage nach der Erstellung des Modells führte. Im Betrieb verbraucht DeepSpeech nun 22-mal weniger Speicher und startet 500-mal schneller.

    Mozilla hat die Spracherkennungs-Engine DeepSpeech 0.6 eingeführt

  • Seltene Wörter wurden im Sprachmodell gefiltert. Die Gesamtzahl der Wörter wurde auf 500 der beliebtesten Wörter reduziert, die in dem zum Trainieren des Modells verwendeten Text gefunden wurden. Durch die Bereinigung konnte die Größe des Sprachmodells von 1800 MB auf 900 MB reduziert werden, ohne dass sich dies praktisch auf die Erkennungsfehlerrate auswirkte.
  • Unterstützung für verschiedene hinzugefügt Techniker Erstellen zusätzlicher Variationen (Augmentation) der im Training verwendeten Audiodaten (z. B. Hinzufügen von Verzerrung oder Rauschen zu einer Reihe von Optionen).
  • Eine Bibliothek mit Bindungen für die Integration mit Anwendungen hinzugefügt, die auf der .NET-Plattform basieren.
  • Die Dokumentation wurde überarbeitet und ist nun auf einer separaten Website zusammengefasst. deepspeech.readthedocs.io.

Source: opennet.ru

Kommentar hinzufügen