Mozilla predstavlja DeepSpeech 0.6 motor za prepoznavanje govora

Poslao izdanje motora za prepoznavanje govora koji je razvila Mozilla DeepSpeech 0.6, koji implementira istoimenu arhitekturu prepoznavanja govora, predloženo istraživači iz Baidua. Implementacija je napisana u Python-u koristeći TensorFlow okvir strojnog učenja i distribuira pod slobodnom licencom MPL 2.0. Podržava Linux, Android, macOS i Windows. Performanse su dovoljne za korištenje motora na LePotato, Raspberry Pi 3 i Raspberry Pi 4 pločama.

Set takođe ponuđeno obučeni modeli, primjere zvučne datoteke i alati za prepoznavanje iz komandne linije. Da biste ugradili funkciju prepoznavanja govora u svoje programe, nude se moduli spremni za korištenje za Python, NodeJS, C++ i .NET (programeri treće strane su pripremili module za rđa и Go). Gotovi model se isporučuje samo za engleski, ali i za druge jezike na zahtjev. u prilogu uputstva možete sami trenirati sistem koristeći glasovni podaciprikupljeno od strane projekta Common Voice.

DeepSpeech je mnogo jednostavniji od tradicionalnih sistema i istovremeno pruža viši kvalitet prepoznavanja u prisustvu stranog šuma. Razvoj ne koristi tradicionalne akustičke modele i koncept fonema, već koristi dobro optimizovan sistem mašinskog učenja baziran na neuronskoj mreži, što eliminiše potrebu za razvojem zasebnih komponenti za modeliranje različitih devijacija, kao što su šum, eho i karakteristike govora. .

Nedostatak ovog pristupa je u tome što za kvalitetno prepoznavanje i obuku neuronske mreže, DeepSpeech engine zahtijeva veliku količinu heterogenih podataka koje u stvarnim uvjetima diktiraju različiti glasovi i u prisustvu prirodnog šuma.
Prikupljanje takvih podataka vrši se projektom kreiranim u Mozilli zajednički glas, pružajući validirani skup podataka sa uključenim 780 sati engleski jezik, 325 na njemačkom, 173 na francuskom i 27 sati na ruskom.

Krajnji cilj projekta Common Voice je akumulirati 10 sati snimaka različitih izgovora tipičnih ljudskih govornih fraza, čime će se postići prihvatljiv nivo grešaka u prepoznavanju. U sadašnjem obliku, učesnici projekta su već izdiktirali ukupno 4.3 hiljade sati, od čega je 3.5 hiljada testirano. Prilikom obuke konačnog modela engleskog jezika za DeepSpeech, korišćeno je 3816 sati govora, pored Common Voicea koji pokriva podatke iz projekata LibriSpeech, Fisher i Switchboard, a uključuje i oko 1700 sati transkribovanih snimaka radio emisija.

Kada koristite gotov model na engleskom jeziku koji se nudi za preuzimanje, nivo grešaka u prepoznavanju u DeepSpeech-u je 7.5% kada se procijeni od strane testnog skupa LibriSpeech. Za poređenje, stopa greške u ljudskom prepoznavanju ocjenjuje se na 5.83%.

DeepSpeech se sastoji od dva podsistema - akustičkog modela i dekodera. Akustički model koristi metode dubokog mašinskog učenja kako bi izračunao vjerovatnoću da će određeni simboli biti prisutni u ulaznom zvuku. Dekoder koristi algoritam za pretraživanje zraka za pretvaranje podataka vjerovatnoće simbola u tekstualni prikaz.

Glavni inovacije DeepSpeech 0.6 (0.6 grana nije kompatibilna unatrag i zahtijeva ažuriranje koda i modela):

  • Predlaže se novi dekoder za striming koji obezbeđuje veći odziv i ne zavisi od veličine obrađenih audio podataka. Kao rezultat toga, nova verzija DeepSpeech-a uspjela je smanjiti kašnjenje prepoznavanja na 260 ms, što je 73% brže nego prije, i omogućava vam da koristite DeepSpeech u rješenjima za prepoznavanje govora u hodu.
  • Izvršene su promjene u API-ju i obavljeno je rad na objedinjavanju imena funkcija. Dodane su funkcije za dobijanje dodatnih metapodataka o sinhronizaciji, omogućavajući ne samo primanje tekstualnog prikaza kao izlaza, već i praćenje vezivanja pojedinačnih znakova i rečenica za poziciju u audio streamu.
  • Podrška za korišćenje biblioteke je dodata u komplet alata za module učenja CuDNN optimizirati rad s rekurentnim neuronskim mrežama (RNN), što je omogućilo postizanje značajnog (oko dva puta) povećanja performansi obuke modela, ali je zahtijevalo izmjene koda koje su narušile kompatibilnost sa prethodno pripremljenim modelima.
  • Minimalni zahtjevi za verziju TensorFlow povećani su sa 1.13.1 na 1.14.0. Dodata podrška za TensorFlow Lite lagano izdanje, koje je smanjilo veličinu paketa DeepSpeech sa 98 MB na 3.7 MB. Za korištenje na ugrađenim i mobilnim uređajima, veličina upakovane datoteke s modelom također je smanjena sa 188 MB na 47 MB ​​(metoda kvantizacije je korištena za kompresiju nakon što je model obučen).
  • Jezički model je preveden na drugačiji format struktura podataka koji vam omogućava da mapirate datoteke u memoriju prilikom učitavanja. Podrška za stari format je ukinuta.
  • Promijenjen je način učitavanja datoteke sa jezičkim modelom, čime je smanjena potrošnja memorije i smanjena kašnjenja u obradi prvog zahtjeva nakon kreiranja modela. DeepSpeech sada troši 22x manje memorije dok radi i pokreće se 500x brže.

    Mozilla predstavlja DeepSpeech 0.6 motor za prepoznavanje govora

  • Rijetke riječi su filtrirane u jezičkom modelu. Ukupan broj riječi smanjen je na 500 najpopularnijih riječi koje se nalaze u tekstu koji se koristi za obuku modela. Čišćenje je omogućilo smanjenje veličine jezičkog modela sa 1800MB na 900MB, bez skoro nikakvog uticaja na nivo grešaka u prepoznavanju.
  • Dodata podrška za razne tehničar stvaranje dodatnih varijacija (povećavanja) zvučnih podataka koji se koriste u treningu (na primjer, dodavanje u skup opcija koje uključuju izobličenje ili šum).
  • Dodata biblioteka sa vezama za integraciju sa aplikacijama baziranim na .NET platformi.
  • Redizajnirana dokumentacija, koja se sada prikuplja na posebnom sajtu deepspeech.readthedocs.io.

izvor: opennet.ru

Dodajte komentar