Firma Mozilla zaprezentowała silnik rozpoznawania mowy DeepSpeech 0.6

Przedstawiony wydanie silnika rozpoznawania mowy rozwijanego przez firmę Mozilla DeepSpeech 0.6, który realizuje architekturę rozpoznawania mowy o tej samej nazwie, zapropowaną przez badaczy z firmy Baidu. Implementacja została napisana w języku Python przy użyciu platformy do uczenia maszynowego TensorFlow i rozpowszechniany wydana na licencji MPL 2.0. Obsługiwana jest praca w systemach Linux, Android, macOS i Windows. Wydajność jest wystarczająca do użycia silnika na płytach LePotato, Raspberry Pi 3 i Raspberry Pi 4.

W zestawie znajdują się także są oferowane wyuczone modele, przykłady plików dźwiękowych oraz narzędzia do rozpoznawania z poziomu wiersza poleceń. W celu wbudowania funkcji rozpoznawania mowy w swoje programy oferowane są gotowe moduły do użycia w Pythonie, NodeJS, C++ i .NET (moduły opracowane przez zewnętrznych twórców są dostępne osobno dla Rust i Go). Gotowy model dostarczany jest tylko dla języka angielskiego, ale dla innych języków można samodzielnie instrukcją wytrenować system, korzystając z danych głosowych, zebranych w ramach projektu Common Voice.

DeepSpeech jest znacznie prostszy niż tradycyjne systemy, a jednocześnie zapewnia wyższą jakość rozpoznawania w obecności zakłóceń. W rozwoju nie są wykorzystywane tradycyjne modele akustyczne ani koncepcja fonemów, zamiast nich zastosowano dobrze zoptymalizowany system uczenia maszynowego oparty na sieciach neuronowych, który pozwala na zrezygnowanie z tworzenia oddzielnych komponentów do modelowania różnych zakłóceń, takich jak hałas, echo i cechy mowy.

Drugą stroną tego podejścia jest to, że aby uzyskać wysoką jakość rozpoznawania i wytrenować sieć neuronową, silnik DeepSpeech wymaga dużej ilości różnorodnych danych, nagranych w rzeczywistych warunkach różnymi głosami i przy obecności naturalnych hałasów.
Zbieraniem takich danych zajmuje się stworzony w Mozilli projekt Common Voice, który oferuje zweryfikowany zestaw danych z 780 godzinami w języku angielskim, 325 w niemieckim, 173 we francuskim i 27 godzinami w rosyjskim.

Ostatecznym celem projektu Common Voice jest zgromadzenie 10 tysięcy godzin nagrań różnych wymówień typowych fraz mowy ludzkiej, co pozwoli na osiągnięcie akceptowalnego poziomu błędów w rozpoznawaniu. W bieżącej wersji uczestnicy projektu już nagrali łącznie 4,3 tysiąca godzin, z czego 3,5 tysiąca przeszło weryfikację. Do przeszkolenia końcowego modelu języka angielskiego dla DeepSpeech użyto 3816 godzin mowy, oprócz danych z Common Voice obejmujących informacje z projektów LibriSpeech, Fisher i Switchboard, a także około 1700 godzin transkrybowanych nagrań audycji radiowych.

Przy użyciu dostępnego do pobrania modelu języka angielskiego poziom błędów rozpoznawania w DeepSpeech wynosi 7,5% według testowania na zbiorze testowym. LibriSpeech. Dla porównania, poziom błędów przy rozpoznawaniu przez człowieka jest oceniany na 5,83%.

DeepSpeech składa się z dwóch podsystemów — modelu akustycznego i dekodera. Model akustyczny wykorzystuje metody głębokiego uczenia maszynowego do obliczania prawdopodobieństwa występowania określonych symboli w dźwięku podawanym na wejście. Dekoder wykorzystuje algorytm przeszukiwania ścieżki do przekształcania danych o prawdopodobieństwie symboli w tekstowe przedstawienie.

Podstawowe nowości DeepSpeech 0.6 (gałąź 0.6 nie jest zgodna z wcześniejszymi wydaniami i wymaga aktualizacji kodu i modeli):

  • Zaproponowano nowy dekoder strumieniowy, zapewniający wyższą responsywność i niezależny od rozmiaru przetwarzanych danych dźwiękowych. W rezultacie w nowej wersji DeepSpeech udało się obniżyć opóźnienie w rozpoznawaniu do 260 ms, co jest o 73% szybsze niż wcześniej, i pozwala na zastosowanie DeepSpeech w rozwiązaniach do rozpoznawania mowy w czasie rzeczywistym.
  • Wprowadzono zmiany w API i przeprowadzono prace nad unifikacją nazw funkcji. Dodano funkcje umożliwiające uzyskanie dodatkowych metadanych o synchronizacji, pozwalające nie tylko na uzyskanie tekstowego przedstawienia, ale także na śledzenie powiązania poszczególnych symboli i zdań z pozycją w strumieniu dźwiękowym.
  • Do narzędzi do szkolenia modeli dodano wsparcie dla biblioteki CuDNN Aby zoptymalizować działanie z rekurencyjnymi sieciami neuronowymi (RNN), co pozwoliło na uzyskanie znacznego (około dwukrotnego) zwiększenia wydajności uczenia się modelu, konieczne było wprowadzenie zmian w kodzie, które naruszyły zgodność z wcześniej przygotowanymi modelami.
  • Minimalne wymagania dotyczące wersji TensorFlow wzrosły z 1.13.1 do 1.14.0. Dodano wsparcie dla lekkiej wersji TensorFlow Lite, której użycie zmniejszyło rozmiar pakietu DeepSpeech z 98 MB do 3.7 MB. W przypadku zastosowań na wbudowanych i mobilnych urządzeniach rozmiar spakowanego pliku z modelem również skrócono z 188 MB do 47 MB (dla kompresji zastosowano metodę kwantyzacji po zakończeniu szkolenia modelu).
  • Model językowy został przekonwertowany na inny format struktur danych, co umożliwia mapowanie plików w pamięci podczas ładowania. Wsparcie dla starego formatu zostało zakończone.
  • Zmieniono tryb ładowania pliku z modelem językowym, co zmniejszyło zużycie pamięci i skróciło opóźnienia podczas przetwarzania pierwszego zapytania po utworzeniu modelu. W trakcie działania DeepSpeech teraz zużywa 22 razy mniej pamięci i uruchamia się 500 razy szybciej.

    Firma Mozilla zaprezentowała silnik rozpoznawania mowy DeepSpeech 0.6
  • Przeprowadzono filtrację rzadkich słów w modelu językowym. Ogólna liczba słów została zmniejszona do 500 tysięcy najpopularniejszych słów występujących w tekście użytym podczas szkolenia modelu. Przeprowadzona czyszczenie pozwoliło obniżyć rozmiar modelu językowego z 1800 MB do 900 MB, praktycznie nie wpływając na wskaźniki błędów rozpoznawania.
  • Dodano wsparcie dla różnych technik tworzenia dodatkowych wariacji (augmentation) danych dźwiękowych używanych podczas szkolenia (na przykład, dodawanie do zbioru wariantów, w których wprowadzono zniekształcenia lub szumy).
  • Dodano bibliotekę z wiązaniami dla integracji z aplikacjami opartymi na platformie .NET.
  • Przepracowano dokumentację, która teraz została zebrana na osobnej stronie deepspeech.readthedocs.io.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster