What is the best speech recognition system?

Sisteme Open-Source de Recunoaștere Vocală: Ghid Complet

14/06/2024

Rating: 4.32 (15687 votes)

Apariția modelelor open-source de recunoaștere vocală (STT) a democratizat semnificativ accesul la capacitățile avansate de ASR (Automatic Speech Recognition). Astăzi, aceste modele oferă soluții personalizabile și rentabile pentru integrarea recunoașterii vorbirii în diverse aplicații. Dezvoltatorii pot beneficia enorm de pe urma acestei tehnologii moderne, adaptând-o la cazuri de utilizare specifice fără constrângerile licențelor software proprietare și chiar contribuind la evoluția ei. Dintre numeroasele alternative disponibile pentru construirea de aplicații controlate vocal, care ar fi cea potrivită pentru nevoile dumneavoastră?

În acest articol, vom explora cele mai avansate modele ASR open-source disponibile, incluzând Whisper ASR, DeepSpeech, Kaldi, Wav2vec și SpeechBrain, evidențiind punctele lor forte cheie și cerințele tehnice. Vom dezvălui cum funcționează aceste tehnologii de vârf și ce trebuie să luați în considerare atunci când alegeți soluția perfectă pentru proiectul dumneavoastră.

What is the best speech recognition system?
Whisper ASR. Credits: OpenAI Considered widely as the best open-source ASR out there, Whisper has several strengths that make it a robust and useful speech recognition system. First, its default accuracy is among the finest. It can handle various accents, background noise, and technical language, thanks to its large and diverse training data.
Cuprins

Ce sunt modelele Speech-to-Text (Vorbire-în-Text)?

Modelele moderne de ASR pot transcrie cu o fiabilitate foarte mare cuvintele vorbite în format text digital, permițând o analiză, stocare și manipulare mai ușoară a datelor audio pentru o gamă largă de aplicații în diverse industrii, cum ar fi telecomunicațiile, sănătatea, educația, serviciile pentru clienți și divertismentul. Această capacitate de a transforma limbajul vorbit în text scris a deschis noi orizonturi pentru interacțiunea om-mașină și pentru automatizarea proceselor.

Majoritatea modelelor ASR de vârf de astăzi sunt construite în jurul unei arhitecturi encoder-decoder. Encoder-ul extrage caracteristici auditive din intrare, iar decoder-ul reconstruiește aceste caracteristici într-o secvență de limbaj natural. Această structură permite o înțelegere profundă a contextului și a nuanțelor vorbirii, rezultând transcrieri de o precizie remarcabilă. Prin valorificarea acestei arhitecturi, aceste modele permit transcrierea la nivel aproape uman a înregistrărilor audio și video, cum ar fi interviurile, ședințele și prelegerile, chiar și în timp real. De asemenea, facilitează conversia interogărilor sau comenzilor vocale în date acționabile, îmbunătățind experiența utilizatorului și eficiența în aplicațiile de servicii pentru clienți.

Mai general, sistemele ASR sunt instrumentale în dezvoltarea aplicațiilor controlate vocal, a asistenților virtuali și a dispozitivelor inteligente, permițând interacțiunea hands-free prin comenzi vocale. Ele sunt coloana vertebrală a multor inovații care ne simplifică viața cotidiană.

Cele mai bune modele Open-Source de recunoaștere vocală

În selectarea celor mai bune modele open-source de vorbire-în-text pentru uzul în întreprinderi, am căutat modele precise, dar și performante (adică, funcționând bine în scenarii reale), precum și kituri de dezvoltare de înaltă flexibilitate, personalizare și integrabilitate. A fost important în selecția noastră să observăm un bun suport comunitar și o dezvoltare activă, încercând să evităm proiectele „moarte”.

1. Whisper ASR

Whisper este un sistem de recunoaștere vocală open-source de la OpenAI, antrenat pe un set de date vast și diversificat de 680.000 de ore de date multilingve și multi-tasking supravegheate, colectate de pe web. Whisper poate transcrie vorbirea în engleză și în mai multe alte limbi și poate, de asemenea, traduce direct din mai multe limbi non-engleze în engleză. Această capacitate multilingvă și de traducere îl face extrem de versatil.

Whisper utilizează o abordare end-to-end bazată pe o arhitectură transformer encoder-decoder, împărțind audio în segmente de 30 de secunde care sunt convertite într-un spectrogram log-Mel și apoi transmise unui encoder de la care un decoder prezice textul corespunzător. Acest text este de fapt amestecat cu token-uri speciale care direcționează modelul să efectueze sarcini precum identificarea limbii, marcaje temporale la nivel de frază, transcrierea vocală multilingvă și traducerea în engleză.

Considerat pe scară largă drept cel mai bun ASR open-source disponibil, Whisper are mai multe puncte forte care îl fac un sistem de recunoaștere vocală robust și util:

  • Precizie excepțională: Precizia sa implicită este printre cele mai bune. Poate gestiona diverse accente, zgomot de fond și limbaj tehnic, datorită datelor sale mari și diverse de antrenament.
  • Multi-tasking: Poate efectua mai multe sarcini cu un singur model, cum ar fi transcrierea și traducerea vorbirii, ceea ce reduce necesitatea unor modele și conducte separate, așa cum ați avea nevoie cu majoritatea celorlalte modele – de exemplu, dacă doriți să transcrieți text în franceză și să-l traduceți în timp real în engleză.
  • Performanță fără fine-tuning: Mai mult, Whisper poate atinge o precizie și o performanță ridicate pe diferite domenii vocale și limbi, chiar și fără ajustări suplimentare (fine-tuning).

Pe de altă parte, versiunea „vanilla” a Whisper, așa cum este furnizată de OpenAI, a fost concepută ca un instrument de cercetare și vine cu unele limitări care o fac nepotrivită pentru majoritatea proiectelor care necesită scală și versatilitate la nivel de întreprindere. Modelul vine cu limitări de intrare, nu include caracteristici esențiale precum diarizarea vorbitorilor și marcajele temporale la nivel de cuvânt și tinde să halucineze într-un mod care face ca ieșirea sa să fie nepotrivită pentru îmbogățirea CRM de înaltă precizie și sarcini bazate pe LLM.

2. DeepSpeech

DeepSpeech este un sistem de recunoaștere vocală open-source dezvoltat de Mozilla în 2017 și bazat pe algoritmul omonim de la Baidu. DeepSpeech utilizează o rețea neuronală profundă pentru a converti audio în text și un model de limbaj N-gram pentru a îmbunătăți precizia și fluența transcrierii. Ambele module au fost antrenate din date independente, pentru a funcționa ca un transcriptor cuplat la un verificator de ortografie și gramatică. DeepSpeech poate fi utilizat atât pentru antrenament, cât și pentru inferență și suportă mai multe limbi și platforme. Pe lângă faptul că este multilingv, DeepSpeech prezintă avantajul de a fi destul de flexibil și, în special, re-antrenabil.

Acestea fiind spuse, DeepSpeech vine cu limitări practice serioase în comparație cu stadiul actual al artei, cum ar fi Whisper, care a apărut mai târziu. După cum s-a discutat pe forumurile Mozilla despre DeepSpeech, înregistrările sale sunt limitate la doar 10 secunde, limitând utilizarea sa la aplicații precum procesarea comenzilor, dar nu și la transcrieri lungi. În plus, această limită afectează și corpusul de text, care rezultă destul de mic, la aproximativ 14 cuvinte / ~100 de caractere pe propoziție. Dezvoltatorii au raportat apoi necesitatea de a împărți propozițiile și de a elimina cuvintele și sub-propozițiile comune pentru a accelera antrenamentul. Din aprilie 2024, există o mișcare de extindere a înregistrării audio la 20 de secunde, dar chiar și aceasta pare oarecum departe de ceea ce oferă stadiul actual al tehnologiei.

3. Wav2vec

