Mozilla dezvăluie motorul de recunoaștere a vorbirii DeepSpeech 0.6

Introdus lansarea motorului de recunoaștere a vorbirii dezvoltat de Mozilla DeepSpeech 0.6, care implementează arhitectura de recunoaștere a vorbirii cu același nume, propus de cercetătorii din Baidu. Implementarea este scrisă în Python folosind platforma de învățare automată TensorFlow și distribuit de sub licența MPL 2.0 gratuită. Acceptă lucrul pe Linux, Android, macOS și Windows. Performanța este suficientă pentru a utiliza motorul pe plăcile LePotato, Raspberry Pi 3 și Raspberry Pi 4.

Inclus și în set a oferit modele instruite, exemple fișiere de sunet și instrumente de recunoaștere din linia de comandă. Pentru a integra funcția de recunoaștere a vorbirii în programele dvs., sunt oferite module gata de utilizare pentru Python, NodeJS, C++ și .NET (dezvoltatorii terți au pregătite module separat pentru Rugină и Go). Modelul finit este furnizat numai pentru limba engleză, dar pentru alte limbi de către atașat instrucțiuni puteți antrena singur sistemul folosind date vocale, cules de proiectul Common Voice.

DeepSpeech este mult mai simplu decât sistemele tradiționale și, în același timp, oferă recunoaștere de calitate superioară în prezența zgomotului străin. Ocolește modelele acustice tradiționale și conceptul de foneme, utilizând în schimb un sistem de învățare automată bazat pe rețea neuronală extrem de optimizat, care elimină nevoia de a dezvolta componente separate pentru a modela diferite anomalii, cum ar fi zgomotul, ecoul și caracteristicile de vorbire.

Dezavantajul acestei abordări este că pentru a obține recunoașterea și antrenamentul de înaltă calitate a unei rețele neuronale, motorul DeepSpeech necesită o cantitate mare de date eterogene, dictate în condiții reale de voci diferite și în prezența zgomotului natural.
Un proiect creat în Mozilla colectează astfel de date. Vocea obișnuită, oferind un set de date verificat cu 780 de ore de engleză, 325 în germană, 173 în franceză și 27 ore în rusă.

Scopul final al proiectului Common Voice este de a acumula 10 mii de ore de înregistrări ale diferitelor pronunții ale frazelor tipice ale vorbirii umane, ceea ce va permite atingerea unui nivel acceptabil de erori în recunoaștere. În forma sa actuală, participanții la proiect au dictat deja un total de 4.3 mii de ore, dintre care 3.5 mii au fost testate. La antrenamentul modelului final de limba engleză pentru DeepSpeech, au fost folosite 3816 de ore de vorbire, pe lângă datele de acoperire a Common Voice din proiectele LibriSpeech, Fisher și Switchboard și, de asemenea, au inclus aproximativ 1700 de ore de înregistrări de emisiuni radio transcrise.

Când utilizați modelul gata făcut în limba engleză oferit pentru descărcare, rata de eroare de recunoaștere în DeepSpeech este de 7.5% atunci când este evaluată cu un set de testare LibriSpeech. Pentru comparație, rata de eroare pentru recunoașterea umană este evaluat la 5.83%.

DeepSpeech este format din două subsisteme - un model acustic și un decodor. Modelul acustic folosește metode de învățare automată profundă pentru a calcula probabilitatea ca anumite caractere să fie prezente în sunetul de intrare. Decodorul folosește un algoritm de căutare cu raze pentru a converti datele de probabilitate a caracterelor într-o reprezentare text.

Principalul inovații DeepSpeech 0.6 (ramura 0.6 nu este compatibilă cu versiunile anterioare și necesită actualizări de cod și model):

  • Este propus un nou decodor de streaming care oferă o capacitate de răspuns mai mare și este independent de dimensiunea datelor audio procesate. Drept urmare, noua versiune a DeepSpeech a reușit să reducă latența de recunoaștere la 260 ms, ceea ce este cu 73% mai rapid decât înainte, și permite DeepSpeech să fie utilizat în soluții de recunoaștere a vorbirii din mers.
  • Au fost făcute modificări la API și s-a lucrat pentru unificarea numelor de funcții. Au fost adăugate funcții pentru a obține metadate suplimentare despre sincronizare, permițându-vă nu numai să primiți o reprezentare text ca rezultat, ci și să urmăriți legarea caracterelor și propozițiilor individuale la o poziție din fluxul audio.
  • S-a adăugat suport pentru utilizarea bibliotecii la setul de instrumente pentru modulele de instruire CuDNN pentru a optimiza lucrul cu rețele neuronale recurente (RNN), ceea ce a făcut posibilă obținerea unei creșteri semnificative (de aproximativ două ori) a performanței antrenamentului modelului, dar a necesitat modificări ale codului care au încălcat compatibilitatea cu modelele pregătite anterior.
  • Cerințele minime pentru versiunea TensorFlow au fost crescute de la 1.13.1 la 1.14.0. S-a adăugat suport pentru ediția ușoară a TensorFlow Lite, care reduce dimensiunea pachetului DeepSpeech de la 98 MB la 3.7 MB. Pentru utilizarea pe dispozitive încorporate și mobile, dimensiunea fișierului împachetat cu modelul a fost, de asemenea, redusă de la 188 MB la 47 MB ​​(metoda de cuantizare este utilizată pentru compresie după ce modelul este antrenat).
  • Modelul de limbă a fost tradus într-un format diferit de structură de date, care permite ca fișierele să fie mapate în memorie atunci când sunt încărcate. Suportul pentru vechiul format a fost întrerupt.
  • Modul de încărcare a unui fișier cu un model de limbă a fost modificat, ceea ce a redus consumul de memorie și a redus întârzierile la procesarea primei solicitări după crearea modelului. În timpul funcționării, DeepSpeech consumă acum de 22 de ori mai puțină memorie și pornește de 500 de ori mai repede.

    Mozilla dezvăluie motorul de recunoaștere a vorbirii DeepSpeech 0.6

  • Cuvintele rare au fost filtrate în modelul lingvistic. Numărul total de cuvinte a fost redus la 500 de mii dintre cele mai populare cuvinte găsite în textul folosit pentru a antrena modelul. Curățarea a făcut posibilă reducerea dimensiunii modelului de limbă de la 1800MB la 900MB, practic fără niciun efect asupra ratei de eroare de recunoaștere.
  • S-a adăugat suport pentru diverse tehnician crearea de variații suplimentare (augmentare) a datelor audio utilizate în antrenament (de exemplu, adăugarea de distorsiuni sau zgomot la un set de opțiuni).
  • S-a adăugat o bibliotecă cu legături pentru integrarea cu aplicații bazate pe platforma .NET.
  • Documentația a fost reelaborată și acum este colectată pe un site separat. deepspeech.readthedocs.io.

Sursa: opennet.ru

Adauga un comentariu