Uruchomienie zostało opublikowane silnik rozpoznawania głosu DeepSpeech 0.9 opracowany przez Mozillę, który implementuje architekturę rozpoznawanie głosu o tej samej nazwie zaproponowanej przez badaczy Baidu.
Implementacja jest napisany w Pythonie przy użyciu platforma uczenia maszynowego TensorFlow i jest rozpowszechniany na bezpłatnej licencji MPL 2.0.
O DeepSpeech
DeepSpeech składa się z dwóch podsystemów: model akustyczny i dekoder. Model akustyczny wykorzystuje techniki głębokiego uczenia maszynowego do obliczania prawdopodobieństwa obecności pewnych znaków w dźwięku wejściowym.
Dekoder wykorzystuje algorytm wyszukiwania promieni, aby przekształcić dane dotyczące prawdopodobieństwa znaku w reprezentację tekstową. DeepSpeech jest znacznie prostszy niż tradycyjne systemy, a jednocześnie zapewnia wyższą jakość rozpoznawania w obecności zewnętrznego szumu.
Rozwój nie wykorzystuje tradycyjnych modeli akustycznych i koncepcji fonemów; zamiast tego używany jest dobrze zoptymalizowany system uczenia maszynowego oparty na sieci neuronowej, który eliminuje potrzebę opracowywania oddzielnych komponentów do modelowania różnych anomalii, takich jak szum, echo i charakterystyka mowy.
Zestaw oferuje wyszkolone modele, przykładowe pliki dźwiękowe i narzędzia do rozpoznawania linii poleceń.
Gotowy model jest dostarczany tylko w języku angielskim i chińskim. W przypadku innych języków możesz samodzielnie nauczyć się systemu zgodnie z załączonymi instrukcjami, korzystając z danych głosowych zebranych w ramach projektu Common Voice.
Kiedy używany jest gotowy do użycia model języka angielskiego, który jest oferowany do pobrania, poziom błędów rozpoznawania w DeepSpeech wynosi 7.06%, gdy jest oceniany za pomocą zestawu testów LibriSpeech.
Dla porównania, współczynnik błędu rozpoznawania przez ludzi szacuje się na 5,83%.
W proponowanym modelu najlepszy wynik rozpoznawczy uzyskuje się przy czystym nagraniu męskiego głosu z amerykańskim akcentem w środowisku bez obcych szumów.
Według autora Vosk Continuous Speech Recognition Library wadami zestawu Common Voice jest jednostronność materiału mowy (przewaga mężczyzn w wieku 20-30 lat oraz brak materiału z głosem kobiet, dzieci i osoby starsze), brak zmienności słownictwa (powtarzanie tych samych fraz) oraz dystrybucja nagrań MP3 podatnych na zniekształcenia.
Wady DeepSpeech obejmują słabą wydajność oraz duże zużycie pamięci w dekoderze, a także ważne zasoby do trenowania modelu (Mozilla używa systemu z 8 GPU Quadro RTX 6000 z 24 GB VRAM w każdym).
Wadą tego podejścia jest to do wysokiej jakości rozpoznawania i uczenia sieci neuronowej, silnik DeepSpeech wymaga dużej ilości danych niejednorodny podyktowany w rzeczywistych warunkach różnymi głosami i w obecności odgłosów naturalnych.
Dane te są opracowywane przez projekt Common Voice stworzony w Mozilli, który zapewnia zweryfikowany zestaw danych obejmujący 1469 godzin w języku angielskim, 692 w języku niemieckim, 554 w języku francuskim, 105 godzin w języku rosyjskim i 22 godziny w języku ukraińskim.
Podczas szkolenia końcowego modelu angielskiego dla DeepSpeech, oprócz Common Voice, wykorzystywane są dodatkowo dane z projektów LibriSpeech, Fisher i Switchboard, a także około 1700 godzin nagrań transkrybowanych programów radiowych.
Między zmianami w nowej branży podkreślona jest możliwość wymuszenia wagi słów wybrane podczas procesu dekodowania.
Podkreślono również obsługę platformy Electron 9.2 i opcjonalną implementację mechanizmu normalizacji warstw (Layer Norm) podczas uczenia sieci neuronowej.
Pobierz i pobierz
Wydajność jest wystarczająca do zastosowania silnika w płytach LePotato, Raspberry Pi 3 i Raspberry Pi 4, a także w smartfonach Google Pixel 2, Sony Xperia Z Premium i Nokia 1.3.
Oferowane gotowe moduły do wykorzystania w językach Python, NodeJS, C ++ i .NET w celu zintegrowania funkcji rozpoznawania mowy z programami (niezależni programiści mają osobno przygotowane moduły dla Rust, Go i V).