Wav2vec, de la gigantul Meta, este un set de instrumente pentru recunoașterea vocală specializat în antrenarea cu date neetichetate, într-o încercare de a acoperi cât mai mult posibil din spațiul lingvistic, inclusiv limbile care sunt slab reprezentate în seturile de date adnotate utilizate de obicei pentru antrenamentul supravegheat.

Motivația din spatele Wav2vec este că tehnologia ASR este disponibilă doar pentru o mică parte din miile de limbi și dialecte vorbite în întreaga lume, deoarece sistemele tradiționale trebuie să fie antrenate pe cantități mari de audio vorbit adnotat cu transcrieri, ceea ce este imposibil de obținut în cantitate suficientă pentru fiecare formă posibilă de vorbire.

Pentru a-și atinge scopul, modelul Wav2vec este construit în jurul unui model auto-supravegheat antrenat să prezică unități mici (25 ms) de audio mascat ca un token, similar modului în care modelele lingvistice mari sunt antrenate să prezică token-uri scurte asemănătoare silabelor, dar unde țintele sunt unități care corespund sunetelor individuale. Deoarece setul de sunete individuale posibile este mult mai mic decât cel al sunetelor silabice, modelul se poate concentra pe blocurile de construcție ale limbilor și poate „înțelege” mai multe dintre ele cu un singur nucleu de procesare.

După cum au studiat echipa AI de la Meta, pre-antrenarea nesupravegheată descrisă mai sus pe audio se transferă bine între limbi. Apoi, pentru etapa finală de legare a procesării audio la textul real, modelele Wav2vec trebuie să fie ajustate (fine-tuned) cu date etichetate. Dar în această etapă, necesită aproximativ 2 ordine de mărime mai puține perechi audio-transcriere. Se presupune că sistemele ASR antrenate în acest mod ar putea depăși cele mai bune metode semi-supravegheate din 2020, chiar și cu de 100 de ori mai puține date de antrenament etichetate. Deși o comparație mai modernă cu noile modele ar fi de dorit, acest lucru este încă impresionant și ar putea găsi aplicații, mai ales ca o soluție open-source pentru procesarea audio din limbi subreprezentate. Practic, puteți antrena modele Wav2vec cu date etichetate sau neetichetate personalizate, sau pur și simplu puteți utiliza modelele lor pre-făcute, care acoperă deja aproximativ 40 de limbi.

4. Kaldi

Kaldi este un set de instrumente pentru recunoașterea vocală scris în C++, născut din ideea de a avea un cod modern și flexibil, ușor de modificat și extins. Important, setul de instrumente Kaldi încearcă să ofere algoritmii săi în forma cea mai generică și modulară posibilă, pentru a maximiza flexibilitatea și reutilizarea (chiar și pentru alte coduri bazate pe AI în afara scopului propriu al Kaldi).

Kaldi nu este exact un sistem ASR gata de utilizare, ci mai degrabă ajută dezvoltatorii să construiască sisteme de recunoaștere vocală care funcționează din baze de date larg disponibile, cum ar fi cele furnizate de Linguistic Data Consortium (LDC). Ca atare, programele ASR bazate pe Kaldi pot fi construite pentru a rula pe calculatoare obișnuite, pe dispozitive Android și chiar în browsere web prin WebAssembly. Acesta din urmă este probabil oarecum limitat, dar interesant, deoarece ar putea deschide calea pentru sisteme ASR pe deplin compatibile cu diverse dispozitive, integrate în clienții web care nu necesită deloc procesare pe server.

5. SpeechBrain

SpeechBrain este un set de instrumente vocal „tot-în-unul”. Aceasta înseamnă că nu se ocupă doar de ASR, ci de întregul set de sarcini legate de inteligența artificială conversațională: recunoașterea vocală, sinteza vocală, modele lingvistice mari și alte elemente necesare pentru interacțiunea naturală bazată pe vorbire cu un computer sau un chatbot.

