vydanie nástroja na rozpoznávanie reči vyvinutého spoločnosťou Mozilla , ktorá implementuje architektúru rozpoznávania reči s rovnakým názvom, výskumníkmi z Baidu. Implementácia je napísaná v Pythone pomocou platformy strojového učenia TensorFlow a pod bezplatnou licenciou MPL 2.0. Práca je podporovaná v Linux, Android, macOS и WindowsVýkon je dostatočný na použitie enginu na doskách LePotato, Raspberry Pi 3 a Raspberry Pi 4.
Tiež zahrnuté v súprave trénované modelky, zvukové súbory a nástroje na rozpoznávanie z príkazového riadku. Na integráciu funkcie rozpoznávania reči do vašich programov sú ponúkané moduly pripravené na použitie pre Python, NodeJS, C++ a .NET (vývojári tretích strán majú samostatne pripravené moduly pre и ). Hotový model je dodávaný iba pre angličtinu, ale pre iné jazyky systém môžete trénovať sami pomocou , ktorú zozbieral projekt Common Voice.
DeepSpeech je oveľa jednoduchší ako tradičné systémy a zároveň poskytuje kvalitnejšie rozpoznávanie v prítomnosti cudzieho šumu. Obchádza tradičné akustické modely a koncepciu foném, namiesto toho používa vysoko optimalizovaný systém strojového učenia založený na neurónovej sieti, ktorý eliminuje potrebu vyvíjať samostatné komponenty na modelovanie rôznych anomálií, ako sú šum, ozvena a funkcie reči.
Nevýhodou tohto prístupu je, že na získanie vysokokvalitného rozpoznania a trénovania neurónovej siete vyžaduje engine DeepSpeech veľké množstvo heterogénnych dát, diktovaných v reálnych podmienkach rôznymi hlasmi a za prítomnosti prirodzeného šumu.
Projekt vytvorený v Mozille takéto údaje zhromažďuje. poskytujúci overený súbor údajov so 780 hodinami , 325 v nemčine, 173 vo francúzštine a 27 hodín v ruštine.
Konečným cieľom projektu Common Voice je nazhromaždiť 10 4.3 hodín nahrávok rôznych výslovností typických fráz ľudskej reči, čo umožní dosiahnuť prijateľnú úroveň chýb v rozpoznávaní. V súčasnej podobe už účastníci projektu nadiktovali spolu 3.5 tisíc hodín, z toho 3816 tisíc otestovaných. Pri trénovaní konečného modelu anglického jazyka pre DeepSpeech sa použilo 1700 XNUMX hodín reči, okrem údajov Common Voice pokrývajúcich dáta z projektov LibriSpeech, Fisher a Switchboard, a tiež vrátane približne XNUMX XNUMX hodín prepísaných nahrávok rozhlasových relácií.
Pri použití hotového modelu anglického jazyka ponúkaného na stiahnutie je chybovosť rozpoznávania v DeepSpeech 7.5 % pri hodnotení pomocou testovacej sady . Pre porovnanie chybovosť pri rozpoznávaní človekom na 5.83%.
DeepSpeech pozostáva z dvoch podsystémov – akustického modelu a dekodéra. Akustický model využíva metódy hlbokého strojového učenia na výpočet pravdepodobnosti prítomnosti určitých znakov vo vstupnom zvuku. Dekodér používa algoritmus vyhľadávania lúčov na konverziu údajov o pravdepodobnosti znakov na textovú reprezentáciu.
Hlavné DeepSpeech 0.6 (vetva 0.6 nie je kompatibilná s predchádzajúcimi vydaniami a vyžaduje aktualizácie kódu a modelu):
- Navrhuje sa nový streamingový dekodér, ktorý poskytuje vyššiu odozvu a je nezávislý od veľkosti spracovávaných audio dát. V dôsledku toho sa novej verzii DeepSpeech podarilo znížiť latenciu rozpoznávania na 260 ms, čo je o 73 % rýchlejšie ako predtým, a umožňuje používať DeepSpeech v riešeniach rozpoznávania reči za behu.
- Boli vykonané zmeny v rozhraní API a pracovalo sa na zjednotení názvov funkcií. Boli pridané funkcie na získanie ďalších metadát o synchronizácii, čo vám umožňuje nielen prijímať textovú reprezentáciu ako výstup, ale aj sledovať viazanie jednotlivých znakov a viet na pozíciu v audio streame.
- Do sady nástrojov pre školiace moduly bola pridaná podpora používania knižnice optimalizovať prácu s rekurentnými neurónovými sieťami (RNN), čo umožnilo dosiahnuť výrazné (približne dvojnásobné) zvýšenie výkonu trénovania modelov, ale vyžadovalo si zmeny v kóde, ktoré narúšali kompatibilitu s predtým pripravenými modelmi.
- Minimálne požiadavky na verziu TensorFlow boli zvýšené z 1.13.1 na 1.14.0. Pridaná podpora pre odľahčenú edíciu TensorFlow Lite, ktorá znižuje veľkosť balíka DeepSpeech z 98 MB na 3.7 MB. Pre použitie na vstavaných a mobilných zariadeniach bola zmenšená aj veľkosť zbaleného súboru s modelom zo 188 MB na 47 MB (na kompresiu po natrénovaní modelu sa používa kvantizačná metóda).
- Jazykový model bol preložený do iného formátu dátovej štruktúry, ktorý umožňuje pri načítaní mapovať súbory do pamäte. Podpora starého formátu bola ukončená.
- Zmenil sa režim načítania súboru s jazykovým modelom, čím sa znížila spotreba pamäte a znížili sa oneskorenia pri spracovaní prvej požiadavky po vytvorení modelu. Počas prevádzky teraz DeepSpeech spotrebuje 22-krát menej pamäte a spúšťa sa 500-krát rýchlejšie.
- V jazykovom modeli boli filtrované zriedkavé slová. Celkový počet slov sa znížil na 500 tisíc najpopulárnejších slov nájdených v texte použitom na trénovanie modelu. Čistenie umožnilo zmenšiť veľkosť jazykového modelu z 1800 MB na 900 MB, prakticky bez vplyvu na chybovosť rozpoznávania.
- Pridaná podpora pre rôzne vytváranie ďalších variácií (augmentácia) zvukových údajov používaných pri tréningu (napríklad pridanie skreslenia alebo šumu do súboru možností).
- Pridaná knižnica s väzbami na integráciu s aplikáciami založenými na platforme .NET.
- Dokumentácia bola prepracovaná a teraz je zhromaždená na samostatnej webovej stránke. .
Zdroj: opennet.ru