În timp ce Python și Pytorch sunt comune în ecosistemul ASR open-source – de exemplu, Whisper însuși a fost antrenat pe Pytorch – SpeechBrain a fost conceput de la început ca un set de instrumente PyTorch open-source, având ca scop facilitarea dezvoltării inteligenței artificiale conversaționale. Spre deosebire de majoritatea alternativelor care, deși open-source, sunt în principal promovate de sectorul privat, SpeechBrain provine dintr-un fundal academic puternic, de la peste 30 de universități din întreaga lume, și beneficiază de o comunitate largă de suport. Această comunitate a împărtășit peste 200 de rețete de antrenament competitive pe mai mult de 40 de seturi de date, susținând 20 de sarcini de procesare a vorbirii și a textului. Peste 100 de modele pre-antrenate pe HuggingFace pot fi ușor conectate și utilizate sau ajustate.

Important, SpeechBrain suportă atât antrenarea de la zero, cât și ajustarea modelelor pre-antrenate, cum ar fi Whisper de la OpenAI pentru ASR și modelul lingvistic mare GPT2, sau modelul ASR Wav2vec de la Meta și modelul său lingvistic mare Llama2. Un dezavantaj al contribuției comunitare fără prea mult control este că calitatea multor modele ar putea fi îndoielnică; prin urmare, ar putea fi necesare teste extinse pentru a asigura o utilizare sigură și scalabilă în mediile de întreprindere.

Considerații practice pentru sistemele Speech-to-Text Open-Source

În timp ce modelele ASR open-source oferă o flexibilitate și o accesibilitate fără precedent, implementarea lor vine cu considerații practice pe care dezvoltatorii și organizațiile trebuie să le evalueze cu atenție.

Un factor semnificativ de luat în considerare este costul de implementare, care include diverse aspecte precum cerințele hardware, necesitatea expertizei în AI și limitările de scalare. Spre deosebire de soluțiile proprietare care pot veni cu suport și optimizare dedicate, modelele open-source necesită adesea resurse computaționale substanțiale pentru antrenament și inferență. În plus, un anumit nivel de expertiză în AI este de obicei necesar pentru a optimiza modelul open-source, care este „one-size-fits-all”, pentru cazul de utilizare și nevoile specifice ale unei companii.

O altă problemă importantă de luat în considerare este faptul că majoritatea, dacă nu toate, modelele open-source vin cu un set limitat de funcționalități și presupun o muncă suplimentară de optimizare la/în jurul arhitecturii lor de bază pentru a le face adecvate în mediile de întreprindere. Pentru companiile care caută o experiență fără bătăi de cap, open-source-ul este cu greu calea de urmat.

Aici intervin API-urile specializate de vorbire-în-text: ele vin ca pachete „all-batteries-included”, cu o gamă de funcționalități pre-construite, dar cu suficient spațiu pentru personalizare, totul într-o formă care vă permite să uitați de toate costurile suplimentare, nevoile de infrastructură de calcul, certificările și diverse costuri ascunse, în același timp obținând acces direct la sfaturi de specialitate. Pe scurt, costul total de proprietate al modelelor open-source nu ar trebui subestimat, iar arhitecturile hibride care alimentează API-urile vă pot oferi de fapt un ROI (Return on Investment) mai bun atunci când vine vorba de încorporarea ASR în aplicațiile dumneavoastră.

Tabel Comparativ: Modele Open-Source de Recunoaștere Vocală

ModelPuncte FortePuncte SlabeCaz de Utilizare Ideal
Whisper ASRPrecizie înaltă, multilingv, multi-tasking (transcriere + traducere)Potențial de halucinație, lipsă diarizare/marcaje temporale (versiunea vanilla), orientat spre cercetareScop general, transcriere/traducere multilingvă
DeepSpeechFlexibil, re-antrenabil, multilingvDurată audio limitată (10-20s), corpus text mic, mai puțin precis decât modelele moderneProcesare comenzi, fragmente audio scurte
Wav2vecPre-antrenare nesupravegheată, excelent pentru limbi cu resurse reduse, eficient cu date etichetateNecesită fine-tuning, nu este un ASR gata de utilizareCercetare, limbi cu resurse reduse, antrenament modele personalizate
KaldiExtrem de modular, flexibil, robust, bazat pe C++, potențial multi-platformăNu este un ASR gata de utilizare, necesită efort semnificativ de dezvoltareConstruirea sistemelor ASR personalizate de la zero
SpeechBrainToolkit „tot-în-unul” (AI conversațională), suport academic puternic, rețete/modele extinseCalitatea modelelor poate varia (contribuții comunitare), necesită testareDezvoltare AI conversațională completă, cercetare, fine-tuning modele existente

Întrebări Frecvente (FAQ)

Ce este ASR și de ce este important?

ASR (Automatic Speech Recognition), sau recunoașterea automată a vorbirii, este tehnologia care permite unui computer să transcrie limbajul vorbit în text scris. Este importantă deoarece transformă interacțiunea om-mașină, permițând control vocal, dictare, subtitrări automate și multe alte aplicații care îmbunătățesc accesibilitatea și eficiența în diverse domenii.

De ce aș alege un model ASR open-source?

Modelele ASR open-source oferă flexibilitate, personalizare și control. Acestea permit dezvoltatorilor să adapteze soluțiile la nevoi specifice fără costuri de licențiere, să acceseze codul sursă pentru a înțelege și îmbunătăți funcționalitatea, și să beneficieze de inovațiile și suportul unei comunități active. De asemenea, pot fi mai rentabile pe termen lung pentru anumite proiecte, evitând blocarea într-un singur furnizor.

Care sunt principalele provocări ale utilizării ASR open-source?

Provocările includ necesitatea unei expertize tehnice considerabile pentru implementare și optimizare, cerințe hardware ridicate pentru antrenament și inferență, lipsa unor funcționalități avansate „out-of-the-box” (cum ar fi diarizarea vorbitorilor sau marcajele temporale la nivel de cuvânt în unele modele), și variabilitatea calității suportului comunitar. Costul total de proprietate (TCO) poate fi mai mare decât se anticipează inițial, deoarece include timpul și resursele necesare pentru dezvoltare și mentenanță.

Care model open-source este cel mai precis?

Dintre modelele menționate, Whisper ASR de la OpenAI este considerat pe scară largă a fi cel mai precis și robust model open-source disponibil în prezent, datorită setului său vast și divers de date de antrenament și arhitecturii sale avansate. Cu toate acestea, precizia poate varia în funcție de specificul limbii, accentului și calității audio.

Pot fi utilizate modelele open-source pentru transcriere în timp real?

Da, multe modele open-source pot fi adaptate și optimizate pentru transcriere în timp real. Performanța în timp real depinde de factori precum latența modelului, resursele computaționale disponibile și optimizările specifice implementate. Modele precum Whisper pot oferi performanțe excelente în timp real, în timp ce altele, precum DeepSpeech, pot avea limitări din cauza arhitecturii sau a cerințelor de procesare.

Considerații Finale

Am analizat aici cele mai bune modele STT open-source pentru uzul în întreprinderi, selectate pentru precizie și performanță, precum și pentru flexibilitate, personalizare și integrabilitate în conductele de dezvoltare software, și care beneficiază de un bun suport comunitar.

Printre soluțiile principale, am subliniat exemple de sisteme gata de utilizare „out-of-the-box”, altele care necesită antrenament personalizat, precum și cele care nu oferă pachete STT complete, ci mai degrabă piese mai mici ale motoarelor de procesare și transcriere audio, oferindu-vă acces la nivel scăzut, dar probabil o soluție mai puțin directă. Sperăm că această prezentare v-a oferit o idee mai bună despre care model ar avea cel mai mult sens pentru nevoile dumneavoastră specifice. Alegerea depinde în cele din urmă de complexitatea proiectului, de resursele disponibile și de nivelul de control și personalizare dorit.

Dacă vrei să descoperi și alte articole similare cu Sisteme Open-Source de Recunoaștere Vocală: Ghid Complet, poți vizita categoria Fitness.

Go up