Academia Tehnic ă Militară [609127]
ROMÂNIA
MINISTERUL AP ĂRĂRII NAȚIONALE
Academia Tehnic ă Militară
REZUMAT
TEZĂ DE DOCTORAT
Contribu ții la Elaborarea Metodelor de
Recunoa ștere a Vorbirii în Limba Român ă
Lt. ing.
DORU-PETRU MUNTEANU
Conducător științific:
Col. (r).prof. dr. ing.
EUGENIU OANCEA
2006
CUPRINS
CUPRINS ……………. ……………. ……………. …………….. ……………. ……………. ………… 2
CAPITOLUL 1 INTRODUCER E ……………… ……………… ………… ……….. ………. 5
1.1 Recunoa șterea automat ă a vorbirii…………. ………….. ……………… …………….. 5
1.2 Stadiul actual în recunoa șterea automat ă a vorbirii ………… ………….. ………. 6
1.3 Recunoa șterea vorbirii în domeniul militar …… ……………. ………….. ………… 8
1.4 Scopul și organizarea lucr ării……………. ………….. ………….. ………….. ………… 8
CAPITOLUL 2 MODELAREA ACUSTIC Ă ÎN RECUNOA ȘTEREA
VORBIRII………. …………….. ……………… ……………. …………….. ……………. ………… 11
2.1 Prelucrarea semnalului vocal în vederea recunoa șterii………….. …………… 11
2.1.1 Achizi ția semnalului vocal……… ……………. ……………. ………….. ………. 11
2.1.2 Detec ția automat ă a semnalului vocal (VAD) …. ………… ……….. …….. 11
2.1.3 Parametrizarea semnalului vocal …….. ……………… …………….. ………… 13
2.2 Recunoa șterea vorbirii bazat ă pe modele Markov as cunse (MMA)……… 14
2.2.1 Introducere ………. ……………… ……………. …………….. ……………. ………… 14
2.2.2 Unit ăți de vorbire adecva te pentru recunoa șterea vorbirii.. …………… 14
2.2.3 Noțiuni de baz ă ale MMA…………….. ……………… ………… ……….. …….. 15
2.2.4 Utilizarea MMA pentru modelarea vorbirii. ………….. ………….. ………. 16
2.2.5 Distribu ția probabilit ății de emisie……….. ……………. ……………. ………. 16
2.2.6 Estimarea secven țelor de stări……….. ……………… ………… ……….. …….. 17
2.2.7 Reducerea spa țiului de căutare (pruning) …. ………….. ………….. ………. 17
2.2.8 Re-estimarea parametrilor ………….. ………….. ………….. ………….. ………. 18
2.2.9 Decodarea….. ……………… ……………. ………….. ………….. ………….. ………. 18
2.3 Variabilitatea vorbirii ………. ……………… ………….. ………….. ………….. ………. 18
2.4 Alte tehnologii de recunoa ștere a vorbirii……. ……………. ……………. ………. 19
2.4.1 Rețele neuronale artificiale utilizate în recunoa șterea vorbirii ………. 19
2.4.2 Modele segmentale – o nou ă perspectiv ă……………. ……………. ………. 20
CAPITOLUL 3 MODELE DEPENDEN TE DE CONTEXT UTILIZATE
ÎN RECUNOA ȘTEREA VORBIRII……….. ………….. ………….. ………….. ………. 21
3.1 Modelarea dependen ței de context……….. ……………… ………… ……….. …….. 21
3.1.1 Factori de sesiune……… ……………… ………….. ………….. ………….. ………. 22
3.1.2 Factori locali….. …………….. ……………… ……………… …………….. ………… 22
3.1.3 Modele dependente de context………… ………….. ……………… …………… 23
3.2 Antrenabilitatea modelelor…. ……………. ………….. ………….. ………….. ………. 23
3.3 Abordarea ascendent ă (Bottom-Up )……………….. ………….. ………….. ………. 25
3.4 Abordarea descendent ă (Top-Down ) ……………… ………….. ………….. ………. 25
3.5 Utilizarea arborilor foneti ci de decizie în recunoa șterea vorbirii . ………… 27
33.5.1 Arbori de decizie………. ……………… ………….. ………….. ………….. ………. 27
3.5.2 Criteriul de decizie ba zat pe probabilitate …………. ……………. ………… 27
3.5.3 Construirea arborilor de decizie fonetic i………………….. …………. …….. 28
3.6 Concluzii ………. ……………. …………….. ……………. ……………. ………….. ………. 29
CAPITOLUL 4 ALGORITMI DE C ĂUTARE UTILIZA ȚI ÎN
PROCESUL DE RECUNOA ȘTERE A VORBIRII………… ……………. ………. 30
4.1 Introducere ………… ……………. ……………. ………….. ………….. ………….. ………. 30
4.2 Algoritmi de c ăutare de baz ă…………….. ………….. ………….. ………….. ………. 30
4.3. Algoritmi de c ăutare utiliza ți pentru recunoa șterea vorbirii….. …………… 31
4.3.1 Algoritmii de c ăutare ca parte integrant ă a procesului de decodare.. 31
4.3.2 Recunoa șterea cuvintelor izolate și a vorbirii continue .. ……….. …….. 31
4.3.3 Căutarea Viterbi fascicular ă sincronă în timp…….. ……………. ………… 33
4.3.4 Căutarea A*. Decoderul de stiv ă……………. ……………. ………….. ………. 34
4.4 Concluzii ………. ……………. …………….. ……………. ……………. ………….. ………. 35
CAPITOLUL 5 CRE ȘTEREA ROBUSTE ȚII RECUNOA ȘTERII
VORBIRII………. …………….. ……………… ……………. …………….. ……………. ………… 36
5.1 Introducere ………… ……………. ……………. ………….. ………….. ………….. ………. 36
5.2 Mediul ambiental acustic …. ……………… ………….. ………….. ………….. ………. 36
5.2.1 Distorsiuni ale semnalului vocal……… ………….. ……………… …………… 36
5.2.2 Modelarea mediului ambiental………… ………….. ……………… …………… 37
5.3 Microfoane utilizate în recunoa șterea vorbirii…. ………….. ………….. ………. 38
5.4 Tehnici de preprocesare ambiental ă……………. ……………. ……………. ………. 38
5.4.1 Anularea adaptiv ă a ecoului (AAE)….. ……………… ……………. ………… 38
5.4.2 Tehnici bazate pe arii de microfoane ……. ……………. ……………. ………. 38
5.4.3 Scăderea spectral ă a zgomotului (SSZ) ………… ……………… …………… 39
5.4.4 Normalizarea prin medie cepstral ă (NMC)……… ………… ……….. …….. 39
5.5 Adaptarea modelelor acustic e la mediul ambiental ….. …………….. ………… 39
5.5.1 Re-antrenarea sistem ului pe vorbire afectat ă de distorsiuni.
Antrenarea multipl ă…………… …………….. ……………. ……………. ………. 39
5.5.2 Combinarea modelelor paralele (CMP) … ……………. ……………. ………. 40
5.5.3 Modelarea zgomotului nesta ționar. Decoderul Viterb i 3D…….. …….. 40
5.6 Concluzii ………. ……………. …………….. ……………. ……………. ………….. ………. 41
CAPITOLUL 6 SIS TEMUL DE RECUNOA ȘTERE A VORBIRII
CONTINUE ÎN LIMBA ROMÂN Ă (SRVC-LR) ……………… ………….. ………. 42
6.1. Introducere ……… ……………… ……………. ………….. ………….. ………….. ………. 42
6.2 Arhitectura general ă a sistemului de recunoa ștere construit…. …………….. 43
6.2.1 Parametrizarea semnalului vocal …….. ……………… …………….. ………… 43
6.2.2 Modelarea la nivel fonetic ………….. ………….. ………….. ………….. ………. 44
46.2.3 Datele de antrenare……. ……………… ………….. ………….. ………….. ………. 44
6.2.4 Modelarea acustic ă……………. ……………. ……………. …………….. ………… 45
6.2.5 Etapele antren ării propriu-zise………. ……………… ………… ……….. …….. 45
6.2.6 Gramatici utilizate în test are …………… ………….. ……………… …………… 50
6.2.7 Analiza performan țelor sistemului de recunoa ștere………… …………… 51
6.2.8 Rafinarea sistemului……. ……………. ………….. ………….. ………….. ………. 52
6.3 Performan țele sistemului în func ție de lărgimea fascicolului de c ăutare . 53
6.4 Creșterea robuste ții sistemului de recunoa ștere la factori am bientali……. 54
6.5 Ratele de recunoa ștere obținute cu diferi ți vorbitori de sistemul antrenat
cu datele din HUB1…………. ……………. ………….. ………….. ………….. ………. 56
6.6 Interfa ța grafică vocală cu utilizatorul ……. ………….. ………….. ……….. …….. 56
6.7 Concluzii ………. ……………. …………….. ……………. ……………. ………….. ………. 57
CAPITOLUL 7 CONCLUZII……… ……………… ………….. ………….. ……….. …….. 59
BIBLIOGRAFIE ……………. ……………… ……………. …………….. ……………. ………… 62
5CAPITOLUL 1
INTRODUCERE
1.1 Recunoa șterea automat ă a vorbirii
Cercetarea în domeniul tehnologiei vorbirii a fost puternic motivat ă de dorin ța de a
construi ma șini capabile s ă emuleze abilit ățile umane de comunicare verbal ă.
Preocupările în domeniu se canalizeaz ă pe trei direc ții principale:
• recunoașterea vorbirii ( Speech to Text )
• sinteza vorbirii artificiale pornind de la text ( Text to Speech )
• codarea/decodarea semnalului vocal ( Voice Codecs )
Proiectarea sistemelor de recunoa șterea automat ă a vorbirii (SRAV) s-a dovedit a fi o
sarcină extrem de dificil ă, munca de decenii a cercet ătorilor din domeniu fiind r ăsplătită
adeseori cu performan țe relativ modeste fa ță de așteptări. Printre principalii indicatori de
performan ță a unui sistem SRAV se num ără rata de eroare, dimensiunea vocabularului,
dependen ța de vorbitor, costul de calcul, complexitatea, robuste țea la perturba ții ambientale,
etc.
Printr-o analogie cu un sistem de comunica ții din zilele noastre, un SRAV reprezint ă
partea de recep ție, în timp ce emi țătorul este reprezentat de c ătre om (Figura. 1.2).
Mesaj Emițător Receptor Mesaj Canal
comunica ție
Figura. 1.2 Modelul sistemului de comunica ție om→mașină
Omul poate recunoa ște ceea ce spune interlocutorul s ău, cu mult mai mare u șurință
decât cel mai performant SRAV din zilele noastre. Explica ția constă în procesele cerebrale
deosebit de complexe implicate în func ția auditiv ă a omului. Procese psihice precum
reprezentarea, memoria și în special gândirea conlucreaz ă în descifrarea instantanee a
mesajului chiar și în condi ții de zgomot ambiental foarte ridicat. Recunoa șterea corect ă a unei
fraze nu ține exclusiv de auz, ci depinde de o serie de al ți factori cognitivi precum gramatic ă,
context, semantic ă. Omul este o fiin ță inteligent ă care nu doar recunoa ște anumite sunete ci
caută în permanen ță să înțeleagă mesajul transmis de c ătre interlocutor. Producerea și
percepția vorbirii sunt strâns legate de gândire, o bun ă parte din speciali știi în comunicare
susținând că limbajul și gândirea nu pot fi separate. Ele încep s ă se formeze concomitent în
primii ani din via ță și se dezvolt ă într-o total ă interdependen ță. Un sistem capabil s ă înțeleagă
limbajul uman trebuie s ă fie un sistem care s ă înțeleagă gândirea uman ă, ceea ce justific ă pe
deplin încadrarea preocup ărilor de recunoa ștere a vorbirii în domeniul inteligenței artificiale .
6În consecin ță, un bun SRAV trebuie s ă fie un sistem inteligent capabil nu doar s ă
recunoasc ă și să diferențieze forme sonore ci s ă cuprindă și să integreze și aspecte legate de
semantică, context, etc. Primele sisteme de recunoa ștere a vorbirii, bazate strict pe modelare
acustică, aveau performan țe scăzute, cu rate de recunoa ștere mici. Ulterior, prin modelare
lingvistică, utilizarea informa țiilor semantice în procesul de decodare de la nivel acustic a
redus mult num ărul căilor posibile din spa țiul de căutare îmbun ătățind semnificativ procesul
de recunoa ștere.
1.2 Stadiul actual în recunoa șterea automat ă a vorbirii
Până în anii ’70 aplica țiile SRAV vizau în special recunoa șterea câtorva cuvinte
izolate (de regul ă cifre), majoritatea abord ărilor fiind bazate pe modele de referin ță cu care
erau comparate cuvintele de test. Anii ’80 au marcat un salt important în evolu ția SRAV prin
perfecționarea metodelor de modelare statistic ă și în special a abord ărilor bazate pe modelele
Markov ascunse ( HMM – Hidden Markov Models ) [Bau72]. Avantajele aduse de aceast ă
tehnologie au dat un avânt deosebit cercet ării în domeniul sistemelor de recunoa ștere a
vorbirii continue de vocabular mediu și mare, în special în cadrul comunit ății DARPA
(Defense Advanced Research Projects Agency ). Au fost aduse contribu ții importante în
domeniul recunoa șterii automate a vorbirii la:
• CMU( Carnegie-Mellon University ) – sistemul SPHINX
• CU ( Cambridge University ) – sistemul HTK
• BBN( Bolt, Beranek and Newman ) – sistemul BYBLOS
• MIT ( Massachusetts Institute of Technology )
• Dragon Systems
Vorbire
spontană
Vorbire
fluentă
Vorbire
prin citire
Cuvinte
înlănțuite
2 20 200 2000 20000 F ără restricții
Dimensiune vocabular (num ăr de cuvinte) Localizare
cuvinte
Cifre
Cuvinte
izolate Verificare
vorbitor
Comenzi vocale Apelare
vocală
Completare
formulare Dialog
om-mașină
Dictare
birou Transcriere
vorbire Dialog
controlat Conversa ție
naturală Stilul de vorbire
Figura 1.3 Coordonate ale aplica țiilor de recunoa ștere automat ă a vorbirii
și posibilit ățile actuale (zona gri)
În
Figura 1.3 sunt marcate principalele categorii de aplica ții în planul dimensiune vocabular –
7stil de vorbire [Jua98]. Nivelul de dificultate cre ște din col țul stânga-jos spre dreapta-sus,
triunghiul gri acoperind performan țele aplica țiilor atinse prin tehnologia vorbirii de la acest
moment. De și aplicații precum transcrierea vorbirii spontane de vocabular foarte mare, nu
sunt încă disponibile, totu și există în acest moment companii care implementeaz ă, dezvoltă și
comercializeaz ă produse bazate pe recunoa șterea vorbirii continue de vocabular mare. Dintre
acestea, cele mai populare sunt:
• ViaVoice lansat de IBM
• Microsoft Recognizer din pachetul Microsoft Office
• Dragon Naturally Speaking lansat de Scansoft
Deși nu se poate spune c ă este o problem ă rezolvată, recunoașterea vorbirii a cunoscut
progrese importante în ultimele decenii. Rata de eroare a fost redus ă relativ cu 10 % în
fiecare an pe principalele aplica ții internaționale de recunoa ștere
Modelele Markov ascunse (MMA) reprezint ă un instrument puternic în recunoa șterea
vorbirii, prin faptul c ă beneficiaz ă de algoritmi extrem de eficien ți în estimarea și adaptarea
automată a parametrilor modelelor, ob ținând performan țe maxime. Multe sisteme actuale de
vârf folosesc aceast ă tehnologie [Hua96], [Gau95].
Abordarea bazat ă pe rețelele neuronale (RN) poate cons titui în viitorul apropiat o
alternativ ă viabilă de recunoa ștere automat ă a vorbirii chiar dac ă în acest moment sistemele
bazate pe RN nu au rezultate foarte bune în recunoa șterea vorbirii continue de vocabular
mare. Sistemele hibride RN-MMA au performan țe similare cu sistemele MMA de vocabular
mediu, îns ă nu aduc avantaje clare în ceea ce prive ște costul de calcul al procesului de
recunoaștere a vorbirii [Teb95].
Deși au rezultate similare cu MMA, modelele segmentale sunt deocamdat ă mai
costisitoare în ceea ce prive ște resursele de calcul. Eliminând o parte din limit ările MMA, ele
reprezintă o direcție nouă în modelarea acustic ă prin metode statistice, cu perspective de
dezvoltare deosebite [Ost96].
Prin prezenta lucrare, sunt extinse metodele de recunoa ștere a vorbirii bazate pe MMA
la sisteme de vocabular mediu și mare, vizând în special recunoa șterea vorbirii continue.
Recunoașterea vorbirii continue presupune estimarea parametrilor modelelor compozite ale
frazelor în faza de antrenare și decodarea pe baza re țelelor de cuvinte în faza de testare.
Astfel, a fost realizat ă o bază de date cu semnal vocal care acoper ă peste 9 ore de vorbire, 11
vorbitori și peste 20.000 de apari ții ale cuvintelor (1600 distincte). Dic ționarul fonetic pentru
limba român ă creat și apoi utilizat pentru transcrierile fonetic, prezint ă peste 3000 de intr ări.
Datele au fost folosite pentru a construi sisteme de recunoa ștere pentru limba român ă
cu modelare la nivel de fonem. Un element de noutate absolut ă îl constituie construirea și
utilizarea arborilor fonetici de decizie în legarea st ărilor modelelor dependente de context, pe
baza întreb ărilor fonetice specifice limbii române. Astfel au fost înglobate cuno ștințe
lingvistice expert înc ă de la nivelul model ării acustice în sistemele de recunoa ștere generate.
O atenție deosebit ă a fost acordat ă costurilor de calcul atât în faza de antrenare cât și
în faza de testare. Acestea pot fi diminuate semnificativ prin utilizarea unor tehnici de c ăutare
rapidă. Căutarea fascicular ă a fost utilizat ă atât în faza de estimare a parametrilor în
algoritmul progresiv-regresiv cât și în faza de decodare în algoritmul Viterbi.
Creșterea robuste ții sistemelor de recunoa ștere la factori ambientali perturbatori
constituie un alt element de originalitate al prezentei lucr ări. Sunt descrise o serie de tehnici
bazate fie pe îmbun ătățirea semnalului vocal, fie pe adaptarea modelelor la mediul ambiental.
8Au fost construite sisteme bazate pe antrenare multipl ă robuste care î și păstrează rata de
recunoaștere pentru o gam ă relativ larg ă a raportului semnal-zgomot din condi țiile de testare.
1.3 Recunoa șterea vorbirii în domeniul militar
În domeniul militar, recunoa șterea automat ă a vorbirii ocup ă un loc important . Există
sisteme de recunoa ștere și interpretare a comenzilor vocale în cabinele avioanelor moderne de
luptă și ale unor modele de autovehicule. Astfel , utilizatorii acestor sisteme pot efectua
anumite opera țiuni și afla anumite informa ții fără a implica în vreun fel utilizarea mâinilor și
fără a-și abate aten ția de la alte manevre în curs de executare. Unele dintre cele mai cunoscute
sisteme folosite de c ătre armata S.U.A. sunt:
Adacel MaxSim [Nua01] – folosit pentru antrenarea controlorilor de trafic aerian.
REED Error! Reference source not found. – inclus în programul pentru dezvoltarea
tehnologiei de recunoa ștere a vorbirii, ce se desf ășoară în centrul de cercetare RDEC (Army’s
Communications-Electronics Command’s Rese arch, Development and Engineering Center )
PHRASELATOR [Phr04] – dispozitiv de traducere automat ă din limba englez ă în alte
limbi dezvoltat de DARPA. Nevoia de asisten ță lingvistic ă a armatei americane în
operațiunile din Afganistan și Irak dup ă data de 11 septembrie 2001 a accelerat proiectarea
sistemului. Modelul 1100 a fost folosit de c ătre forțele armate americane în timpul
operațiunilor din Afganistan în 2002.
Figura 1.5 Dispozitivul PHRASELATOR utilizat în aplica țiile militare
PHRASELATOR recunoa ște un num ăr de peste 10.000 de expresii din limba englez ă
pe care le red ă apoi într-o alt ă limbă. Beneficiaz ă de cele mai avansate tehnologii atât la nivel
software (recunoa șterea vorbirii) cât și la nivel hardware (microfon, difuzoare, procesor,
memorie, etc.).
1.4 Scopul și organizarea lucr ării
Scopul principal al prezentei lucr ări este elaborarea unui sistem performant de
recunoașterea vorbirii în limba român ă. Acest obiectiv a necesitat analizarea, aplicarea și
evaluarea unor metode și algoritmi de actualitate din domeniul recunoa șterii automate a
vorbirii. Au fost avute în vedere urm ătoarele aspecte:
9Studiul sistemelor de recunoa ștere a vorbirii și analiza modalit ăților de utilizarea a
tehnologiilor moderne din domeniu în vederea aplic ării pentru limba român ă
Modelarea dependen ței contextuale în limba român ă. În general, metodele de
recunoaștere a vorbirii la nivel acus tic nu sunt dependente de limb ă. Ele se desprind din
domeniul mai larg al recunoa șterii formelor, având unele particularit ăți specifice semnalului
vocal. Totu și, sistemele cele mai performante înglobeaz ă și cunoștințe expert lingvistice la
nivelul model ării acustice. De exemplu, pentru modelarea dependen ței de context la nivel de
fonem, pot fi utilizate întreb ări fonetice specifice unei anumite limbi pentru a genera arbori
fonetici de decizie. Gruparea st ărilor modelelor pe baza similarit ății observa țiilor acustice se
face prin metoda arborilor fonetici de decizie.
Reducerea efortului de calcul în faza de recunoa ștere. Pentru un sistem practic de
recunoaștere a vorbirii, timpul de recunoa ștere și memoria consumat ă sunt indicatori de
performan ță la fel de importan ți ca și rata de recunoa ștere. În faza de de codare a frazei de
recunoscut, tehnica de c ăutare folosit ă poate reduce resursele de calcul considerabil prin
degradarea minim ă a ratei de recunoa ștere. Au fost studia ți o serie de algoritmi de c ăutare
generali și specifici recunoa șterii vorbirii. La nivel experimental a fost utilizat algoritmul de
decodare Viterbi fascicular sincron în timp și a fost analizat ă influența lărgimii fasciculului
asupra ratei de recunoa ștere și a timpului de calcul.
Creșterea robuste ții sistemelor de recunoa ștere a vorbirii . Pentru un sistem de
recunoaștere, condi țiile acustice de testare difer ă în general de condi țiile acustice în care au
fost înregistrate frazele de antrenare. În aceast ă lucrare au fost prezentate o serie de metode
atât de îmbun ătățire a calit ății semnalului vocal ( speech enhancement ) cât și de modelare
acustică adecvat ă a semnalului vocal perturbat de zgomot. Au fost testate la nivel
experimental pe sistemele de recunoa ștere construite pentru limba român ă două metode:
normalizarea prin medie cepstral ă (NMC) și antrenarea multipl ă.
Organizarea lucr ării
În C apitolul 1 sunt prezentate aspecte generale ale recunoa șterii vorbirii , stadiul
actual al cunoa șterii și o serie de aplica ții ale recunoa șterii vorbirii în domeniul militar.
În Capitolul 2 sunt detaliate principalele metode de prelucrare a semnalului vocal și
de modelare la nivel acustic, insistând în special pe cele utilizate în aceast ă lucrare. Este
abordată inițial prelucrarea primar ă a semnalului vocal în vederea recunoa șterii incluzând
preaccentuarea, extragerea coeficien ților cepstrali și detecția automat ă a semnalului vocal. Se
face apoi o trecere în revist ă a tehnicilor de re-estimare și de decodare, a modelelor Markov
ascunse (MMA), aceasta constitui nd suportul sistemelor de recunoa ștere construite în
capitolul experimental al lucr ării.
Capitolul 3 abordeaz ă problematica compens ării variabilit ății vorbirii prin modelarea
dependen ței de context. Sunt analiza ți principalii factori de variabilitate a vorbirii, sunt
prezentate aspecte legate de antrenabilitatea modelelor și tehnici eficiente de modelare a
dependen ței contextuale. Sunt tratate abord ările ascendente și descendente folosite în gruparea
modelelor similare acustic, insistându-se pe u tilizarea arborilor fonetici de decizie – metod ă
utilizată în sistemele de recunoa ștere bazate pe trifoni construite în partea experimental ă a
lucrării.
Capitolul 4 reprezint ă un studiu asupra algoritmilor de c ăutare în general și a celor
utilizați în recunoa șterea vorbirii, în particular. Sunt descrise metodele c ăutării pe baz ă de
grafuri (c ăutarea oarb ă, căutarea euristic ă) precum și principalele tehnici de c ăutare utilizate
în recunoa șterea vorbirii (c ăutarea Viterbi sincron ă în timp și căutarea A* asincronă).
10În Capitolul 5 sunt prezentate principalele tehnici de cre ștere a robuste ții sistemelor
de recunoa ștere a vorbirii la factori ambientali perturbatori. Sunt descrise modelul mediului
acustic ambiental, principalele perturba ții suferite de semnalul vocal în practic ă și rolul
traductoarelor acustice în sistemele de recunoa ștere. Pentru compensarea modific ărilor
suferite de semnalul vocal au fost abordate dou ă categorii de tehnici: îmbun ătățirea calității
semnalului vocal și respectiv tehnici de modelare adecvat ă la nivel acustic.
Capitolul 6 include arhitectura general ă a sistemului de recunoa ștere a vorbirii
continue propus pentru limba român ă (SRVC-LR) bazat pe modele Markov ascunse. Sunt
descrise detaliat modelarea la nivel fonetic pentru limba român ă, etapele de antrenare,
gramaticile utilizate pentru testare, analiza performan țelor și metode de rafinare a sistemului.
SRVC-LR este o aplica ție hibridă MATLAB-HTK, care ofer ă un cadru pentru construirea și
testarea sistemelor de recunoa ștere pentru limba român ă. Sunt descrise și interpretate o serie
de experimente legate de c ăutarea fascicular ă și de creșterea robuste ții sistemelor de
recunoaștere la zgomot aditiv precum și o interfa ță vocală cu utilizatorul prin intermediul
căreia pot fi testate în timp real sistemele rezultate.
Capitolul 7 este dedicat concluziilor, contribu țiilor personale și direcțiilor de cercetare
viitoare.
În Anexa A sunt descrise resursele lingvistice utilizate: inventarul de foneme al limbii
române, dic ționarul fonetic, mostre de fraze utilizate atât în faza de antrenare cât și în cea de
testare și un exemplu de descriere a unei gramatici folosit ă pentru generarea frazelor de test
pentru una din cele dou ă baze de date cu semnal vocal.
În Anexa B sunt prezentate succint func țiile modulelor software realizate și a celor
utilizate în experimentele de recunoa ștere a vorbirii pentru limba român ă.
În Anexa C se regăsesc întreb ările fonetice utilizate în construirea arborilor de decizie
în procesul de antrenare a modelelor dependente de context. De asemenea este dat un set
complet de arbori fonetici de decizie genera ți pentru limba român ă.
CAPITOLUL 2
MODELAREA ACUSTIC Ă
ÎN RECUNOA ȘTEREA VORBIRII
2.1 Prelucrarea semnalului vocal în vederea
recunoa șterii
2.1.1 Achizi ția semnalului vocal
Achiziția semnalului vocal se realizeaz ă în general prin intermediul unui traductor
acustic (microfon) care converte ște forma de und ă acustică în form ă de undă electrică.
Componentele unui sistem de recunoa ștere automat ă a vorbirii (SRAV) pot lucra într-o
manieră sincronă în timp, de la stânga la dreapta ( Figura 2.1 ). Sistemul de operare
gestioneaz ă mai multe procese care ruleaz ă în paralel într-o manier ă de tip multitasking :
digitizare, parametrizare, modelare acustic ă și modelare lingvistic ă. Aceste procese transfer ă
rezultatele prelucr ării prin canale de leg ătură (pipelines ). Fiecare introduce o întârziere în
funcție de complexitatea prelucr ării, astfel c ă datele sunt depuse în zone de memorie tampon
(buffers ) pentru a asigura continuitatea procesului de recunoa ștere.
Modelare
limbaj Modelare
acustică CAD Pipelines
Buffers Sistem operare
Extragere
parametri Semnal
vocal Text
Figura 2.1 Comunica ția sincron ă de la stânga la dreapta
între procesele SRAV
Un parametru important în conversia analog-digital ă a semnalului vocal îl reprezint ă
frecvența de eșantionare. Având în vedere caracte risticile semnalului vocal, frecven ța de
eșantionare optim ă pentru recunoa șterea vorbirii este de 16kHz. Cre șterea frecven ței de
eșantionare peste 16 kHz nu este justificat ă deoarece nu îmbun ătățește rata de recunoa ștere,
crescând în schimb fluxul de da te necesar procesului de achizi ție a semnalului vocal. Sc ăderea
ratei de eșantionare sub 16 kHz conduce implicit la sc ăderea acurate ții SRAV.
2.1.2 Detec ția automat ă a semnalului vocal (VAD)
Recunoașterea vorbirii în practic ă are unele particularit ăți care o diferen țiază față de
experimentele de laborator. Detec ția semnalului vocal reprezint ă procesul de delimitare în
timp a semnalului vocal.
Două dintre cele mai utilizate metode de declan șare a achizi ției sunt:
12a) metoda push-to-talk (PTT)
b) metoda ascult ării continue
PTT se bazeaz ă pe activarea/dezactivarea achizi ției de către vorbitor printr-un anumit
eveniment extern SRAV, de exemplu ap ăsarea unui buton.
Ascultarea continu ă presupune achizi ția permanent ă de semnal acustic și detecția
automată a limitelor dintre semnalul vocal și zgomotul ambiental. Aceast ă metodă se bazeaz ă
pe un detector de activitate vocal ă (Voice Activity Detector – VAD ) care const ă în general într-
un clasificator al celor dou ă stări: liniște / vorbire ( Figura 2.2 ). Deși clasificatorul marcheaz ă
marginile por țiunilor de semnal vocal, totu și ultima decizie apar ține SRAV întrucât acesta
prin înglobarea modelului de zgomot furnizeaz ă și informația de aliniere temporal ă a datelor.
Frecvență [Hz] 8000
0
Timp[s]
VAD SRAV Semnal vocal
Liniște
0
Figura 2.2 Detecția automat ă a semnalului vocal
a) Față de metoda PTT, ascultarea continu ă necesită mai multe resurse pentru
procesare, introducând în plus și potențiale erori de detec ție.
În continuare, vom descrie o tehnic ă relativ simpl ă de detecție automat ă a semnalului
vocal ce a fost implementat ă în interfa ța vocală proiectat ă de autorul acestei lucr ări [Oan05],
[Mun05b]. Detectorul vorbire/lini ște se bazeaz ă pe un algoritm pe dou ă niveluri care mai întâi
clasifică fiecare din cadrele de date ca fiind vorbire sau lini ște și apoi aplic ă o regulă euristică
de estimarea a începutului și sfârșitului vorbirii.
Detectorul clasific ă fiecare cadru de 20 ms (320 e șantioane pentru o frecven ță de
eșantionare de 16 kHz) ca fiind vorbire dac ă log-energia sa dep ășește un prag, sau lini ște, în
caz contrar. Acest prag este ajustat automat printr-o procedur ă de calibrare la începutul
sesiunii de lucru, înainte de recunoa șterea propriu-zis ă. Majoritatea cadrelor de vorbire
depășesc pragul de detec ție, excep
ție făcând unele sunete nevocalizate din categoria
consoanelor precum: /S/, /ts/, /p/, etc. Luând în considerare aceste excep ții, achiziția nu poate
fi declanșată / oprită de simpla tranzi ție a acestui prag. Apare deci necesitatea unui al doilea
nivel de clasificare pentru a nu pierde por țiunile de energie sc ăzută din semnalul vocal util.
După ce cadrele au fost clasificate și marcate ca vorbire sau lini ște, acestea sunt
grupate în ferestre temporale, constând în N cadre consecutive. În fiecare fereastr ă, se
determină numărul de cadre marcate ca vorbire.
Când num ărul de cadre marcate este mai mare sau egal decât o valoare fixat ă, întreaga
fereastră este marcat ă ca vorbire. Exist ă două astfel de valori fixate:
i) STARTN utilizată înainte ca vorbirea s ă fie detectat ă
13ii) DECLN utilizată după ce începutul de vorbire a fost detectat
Cele dou ă praguri se aleg empiric, prin ajust ări succesive iar în general
START DECL N N< . Această diferențiere, permite algoritmului s ă țină cont de tendin ța ca sfârșitul
vorbirii s ă conțină mai mult ă „liniște” (cadre de energie sc ăzută) decât începutul. Cu alte
cuvinte, dup ă începutul vorbirii, ferestrele sunt marcate ca fiind vorbire pentru mai pu ține
cadre de vorbire, decât înainte de acest moment.
Figura 2.6 Exemplu de detec ție a semnalului vocal pentru recunoa ștere
În final, se utilizeaz ă o metodă euristică pentru determinarea începutului și sfârșitului
vorbirii. În Figura 2.6 este prezentat procesul de declan șare / încetare a achizi ției în vederea
recunoașterii pentru cazul particular 8=N , 5=STARTN și 3=DECLN . Începutul efectiv al
vorbirii este marcat de prima fereastr ă etichetată ca vorbire (START), atunci când nr. de cadre
de vorbire dep ășește contorul de prag STARTN . Din acest moment contorul de prag devine
DECLN . Începutul achizi ției este îns ă marcat cu PREW ferestre mai devreme de începutul
vorbirii, pentru a evita pierderea por țiunii de început a semnalului vocal dac ă energia acestuia
este relativ sc ăzută în aceast ă zonă. În Figura 2.6, PREW =2. Se declar ă sfârșitul vorbirii atunci
când cel pu țin POSTW ferestre succesive sun declarate ca ferestre de tip lini ște. În exemplul de
mai sus POSTW =3. La finalul acestora înceteaz ă și achiziția semnalului pentru recunoscut. În
Figura 2.6 se observ ă faptul că un număr de două ferestre (<POSTW ) succesive marcate cu L nu
sunt suficiente pentru a opri achizi ția.
2.1.3 Parametrizarea semnalului vocal
Pentru recunoa șterea vorbirii, extragerea parametrilor semnificativi ai semnalului
vocal joac ă un rol extrem de important. Exist ă mai mul ți parametrii care pot fi utiliza ți în
procesul de recunoa ștere.
Parametrizarea semnalului vocal se realizeaz ă prin intermediul analizei pe termen
scurt care se bazeaz ă pe presupunerea c ă vorbirea are un caracter sta ționar pe o durat ă de
câteva zeci de milisecunde (caracteristicile spectrale sunt relativ constante). Pentru cadru de
semnal vocal se calculeaz ă un număr de coeficien ți care caracterizeaz ă în special forma
tractului vocal. Cei mai utiliza ți coeficien ți sunt cei MFC ( Mel Frequency Cepstrum ).
Beneficiind de caracterul lor perceptual și de rezultate superioare fa ță de alți coeficien ți Nivel
I Cadru:
II Fereastra: timp
0 1 0 3 587820368720 0 0
L L L L V V V V L L V V V V L L L L
Achiziție vorbire Liniște Liniște 5=STARTN 3=DECLN START STOP
POSTWPREW
14precum cei LPC ( Linear Prediction Coding ) [Dav80], coeficien ții MFC au devenit o solu ție
standard în SRAV-urile moderne.
Variațiile temporale ale caracteristicilor spectrale joac ă un rol extrem de important în
percepția umană. O modalitate de a îngloba aceast ă informație este utilizarea coeficien ților
delta, ca o m ăsură a modific ărilor coeficien ților de baz ă în timp. Calculul coeficien ților de
variație se realizeaz ă prin metode numerice, cu ajutorul func țiilor de interpolare în timp
discret [Gav00]. Pentru rezultate optime în recunoa șterea vorbirii s-a constatat c ă este
necesară utilizarea a 13 coeficien ți MFC împreun ă cu cei de varia ție de ordinul 1 și 2.
2.2 Recunoa șterea vorbirii bazat ă pe modele Markov
ascunse (MMA)
2.2.1 Introducere
Lanțurile Markov au primit acest nume dup ă omul de știință rus A. Markov, care a
fost un pionier în analiza secven țelor de litere din texte, la începutul secolului al XX-lea
[Mar13]. Modele Markov Ascunse ( HMM – Hidden Markov Models ) reprezint ă o metodă de
modelare statistic ă puternică ce caracterizeaz ă datele emise în cadrul unui proces în timp
discret de c ătre un sistem ale c ărui stări nu sunt cunoscute.
În zilele noastre, sistemele open-source de recunoa ștere bazate pe MMA cum sunt cele
de la CMU sau Cambrige University’s HTK ( Hidden Markov Models Toolkit ), reprezint ă un
excelent punct de plecare pentru cei care utilizeaz ă implement ările deja existente în
experimentele lor. Sistemul de recunoa ștere construit pentru limba român ă și prezentat în
această lucrare, se bazeaz ă pe o parte din func țiile acestui toolkit .
2.2.2 Unit ăți de vorbire adecvate pentru recunoa șterea vorbirii
Într-o limb ă dată, cuvântul este considerat unitatea lingvistic ă de bază, având un
înțeles și putând fi folosit în mod independent. Totu și, pentru un sistem de recunoa ștere de
vocabular mediu sau mare este dificil de construit și utilizat un sistem bazat pe modele la
nivel de cuvânt deoarece:
• orice aplica ție nouă de recunoa ștere poate s ă conțină cuvinte noi (nume proprii,
neologisme, etc.) f ără însă a aduce și date suficiente pentru antrenare
• numărul de cuvinte este prea mare (de la câteva mii la peste o sut ă de mii)
pentru a putea antrena în mod eficient modelele acustice
Pentru un sistem practic și eficient, alegerea unit ății de recunoscut reprezint ă un aspect
esențial de proiectare. Aceast ă alegere trebuie f ăcută ținând cont de urm ătoarele considerente:
• Unitatea trebuie s ă fie exactă pentru a reprezenta cu precizie diversele realiz ări
acustice care apar în diferite situa ții
• Unitatea trebuie s ă fie antrenabil ă. Trebuie s ă fie disponibile suficient de
multe date pentru a estima în mod robust și fiabil parametrii modelelor
acustice.
• Unitatea trebuie s ă fie generalizabil ă, astfel încât oric ărui cuvânt nou care
poate apărea într-o aplica ție specific ă, să i se poat ă genera un model care s ă
derive dintr-un inventar de modele independente de aplica ție
Proiectarea unui SRAV trebuie s ă țină cont de aspectele amintite mai sus în alegerea
unității lingvistice de recunoscut astfel încât s ă realizeze un echilibru al acestor criterii.
15Alegerea cuvântului ca unitate în recunoa ștere este o practic ă curentă în sistemele de
vocabular mic. Avantajul model ării la nivel de cuvânt este c ă modelul poate îngloba efectele
co-articula ției inerente intra-cuvânt. În aceast ă situație, modelele pot fi în egal ă măsură precis
definite și antrenabile fără a fi nevoie s ă fie și generalizabile .
Pentru sisteme de recunoa ștere de vocabular mare, modelele la nivel de cuvânt nu mai
sunt nici antrenabile și nici generalizabile. În faza de recunoa ștere pot ap ărea cuvinte care nu
au existat în faza de antrenare f ăcând necesar ă o tehnică de compunere a modelelor antrenate
pentru a genera modele noi.
O soluție pentru a compensa dezavantajele model ării la nivel de cuvânt o constituie
modelarea la nivel de fonem . De exemplu, în limba român ă există aproximativ 34 foneme ale
căror modele pot fi u șor antrenabile cu doar câteva sute de fraze. Modelele bazate pe foneme
sunt evident antrenabile datorită numărului mic de foneme dintr-o limb ă și în plus
generalizabile fiind independente de vocabularul utilizat atât în faza de antrenare cât și în faza
de testare.
2.2.3 Noțiuni de baz ă ale MMA
Un MMA reprezint ă un model al unui proces stoc astic în care un set de observa ții (de
exemplu, vectori acustici de tip MFCC) este generat în timp discret de c ătre o secven ță de
stări conectate prin tranzi ții. Termenul de „st ări ascunse” se refer ă la faptul c ă în general se
cunoaște secven ța de observa ții fără a se cunoa ște secven ța de stări care le-au generat. La
fiecare pas de timp (care corespunde unui cadru de analiz ă), modelul î și schimbă starea în
conformitate cu un set de probabilit ăți de tranzi ție. Starea rezultant ă genereaz ă o unică
observație conform unei distribuții de probabilitate de emisie a acelei st ări. (Figura 2.8).
()tob412a22a
23a33a
34a44a
Na41 2 3 4 N
()tob2()tob3
tObservații Stări:
1o3o4o5o6o7o8o2o
Figura 2.8 Exemplu de MMA
În general, se cunosc numai parametrii modelului și semnalul de la intrare
(observațiile), secven ța de stări fiind ascunsă (necunoscut ă). Astfel probabilitatea ca un model
dat să genereze observa țiile trebuie calculat ă prin însumarea tuturor secven țelor de st ări
posibile:
()() ()()( )() ()()() ∑ ∏ ⎟⎟
⎠⎞
⎜⎜
⎝⎛=
=−
XNTxT
tt txtxtx x x aob a oba O
21 1 1 11 Pr ( 2.9)
Este evident faptul c ă valorile termenilor sumei difer ă foarte mult, în func ție de
secvențele alese, astfel c ă suma poate fi aproximat ă prin termenul ei de valoare maxim ă,
corespunz ător celei mai probabile c ăi (secvență de stări) care a generat observa țiile:
16 ()() ()()( )() ()()()
⎭⎬⎫
⎩⎨⎧
⎟⎟
⎠⎞
⎜⎜
⎝⎛= ∏
=− NTxT
tt txtxtx x xXaob a oba OP
21 1 1 11 max ˆ ( 2.10)
Nici una dintre aceste valori nu poate fi calculat ă direct din cauza num ărului mare de
secvențe de stări posibile, în general utilizându-se proceduri iterative eficiente de evaluare cu
ajutorul program ării dinamice.
2.2.4 Utilizarea MMA pe ntru modelarea vorbirii
Pentru a utiliza modelele Markov în modelarea vorbirii, se fac o serie de presupuneri
despre structura procesului pe care îl reprezint ă:
• Observațiile reprezint ă cu fidelitate semnalul
• Observațiile sunt independente una de alta
• Probabilit ățile de tranzi ție dintre st ări sunt constante
Forța MMA nu const ă în exactitatea cu care acestea modeleaz ă producerea vorbirii, ci
în special în existen ța unor algoritmi de calcul extrem de eficien ți pentru:
a) estimarea parametrilor modelelor, având la dispozi ție secven țe de date de clase
cunoscute, faz ă numită antrenare
b) alegerea modelelor care se potrivesc cel mai bine cu secven țe de date de clas ă
necunoscut ă, fază numită recunoaștere sau decodare
În mod ideal, procesul de antrenare ar trebui s ă funcționeze pe criteriul maximiz ării
ratei de recunoa ștere a sistemului rezultat. Costul computa țional a unei astfel de scheme de
antrenare discriminativ ă este foarte ridicat, astfel c ă în general se utilizeaz ă scheme de
antrenare bazate pe estimarea maximului probabilit ății (MLE – Maximum Likelihood
Estimation ).
2.2.5 Distribu ția probabilit ății de emisie
Fiecare stare emisiv ă a unui MMA are asociat ă o distribu ție de probabilitate de emisie
care determin ă probabilitatea observa țiilor generate de acea stare. Aceast ă distribuție trebuie
să fie suficient de precis ă încât să permită:
a) discriminarea între diferite realiz ări acustice ( și implicit între clasele de
recunoscut)
b) captarea variabilit ății inerente a vorbirii naturale cauzat ă de vorbitori, de mediu,
etc (să fie robust ă)
Cea mai utilizat ă distribuție continu ă o reprezint ă distribuția gaussian ă. O funcție
densitate de probabilitate Gaussian ă (cu mixturi) este de forma:
()()
()() () ⎟
⎠⎞⎜
⎝⎛−Σ−−
Σ=Σ =
−
jm t jm jm t
jmnjm jm t t jm
o ooN ob
μ μ
πμ
1'21exp
21;;
, ( 2.11)
() ()∑
==M
mt jm jm tj obc ob
1. ( 2.12)
17unde n este dimensiunea datelor; pentru mixtura m din starea j, ponderea,
media, și covarian ța sunt reprezentate de jmc, jmμ și respectiv jmΣ
Atât în timpul antren ării cât și al testării, calculul acestor func ții de probabilitate de
distribuție Gaussian ă este foarte costisitor din punct de vedere computa țional, în special în
situațiile în care se utilizeaz ă matrice de covarian ță complete [Gav00]. În consecin ță, foarte
multe sisteme bazate pe func ții cu densitate continu ă utilizeaz ă matrice de covarian ță
diagonale, reducând drastic atât costul de calcul cât și cerințele de memorie. Totu și, această
simplificare ar putea co nduce la afectarea calit ății modelării, dacă elementele vectorilor de
observație nu ar fi statistic independen ți. În cazul utiliz ării MFCC, transformarea cosinus
discretă aplicată asupra spectrului de putere asigur ă faptul că elementele individuale calculate
sunt aproape independente.
2.2.6 Estimarea secven țelor de stări
Estimarea celei mai bune secven țe de stări în paradigma MMA reprezint ă un element
cheie în procedurile de:
a) Antrenare – pentru estimarea noilor parametrii ai modelelor
b) Recunoaștere – pentru alegerea între diferite ipoteze alternative de recunoa ștere,
prin calcularea probabilit ății unei astfel de secven țe
Secvența de stări și probabilitatea asociat ă pot fi determinate prin dou ă modalități:
A. Probabilist , utilizând probabilitatea total ă :
Se calculeaz ă probabilitatea unei rostiri, prin însumarea peste toate secven țele de
stări posibile și se determin ă probabilitatea aposteriori ca fiecare observa ție să fie
generată de fiecare stare. Probabilitatea aposteriori ca o stare s ă fie ocupat ă la un
moment de timp dat se nume ște ocupare.
B. Determinist , utilizând probabilitatea maxim ă :
Se calculeaz ă probabilitatea celei mai probabile secven țe de stări și se determin ă
pentru aceast ă secvență, stare care a generat fiecare observa ție în parte.
Fiecare din cele dou ă modalități sunt descrise detaliat în lucrare.
2.2.7 Reducerea spa țiului de c ăutare (pruning)
Calculul necesar pentru g ăsirea celei mai probabile secven țe de stări, necesar atât în
faza de antrenare cât și în cea de recunoa ștere solicit ă multe resurse (timp și memorie) în
special în situa țiile în care spa țiul de căutare este mare. Majoritatea tehnicilor utilizate pentru
limitarea acestor cerin țe de calcul se refer ă la reducerea spa țiului de căutare [Mun03b].
Se poate constata empiric faptul c ă, în general, valorile γ tind să devină foarte mici
(<<10-5) cu excep ția câtorva st ări mai probabile. În consecin ță, numai o parte din aceste st ări
au efecte însemnate asupra calculelor iar calculele asociate celorlalte st ări pot fi evitate. O
tehnică extrem de simpl ă și eficientă este reducerea fascicular ă (beam pruning ) prin care se
iau în calcul numai st ările a căror probabilitate se situeaz ă într-un interval fixat fa ță de starea
cu cea mai mare probabilitate la un moment dat. Acest interval se mai nume ște și lărgime
fascicular ă (beam width ) și poate regla resursele de calcul implicate în c ăutare, în special în
faza de recunoa ștere [Mun04b] .
182.2.8 Re-estimarea parametrilor
În faza de antrenare, dup ă găsirea celei mai bune c ăi pe baza datelor și a parametrilor
inițiali, este necesar ă estimarea unor parametrii noi ai modelelor, care s ă conducă la scoruri
acustice mai bune. Pentru aceasta trebuie re-estimate dou ă categorii de parametrii:
a) distribuțiile probabilit ăților de emisie ()obj pentru fiecare stare j. Pentru
distribuții continue cu mixturi Gaussiene, se determin ă jmc, jmμ și jmΣ din
ecuațiile (2.11) și (2.12).
b) probabilit ățile de tranzi ție ija dintre stări.
Estimările probabilit ății maxime ( Maximum Likelihood Estimation – MLE ) pentru
acești parametri iau forma unor medii fie a num ărului de apari ții ale unui anumit eveniment
în cazul probabilit ăților, fie a datelor în cazul parametrilor [Bau72]. Formulele de reestimare
detaliate la nivel de model se reg ăsesc în întregime în lucrare.
2.2.9 Decodarea
Decodarea (sau recunoa șterea) are drept scop selectarea modelului (sau modelului
compozit) Xˆcare este cel mai probabil s ă fi generat secven ța de observa ții O, a cărei
transcriere fonetic ă și textuală nu este cunoscut ă:
()() { }X XO X
XPr Pr maxargˆ= , ( 2.29)
Evaluarea termenului ()XOPr pentru un model cunoscut (compozit sau nu) se poate
face prin estimarea celei mai probabile secven țe fie prin metoda probabilist ă fie prin cea
determinist ă.
Procesul de decodare este prin excelen ță o problem ă de căutare. Strategiile de c ăutare
utilizate în recunoa șterea vorbirii sunt prezentate pe larg în Capitolul 4 .
2.3 Variabilitatea vorbirii
O caracteristic ă definitorie a vorbirii este marea sa variabilitate cauzat ă de diver și
factori dintre care cei mai importan ți sunt vorbitorul și mediul ambiental acustic.
În ceea ce prive ște variabilitatea vorbitorului, aceasta este generat ă de faptul c ă
oamenii chiar dac ă vorbesc aceea și limbă, pot fi totu și foarte diferi ți în modul de producere a
vorbirii. Factorii care pot diferen ția doi vorbitori sunt: dimensiunile fizice ale organelor de
vorbire (tract vocal, corzi vocale, gur ă, dinți, buze), vârst ă, sex, dialect, s ănătate, educa ție, stil
personal. Variabilitatea de stil al vorbirii este generatoare de erori pentru un SRAV. Oamenii
pot vorbi mai repede sau mai lent, mai tare sau mai încet, în func ție de starea de dispozi ție,
emoțională, etc.
Variabilitatea mediului afecteaz ă în general performan țele sistemelor de
recunoaștere a vorbirii. Mediul în care tr ăim este plin de sunete din diferite surse și de
intensități diferite: sunetele produse de u și, geamuri, aparate de aer condi ționat, ventilatoare,
vorbirea altor oameni, ma șini, etc.. Principalele strategii pentru a compensa influen țele
mediului sunt fie de a îmbun ătăți calitatea semnalului vocal prin eliminare efectelor
perturbațiilor ( speech enhancement ), fie de a crea modele su ficient de robuste pentru a
menține o rată de eroare sc ăzută a recunoa șterii.
19Variabilitatea contextual ă constă în realiz ări acustice diferite ale unit ății de
recunoscut, func ție de contextul în care este rostit. Acest efect de coarticula ție are loc atât la
nivel de cuvânt cât și la nivel sub-cuvânt (silab ă, fonem). De exemplu, fonemul /a/ are
realizări fonetice diferite în contextele /e_X/ – /a/ – /w/ și respectiv /w/ – /a/ (Figura 2.9 ).
8000
0 0 1 Timp[s] Frecvență /s/ /t/ /e_X/ /a/ /w/ /a/
Figura 2.9 Spectograma pentru cuvântul „STEAUA”
(în transcriere fonetic ă /s/-/t/-/e_X/-/a/-/w/-/a/)
Variațiile contextuale la nivel de fonem pot fi compensate printr-o modelare adecvat ă
a dependen ței de context a șa cum se va descrie pe larg în Capitolul 3.
2.4 Alte tehnologii de recunoa ștere a vorbirii
Pe lângă tehnologia MMA dominant ă în recunoa șterea vorbirii, exist ă și alte
tehnologii bazate fie pe modele segmentale ( Segmental Models ) fie pe re țele neuronale
artificiale ( RN), sau pe sisteme hibride ( RN-MMA ) [Mun05d] . Rețelele neuronale utilizate
pentru recunoa șterea vorbirii au un caracter puternic discriminativ în ceea ce prive ște
recunoașterea formelor, dar modeleaz ă cu dificultate varia ția temporal ă a semnalului vocal,
astfel că performan țele lor în recunoa șterea vorbirii continue de vocabular mediu și mare sunt
încă modeste comparativ cu MMA. Totu și aceste abord ări alternative pot conduce la rezultate
bune în unele aplica ții pentru anumite situa ții particulare.
2.4.1 Rețele neuronale artificiale utilizate în recunoa șterea
vorbirii
Structuri de baz ă ale rețelelor neuronale
Una dintre cele mai promi țătoare direc ții în recunoa șterea formelor, aplicate și în
domeniul recunoa șterii vorbirii o reprezint ă rețelele neuronale artificial e (RN). Procedurile de
antrenare necesit ă pentru astfel de modele o mare putere de calcul, care este ast ăzi din ce în ce
mai puțin prohibitiv ă având în vedere disponibilitatea arhitecturilor hardware.
Rețelele neuronale artificiale încearc ă să obțină un comportament și performan țe
similare celor biologice utilizând mai multe elemente de procesare simple care lucreaz ă în
paralel.
20În această lucrare sunt descrise pe scurt câteva structuri RN, de la perceptronul multi-
strat și până la modele aplicate în recunoa șterea vorbirii precum re țele neuronale recurente
(RNR) și rețele neuronale cu întârziere în timp (TDNN – Time Delay Neural Networks ).
Structurile bazate pe re țele neuronale artificiale au deocamdat ă rezultate mai modeste
în recunoa șterea vorbirii. Ele s-au dovedit a fi eficiente în sisteme de vocabular redus și
adeseori pe unit ăți izolate. De și prin recuren ță se încearc ă o integrare a evolu ției temporale,
totuși performan țele acestora sunt limitate în tratarea aplica țiilor de vocabular mare și în
recunoașterea vorbirii continue [Hua01].
2.4.2 Modele segm entale – o nou ă perspectiv ă
În capitolele anterioare am ar ătat că presupunerile f ăcute în cazul modelelor Markov
ascunse pentru modelarea vorbirii nu sunt tocmai exacte: durata unei st ări are o distribu ție
exponențială, probabilit ățile de tranzi ție depind numai de starea curent ă și starea urm ătoare iar
observațiile depind numai de st ările care le-au generat, independent de observa țiile vecine
(contextuale). Pentru a compensa aceste inexactit ăți, au fost propuse o serie de m ăsuri care
însă nu au îmbun ătățit foarte mult acurate țea recunoa șterii în practic ă, mărind însă substanțial
costul de calcul și numărul de parametrii ale unui SRAV.
Utilizarea mixturilor Gaussiene, poate conduce la o alt ă problem ă în sistemele de
recunoaștere a vorbirii bazate pe MMA prin faptul c ă se permit tranzi ții între diferite
componente (mixturi Gaussiene) ale st ărilor adiacente Aceste deficien țe pot fi compensate de
către modelele segmentale (Segment models – SM) [Ost96] .
Deoarece evaluarea probabilit ăților modelelor segmentale nu poate fi descompus ă,
calculul acesteia nu poate fi utilizat în comun ( sharing ) de către segmente diferite (chiar dac ă
segmentele difer ă prin numai un cadru). Acest fapt conduce la o cre ștere important ă în costul
de calcul atât în faza de antrenare cât și în cea de decodare [Ost96]. Din cauza cre șterii
spațiului de c ăutare, evaluarea modelelor segmentale este cu un ordin de m ărime mai
costisitoare computa țional decât cea a modelelor Markov ascunse, care implic ă de regul ă
numai câteva cadre.
Modelele segmentale au furnizat rezultate încurajatoare în special în domeniul
recunoașterii vorbirii izolate sau de vocabular mic. Aplicarea lor în recunoa șterea vorbirii
continue de vocabular mare nu este înc ă o soluție practic ă din cauza complexit ății de
implementare.
Cele dou ă abordări statistice MMA și SM sunt complementare. Modelele Markov
ascunse sunt foarte eficiente în modelarea detaliilor de fine țe ale semnalului vocal prin
utilizarea unei st ări pentru fiecare regiune de cvasi-sta ționaritate, neglijând îns ă tranzițiile
dintre aceste regiuni din cauza duratelor relativ scurte. În cont rast, modelele segmentale sunt
mai puternice în modelarea tranzi țiilor și a dinamicii ridicate a semnalului vocal, dar renun ță
la modelarea detaliat ă pentru a putea asigura antrenabilitatea și manevrabilitatea.
În ultimii ani, s-a reu șit realizarea unei viziuni unitare care combin ă cele două tipuri de
modelări [Hon00] sub denumirea de modele unificate la nivel de cadre și segmente ( Unified
Frame and Segment Based Models ). Pentru sistemul de recunoa ștere WHISPER [Hua96], o
astfel de abordare unitar ă a adus o reducere ratei de eroare la nivel de cuvânt de 8% pentru
aplicația de dictare WSJ ( Wall Street Journal ) față de abordarea bazat ă pe MMA.
21CAPITOLUL 3
MODELE DEPENDENTE DE CONTEXT UTILIZATE
ÎN RECUNOA ȘTEREA VORBIRII
3.1 Modelarea dependen ței de context
Pentru a maximiza acurate țea modelelor Markov ascunse (MMA) în sistemele
de recunoa ștere a vorbirii, este necesar ca arhitectura acestora din urm ă să fie
proiectată astfel încât s ă se exploateze la maximum puterea algoritmilor MMA,
minimizând în acela și timp dezavantajele acestora. În practic ă, acest principiu trebuie
să ne conduc ă la alegerea acelei parametriz ări și a acelor modele care s ă permită o
predicție cât mai fidel ă a datelor observate. Dac ă privim recunoa șterea vorbirii prin
prisma teoriei recunoa șterii formelor [Dud99] , este necesar ca pentru modelare,
variabilitatea în interiorul clasei (intra-clas ă) să fie mai mic ă decât variabilitatea dintre
clase (inter-clase). Acest deziderat poate fi îndeplinit dac ă parametrizarea semnalului
vocal și respectiv distribu ția de probabilitate la nivel de stare se aleg astfel încât
sunetele percepute ca fiind similare să conducă la date observate similare (în
conformitate cu legea de distribu ție). Din acest punct de vedere, a șa cum am ar ătat și
în capitolul anterior, coeficien ții MFCC s-au dovedit a fi o solu ție optimă în
recunoașterea automat ă a vorbirii [Dav80] .
Pe de alt ă parte, clasele de recunoscut trebuie alese astfel încât s ă poată fi
reprezentate de MMA. S-a constatat c ă o bună parte din variabilitatea intra-clas ă se
datorează în primul rând contextului. Spre deosebire de alte tipuri de variabilitate (de
exemplu cea dat ă de vorbitor), variabilitatea contextual ă este una sistematic ă pentru o
limbă dată și în consecin ță poate fi modelat ă. De exemplu, în limba român ă, pentru
modelul fonemului /a/ , datele acustice produse de un vorbitor atunci când pronun ță
acest fonem difer ă pentru diferite realiz ări contextuale (Figura 3.1). Dac ă se iau în
calcul aceste efecte contextuale, variabilitatea intra-clas ă poate fi mult redus ă,
modelele reprezentând unit ățile acustice cu mai mult ă precizie.
Factorii contextuali pot fi împ ărțiți în două mari categorii:
a. Factori de sesiune – sunt acei factori ce pot fi considera ți constanți
peste o sesiune de vorbire. Ace știa sunt compu și din factori cauza ți
de diferen țele dintre vorbitori și factori ambientali . Diferen țele
dintre vorbitori produc în general cea mai mare variabilitate la nivel de sesiune. Factorii ambientali pot fi compensa ți prin tehnici
specifice și vor fi trata ți în Capitolul 5.
b. Factori locali – sunt acei factori care se refer ă la variațiile care pot
apărea în cadrul unei rostiri. Ace știa sunt coarticula ția cu un
caracter pronun țat și prozodia (accentul, intona ția etc.).
22Realizări acustice Am pl.
Frecv./ o_X – a + m / / a /
Modele dependente
de context / e_X – a + g / Model independent
de context
Figura 3.1 Modelul independent de context / a / și variantele sale dependente de
context
/ e_X – a + g / (din cuvântul „steag”) și / o_X – a + m / (din cuvântul „oameni”)
3.1.1 Factori de sesiune
Majoritatea experimentelor de recunoa ștere automat ă a vorbirii au ar ătat că
sistemele dependente de vorbitor sunt mult mai precise și cu performan țe mult mai
bune decât sistemele similare independente de vorbitor [Hua93] . Vorbirea unei singure
persoane este mai pu țin variabil ă și deci o mare parte a variabilit ății vorbirii este
generată de diferen țele dintre vorbitori. Aceste diferen țe își au originea în :
• Sex și vârstă –de exemplu, femeile și copii au corzile vocale mai
scurte decât cele ale b ărbaților conducând la caracteristici diferite ale
sunetelor emise
• Dialect – există diferențe între vorbitorii din diferite zone geografice
• Stil – fiecare persoan ă are propria modalitate de a se exprimaîn
conformitate cu personalitatea sa, starea emo țională , starea general ă
de sănătate etc.
3.1.2 Factori locali
Vorbirea este produs ă cu ajutorul organelor de articula ție. Realizarea în
particular a unui fonem presupune o anumit ă poziție a organelor de articula ție care
este foarte mult influen țată de către pozițiile lor anterioare și ulterioare . Acest
23fenomen poart ă denumirea de coarticula ție. În timpul vorbirii, organele de articula ție
se deplaseaz ă în permanen ță de la o pozi ție la alta cu o vitez ă relativ mic ă (în vorbirea
cursivă rata vorbirii este mai mic ă de 10 foneme / secund ă) și nu au o pozi ție
constantă pe durata producerii unui fonem . Organele de articula ție își modific ă
dispunerea spa țială din pozi ția necesar ă articulării fonemului anterior prin pozi ția
necesară articulării fonemului curent și către poziția necesar ă articulării fonemului
următor.
Deci, realizarea acustic ă a unui fonem nu este consistent ă. Realizarea sa într-
un context dat este cu mult mai consistent ă decât realizarea aceluia și fonem într-o
varietate de contexte. Sistemele de recunoa ștere automat ă a vorbirii care țin cont de
această variație conduc la rezultate superioare celor care nu modeleaz ă variațiile
contextuale, deoarece se bazeaz ă pe modele care asigur ă o reprezentare mai precis ă
și mai consistent ă a vorbirii.
3.1.3 Modele dependente de context
Pentru a modela varia ția vorbirii cauzat ă de coarticula ție, se pot utiliza modele
diferite pentru contexte distincte, numi te modele dependente de context (DC). Dac ă
poziția organelor de articula ție poate fi dedus ă din identitatea fonemului, atunci,
pentru un anumit fonem, efectele coarticula ției ar putea fi deduse din identitatea
fonemelor al ăturate.
În continuare vom folosi nota ția /a-b+c/ pentru apari ția fonemului /b/ , având
în stânga fonemul /a/ și în dreapta fonemul /b/. Fonemele limbii române sunt notate
conform SAMPA [SAM96] .
După lungimea contextului considerat, mode lele fonetice se pot clasifica în:
• Monofoni –De exemplu cuvântul CARTE se transcrie la nivel de
fonem astfel: / sil/ /k/ /a/ /r/ /t/ /e/ /sil/ (/sil/ reprezint ă modelul pentru
pauza dintre cuvinte).
• Bifoni –Transcrierea cuvântului CARTE la nivel bifoni-stânga este
/sil/ /sil- k/ /k-a/ /a-r/ /r-t/ /t-e/ /sil/ iar la nivel de bifoni-dreapta este
/sil/ / k+a/ /a+r/ /r+t/ /t+e/ /e+sil/ / sil/
• Trifoni – Transcrierea la nivel de trifoni a cuvântului CARTE este
/sil/ /sil- k+a/ /k- a+r/ /a- r+t/ /r- t+e/ /t- e+sil/ / sil/.
• Modele de context ±N – se iau în considerare N de modele în stânga și
N modele în dreapta, reprezentând o generalizare a modelelor de mai
sus; astfel trifonii sunt modele de context ±1, quinfonii sunt modele
de context ±2, etc.
Numărul de modele DC cre ște exponen țial cu N , fiind îns ă limitat superior
(multe din modelele matematic posibile nu apar niciodat ă în vocabularul unei limbi).
Până în prezent, trifonii s-au dovedit a fi cele mai indicate modele în sistemele
practice de recunoa ștere a vorbirii.
3.2 Antrenabilitatea modelelor
Pentru a maximiza eficien ța și performan țelor sistemelor de recunoa ștere a
vorbirii bazate pe MMA, este nevoie s ă se mențină un echilibru între c omplexitatea
sistemului (gradul de detaliere a modelelor sau num ărul de parametrii) și
antrenabilitatea sistemului (abilitatea de a estima cu pr ecizii parametrii din datele
disponibile pentru antrenare).
24Sistemele de recunoa ștere cu cele mai detaliate modele (cu cel mai mare
număr de parametrii) ob țin în general și cele mai bune performan țe, dar numai cu
condiția ca ele s ă reprezinte cu precizie datele de antrenare. Este necesar ca to ți
parametrii sistemului de recunoa ștere să fie reprezentativi pentru vorbire, ceea ce
presupune ca pentru fiecare model s ă existe un num ăr cât mai mare de exemple în
faza de antrenare (În practic ă pentru a estima eficient media și varianța unor distribu ții
gaussiene, sunt necesare câteva sute și chiar mii de exemple). Pentru un corpus dat,
statistica arat ă faptul că datele de antrenare nu sunt distribuite uniform (num ărul de
exemple pentru diferite modele variaz ă chiar și cu 2 ordine de m ărime). De exemplu,
pentru limba român ă, numărul de apari ții al consoanei /g_/ este cu mult mai mic decât
numărul de apari ții al vocalei /a/, atât în limba scris ă cât și în cea vorbit ă.
Astfel, de și modelele DC pot reprezenta vorbirea cu mai mult ă precizie de cât
modelele IC, este dificil de antren at fiecare model în parte (corespunz ător fiecărui
context), din cauza num ărului mic de exemple în datele de antrenare, pentru unele
modele DC.
Există mai multe metode pentru creșterea antrenabilit ății unui sistem:
• Restrângerea (Backing off ) – când nu exist ă suficiente date de
antrenare pentru un model dat, poate fi folosit ă restrângerea, o metod ă
constând în utilizarea unui model mai pu țin specific dar pentru care
avem mai multe date de antrenare.
• Netezirea (Smoothing ) – pentru a men ține un grad ridicat de
dependen ță contextual ă este posibil ca parametrii modelelor specifice
să fie modifica ți spre valorile parametrilor modelelor mai pu țin
specifice. Aceast ă operațiune poate fi realizat ă prin metoda interpol ării
[Jel80] .
• Utilizarea în comun a parametrilor (Sharing ) – pentru cre șterea
robusteții sistemului, modelele asociate diferitelor contexte pot utiliza
în comun total sau par țial parametrii [You92] . Aceste metode de
„legare” a parametrilor modelelor similare din punct de vedere acustic asigură antrenabilitatea modelelor p ăstrând în acela și timp și
specificitatea contextual ă.
Dezavantajul tehnicilor de restrângere constă în faptul c ă trebuie s ă existe o
structură ierarhică a modelelor (trifon – bifon – monof on), iar saltul în specificitate
este relativ mare. Metodele de netezire au nevoie de asemenea de o structur ă ierarhică,
dar oferă mai mult ă flexibilitate. De exemplu, starea ini țială a unui MMA trifon poate
fi netezită cu un bifon stânga iar cea final ă cu un bifon dreapta, p ăstrând par țial gradul
de dependen ță de context.
Comparativ cu celelalte dou ă metode , utilizarea în comun a parametrilor oferă
mai multe perspective. Modelele pot utiliza în comun parametrii atât în faza de antrenare cât și în cea de recunoa ștere indiferent dac ă ele sunt sau nu de aceea și
complexitate. Referitoare la tehnicile de
utilizare în comun , există două abordări
importante:
• Abordarea ascendent ă (Bottom-up Approach ) – se consider ă inițial că
toate contextele sunt diferite. În acest caz, modelele sunt specifice dar
nu sunt antrenabile. Se realizeaz ă un proces de unificare a modelelor
25(merging ), obținându-se modele mai antrenabile dar mai pu țin
specifice.
• Abordarea descendent ă (Top-Down Approach ) – se consider ă inițial
că toate contextele sunt identice și au aceia și parametrii. Aceste modele
sunt antrenabile dar nu sunt specifice. Apoi se realizeaz ă o procedur ă
de scindare ( splitting ), obținându-se modele mai pu țin antrenabile dar
mai specifice și mai precise.
3.3 Abordarea ascendent ă (Bottom-Up )
Pentru a rezolva problema insuficien ței datelor de antrenare, abordarea
ascendent ă presupune ini țial că toate modelele corespunz ătoare unor contexte
distincte au parametrii diferi ți. Se examineaz ă modelele ini țiale pentru a se determina
mulțimi de modele care ar putea utiliza în comun parametri. Aceste mul țimi sunt alese
astfel încât modelele rezultate s ă aibă suficiente exemple în datele de antrenare pentru
o estimare robust ă, și să fie suficient de asem ănătoare încât s ă reprezinte cu precizie
vorbirea. În lucrare sunt descrise pe scurt dou ă abordări ascendente: trifonii
generaliza ți și gruparea st ărilor.
3.4 Abordarea descendent ă (Top-Down )
Principalul dezavantaj al abord ării ascendente const ă în faptul c ă necesită
exemple ale fiec ărui context pentru estimarea ini țială a parametrilor modelelor. Pentru
contexte care apar foarte rar în datele de antrenare, aceast ă estimare poate fi inexact ă
și nereprezentativ ă. De asemenea exist ă și modele care nu sunt văzute în parcurgerea
datelor de antrenare dar care pot ap ărea în procesul de recunoa ștere: trifonii nev ăzuți
(unseen triphones ).
Abordarea descendent ă elimină dezavantajele celei ascendente deoarece
aceasta pleac ă de la modele generale și crește gradual specificitatea acestora. Una
dintre metodele eficiente ale acestei abord ări o constituie utilizarea arborilor de
decizie care înglobeaz ă cunoștințe lingvistice specifice pentru a decide care din
contexte sunt asem ănătoare din punct de vedere acustic. În plus, aceast ă metodă
rezolvă problema trifonilor nev ăzuți: prin parcurgerea arborilor de decizie, trifonii
nevăzuți sunt asocia ți cu modelele care au contexte similare.
Pentru un fonem, un arbore de decizie selectează din mul țimea modelelor
dependente de context pe acela care corespunde unui context dat. Modelul este ales
prin traversarea arborelui plecând de la nodul r ădăcină și selectând nodul urm ător
corespunz ător răspunsului la o întrebare simpl ă despre contextul modelului. În cazul
arborilor fonetici de decizie binari , întrebările fonetice au r ăspunsuri de genul da/nu
care se refer ă în general la apartenen ța fonemului curent la anumite grupuri de
foneme.
26Grupul E
Grupul DGrupul C
Grupul B Grupul A Fonemul
/a/
Dreapta
= nazală?
Stânga=
semivocal ă ? Dreapta=
fricativă?
Stânga
= /e_X/ ? Da Nu
Da Nu
Da Da Nu
Nu
Figura 3.6 Arbore de decizie pentru fonemul /a/
În Figura 3.6 este prezentat un arbore de decizie construit pentru fonemul /a/.
De exemplu, pentru trifonul /r- a+n/, la nivelul nodului r ădăcină se aplică mai întâi
întrebarea „ Este fonemul din dreapta o consoan ă nazală?”. Deoarece r ăspunsul este
„Da”, se parcurge arborele pe ramura din stânga și se aplică întrebarea „ Este fonemul
din stânga o semivocal ă?”. De aceast ă dată răspunsul este „ Nu” iar pe ramura din
dreapta nu mai exist ă întrebări ci nodul terminal etichetat „ Grupul C ”. În acest grup
vor ajunge to ți trifonii având în dreapta o consoan ă și care nu au în stânga o
semivocal ă.
În cazul în care gruparea modelelor se face la nivel de stare, se construie ște
câte un arbore de decizie pentru fiecare stare a fiec ărui model independent de context,
rezultând grupuri de st ări care utilizeaz ă în comun acelea și distribuții.
Procedura de grupare bazat ă pe arbori de decizie fonetici are o serie de
avantaje asupra abord ării ascendente:
• Forma întreb ărilor și structura ierarhic ă conduc la g ăsirea unui model
dependent de context echivalent pentru orice context. Se rezolv ă astfel
problema contextelor care nu apar în datele de antrenare (trifonii
nevăzuți).
• Cunoștințe expert lingvistice sunt încorporate la nivelul model ării
acustice sub forma întreb ărilor care sunt folosite la nivelul fiec ărui nod
al arborelui.
• Procedura de construire a arborilor poate fi constrâns ă să asigure ca
fiecare nod terminal s ă existe numai pentru acele contexte care au
suficiente exemple în datele de antrenare.
27• Există posibilitatea cre șterii gradului de dependen ță contextual ă prin
punerea unor întreb ări care să vizeze contexte mai largi.
3.5 Utilizarea arborilor fo netici de decizie în
recunoa șterea vorbirii
Pentru a putea beneficia de avantajele abord ării descendente bazat ă pe arbori
de decizie fonetici, este foarte important ca procesul de construire a acestora s ă fie
automat. Procedura de construire trebuie s ă genereze modele exacte și robuste.
3.5.1 Arbori de decizie
Arborii de decizie trebuie s ă respecte urm ătoarele condi ții:
• Fiecare nod trebuie s ă aibă un număr minim de exemple
• Să se utilizeze un num ăr finit de întreb ări fonetice pentru scindarea
fiecărui nod.
• Modelele Markov ascunse trebuie s ă fie suficient de exacte pentru a
surprinde variabilitatea nodurilor terminale.
Pentru a asigura o minim ă antrenabilitate a modelelor, se impune restric ția de
a alege numai acele întreb ări care să asigure faptul c ă fiecare nod creat are un num ăr
suficient de exemple în datele de antrenare. Pentru a m ări exactitatea modelelor
acustice fa ță de propriile lor clase, o metod ă practică și eficientă din punctul de vedere
al efortului de calcul o c onstituie maximizarea probabilit ății (maximum likelihood ).
3.5.2 Criteriul de decizi e bazat pe probabilitate
Construcția arborilor de decizie pe baza întreb ărilor fonetice are ca scop
maximizarea probabilit ății datelor de antrenare pentru modelele rezultate. Parcurgerea
completă a datelor de antrenare pentru calcularea probabilit ății maxime pentru toate
arhitecturile posibile ar duce la un timp de calcul extrem de mare. În schimb, se poate
face o estimare eficient ă a log-probabilit ății datelor de antrenare pentru un set de
distribuții a stărilor. În aceste condi ții, log-probabilitatea total ă a unei mul țimi de
modele cuprinzând un set de distribu ții S, care genereaz ă datele de antrenare O
constând în E exemple, poate fi calculat ă astfel:
()() () ( )() ∑∑∑
==∈≈Σ =E
eT
tS se
s s se
te
SO t o L
11; Prln ;; Prln γμ ( 3.2)
Construirea arborelui de decizie const ă în schimbarea mul țimilor de distribu ții
S cu scopul de a maximiza probabilitatea total ă a datelor de antrenare simultan cu
asigurarea unui num ăr suficient de date pentru a antrena fiecare distribu ție rezultat ă.
Se presupune c ă scindarea unei distribu ții nu are nici un efect asupra celorlalte
distribuții, astfel c ă trebuie calculat ă doar îmbunătățirea local ă a log-probabilit ății
totale .
Modificarea log-probabilit ății totale reprezentând cantitatea ce trebuie
maximizat ă, este diferen ța dintre probabilitatea sursei și probabilitatea descenden ților
acesteia, toate celelalte distribu ții rămânând ne-afectate:
() ()()()∑∑ ∑∑∑
== == ∈Σ+ Σ−=ΔE
eT
te
p pE
eT
te
d
Ddde e
t t L
11 11ln21ln21γ γ ( 3.13)
28În cazul în care o mul țime de distribu ții D sunt unificate pentru a produce o
singură distribuție m, se poate determina o expresie similar ă de creștere a log-
probabilit ății:
() ()() () ∑∑ ∑∑∑
∈= = ==Σ+ Σ−=Δ
DdE
eT
te
d dE
eT
te
m me e
t t L
11 11ln21ln21γ γ ( 3.13)
Asocierea st ărilor la datele de antrenare
Este foarte important s ă existe o asociere ini țială a datelor de antrenare la
stările modelelor pentru a putea calcula log-probabilit ățile plecând de la valorile cγ,
cμ și cΣ pentru fiecare context distinct c. Pentru procedura de grupare ascendent ă
descrisă în [Woo92] , se utilizeaz ă un set de trifoni antrena ți prin procedura Baum-
Welch pentru a se asigura date statistice pentru fiecare context.
3.5.3 Construirea arborilo r de decizie fonetici
Fiecare arbore este construit de sus în jos într-o manier ă iterativă prin
scindarea secven țială a distribu țiilor care conduc la cele mai importante cre șteri în
probabilitate. La nivelul fiec ărui nod se evalueaz ă creșterea în probabilitate pentru
fiecare întrebare permis ă. Această procedur ă asigură optimul local. Construirea unui
arbore de decizie care s ă asigure optimul general este o problem ă imposibil de
rezolvat, având în vedere costurile de calcul implicate.
Diagrama algoritmului de construire a arborilor de decizie este prezentat ă în
Figura 3.7 . În prima parte se determin ă care întrebare, din mul țimea setului de
întrebări, conduce la cea mai mare cre ștere a probabilit ății. Deoarece num ărul de
întrebări este relativ sc ăzut, probabilitatea va fi calculat ă pentru toate întreb ările
posibile, f ără a implica un efort de calcul deosebit.
29Găsește nodul N și întrebarea Q care dau cea
mai mare cre ștere a probabilit ății la divizare
Depășește
pragul?
Nu Acumuleaz ă toate
contextele
Divizează nodul
N utilizând
întrebarea Q Da
Găsește nodurile N 1și N 2care prin unificare
dau cea mai mic ă scădere a probabilit ății
Este sub
prag?
Nu Da Unifică nodurile
N1 și N 2
Constituirea modelelor
Figura 3.7 Algoritmul de construire a arborilor de decizie
3.6 Concluzii
Dependen ța contextual ă constituie una dintre cele mai importante cauze ale
variabilității vorbirii. Cele mai multe sisteme de recunoa ștere a vorbirii de vocabular
mediu și mare folosesc modele la nivel de fonem. Acestea au avantajul de a avea un
număr foarte mare de exemple în baza de antrenare, dar nu pot reprezenta cu precizie
vorbirea, fiind serios afectate de efectul de coarticula ție. Modelarea dependen ței de
context cre ște specificitatea modelelor dar scade antrenabilitatea modelor, m ărește
dimensiunea sistemului de recunoa ștere și complic ă evaluarea parametrilor modelelor
care nu apar în datele de antrenare.
Utilizarea în comun a distribu țiilor de probabilitate la nivel de stare reprezint ă
un pas important în cre șterea antrenabilit ății unui sistem de recunoa ștere bazat pe
modele dependente de context. Arborii fonetici de decizie permit înglobarea
informațiilor lingvistice la nivelul model ării acustice pentru a ob ține performan țe de
recunoaștere îmbun ătățite. În plus, trifonii nev ăzuți pot fi cu u șurință sintetizați prin
parcurgerea arborilor de decizie corespunz ători.
Rezultatele experimentale privind utilizarea arborilor fonetici de decizie într-
un sistem de recunoa ștere pentru limba român ă sunt prezentate în Capitolul 6.
Utilizarea modelelor DC conduce la performan țe semnificativ mai bune decât în cazul
modelelor IC [Mun04a] .
30CAPITOLUL 4
ALGORITMI DE C ĂUTARE UTILIZA ȚI ÎN PROCESUL DE
RECUNOA ȘTERE A VORBIRII
4.1 Introducere
Recunoașterea vorbirii continue este atât o problem ă de recunoa ștere a formelor cât și
una de c ăutare. Algoritmii eficien ți de căutare au contribuit la plasarea sistemelor de
recunoaștere a vorbirii în domeniul aplica țiilor în timp real ce pot rula pe un calculator
personal din zilele noastre. În acest capitol sunt prezentate principalele tehnici general de
căutare și respectiv tehnici specifice sistemelor de recunoa ștere actuale precum algoritmul
Viterbi și decoderul de stiv ă A*.
4.2 Algoritmi de c ăutare de baz ă
Există un interes deosebit pentru g ăsirea metodelor optime de c ăutare aplicate în
domenii precum inteligen ța artificial ă, sisteme expert, jocuri pe calculator, sisteme de ob ținere
de informa ții, etc.O problem ă tipică de căutare într-un spa țiu al stărilor este definit ă de
tripletul (S,O,G) unde S = mul țimea stărilor inițiale, O = mul țimea operatorilor (regulilor) și
G = mulțimea stărilor finale ( țintă).
Stare inițială (S)
Stări finale (G) Reguli(O)
Figura 4.1 Reprezentarea spa țiului stărilor printr-un graf orientat
Găsirea căii optime (asociat ă de regulă cu calea de cost minim) este de cele mai multe
ori o problem ă complicat ă iar unii algoritmi de c ăutare sacrific ă optimalitatea în favoarea unui
cost de calcul cât mai redus . Spațiul stărilor crește într-o manier ă exponențială de la stânga la
dreapta (Figura 4.1).
Un arbore de c ăutare poate fi generat pornind de la una sau mai multe st ări inițiale (S)
cărora li se aplic ă un operator de succesiune în conformi tate cu anumite reguli topologice (O).
Procedura este aplicat ă recursiv pân ă când toate variantele au fost epuizate. Scopul este de a
ajunge la una sau mai multe st ări finale pe calea cea mai scurt ă. Prin parcurgerea arborelui de
căutare, sunt întâlnite toate solu țiile posibile din care se selecteaz ă calea de cost minim.
Ținând cont de faptul c ă resursele de calcul sunt limitate, o prim ă simplificare a
procesului de calcul este de a utiliza principiul program ării dinamice conform c ăruia calea
31optimă generală poate fi ob ținută pe baza c ăilor optime locale. Astfel, dac ă două căi diferite
ajung în acela și punct, nodurile aferente trebuiesc unite și doar costul celei mai bune c ăi
trebuie luat în considerare. Se genereaz ă în acest mod un graf de căutare în locul arborelui de
căutare.
În lucrare sunt descri și principalii algoritmi generali de c ăutare:
– căutarea pe baz ă de grafuri
– căutarea oarb ă pe bază de grafuri (c ăutarea în adâncime și căutarea în
lățime)
– căutarea euristic ă
4.3. Algoritmi de c ăutare utiliza ți pentru recunoa șterea
vorbirii
În această secțiune sunt analizate dou ă dintre cele mai des utilizate metode de c ăutare
euristice care sunt dealtfel principalele strategii de c ăutare în recunoa șterea vorbirii: c ăutarea
A* și căutarea Viterbi fascicular ă. În implement ările practice actuale, c ăutarea fascicular ă este
cea mai atractiv ă soluție, fiind și cea mai des întâlnit ă. În general, beneficiaz ă de avantajele
programării dinamice, fiind deosebit de eficient ă din punctul de vedere al costului de calcul.
4.3.1 Algoritmii de c ăutare ca parte integrant ă a procesului de
decodare
Algoritmii de c ăutare sunt utiliza ți în special în faza de testare (decodare) a unui
sistem de recunoa ștere. Termenul de decodare a fost preluat din teoria informa ției, deoarece
decoderul poate fi definit ca procesul de identificare a acelei secven țe de cuvinte
mw ww W ,…, ˆ
2 1= care are cea mai ridicat ă probabilitate aposteriori )|(XWP pentru o
observație acustic ă (secvență de vectori acustici X) dată:
)|()( maxarg)()|()(maxarg)|( maxargˆ WXPWPXPWXPWPXWP W
W W W= = = (4.2)
În relația (4.2), probabilitatea )(WP este dat ă de modelarea lingvistic ă (ML) iar
probabilitatea ) |(WXP este dată de modelarea acustic ă.
Găsirea secven ței de cuvinte cu cea mai mare probabilitate este echivalent ă cu găsirea
unei căi într-un graf de c ăutare care va avea o structur ă ce depinde de tipul de c ăutare ales. O
măsură a costului unei astfel de c ăi este probabilitatea ) |(WXP .
4.3.2 Recunoa șterea cuvintelor izolate și a vorbirii continue
La nivelul model ării acustice folosim modele Markov ascunse (MMA). Aceast ă
alegere nu restrânge generalitatea, deoarece din punct de vedere al strategiilor de c ăutare nu
există nici o restric ție privind tehnica de potrivire a da telor observate cu modelul acustic.
Pentru recunoașterea cuvintelor rostite izolat , lucrurile sunt mult simplificate
deoarece limitele cuvintelor de recunoscut sunt cunoscute. Valoarea )|(WXP este calculat ă
prin binecunoscutul algoritm progresiv-regr esiv [Rab93] pentru fiecare din cuvintele
modelate, iar apoi printr-o detec ție de maxim se selecteaz ă cuvântul cu cea mai mare
probabilitate ca fiind cel recunoscut.
32În cazul recunoașterii vorbirii continue , situația se schimb ă radical, deoarece pe
lângă tranzițiile intra-model sunt permise și tranzițiile inter-model corespunz ătoare tranzi țiilor
dintre cuvinte și astfel spa țiul de căutare devine foarte mare. În aceast ă situație, spațiul de
căutare depinde de num ărul de stări al modelelor individuale, num ărul de modele și de
numărul de cadre de timp (dimensiunea datelor de intrare).
Să presupunem un exemplu în care num ărul de cuvinte din vocabularul de
recunoaștere este egal cu 3: 2 1,WWși 3W. Spațiul stărilor este reprezentat în Figura 4.7.
Conectarea celor trei modele conduce la un model compozit care genereaz ă o rețea stocastic ă
cu stări finite având atât probabilit ăți de tranzi ție între st ări cât și distribu ții de emisie a
vectorilor acustici (de regul ă Gaussiene).
Vectori
acustici
(X)
Timp W1 W2 W3
Figura 4.7 Spațiul de căutare pentru modele conectate. Albastru: st ările modelelor și
tranzițiile intra-model; ro șu: tranzițiile inter-model; galben: o posibil ă cale prin re țea
corespunz ătoare secven ței de cuvinte W 2→W1→W3
Recunoașterea secven ței de cuvinte rostite se poate rezuma la g ăsirea căii celei mai
probabile în re țeaua stocastic ă. Algoritmul Viterbi rezolv ă această problemă. Beneficiind de
avantajul program ării dinamice, algoritmul parcurge întreaga re țea de la stânga la dreapta într-
o manieră sincronă în timp, analizând în paralel cele mai bune c ăi posibile la fiecare moment
de timp. În final calea cu cel mai mic cost este selectat ă și prin urm ărire înapoi este
reconstituit ă secvența de cuvinte cea mai probabil ă. Pe parcursul c ăutării, sunt înregistrate și
limitele cuvintelor, aceste informa ții fiind disponibile la finalul c ăutării (decod ării).
Deși algoritmul Viterbi este deosebit de eficient, totu și, chiar și cu ajutorul
programării dinamice spa țiul de căutare poate deveni foarte mare, în special pentru sisteme de
recunoaștere a vorbirii de vocabular mare, iar cerin țele de calcul pot fi uria șe. Vom prezenta
în continuare metoda de c ăutare fascicular ă care rezolv ă în mare m ăsură această problemă.
334.3.3 Căutarea Viterbi fascicular ă sincronă în timp
Pentru o secven ță de date (vectori acustici de observa ție), scopul decod ării este de a
găsi secven ța de cuvinte cea mai probabil ă în condițiile modelului acustic. Pentru a calcula
probabilitat ea ca observa țiile să fie generate de c ătre modelele acustice considerate (rela ția
4.2) ar trebui s ă se țină cont de toate c ăile posibile prin re țea (conform principiului de calcul al
probabilit ății „înainte”):
∑=
Ticaile toateTWiXP WXP
0)|,( )|(0 (4.7)
unde Ti0 reprezint ă o cale prin re țea din momentul de la momentul de timp 0 pân ă la
momentul de timp T (final). Aceast ă sumă este dificil de calculat deoarece necesit ă resurse de
calcul foarte mari, astfel c ă termenul se aproximeaz ă cu cea mai mare component ă a acestuia,
respectiv probabilitatea condi țională pentru calea cea mai probabil ă. Relația (4.2) devine:
⎭⎬⎫
⎩⎨⎧⋅ ≅ = )|,( max)( maxarg)|()( maxargˆ0
0WiXP WP WXPWP WT
i W WT (4.8)
Relația (4.8) mai poart ă denumirea și „aproxima ția Viterbi” și poate fi formulat ă
astfel: „cea mai probabil ă secvență de cuvinte este aproximat ă cu cea mai probabil ă secvență
de stări”. De aceea căutarea Viterbi este suboptimal ă . Trebuie spus totu și că, în practic ă,
diferența dintre probabilitatea „înainte” și probabilitatea dat ă de algoritmul Viterbi nu este
semnificativ ă și rezultatele experimentale arat ă că aproximarea este foarte bun ă [Ney99].
Căutarea fascicular ă speculeaz ă faptul că, în algoritmul de c ăutare Viterbi clasic,
prin explorarea tuturor celor mai bune c ăi la fiecare moment de timp, se depune efort și pentru
examinarea unor c ăi cu șanse foarte mici de a conduce c ătre calea optim ă. Este necesar s ă se
suprime din timp explorarea acestor c ăi, ceea ce implic ă o reducere semnificativ ă a spațiului
de căutare. Criteriul de selec ție se face prin stabilirea unui prag T, pe care îl vom denumi
lărgimea fasciculului. La fiecare moment de timp, pe parcursul decod ării Viterbi, se
identifică calea cu cel mai mic cost par țial, D min și se rețin numai c ăile candidate din interiorul
fasciculului , adic ă acele căi al căror cost nu dep ășesc valoarea D min+T. Căile care sunt în
afara fasciculului sunt anulate f ără a mai fi explorate în continuare.
În lucrare se realizeaz ă descrierea formal ă a algoritmului de c ăutare fascicular ă Viterbi
sincronă în timp. Acesta poate fi rezumat pe scurt astfel:
Algoritm de c ăutare fascicular ă Viterbi sincron ă în timp
S1: Ini țializare: Pentru toate cuvintele gramaticii care pot porni o
propozi ție:
0));(;0( =wwI D și =));(;0( wwIh null
S2: Inducție: Pentru t =de la 1 la T execută
Pentru toate stările active execută
– tranziții intra-cuvânt conform (4.9) și (4.10):
{ });;1( );|,( min);;(1 1
1ws tD wssxd wstDt t t tst
t− − −+ =
−
34 ( )wwstbth wstht t );;;(;1 );;(min−=
Pentru toate st ările active de final de cuvânt execută
– tranzi ții inter-cuvânt conform (4.13), (4.14) și (4.16):
{ }));(;( )|( log min);;( νν ν η
νFtD wP wtD + =
) ); (,(::, );;(min min min νν νη Ftht wth >=<
D a c ă ));(;( );;( wwItD wtD<η
atunci );;());(;( wth wwIth η= și );;( ));(;( wtD wwItD η=
Reducere : găsește costul celei mai bune c ăi și stabilește pragul
fasciculului
Reduce ipotezele f ără șansă de reușită.
S3:Terminare: Selecteaz ă cea mai bun ă cale dintre toate st ările finale
posibile din cadrul gramaticii la momentul de timp T.
Obține secven ța de cuvinte optim ă prin intermediul
pointerului de urm ărire înapoi );;( wthη .
4.3.4 Căutarea A*. Decoderul de stiv ă
Dezvoltat ini țial de către IBM [Bah83], decoderul de stiv ă nu are o popularitate la fel
de mare ca decoderul Viterbi, în domeniul recunoa șterii vorbirii, din cauza complexit ății sale
mari. Beneficiind îns ă de tehnici precum potrivirea rapid ă, decoderul de stiv ă se bazeaz ă pe
algoritmul de c ăutare A* prezentat pe scurt în sub-capitolul 4.2.3. Acesta este un algoritm de
căutare euristic ă în adâncime, iar implementarea lui în domeniul recunoa șterii vorbirii st ă la
baza decoderului de stiv ă.
În lucrare sunt detaliate aspectele importante ale c ăutării A* în cadrul decoderului de
stivă. Dacă admitem c ă într-un proces de decodare, fiecare cuvânt poate fi urmat de oricare alt
cuvânt din vocabularul V de dimensiune |V|, decodarea de stiv ă poate fi privit ă ca un proces
de căutare într-un arbore cu factorul de ramifica ție |V| (Figura 4.8).
W1
W2
W3 W2 W1
W3
W2 W1
W3
W2 W1
W3
Figura 4.8 Arbore de c ăutare al unui decoder de stiv ă pentru |V|=3.
35Astfel, se renun ță la strategia de c ăutare sincron ă în timp, în care avansarea în arborele
de căutare era în mod necesar o avansare în timp, adâncimea maxim ă de căutare fiind deci
constantă și egală cu numărul de cadre temporale, și se trece la o c ăutare în care adâncimea
maximă de căutare nu este cunoscut ă.
În timp ce c ăutarea Viterbi este de fapt o c ăutare a secven ței optime de st ări,
decodarea de stiv ă găsește secven ța optimă a cuvintelor. C ăutarea de tip A* utilizată are
nevoie îns ă de o func ție euristic ă suficient de bun ă astfel încât c ăutarea în arbore s ă nu se fac ă
decât în direc țiile cu șanse de reu șită, fără a irosi resurse de calcul în alte direc ții adiacente.
Găsirea acestei func ții euristice a constituit dificultatea principal ă în proiectarea decoderului
de stivă.
4.4 Concluzii
În acest capitol am analizat principalii algoritmii de c ăutare, concentrându-ne aten ția
asupra celor utiliza ți în tehnologia vorbirii. Costul de calcul și eficiența algoritmilor sunt
repere în evaluarea performan țelor sistemelor software și deci și ale celor de recunoa ștere
automată a vorbirii. În aplica țiile de recunoa ștere a vorbirii continue de vocabular mare,
algoritmii de c ăutare au un rol decisiv în reducerea spa țiului de căutare și implicit a resurselor
de calcul necesare.
Algoritmii de c ăutare pe baz ă de grafuri pot conduce la solu țiile optime, dac ă acestea
există prin generarea unor grafuri de c ăutare în locul arborilor de c ăutare exhaustivi și
eliminarea redundan ței în calcul. Principiul program ării dinamice este aplicat ori de câte ori
este posibil deoarece reduce mult efortul de c ăutare.Algoritmii baza ți pe căutarea oarb ă,
precum c ăutarea în adâncime și căutarea în l ățime, nu țin cont de informa țiile specifice
domeniului în care sunt aplica ți și conduc în general la solu ții suboptimale.
Algoritmii baza ți pe căutarea euristic ă sacrifică în general optimalitatea oferind îns ă o
serie de avantaje în ceea ce prive ște costul de calcul. În cadrul sistemelor de recunoa ștere a
vorbirii, principalii algoritmi de c ăutare sunt căutarea A* și căutarea Viterbi fascicular ă.
Beneficiind de o serie de avantaje precum simplitatea în implementare, maniera de explorare
sincronă în timp a c ăilor paralele, căutarea Viterbi fascicular ă este strategia cea mai des
întâlnită în sistemele de recunoa ștere actuale. Decoderul de stiv ă bazat pe c ăutarea A* mai rar
întâlnit decât decoderul Viterbi, are performan țe similare dar este mult mai complex [Gop96].
CAPITOLUL 5
CREȘTEREA ROBUSTE ȚII RECUNOA ȘTERII VORBIRII
5.1 Introducere
Recunoașterea automat ă a vorbirii în condi ții ambientale care degradeaz ă semnalul
vocal este o problem ă deosebit de dificil ă chiar și pentru sistemele care beneficiaz ă de cele
mai performante tehnologii din domeniu. Un sistem de recunoa ștere antrenat cu vorbire
„curată” (înregistrarea formelor de und ă a fost realizat ă în condi ții de laborator – camer ă
anecoică, zgomot ambiental redus și aparatur ă de înaltă fidelitate) poate avea performan țe
excelente la testele efectuate în acelea și condiții, dar mult mai slabe în condi ții ambientale
diferite (camere cu ecou, zgomote provenite de la ventilatoarele calculatoarelor, aer
condiționat, etc.). În consecin ță, aplicațiile de recunoa ștere a vorbirii trebuie s ă țină cont de
distorsiunile suferite de semnalul vocal în practic ă și să mențină performan țele sistemului la
nivelul cerut de beneficiar [Mun05c] . Acest capitol trateaz ă problema robuste ții sistemelor de
recunoaștere automat ă a vorbirii.
Sistemele de recunoa ștere a vorbirii a c ăror rată de recunoa ștere nu este sensibil ă la
schimbările ambientale se numesc sisteme robuste . Performan țele lor (rata de recunoa ștere,
costul de calcul, etc.) r ămân între anumite limite în condi ții ambientale variate. Prin influența
mediului ambiental acustic se înțelege totalitatea transform ărilor care afecteaz ă semnalul
vocal din momentul în care p ărăsește tractul vocal pân ă când acesta ajunge în format numeric
[Hua01].
Acest capitol este organizat astfel: prima parte con ține descrierea și modelarea
mediului ambiental acustic plecând de la sursele distorsiunilor ce ac ționează asupra
semnalului vocal; în partea a doua este tratat ă problema traductoarelor acustice, și în special a
microfoanelor care sunt de o importan ță deosebită pentru precizia recunoa șterii; în cea de a
treia parte sunt prezentate tehnici de procesare ambiental ă menite să îmbunătățească calitatea
semnalului vocal (s ă îl aducă cât mai aproape de forma sa original ă de la nivelul buzelor
vorbitorului), precum anularea ecoului, sc ăderea spectral ă și normalizarea prin medie
cepstrală; în partea a patra, sunt prezent ate tehnici de modelare acustic ă robuste la zgomot,
precum combinarea modelelor paralele (PMC) sau antrenarea multipl ă.
5.2 Mediul ambiental acustic
5.2.1 Distorsiuni al e semnalului vocal
Din momentul în care semnalul vocal p ărăsește tractul vocal, acesta sufer ă o serie de
distorsiuni (modific ări) până când ajunge în form ă numerică. Cele mai importante surse de
distorsiuni ce pot afecta semnalul vocal s unt: zgomotul produs de ventilatoarele, u și, geamuri
alți vorbitori afla ți în apropiere, aparate audio pornite, r ăspunsul în frecven ță al microfonului.
Zgomotul aditiv sau zgomotul de fond este o component ă ce nu poate fi ignorat ă de
către nici un sistem de recunoa ștere practic. Acesta poate fi de tip sta ționar (ex. ventilatoare,
aer condi ționat) sau nesta ționar (vocile altor persoane din plan îndep ărtat, aparate de radio,
uși, etc.). În general, zgomotul aditiv sta ționar care afecteaz ă semnalul vocal, poate fi
considerat ca fiind zgomot alb.
37Reverbera țiile reprezint ă o altă sursă de distorsiuni ale semnalului vocal. Acestea
sunt practic inevitabile într-o înc ăpere obișnuită în care unda acustic ă directă se însumeaz ă cu
undele reflectate de obiectele din jur.
5.2.2 Modelarea me diului ambiental
Modelul cel mai des utilizat pentru prelucrarea semnalului vocal distorsionat, atât de
reverbera ții cât și de zgomot este cel prezentat în Figura 5.1.
[]nx []nh []ny
[]nz
Figura 5.1. Modelul mediului acustic ambiental
Pe baza acestui mode l, pot fi deduse rela ții atât în timp cât și în frecven ță. Acestea sunt tratate
detaliat în lucrare.
În sistemele de recunoa ștere bazate pe modele Ma rkov ascunse (MMA), distribu țiile
de emisie sunt în general modelate cu mixturi gaussiene, astfel c ă semnalul distorsionat chiar
dacă nu are o distribu ție gaussian ă, aceasta poate fi modelat ă prin sume de mixturi gaussiene
ale căror parametri vor fi estima ți prin procedurile de antrenare (Figura 5.2.).
()()x z x y cc c c −++= exp1lnDistribuția cepstrului
semnalului vocal curat
(gaussian ă) Distribuția cepstrului
zgomotului
(gaussian ă)
Distribuția cepstrului
semnalului vocal
afectat de zgomot
(non-gaussian ă) xc
yczc
Modelarea distribu ției non-gaussiene
prin mixturi gaussiene
Figura 5.2. Modelarea distribu ției cepstrului semnalului vocal prin mixturi gaussiene
Ipotetic, orice tip de distribu ție poate fi modelat cu mixturi gaussiene dac ă numărul
acestora este suficient de mare. Trebuie îns ă precizat c ă volumul de date necesar pentru
38procesele de reestimare a parametrilor acestor distribu ții este extrem de mare, iar costurile de
calcul (memorie și timp de procesare) sunt de asemenea foarte mari.
5.3 Microfoane utilizate în recunoa șterea vorbirii
Microfonul este un element cheie în cadrul unui sistem de recunoa ștere a vorbirii,
scopul lui principal fiind de a p ăstra forma de und ă a semnalului vocal.
În aceast ă secțiune sunt prezentate principalele tipuri de microfoane utilizate în
achiziția semnalului vocal, insistându-se asupra aspectelor importante pentru recunoa șterea
vorbirii precum: tehnologia de construire, caracteristicile și poziționarea acestora.
În aplica țiile practice de recunoa ștere a vorbirii sunt pref erate microfoanele de
apropiere ( close-talking ) cu anulare de zgomot ( noise-canceling ) care capteaz ă mult mai pu țin
zgomot de fond și reverbera ții, fiind îns ă mai sensibile la zgomote precum cele produse de
lipirea/dezlipirea buzelor, de respira ție și de alte sunete f ără informație lingvistic ă, produse de
vorbitor.
5.4 Tehnici de preprocesare ambiental ă
În această secțiune ne vom referi la metodele de îmbun ătățire a semnalul vocal ( speech
enhancement ) afectat de diversele distorsiuni care au ca scop aducerea acestuia la forma de
undă originală din imediata apropiere a buzelor vorbito rului. Cele mai utilizate metode sunt
anularea adaptiv ă a ecoului, sc ăderea spectral ă, normalizarea prin medie cepstral ă, metode
bazate pe arii de microfoane, etc.
5.4.1 Anularea adaptiv ă a ecoului (AAE)
Anularea adaptiv ă a ecoului ( Adaptive Echo Cancellation (AEC) ) reprezint ă o metodă
extrem de eficient ă în combaterea reverbera țiilor și a ecoului produs de c ătre sistemele de
difuzare a sunetului din preajma microfoanelo r. Una dintre cele mai utilizate metode de
anularea a ecoului este filtrarea adaptiv ă.
În lucrare se face o descriere a algoritmului LMS (Least-Mean Square ) acesta fiind
cea mai reprezentativ ă metodă de anulare adaptiv ă a ecoului.
5.4.2 Tehnici bazate pe arii de microfoane
În ultimii ani, o mare parte din proi ectele de cercetare în domeniul achizi ției,
prelucrării și recunoa șterii vorbirii s-au orientat c ătre sistemele bazate pe mai mult de un
singur microfon.
M0 M1 M2 M3
φ
S x 1ay
Figura 5.9. Arie de 4 microfoane dispuse liniar
39Sistemele bazate pe mai multe microfoane (Figura 5.9.), folosesc cuno ștințe despre
poziția relativă a microfoanelor pentru a prezice întârzierile în timp ale semnalului vocal de la
vorbitor pân ă la microfoane. Se creeaz ă astfel un fascicul spa țial virtual pe direc ția
vorbitorului, sunetele provenite din alte direc ții fiind rejectate sau mult atenuate.
Există două obiective ale unui sistem bazat pe ar ii de microfoane: localizarea spa țială
a sursei sonore (vorbitorului) și îmbunătățirea RSZ al semnalului recep ționat. Unele studii
efectuate de companii produc ătoare de arii de microfoane [Sch02] arat ă faptul că soluțiile
bazate pe dou ă sau mai multe microfoane pot conduce la performan țe de recunoa ștere net
superioare chiar și microfoanelor de tip close-talking cu adaptor USB (Universal Serial Bus).
5.4.3 Scăderea spectral ă a zgomotului (SSZ)
Scăderea spectral ă a zgomotului este o alt ă tehnică de îmbun ătățire a semnalului vocal.
Aceasta are la baz ă prezumția că , în forma sa pur ă, semnalul vocal a fost afectat numai de
către zgomot de tip aditiv. Spectrul de putere al zgomotului poate fi estimat dintr-o perioad ă
de Mcadre temporale în care nu exist ă activitate vocal ă ci doar zgomot (presupus sta ționar),.
Astfel că din modulul spectrului de amplitudine al semnalului vocal afectat de zgomot poate fi
extrasă aceeași mărime corespunz ătoare zgomotului, reducându-se în acest fel raportul semnal
pe zgomot (RSZ).
5.4.4 Normalizarea prin medie cepstral ă (NMC)
O altă tehnică menită să reducă distorsiunile semnalului vocal, în special pe cele
convolutive este normalizarea cu ajutorul mediei cepstrale ( Cepstral Mean Normalization –
CMN ). Aceasta s-a dovedit a cre ște robuste țea sistemelor de recunoa ștere a vorbirii în
condițiile unor opera ții de filtrare liniar ă necunoscute.
În lucrare este detaliat ă metoda CMN și se demonstreaz ă faptul că cepstrul normalizat
este imun la opera țiile de filtrare liniar ă, care caracterizeaz ă în multe situa ții mediul ambiant.
Această procedur ă este efectuat ă pentru fiecare fraz ă atât în faza de antrenare cât și în cea de
testare. Pentru înregistrările de pe canalele telefonice , unde fiecare apel este asociat cu un
canal care are un alt r ăspuns în frecven ță, NMC conduce la o sc ădere relativ ă cu 30% a ratei
de eroare. De asemenea atunci când un sistem este antrenat cu un microfon și testat cu altul
metoda asigur ă o robuste țe sporită. În plus media cepstral ă nu caracterizeaz ă doar func ția de
transfer a canalului ci și răspunsul în frecven ță pentru diferi ți vorbitori astfel c ă scăzând
media pe termen lung pentru un anumit vorbitor, NMC ac ționează ca o metod ă de
normalizare a vorbitorului.
5.5 Adaptarea modelelor acust ice la mediul ambiental
5.5.1 Re-antrenarea sistem ului pe vorbire afectat ă de
distorsiuni. Antrenarea multipl ă
Atunci când condi țiile de testare nu sunt similare cu cele de antrenare (de regul ă
frazele folosite pentru antrenare sunt „curate”- RSZ ridicat, f ără reverbera ții, etc.)
performan țele sistemului de recunoa ștere se pot degrada semnificativ. O solu ție pentru
această problemă ar fi prelucrarea frazelor de antrenare (filtrare, ad ăugare zgomot) astfel încât
să „simuleze” condi țiile de testare, opera ție urmată de re-antrenarea sistemului cu frazele
afectate de zgomot. În acest mod se ob țin sisteme adaptate . Un sistem adaptat are performan țe
maxime și îl putem considera o referin ță în evaluarea robuste ții unui sistem de recunoa ștere.
Aceasta este îns ă o soluție dificilă în practic ă deoarece sunt relativ pu ține situațiile când
recunoașterea se face în condi ții acustice constante și cunoscute apriori. În realitate, condi țiile
40de testare sunt variate și greu de anticipat iar re-antrenarea sistemului trebuie s ă fie făcută la
fața locului, ori de câte ori se schimb ă condițiile ambientale. Aceast ă soluție este rezonabil ă
pentru un sistem dependent de vorbitor de vocabular mic, unde datele de antrenare sunt ținute
în permanent în memorie și timpul de calcul este mic, dar nu poate fi eficient ă pentru sisteme
independente de vorbitor de vocabular mare care au cerin țe de calcul extrem de mari.
O variant ă pentru a cre ște robuste țea recunoa șterii este de a face o anumit ă estimare
asupra condi țiilor de testare și de a genera artificial date de antrenare corespunz ătoare unei
game relativ largi de condi ții (diferite func ții de transfer ale canalulu i acustic, diferite tipuri și
niveluri de zgomot). Toate aceste forme de und ă generate artificial pot fi apoi utilizate pentru
antrenarea sistemului de recunoa ștere, într-o a șa-numită antrenare multipl ă (multistyle
training ) [Lip87]. Acest tip de antrenare este bazat pe colectarea de date ce provin din condi ții
variate, iar aceast ă varietate conduce la o mai mare robuste țe a sistemului de recunoa ștere în
condiții ambientale diverse. În Figura 5.13. sunt prezentate ratele de recunoa ștere obținute
pentru sistemele adaptate (antrenate cu acela și RSZ cu cel de la testare) și pentru sistemul cu
antrenare multipl ă (antrenat cu mai multe nivele RSZ: 10,15,20,25,30 dB). Se observ ă faptul
că antrenarea multipl ă oferă o robuste țe deosebit ă, existând diferen țe relativ mici fa ță de
sistemele adaptate.
5203550658095
0 5 10 15 20 25 50Rata de eroare [%]Curat
Antrenare multipla
Adaptat
RSZ [dB]
Figura 5.13. Ratele de recunoa ștere pentru sistemul „curat”, sistemele adaptate și cel cu
antrenare multipl ă testate în diferite condi ții de zgomot
Testele au fost efectuate sistemul de recunoa ștere a vorbirii continue în limba român ă
(SRVC-LR), arhitectura acestuia și detaliile de experimentare fiind descrise în Capitolul 6 .
5.5.2 Combinarea mode lelor paralele (CMP)
O altă metodă de ajustare a parametrilor modelelor acustice în vederea cre șterii
robusteții sistemului de recunoa ștere este de a combina modelul de zgomot din noile condi ții
de testare cu modelele „curate”, rezultând astfel modele ale unit ăților de recunoscut adaptate
la condițiile de testare. Prin metoda combin ării modelelor paralele (CMP) se calculeaz ă
distribuția modelelor acustice ale unei vorbiri cu zgomot cunoscându-se distribu ția modelelor
corespunz ătoare vorbirii „curate” și distribuția zgomotului.
5.5.3 Modelarea zg omotului nesta ționar. Decoderul Viterbi 3D
Toate metodele de cre ștere a robuste ții sistemelor de recunoa ștere la varia țiile
condițiilor ambientale prezentate mai sus au în vedere perturbarea semnalului vocal de c ătre
zgomotul sta ționar. Exist ă însă o multitudine de fenomene acustice nesta ționare precum:
lipirea/dezlipirea buzelor (f ără a avea vreun rol în articula ție), respira ția, închiderea unei
uși/geam, etc.
41Pentru modelarea zgomotului sta ționar exist ă o soluție simplă care se bazeaz ă pe
mărirea vocabularului cu cuvinte speciale de zgomot. Cele 4 etape ale algoritmului sunt
detaliate în lucrare și constau în crearea de modele noi, antrenarea acestora, actualizarea
transcrierilor fonetice asociate frazelor de antrenare și respectiv evaluarea sistemului realizat.
O altă abordare în modelarea zgomotul sta ționar o constituie folosirea unui unic
MMA al zgomotului concomitent cu utilizarea unui decoder Viterbi tridimensional Error!
Reference source not found. .
5.6 Concluzii
Robustețea sistemelor de recunoa ștere practice a vorbirii reprezint ă o caracteristic ă
important ă a evaluării calității acestora. Un sistem de recunoa ștere cu o rat ă de eroare mai
ridicată dar care este robust la schimb ările din mediul ambiental este de preferat unui sistem
cu o rată de eroare mai mic ă dar foarte sensibil la condi țiile de mediu.
Utilizarea microfoanelor de calitate contribuie la ob ținerea de performan țe maxime în
recunoașterea vorbirii. Parametrii microfoanelor – sensibilitatea, impedan ța caracteristic ă,
raportul semnal pe zgomot, caracteristi ca de directivitate – au o influen ță însemnat ă în
conversia semnalului vocal din domeniul acustic în cel electric. De asemenea, sunt importante poziționarea microfonului, distan ța până la buze, lungimea cablului de la microfon la
amplificator. Microf oanele apropiate (
close-talking ) sunt superioare celor dep ărtate ( far-
field), din punct de vedere al RSZ. Tehnologia actual ă permite realizarea microfoanelor cu
anulare de zgomot ( noise cancelling ) care sunt foarte pu țin sensibile la zgomotul ambiental.
Există o multitudine de factori care afecteaz ă forma de und ă originală a semnalului
vocal (la nivelul buzelor). O parte din ace ști factori sunt neglijabili (zgomotul de cuantizare,
zgomotul termic al amplificatoarelor audio, etc.) în timp ce al ți factori (reverbera ții, zgomot
aditiv) sunt inevitabili și trebuie contracara ți prin metode specifice.
O clasă important ă a metodelor de contracarare a factorilor perturbatori ai semnalului
vocal se bazeaz ă pe îmbun ătățirea formei acestuia și creșterea RSZ. Dintre acestea cele mai
eficiente sunt anularea adaptiv ă a ecoului bazat ă pe algoritmul LMS – pentru combaterea
reverbera țiilor, scăderea spectral ă – eficient ă în reducerea zgomotului aditiv, normalizarea
prin medie cepstral ă (NMC) – deosebit de eficient ă în anularea distorsiunilor de tip
convolutiv, schimbarea pozi ției vorbitorului fa ță de microfon și chiar schimbarea
microfonului.
CAPITOLUL 6
SISTEMUL DE RECUNOA ȘTERE A VORBIRII
CONTINUE ÎN LIMBA ROMÂN Ă (SRVC-LR)
6.1. Introducere
Strategia abordat ă pentru realizarea sistemului de recunoa ștere a vorbirii în limba
română (SRVC-LR) s-a bazat pe utilizarea bine cunoscutului pachet de programe HTK
destinat construirii și manipul ării modelelor Markov ascunse [You02] .
Autorul acestei lucr ări a realizat în mediul MATLAB un cadru de lucru unitar denumit
SRVC-LR (Sistem de Recunoa ștere a Vorbirii Continue pentru Limba Român ă) menit să
asambleze modulele HTK și să le completeze cu func ții noi necesare construirii sistemului de
recunoaștere. În realizarea acestui instrument, principalul obiectiv urm ărit a fost de a crea un
mediu compact prin intermediul c ăruia să poată fi antrenat, testat și dezvoltat cu u șurință un
sistem de recunoa ștere pentru limba român ă la nivel de utilizator, f ără a fi nevoie de a
cunoaște detaliile de implementare din C sau MATLAB.
Majoritatea rezultatelor experimentale descrise în acest capitol au fost ob ținute
utilizând SRVC-LR. În func ție de corpusurile de vorbire utilizate și de configura țiile specifice
(parametrizare a semnalului vocal, topologie a modelelor, num ăr de reestim ări, etc) sistemele
de recunoa ștere construite pot diferi foarte mult. Acestea au la baz ă o arhitectur ă de bază
comună care se bazeaz ă pe:
– modele Markov ascunse cu topologie stânga-dreapta de tip Bakisdensit ăți ale
probabilit ăților de emisie continue bazate pe mixturi gaussiene (Sec țiunea 2.2.5)
– procedura de re-estimare Baum-Welch (Sec țiunea 2.2.5)
– decodare prin c ăutare Viterbi fascicular ă într-o manier ă sincronă în timp
(Secțiunea 4.4.3)
Arhitectura sistemelor de recunoa ștere obținute poate fi diferen țiată prin:
– datele de antrenare
– tipul de parametrizare a semnalului vocal
– gradul de modelare a dependen ței de context
– gradul de robuste țe a sistemului la perturba țiile mediului ambiental
– reglarea parametrilor din etapele de antrenare (num ăr de estim ări, praguri de
convergen ță, dimensiunea arborilor de decizie, num ăr de mixturi gaussiene, etc.)
Pentru utilizarea în timp re al a sistemelor de recunoa ștere obținute prin SRVC-LR în
practică, a fost dezvoltat ă o interfa ță grafică implementat ă în MATLAB. Prin intermediul
unui microfon, utilizatorul poate pronun ța izolat sau continuu cuvinte din limba român ă care
sunt apoi recunoscute și afișate. Interfa ța permite schimbarea vocabularului, reglarea unor
parametrii de recunoa ștere precum l ărgimea fasciculului de c ăutare, penalizarea erorilor de
inserție (secțiunea 4.3.1), afi șarea formei de und ă și a timpilor de procesare.
436.2 Arhitectura general ă a sistemului de recunoa ștere
construit
În construirea sistemului de recunoa ștere am abordat o strategie incremental ă bazată
pe inițializarea parametrilor modelelor, estimarea/re-estimarea acestora, ad ăugarea de noi
modele, re-dimension ări ale sistemului, etc. [Oan04b] . Pe măsură ce sistemul este construit,
performan țele acestuia sunt monitorizate prin intermediul unor fraze de test.
Structura sistemului bazat pe modele Markov ascunse este prezentat ă în Figura 6.1 . În
corpusul de vorbire, semnalul vocal se g ăsește în format digital, necomprimat ( Wave ). Prin
analiza pe termen scurt sunt extra și parametrii acustici sub form ă de șiruri de vectori ce
constituie datele de antrenare / testare pentru sistemul de recunoa ștere. În faza de antrenare
sunt necesare atât datele sub forma de parametrii acustici, cât și transcrierea fonetic ă a
succesiunii cuvintelor din corpus. Aceast ă transcriere fonetic ă se realizeaz ă pe baza
dicționarului fonetic și a conținutului textelor cu frazele de antrenare. Pentru testarea
sistemului, datele sunt parcurse de c ătre decoder Viterbi bazat pe algoritmul de c ăutare
fascicular ă descris în sec țiunile 2.2.9 și 4.3.3.
Parametrizare
Dicționar
fonetic Antrenare
(Baum-Welch ) Set
MMA Decodare
(căutare Viterbi
fascicular ă)
Text
fraze antrenare Semnal vocal:
Text: „ SĂ MEARGĂ” Modelare
lingvistic ă
(Gramatic ă)
Figura 6.1 Schema bloc a sistemului de recunoa ștere a vorbirii bazat pe MMA
6.2.1 Parametrizarea semnalului vocal
Datele de intrare se g ăsesc sub form ă de fișiere wave care con țin semnal vocal
înregistrat cu microfon de calitate în condi ții de zgomot redus, e șantionat la o frecven ță de 16
kHz pe 16 bi ți. Pentru extragerea parametrilor acustici s-a realizat o preaccentuare cu un filtru
de tip trece-sus digital cu func ția de transfer 197,01−⋅− z. Analiza pe termen scurt s-a f ăcut pe
ferestre de semnal de 25 ms cu o suprapunere de 15 ms și ponderate cu o func ție fereastr ă de
tip Hamming. În majoritate experimentelor au fost extra și 12 coeficien ți de bază mel-cepstrali
(MFCC). Dimensiunea final ă a vectorilor de date este de 36, deoarece au fost ad ăugați și
44coeficienții de varia ție de ordinul 1 și 2. Alegerea acestei configura ții a fost argumentat ă în
secțiunea 2.1.3. În consecin ță, interfața acustică furnizeaz ă pentru fiecare cadru temporar, un
vector de date con ținând 36 de parametri acustici, cu o frecven ță de 100 cadre/s.
După extragerea parametrilor cepstrali, în majoritatea experimentelor s-a aplicat
normalizarea prin medie cepstral ă (NMC) deoarece poate compensa perturba țiile de canal
convolutive suferite de semnalul vocal (sec țiunea 5.4.4).
6.2.2 Modelarea la nivel fonetic
La nivel fonetic au fost luate în considerare cele 33 de foneme ale limbii române
(7 vocale, 4 semivocale și 22 consoane) la care s-a ad ăugat vocala ’i_0’ pentru varianta
alofonică postconsonantic ă finală a vocalei ’i’ din cuvinte precum ‚rari’, ‚veri’, etc. Nota ția
fonemelor s-a f ăcut în conformitate cu alfabetul fonetic SAMPA [SAM96], cu unele
modificări. Aceste modific ări aduse SAMPA constau în notarea fonemului ‚î’ cu /i_/ în loc de
/1/, precum și adăugarea a înc ă două consoane, respectiv plozivele palatale /k_/ și /g_/.
6.2.3 Datele de antrenare
Pentru toate experimentele de recunoa ștere automat ă a vorbirii prezentate în acest
capitol au fost utilizate dou ă seturi de date notate cu HUB1 și HUB2. Principalele
caracteristici ale acestor co rpusuri sunt ilustrate în Tabelul 6.2 . Pentru HUB1 au fost solicita ți
11 vorbitori de ambele sexe (7de sex masculin și 4 de sex feminin), fiecare dintre ace știa
rostind un num ăr de 300 de fraze pentru antrenare și 80 de fraze pentru testare.
Tabelul 6.2 Caracteristici ale corpusurilor utilizate pentru antrenarea și testare sistemelor de
recunoaștere pentru limba român ă.
Caracteristici HUB 1 HUB2
Nr. vorbitori (M/F) 7/4 1/0
Independent de vorbitor DA NU
Nr. fraze antrenare total 3300 200
Nr. fraze testare total 820 30
Durata total ă de semnal achizi ționat 9 ore /34 minute
/21 secunde 15 minute
/0 secunde
Nr. de cuvinte în datele de antrenare (apari ții/distincte) 19.957/1508 1665/904
Nr. de cuvinte în datele de testare (apari ții/distincte) 4174/144 319/61
Tip microfon
desktop head-set (close-
talking, noise
cancelling)
Condiții acustice laborator birou
Raport semnal/zgomot (RSZ) dB 47 42
Pentru HUB 1, frazele de antrenare au fost alese din domenii diverse (jurnalistic ă,
sport, religie, șah, calculatoare, etc.). Pentru HUB2, primele 100 de fraze au fost alese aleator.
Ulterior, a fost m ăsurată frecvența de apari ție a fonemelor iar urm ătoarele 100 au fost alese
pentru a asigura o mai bun ă acoperire a fonemelor cu frecven ță mică, cuprinzând în special
cuvinte care s ă conțină fonemele /g_/, /k_/, /h/, etc. Aceast ă procedur ă asigură o mai bun ă
antrenare a modelelor mai sus amintite, având în vedere c ă HUB2 este un corpus al unui
singur vorbitor.
Conținutul frazelor de antrenare precum și gramaticile care au condus la generarea
frazelor de testare se g ăsesc în Anexele A.4 și A.5 ale prezentei lucr ări. Atât în faza de
45antrenare cât și în cea de testare, a fost necesar ă transcrierea automat ă fonetică a frazelor pe
baza dicționarului fonetic (Anexa A.2).
6.2.4 Modelarea acustic ă
La nivel acustic, am ales ca unitate de recunoa ștere fonemul, a șa cum am argumentat
în secțiunea 2.2.2. Fonemul este un model antrenabil, dar puternic afectat de varia țiile
contextuale, fapt pentru care am apelat la modelarea dependen ței de context a șa cum a fost
descrisă în Capitolul 3 .
Topologia modelelor Markov aplicată este următoarea: fonemele au fost modelate cu
trei stări emisive și două stări suplimentare terminale non-emisive ce realizeaz ă trecerea de la
un model la altul în cadrul recunoa șterii vorbirii continue. Tranzi țiile intra-model pentru
foneme sunt de tip stânga-dreapta. Modelul pentru lini ște (silence ) /sil/, fiind asociat cu zona
de lipsă a activit ății vocale (zgomot sta ționar) prezint ă și tranziții suplimentare din st ările
emisive 1 în 3 și din 3 în 1. Modelul pentru pauz ă scurtă (short-pause ) /sp/ este asem ănător cu
/sil/ din punct de vedere al parametrilor acustici, îns ă are o singur ă stare emisiv ă. În plus este
permisă tranziția peste aceast ă stare în scopul model ării potențialei lipse a pauzei dintre dou ă
cuvinte succesive.
MMA
/@/ MMA
/sil/
MMA
/sp/ Folosire
în comun a
stării centrale stări
non-emisive stări
emisive
Figura 6.2 Topologia MMA utilizate pentru foneme (/ @/), pentru lini ște (/sil/) și pentru pauza
dintre cuvinte (/ sp/).
6.2.5 Etapele antren ării propriu-zise
După extragerea parametrilor acustici din forma de und ă a frazelor de antrenare
aceștia sunt stoca ți sub forma unor fi șiere de parametrii acustici care constituie datele de
intrare ale procesului de antrenare.
Principalele etape parcurse în faza de antrenare sunt:
a. La nivel monofoni (modele independente de context)
a1. Ini țializarea identic ă a modelelor fonetice și a modelului /sil/(MMA)
a2. Reestimarea parametrilor modelelor
a3. Introducerea modelului / sp/ și legarea st ărilor centrale ale
modelelor / sil/ și /sp/
a4. Reestimarea parametrilor modelelor
a5. Alinierea Viterbi for țată și generarea de noi transcrieri pentru pronun ții
alternative
a6. Reestimarea final ă a parametrilor modelelor
46b. La nivel de trifoni (modele dependente de context)
b1. Generarea tuturor trifonilor din datele de antrenare prin clonarea
monofonilor b2. Reestimarea parametrilor trifonilor
b3. Construirea arbor ilor fonetici de decizie și legarea st ărilor
b4. Reestimarea parametrilor st ărilor legate
În continuare vom detalia fiecare etap ă din faza de antrenare.
a. La nivel de monofon – se antreneaz ă un set de modele cu toate datele de intrare.
Stările au o distribu ție de emisie bazat ă pe o singur ă mixtură gaussiană, astfel că fiecare stare
a unui model este complet caracterizat ă de: 36 valori pentru medie și 36 valori pentru varian ță
(matricea de covarian ță este de tip diagonal, din motive legate de costul de calcul, motive care
au fost explicate în sec țiunea 2.2.5).
Pe lângă procesele de calcul din faza de antrenare, este necesar ă și pregătirea datelor
pentru lucru. Una din opera țiile importante const ă în generarea automat ă a transcrierii fonetice
a frazelor de antrenare. Transcrierile acestor fraze sunt disponibile în corpus dar nu la nivel fonetic ci doar la nivel de cuvânt (
Figura 6.3 ).
DICȚIONAR FONETIC
A a
A' @
A'STA @ s t a
………………………………….
ZIUA z i w a
ZONA' z o n @ TEXT FRAZE
S0146 SĂ MERGEM ACAS Ă
TRANSCRIERE FONETIC Ă FRAZE
S0146 sil s @ m e r dZ e m a k a s @ sil
Figura 6.3 Transcrierea automat ă a frazelor pe baza dic ționarului fonetic
a1. Inițializarea identic ă a modelelor fonetice și a modelului /sil/
Pentru ini țializarea modelelor, se calculeaz ă media (globalE ) și varianța (globalV ) peste
întregul volum de date de antrenare. Aceste valori globale sunt folosite pentru ini țializarea
fiecărui model din cele 34 considerate. Similar este ini țializat și modelul / sil/ care, așa cum se
observă și în Figura 6.3 , este ad ăugat la capetele fiec ărei fraze. Matricele de tranzi ție,
Mîntre stări pentru toate modelele sunt ini țializate cu valorile:
⎥⎥⎥⎥⎥⎥
⎦⎤
⎢⎢⎢⎢⎢⎢
⎣⎡
=
0.00.00.00.00.05.05.00.00.00.00.05.05.00.00.00.00.05.05.00.00.00.00.010.0
M ( 6.3)
a2. Reestimarea parametrilor modelelor
Deoarece nu sunt disponibile informa ții despre marginile datelor corespunz ătoare
modelelor fonetice, s-a apelat la antrenarea Baum-Welch imbricat ă (embedded ) descrisă în
[Dum04] . Această procedur ă constă în generarea unui MMA compozit pentru fiecare fraz ă.
Acesta se realizeaz ă prin conectarea modelelor individuale conform transcrierii fonetice
pentru fraza respectiv ă.
Stările non-emisive ale modelelor ofer ă suportul pentru aceast ă operație de
interconectare. La prima parcurgere a algoritmului progresiv-regresiv, necesar ă pentru prima
47reestimare, se presupune o segmentare uniform ă a datelor de intrare. La fiecare trecere
ulterioară aceste limite între foneme se modific ă probabilist prin valorile gradului de ocupare
a stărilor (secțiunea 2.2.6), iar parametrii modelelor devin din ce în ce mai asem ănători cu
datele pe care le reprezint ă. Pentru reducerea timpului de calcul, se utilizeaz ă căutarea
fascicular ă cu un fascicul de valoare 250,0 (log-probabilitate). În cazul în care algoritmul nu
converge, se aplic ă o creștere incremental ă a fasciculului cu 150,0 la fiecare nou ă trecere. Se
efectueaz ă astfel un num ăr de 5 reestim ări Baum-Welch succesive a mediilor, varian țelor și
matricelor de tranzi ție așa cum a fost prezentat în sec țiunile 2.2.6÷2.2.8. La fiecare trecere se
calculează log-probabilitatea pe cadru care în general converge c ătre o anumit ă valoare. În
Tabelul 6.4 sunt date aceste de valori.
a3. Introducerea modelului /sp/ și legarea st ărilor centrale ale modelelor /sil/ și /sp/
Pentru modelarea zgomotului ambiental a fost utilizat doar /sil/ pân ă în acest moment.
Din starea central ă a modelului /sil/ este generat prin duplicare un model de leg ătură între
cuvinte /sp/ care marcheaz ă o eventual ă pauză scurtă între acestea ( Figura 6.2 ). Se genereaz ă
automat o nou ă transcriere fonetic ă în care va fi inclus modelul /sp/.
a4. Reestimarea parametrilor modelelor
Cu noua transcriere cuprinzând și modelul /sp/ se efectueaz ă un număr de încă 2
reestimări prin procedura Baum-Welch. Modelele compozite sunt reconstruite astfel încât s ă
cuprindă și modelul de leg ătură ai cărui parametrii de emisie sunt re-estima ți solidar cu starea
centrală a modelului /sil/ a șa cum a fost descris în sec țiunea 6.2.3.
a5. Alinierea Viterbi for țată și generarea de noi transcrieri pentru pronun ții
alternative
În dicționarul fonetic exist ă posibilitatea ca un cuvânt s ă aibă multiple transcrieri
fonetice, motivate de diferen țele de pronun ție din vorbirea curent ă, unde nu sunt respectate
întotdeauna regulile ortoepice. Modelele antrenate pân ă în acest moment pot fi utilizate pentru
a determina care dintre intr ările alternative din dic ționarul fonetic sunt cele mai apropiate de
pronunțiile concrete din datele de antrenare printr-o aliniere Viterbi for țată. Termenul „for țat”
provine din faptul c ă nu se execut ă o recunoa ștere propriu-zis ă deoarece în decodarea frazei,
sunt permise numai tranzi țiile din interiorul modelului compozit asociat frazei.
În această fază, decoderul Viterbi ne poate semnala dac ă există fraze cu „probleme”.
În SRVC-LR a fost implementat ă o procedur ă de reiterare automat ă a alinierii Viterbi for țate
pentru dimensiuni ale fasciculului de c ăutare care cresc în progresie geometric ă. Astfel
problemele de transcriere pot fi remediate interactiv ( on the fly ), fără a fi nevoie ca întregul
proces de antrenare pân ă la acest punct s ă fie reluat.
a6. Reestimarea final ă a parametrilor modelelor
Se efectueaz ă un ultim set de 5 reestim ări a monofonilor cu o singur ă mixtură
gaussiană. La fiecare reestimare a parametrilor modelelor este calculat ă log-probabilitatea
datelor în condi țiile modelelor prin algoritmul progresiv. Pentru antrenarea complet ă a setului
de monofoni, au fost efectuate un num ăr de 5+2+5=12 reestim ări (Tabelul 6.4 ).
SRVC-LR permite în aceast ă fază a antrenării (Anexa B.3):
– oprirea antren ării sau
– continuarea antren ării și generării de modele dependente de context (trifoni) sau
– rafinarea sistem ului de recunoa ștere obținut: mărirea num ărului de mixturi gaussiene
și a numărului de reestim ări
48
Tabelul 6.4 Valorile log-probabilit ății / cadru calculate la fiecare reestimare
Reestimare 1 2 3 4 5 6 7
Log-probab. /cadru -75,56 -72,15 -67,74 -66,17 -66,11 -66,12 -65,95
Reestimare 8 9 10 11 12 – –
Log-probab. /cadru -65,77 -65,68 -65,65 -65,64 -65,63 – –
b1. Generarea tuturor trifonilor din datel e de antrenare prin clonarea monofonilor
Dacă se decide continuarea antren ării și generării modelelor dependente de context,
următoarea faz ă constă în generarea transcrierii fonetice la nivel de trifon din transcrierile la
nivel de monofon. De exemplu, , transcrierea asociat ă frazei „S Ă MERGEM ACAS Ă” la
nivel de monofon este /sil s @ sp m e r dZ e m sp a k a s @ sil / iar la nivel de
trifon este/sil s+@ s-@ sp m+e m-e+r e-r+dZ r-dZ+e dZ-e+m e-m sp a+k a-k+a k-a+s
a-s+@ s-@ sil/ (în conformitate cu conven țiile prezentate în sec țiunea 3.1.3)
Parametrii noilor modele dependente de context generate sunt ini țializate cu valorile
modelelor independente de context asociate. Trifonii vor avea medii și varianțe proprii, îns ă
vor utilizate în comun ( sharing ) matricele de tranzi ție, întrucât s-a constatat c ă acestea nu sunt
afectate de context [You02] .
b2. Reestimarea parametrilor
Parametrii trifonilor ob ținuți prin clonarea monofonilor, sunt diferen țiați în urma a 2
reestimări succesive prin aceea și procedur ă descrisă în prima parte a antren ării. Pentru a evita
o slabă estimare a modelelor care apar de prea pu ține ori (mai pu țin de 4 ori) în datele de
antrenare, parametrii acestora nu sunt reestima ți și rămân cei mo șteniți de la monofoni. De
exemplu, pentru HUB2, dintr-un total de 1990 de trifoni, 771 apar o singur ă dată, 389 apar de
două ori iar 238 apar de trei ori. În consecin ță, numai 592 trifoni reprezentând 30% din
numărul total au un num ăr suficient de apari ții în datele de antrenare care s ă permită o
estimare robust ă a parametrilor.
b3.Construirea arborilor fonetici de decizie și legarea st ărilor
Sistemul dispune în acest moment de un set de trifoni cu distribu ții de emisie
gaussiene și matrice de tranzi ție legate. În aceast ă fază, sistemul are dou ă dezavantaje majore:
o mare parte a modelelor sunt slab antrenate (în exemplul de mai sus, 70% din modele nu au
fost reestimate) și pe de alt ă parte, în faza de recunoa ștere, în datele de testare, apar trifoni
care nu exist ă în datele de antrenare (trifoni nev ăzuți).
Așa cum a fost prezentat în Capitolul 3 , generarea și utilizarea arborilor fonetici de
decizie rezolv ă ambele probleme, crescând antrenabilitatea sistemului și reducând
dimensiunile acestuia.
Pentru fiecare stare asociat ă unui monofon, se construie ște un arbore de decizie
conform procedurii descris ă în secțiunea 3.5. De exemplu, pentru fonemul /a/, starea 4 este în
general afectat ă de către fonemul din vecin ătatea dreapt ă. Prin întreb ări referitoare la acest
context, de tipul „ Este fonemul din dreapta o consoan ă nazală ?” stările 2 ale trifonilor
49proveniți din clonarea monofonului /a/ vor fi grupate și legate pe baza similarit ăților acustice
(Figura 6.7 ). Setul de întreb ări fonetice este prezentat în Anexa C1
Grupul E
Grupul DGrupul C
Grupul B Grupul A Fonemul
/a/
Dreapta
= nazală?
Stânga=
semivocal ă ? Dreapta=
fricativă?
Stânga
= /e_X/ ? Da Nu
Da Nu
Da Da Nu
Nu
Figura 6.7 Exemplu de arbore de decizie pentru starea 4 a fonemului /a/
Pentru toate cele trei st ări ale celor 34 de foneme ale limbii române este aplicat
întregul set de întreb ări, atât referitoare la contextul din dreapta cât și la contextul din stânga.
În experimentele efectuate asupra HUB1 au fost genera ți 102 arbori fonetici de decizie care se
regăsesc în Anexa C2 a lucr ării.
Arborii fonetici încapsula ți în sistemul de recunoa ștere sunt folosi ți atât pentru a
antrena parametrii trifonilor cu st ări legate cât și pentru a sintetiza trifonii nev ăzuți (care apar
în datele de testare)
Un element cheie în construirea arborilor f onetici de decizie îl constituie pragul de
selecție al criteriului de decizie (sec țiunea 3.5) pe care îl not ăm cu P. Au fost m ăsurate ratele
de eroare ale sistemelor rezultate pe frazele de test la nivel de cuvânt și la nivel de fraz ă,
rezultatele fiind prezentate în Tabelul 6.5 . Înainte de construirea arborilor fonetici, sistemul
prezintă un număr de 2493 trifoni, cumulând un total de 7479 de st ări.
Tabelul 6.5 Rezultatele ob ținute de c ătre sisteme de recunoa ștere obținute pentru
diferite valori ale pragului de decizie utilizat în construc ția arborilor fonetici
Rata de eroare
P Nr. stări
inițial/ final Reducerea
relativă a
dimensiunii
[%] cuvânt
[%] frază
[%]
30 7479 / 3706 49,6 11,31 41,25
300 7479 / 2117 28,3 12,40 41,25
3000 7479 / 1174 15,7 12,61 41,70
10000 7479 / 255 3,4 12,88 42,75
15000 7479 / 209 2,8 13,20 44,50
20000 7479 / 172 2,3 14,71 46,75
30000 7479 / 140 1,9 16,60 52,25
50b4. Reestimarea parametrilor st ărilor legate
După construirea arborilor de decizie, parametrii sunt reestima ți prin aceea și
procedură Baum-Welch. De aceast ă dată, stările trifonilor sunt legate și vor folosi în comun
aceleași distribuții.
În final, se ob ține un set de trifoni bine antrena ți cu o mixtur ă gaussiană și stări legate.
Chiar dac ă la nivel logic num ărul stărilor acestor modele ( și implicit al distribu țiilor asociate)
este mare, la nivel fizic acest num ăr este mult mai mic, distribu țiile de emisie fiind utilizate în
comun de c ătre modelele logice.
6.2.6 Gramatici uti lizate în testare
În această lucrare, la nivelul model ării lingvistice au fost utilizate dou ă tipuri distincte
de gramatici:
a. gramatică buclă – orice cuvânt din dic ționarul de recunoa ștere poate ap ărea după
oricare alt cuvânt cu probabilit ăți egale;
b. gramatică cu stări finite (GSF) – se precizeaz ă toate succesiunile posibile între
cuvintele de recunoscut sub forma unei latice.
În ambele situa ții au fost definite re țele la nivel de model reprezentate în format HTK-
SLF (Standard Lattice Format) . SLF fiind un limbaj relativ dificil, a fost utilizat un analizor
gramatical ( parser ) capabil s ă asigure conversia în format SLF plecând de la un limbaj de
nivel superior. Acesta din urm ă se bazeaz ă pe o descriere a regulilor gramaticale de tip EBNF
(Extended Backus Naur Form) [You02] .
În figura Figura 6.8 sunt reprezentate laticele și descrierile asociate acestora pentru
două exemple de gramatici.
LA
MARE
PLEC MERGEM ACASA MERG
PLEC LA MARE
ACASA Gramatic ă tip GSF
$ACTIUNE = MERG | PLEC;
$LOC = ACASA | LA MARE;
(START $ACTIUNE $LOC STOP)
Gramatic ă buclă
$CUVANT = MERG | PLEC |
ACASA | LA | MARE;
(START [$CUVANT] STOP) LATICE EBNF
START STOP START
STOP
Figura 6.8 Laticele și descrierile asociate celor dou ă tipuri de gramatici: GSF și buclă
În procesul de recunoa ștere, decoderul Viterbi ține cont de aceast ă rețea de descriere
gramatical ă și restrânge spa țiul de căutare numai la tranzi țiile permise din re țea.
51În această lucrare, majoritatea testelor de recunoa ștere a vorbirii au utilizat gramatici
buclă acestea marcând practic absen ța oricăror informa ții lingvistice privitoare la succesiune
posibilă a cuvintelor de recunoscut.
6.2.7 Analiza performan țelor sistemului de recunoa ștere
După ce datele de testare au fost prelucrate de c ătre decoder, a fost necesar ă analizarea
acestor rezultate. S-a trecut la con fruntarea transcrierilor de referin ță (originale) cu
transcrierile frazelor de test ob ținându-se diferite rezultate statistice precum num ărul de fraze
recunoscute corect, rata de eroare la ni vel de cuvânt, etc. Aceasta se realizeaz ă automat în
SRVC-LR prin apelarea instrumentului HResults.
În prima faz ă este necesar ă alinierea optim ă între frazele de comparat. La nivel de
frază, algoritmul de aliniere a succ esiunilor de c uvinte utilizeaz ă programarea dinamic ă și
calculează un scor de potrivire între fraza original ă și cea recunoscut ă.
După c e a u f o s t g ăsite alinierile optime la nivel de fraz ă, se calculeaz ă numărul
erorilor de substitu ție, ștergere și inserție la nivel de cuvânt. Pot fi determinate astfel rata de
eroare ( RE) și respectiv rata de recunoa ștere ( RR) la nivel de cuvânt:
[]
[] 100) (%100 %
⋅+−=⋅+=
NSD NRRNSDRE
( 6.4)
unde N este num ărul total de cuvinte. Deoarece rata de recunoa ștere ignor ă erorile de
inserție, a fost necesar ă introducerea no țiunii de acuratețe (Ac) definită astfel:
[]()
NISD NAc++−=% ( 6.5)
Un rezultat tipic pentru analiza unui sistem prin recunoa șterea unui set de 40 de fraze
de test poate fi exprimat astfel:
FRAZĂ [%]: RR=37.50 [H=15, S=25, N=40]
CUVÂNT [%]: RR=86.67, Ac=68.48 [H=143, D=0, S=22, I=30, N=165]
Dacă în decodare penalizarea erorilor de inser ție este zero, decoderul are tendin ța de a
insera cuvinte (în general scurte) și de a nu produce erori de ștergere, așa cum se observ ă și în
exemplul prezentat mai sus. Setarea unei penaliz ări de inser ție cu valori negative va produce o
scădere a num ărului de inser ții și o creștere a acurate ții sistemului. În acest fel, acurate țea
poate fi adus ă ca valoare aproape de rata de eroare. Penalizarea de inser ție poate fi utilizat ă ca
element de reglaj al echilibrului dintre erorile de inser ție și cele de ștergere.
În Tabelul 6.7 sunt prezentate rata de recunoa ștere (RR), acurate țea (Ac), num ărul de
erori de ștergere (D) și inserție (I) obținute pentru valori ale penaliz ării erorilor de inser ție (PI)
în gama [-120,0 ÷ -60,0]. În ultima coloan ă este monitorizat și raportul dintre num ărul de
ștergeri și cel de inser ții. Valoare optim ă a acestui prag este între -90,0 și -85,0 interval în care
numărul de inser ții este egal cu cel de ștergeri. Sistemul a fost construit pe datele din HUB1.
52Tabelul 6.7 Rezultatele recunoa șterii în func ție de penalizare a erorilor de inser ție
PI RR
[%] Ac
[%] D I D/I
-120,0 85,59 85,19 17 4 4,25
-100,0 87,50 86,91 9 6 1,50
-95,0 87,70 87,11 8 6 1,33
-90,0 87,92 87,34 7 6 1,17
-85,0 88,02 87,25 6 8 0,75
-80,0 88,46 87,51 5 10 0,50
-60,0 88,36 86,00 3 25 0,12
În SRVC-LR, reglajul penaliz ării erorilor de inser ție poate fi f ăcut pentru orice sistem
de recunoa ștere prin specificarea unei game de varia ție a acestui parametru.
6.2.8 Rafinarea sistemului
SRVC-LR permite atât efectuarea de reestim ări suplimentare cât și mărirea num ărului
de mixturi gaussiene pentru a îmbun ătăți performan țele de recunoa ștere.
În secțiunea anterioar ă au fost detaliate toate etapele parcurse în antrenarea unui set de
modele fonetice dependente de context cu distribu ție gaussian ă. Performan țele de
recunoaștere pot fi îmbun ătățite în continuare prin m ărirea num ărului de mixturi gaussiene și
efectuarea de reestim ări suplimentare.
Creșterea num ărului de mixturi gaussiene m ărește rata de recunoa ștere, dar creeaz ă și
unele dezavantaje precum cre șterea dimensiunii sistemului și scăderea antrenabilit ății
sistemului (acela și volum de date este folosit pentru a estima un num ăr mai mare de
parametrii).
Procedura de cre ștere a num ărului de mixturi se bazeaz ă pe scindarea mixturilor
(mixture splitting ) . Pentru cazul în care sistemul are n mixturi, se selecteaz ă mixtura cu
ponderea cea mai însemnat ă și se divide în alte dou ă mixturi. Media acestora are o abatere de
±0.2 din devia ția standard a distribu ției mixturii originale ( Figura 6.9 ). După această operație,
se efectueaz ă cel puțin o reestimare dup ă care procesul este reluat, pân ă când se atinge
numărul de mixturi gaussiene dorit.
Scindare
mixtură
Reestimare
Figura 6.9 Procedura de cre ștere a num ărului de mixturi gaussiene prin scindarea mixturilor
Pe întregul parcurs al procesului de cre ștere a num ărului de mixturi, performan țele de
recunoaștere sunt monitorizate, pe un grup de câteva zeci de fraze de test.
53Tabelul 6.8 Rata de eroare(RE) la nivel de cuvânt în func ție de num ărul de reestim ări
și de mixturi gaussiene ale sistemului
Nr.
mixturi 1 [mix] 2 [mix] 4 [mix] 6 [mix]
Nr.
reestimări 3 4 5 1 2 3 1 2 3 1 3 6
RE
cuvânt [%] 15,22 14,78 15,00 10,22 8,91 8, 70 9,35 9,57 9, 57 8,26 7,39 7,17
În Tabelul 6.8 sunt prezentate rezultatele ob ținute prin cre șterea num ărului de mixturi
pe sistemul antrenat pe HUB1. Au fost efectuate teste și pentru mai mult de 6 mixturi îns ă nu
s-au obținut scăderi ale ratei de eroare.Se observ ă că odată cu creștere numărului de mixturi
gaussiene rata de eroare scade, reducându-se ch iar cu mai mult de 50% pentru sistemul cu 6
mixturi fa ță de sistemul cu o mixtur ă. Avantajele acestei cre șteri sunt îns ă plătite printr-o
creștere a efortului de calcul mai ridicat. Pentru sistemul cu 6 mixturi, timpul de recunoa ștere
este de 3 ori mai mare iar dimensiunea sistemului este de 6 ori mai mare decât în cazul celui
cu o mixtur ă.
6.3 Performan țele sistemul ui în func ție de lărgimea
fascicolului de c ăutare
Căutarea Viterbi fascicular ă sincronă în timp reduce semnificativ resursele de calcul în
faza de recunoa ștere (secțiunile 2.2.7 și 4.3.3). Datele rezultate din experimentele desf ășurate
cu scopul de a eviden ția efectele c ăutării fasciculare atât asupra timpului de calcul cât și a
ratei de recunoa ștere[Mun03a] sunt prezentate în tabelele 6.9 și 6.10 precum și în graficele din
figurile 6.10 și 6.11.
Testarea a fost realizat ă conform unei gramatici de tip „bucl ă”, datele de antrenare și
testare fiind cele din HUB1. Au fost determinate ratele de eroare și timpul de calcul la nivel
de cuvânt în func ție de lărgimea fasciculului de c ăutare. S-au luat în considerare situa țiile în
care fasciculul este în intervalul 20÷200 dup ă care s-a efectuat o recunoa ștere fără căutare
fascicular ă (fără fascicul).
Tabelul 6.9 Rata de eroare și timpul de calcul în func ție de lărgimea fasciculului de
căutare
Lărgimea
fasciculului Rata de
eroare Timpul de
calcul [s]
20 75,00 0,06
30 67,40 0,10
50 42,00 0,18
70 24,1 0,29
100 13,62 0,44
120 12,68 0,54
150 12,11 0,69
200 12,11 0,92
Fără
fascicul 12,11 2,2
54Se observ ă că atunci când l ărgimea fasciculului este peste valoarea de 150, nu se mai
obține nici o îmbun ătățire a ratei de recunoa ștere. Rata de eroare r ămâne constant ă și este
egală cu cazul în care se efectueaz ă o căutare Viterbi clasic ă fără fascicul.
În practic ă lărgimea fasciculului se alege astfel încât s ă se realizeze un compromis
între rata de eroare și timpul de calcul . În ceea ce prive ște timpul de calcul se observ ă faptul
că acesta este de dou ă-trei ori mai mic la valoarea 150, amintit ă mai sus, fa ță de situația în
care căutarea se face f ără fascicul.
Se poate concluziona c ă există o valoare optim ă a fasciculului de c ăutare care s ă
asigure un echilibru între cerin țele de calcul și performan țele sistemului de recunoa ștere.
Lărgimea fasciculului poate fi determinat ă empiric, fiind selectat ă valoarea minim ă pentru
care rata erorii de recunoa ștere este egal ă cu cea din situa ția în care nu se utilizeaz ă căutarea
fascicular ă. Dacă pentru aceast ă valoare resursele de calcul necesare sunt considerate a fi prea
mari, lărgimea fasciculului poate fi sc ăzută până la nivele acceptabile ale resurselor, dar cu
degradarea inevitabil ă a performan țelor de recunoa ștere.
6.4 Creșterea robuste ții sistemului de recunoa ștere la
factori ambientali
Principalele metode utilizate pentru a compensa perturba țiile suferite de semnalul
vocal în mediul ambiental acustic au fost descrise în Capitolul 5. În practic ă, o problem ă
important ă a sistemelor de recunoa ștere a vorbirii este generat ă de deosebirile dintre condi țiile
ambientale acustice în faza de antrenare și cea de testare [Mun04c] .
Una dintre tehnicile aplicate în sistemul de recunoa ștere construit a fost normalizarea
prin medie cepstral ă (NMC). Aceasta presupune sc ăderea mediei coeficien ților cepstrali pe
durata unei fraze din coeficien ții cepstrali calcula ți în fiecare cadru. NMC este o metod ă
simplă și eficientă în anularea perturba țiilor convolutive suferite de semnalul vocal având într-
o oarecare m ăsură și efecte de normalizare a vorbitorului (sec țiunea 5.4.4).
În această secțiune vor fi prezentate experimentele efectuate în scopul de cre ștere a
robusteții sistemului de recunoa ștere construit la zgomot aditiv prin metoda antren ării
multiple . Au fost antrenate într-o manier ă incremental ă mai multe variante ale sistemului de
recunoaștere atât cu vorbire „curat ă” cât și cu vorbire afectat ă de zgomot. Zgomotul de tip
aditiv a fost generat artificial astfel încât s ă aducă frazele de antrenare/testare la un nivel al
RSZ impus.
Pentru realizarea testelor de robuste țe a sistemului de recunoa ștere la varia ții ale
mediului ambiental, am considerat c ă este mai important s ă realizăm un sistem dependent de
vorbitor (HUB2) astfel încât s ă fie eliminat ă variabilitatea dat ă de vorbitori. Rezultatele pot fi
extinse îns ă prin generalizare și la un sistem independent de vorbitor.
A fost testat ă în special robuste țea sistemelor de recunoa ștere la diferite niveluri ale
zgomotului aditiv , generat artificial cu ajutorul func ției randn din Matlab .
Atât pentru frazele de antrenare cât și pentru cele de testare au fost generate seturi de
date având valori ale RSZ de 50, 25, 20, 15, 10, 5 și 0 dB. Fi șierele cu formele de und ă ale
frazelor au primit denumiri noi, iar fi șierele cu transcrierile fonetice au fost actualizate
corespunz ător.
Punctul de plecare în m ăsurarea robuste ții SRVC l-a constituit sistemul antrenat și
testat cu fraze „curate”, deci în acelea și condiții ambientale (f ără zgomot).
55Următoare etap ă a constituit-o construirea unor sisteme adaptate care au fost
antrenate în exact acelea și condiții cu frazele de testare. important.
Așa cum am ar ătat și în secțiunea 5.5.1, antrenarea multipl ă (multistyle training )
poate constitui o solu ție potrivit ă pentru a realiza un sistem de recunoa ștere robust care s ă
poată fi aplicat în practic ă. Pentru aceasta, SRVC a fost antrenat cu toate frazele de antrenare
(incluzând toate nivelurile RSZ disponibile: 0, 5, 10, 15, 20, 25, 50 dB). Performan țele de
recunoaștere obținute sunt bune, fiind foarte apropiate de sistemele adaptate (Figura 6.13).
5203550658095
0 5 10 15 20 25 50
RSZ [dB]Rata de eroare [%]S. curat
S.a. multipl ă
S. adaptate
5203550658095
0 5 10 15 20 25 50
RSZ [dB]Rata de eroare [%]S. curat
S.a. multipl ă
S. adaptate
a) b)
Figura 6.13 Ratele de eroare ale SRVC cu antrenare multipl ă, sistemele adaptate și sistemul
„curat” pentru monofoni (a) și trifoni (b) în func ție de RSZ
În Figura 6.13-b) se observ ă că pentru cazul trifonilor, performan țele sunt chiar u șor
mai bune pentru sistemul cu antrenare multipl ă decât sistemele adaptate la niveluri RSZ mai
mari de 10 dB.
Rezultatele experimentale prezentate în aceast ă secțiune au fost utilizate pentru
elaborarea unei scheme de cre ștere a robuste ții sistemului de recunoa ștere. Pentru un sistem
practic, se pot stabili urm ătoarele etape de urmat pentru antrenarea multipl ă :
1. Se determin ă gama RSZ pentru condi țiile ambientale în care sistemul de
recunoaștere va lucra.
2. Se calculeaz ă gama corespunz ătoare pentru nivelul de zgomot (presupus alb
gaussian), respectiv gama pentru dispersia zgomotului.
3. Se cuantizeaz ă gama calculat ă la punctul 2, pentru N puncte (acesta poate fi ales
astfel încât diferen ța dintre dou ă puncte al ăturate să fie de 5-10 dB)
4. Se genereaz ă artificial N semnale de tip zgomot alb gaussian cu parametrii
calculați la punctul 2.
5. Se adună semnalul vocal din frazele de antrenare „curate” cu semnalele generate
la punctul 4.
6. Se antreneaz ă sistemul de recunoa ștere cu toate frazele generate la punctul 5.
Un astfel de sistem de recunoa ștere va fi suficient de robust la zgomot dac ă, în mediul
de testare, RSZ se men ține în gama pentru care sistemul a fost antrenat și zgomotul are
aceeași distribuție.
566.5 Ratele de recunoa ștere obținute cu diferi ți vorbitori
de sistemul antrenat cu datele din HUB1
Pentru a verifica performan țele sistemului de recunoa ștere independent de vorbitor
bazat pe datele din HUB1, au fost m ăsurate ratele de recunoa ștere pentru fiecare din cei 11
vorbitori testa ți. le obținute de sistemul de mai sus pentru fiecare vorbitor sunt prezentate în
tabelul Tabelul 6.13.
Tabelul 6.13 Performan țele sistemului de recunoa ștere testat pe 11 vorbitori
Cuvânt Frază Vorbitor RR Ac. H D S I N RR H S N
1 71,52 32,12 118 0 47 65 165 7,50 3 37 40
2 92,12 73,33 152 0 13 31 165 30,00 12 28 40
3 86,67 68,48 143 0 22 30 165 37,50 15 25 40
4 87,35 70,48 145 0 21 28 166 37,50 15 25 40
5 74,70 18,07 124 0 42 94 166 17,50 7 33 40
6 93,33 65,45 154 0 11 46 165 27,50 11 29 40
7 82,42 41,21 136 0 29 68 165 22,50 9 31 40
8 84,34 62,05 140 0 26 37 166 22,50 9 31 40
9 93,94 76,97 155 0 10 28 165 45,00 18 22 40
10 95,18 64,46 158 0 8 51 166 17,50 7 33 40
11 92,00 69,00 92 0 13 23 100 20,00 8 32 20
Vorbitorul num ărul 1 nu a fost inclus în baza de date de antrenare, având în consecin ță
cea mai mic ă rata de recunoa ștere la nivel de cuvânt: 71,52%, în timp ce rezultatele cele mai
bune au fost ob ținute de vorbitorul num ărul 10 cu o rat ă de recunoa ștere de 95,18%.
Vorbitorii 2,3,4,8,9 și 10 sunt de sex masculin iar 1,5,6 și 7 sunt de sex feminin.
Semnifica ția notațiilor din Tabelul 6.13 este urm ătoarea:RR – rata de recunoa ștere,
Ac. – acurate țea, N – num ăr de fraze/cuvinte total, H – num ăr de fraze/cuvinte corect
recunoscute, S – num ăr de fraze gre șite / cuvinte substituite (erori de substitu ție), D – num ăr
de cuvinte șterse (erori de ștergere), I – num ăr de cuvinte inserate (erori de inser ție).
Deoarece num ărul vorbitorilor de sex masculin este mai mare decât al celor de sex
feminin, era de a șteptat ca rezultatele sistemului pe prima categorie s ă fie mai bune. Astfel,
rata de recunoa ștere medie pentru vorbitori i de sex masculin este de 90,22 % iar pentru cei de
sex feminin de 80,49 %.
6.6 Interfa ța grafică vocală cu utilizatorul
În secțiunea 6.2 a fost prezentat ă arhitectura și metodele de construire a diferitelor
variante ale sistemului de recunoa ștere automat ă a vorbirii prin SRVC-LR. Pentru
demonstrarea func ționării în practic ă a sistemelor construite, a fost realizat ă o interfață grafică
vocală cu utilizatorul dezvoltat ă de asemenea în mediul MATLAB [Mun05a] .
În Figura 6.14 este prezentat meniul de baz ă al acestei interfe țe, prin intermediul
căreia utilizatorul poate s ă selecteze unul din cele trei vocabulare disponibile, s ă aleagă tipul
de vorbire, s ă regleze parametrii de recunoa ștere precum l ărgimea fasciculului de c ăutare și
penalizarea erorilor de inser ție și să vizualizeze atât forma de und ă cât și textul recunoscut.
57
Figura 6.14 Interfață vocală bazată pe SRVC-LR
Interfața are la baz ă trei module:
a. Panoul detectorului de activitate vocal ă (VAD) (stânga-sus) – descris în
secțiunea 2.1.2. Utilizatorul poate crea un nou profil al mediului acustic la fiecare
schimbare a calculatorului, a microfonului, a camerei, etc.
b. Panoul parametrilor de recunoa ștere (dreapta-sus) – utilizatorul poate selecta
unul din cele trei dic ționare: cifre (10 cuvinte), jude țe (42 cuvinte) și 3.000 cuvinte
(totalitatea cuvintelor disponibile în dic ționarul fonetic). De asemenea, poate fi
selectată una din cele dou ă gramatici asociate vorbirii continue și vorbirii izolate.
Lărgimea fasciculului de decodare poate fi modificat ă pentru a regla timpul de
recunoaștere iar penalizarea erorilor de inser ție poate fi modificat ă pentru a regla
numărul erorilor de inser ție (în cazul vorbirii continue).
c. Panoul de afi șare rezultate (jumătatea inferioar ă)- utilizatorul poate vedea atât
forma de und ă a ultimei rostiri cât și textul recunoscut; în partea dreapt ă sunt
afișați timpii de procesare: parametrizare, decodare și total.
6.7 Concluzii
În acest capitol a fost prezentat sistemul SRVC-LR și rezultate experimentale ob ținute
cu acesta. De și variantele de sistem generate au o structur ă de bază comună (bazate pe MMA
cu topologie stânga-dreapta, cu densit ăți ale probabilit ăților de emisie continue, etc.), forma
finală a acestora poate diferi foarte mult, în func ție de corpusurile de vorbire utilizate și de
configura țiile specifice (parametrizare a semnalului vocal, topologie a modelelor, num ăr de
reestimări, etc.).
58Au fost descrise detaliat etapele generale ale antren ării (Secțiunea 6.2.) pornind de la
parametrizarea semnalului vocal și terminând cu cre șterea mixturilor gaussiene ale st ărilor
legate la nivel de trifoni. Au fost testate sistemele de recunoa ștere construite, performan țele
fiind monitorizate permanent. Astfel, dac ă pentru un sistem cu o singur ă mixtură gaussian ă
rata de eroare la nivel de cuvânt este 15,22 %, aceasta a fost redus ă relativ cu aproape 50 %
prin creșterea num ărului de mixturi gaussiene la 6.
În Secțiunea 6.3 sunt prezentate rezultate experimentale legate de c ăutarea Viterbi
fascicular ă. Sunt m ăsurate performan țele în faza de decodare (timp de calcul și rata de
recunoaștere). Odat ă cu creșterea fasciculului de c ăutare, cre ște și timpul de decodare,
scăzând în schimb rata erorii, astfel c ă poate fi determinat ă experimental o valoare optim ă a
fasciculului pentru care acurate țea și timpul de recunoa ștere sunt în intervale acceptabile.
Căutarea fascicular ă reduce semnificativ resursele de calcul implicate în decodare cu pre țul
sacrificării optimalit ății (rata de eroare poate s ă crească și pot apărea erori de c ăutare).
În Secțiunea 6.4 este aplicat ă o tehnic ă de creștere a robuste ții sistemelor de
recunoaștere : antrenarea multipl ă. Antrenarea sistemului de recunoa ștere cu fraze afectate de
zgomot alb gaussian într-o anumit ă gamă a raportului semnal pe zgomot (RSZ) conduce la o
robustețe sporită în faza de testare pentru acela și tip de perturba ții.
Sistemele de recunoa ștere rezultate pot fi te state atât off-line cât și în timp real. Pentru
a testa recunoa șterea vorbirii în timp real, a fost dezvoltat ă o aplica ție demonstrativ ă
prezentată în Secțiunea 6.6. Detectorul de activitate vocal ă (VAD) a fost implementat în
totalitate în MATLAB, constituind un element cheie în realizarea aplica ției. Acesta a fost
proiectat și realizat în conformitate cu algoritmul descris în Sec țiunea 2.1.2.
59CAPITOLUL 7
CONCLUZII
Obiectivul principal pe care l-am urm ărit în aceast ă lucrare a fost realizarea unui
sistem de recunoa ștere automat ă a vorbirii continue în limba român ă. Configura ția sistemului
de recunoa ștere și funcțiile sub-sistemelor sale au fost stabilite astfel încât s ă se asigure
îndeplinirea obiectivului propus. În esen ță sistemul se caracterizeaz ă prin:
– utilizarea fonemului ca unitate de recunoa ștere
– construcție incremental ă
– utilizarea c ăutării fasciculare atât în faza de antrenare cât și în faza de decodare, în
scopul reducerii spa țiului de căutare
– modelarea dependen ței de context, prin construire a arborilor fonetici de decizie
specifici limbii române
Pentru asigurarea func ționării sistemului în condi ții practice, au fost aplicate metode
de creștere a robuste ții la zgomot de tip aditiv și distorsiuni convolutive.
Obiectivul propus a fost atins prin realizarea unui sistem de recunoa ștere a vorbirii
continue în limba român ă (SRVC-LR) de vocabular mediu (3000 cuvinte). Performan țele
acestui sistem caracterizate prin rata de eroare sc ăzută (<10%), timp de recunoa ștere scăzut,
robustețe la zgomot ambiental și distorsiuni convolutive, asigur ă o bună aplicabilitate
practică. Totodată SRVC-LR constituie un instrument de cercetare în domeniul recunoa șterii
vorbirii în limba român ă. Sistemul realizat se caracterizeaz ă printr-o mare flexibilitate, în
sensul că arhitectura sistemului și parametrii de modelare pot fi modifica ți cu ușurință prin
intermediul interfe ței specifice realizate în MATLAB, astfel:
– dependen ța/independen ța de vorbitor
– tipul de parametrizare a semnalului vocal (LPC, MFCC, PLP, etc.), num ărul de
parametrii, etc.
– topologia modelelor Markov ascunse
– pragul de selec ție în construirea arborilor de decizie fonetici
– lărgimea fascicolului de c ăutare și penalizarea erorilor de inser ție în procesul de
decodare
– numărul de mixturi gaussiene
– numărul de reestim ări ale parametrilor modelelor
– tipul de testare a sistemului (în timp real sau cu fraze înregistrate)
O atenție deosebit ă a fost acordat ă determin ării performan țelor sistemului de
recunoaștere în diferitele variante ale sale. În acest scop, am efectuat un volum mare de
experimente pentru a determina performan țele sistemului (rata de recunoa ștere, timpul de
calcul, complexitatea) în func ție de lărgimea fasciculului de c ăutare, de num ărul de mixturi
gaussiene, de num ărul de reestim ări, de raportul semnal pe zgomot, de penalizarea erorilor de
inserție, etc.
60În realizarea obiectivului propus, consider c ă am adus o serie de contribuții
personale , cele mai importante fiind urm ătoarele:
• Realizarea unui instrument pentru cons truirea si testarea sistemului de
recunoaștere a vorbirii continue în limba român ă (SRVC-LR). Sistemul a fost
implementat în MATLAB și utilizeaz ă binecunoscutul pachet de programe HTK. Acesta
permite construirea unui num ăr mare de variante ale sistemului de recunoa ștere precum și
testarea acestora, a șa cum a fost prezentat în detaliu în Capitolul 6. SRVC-LR reprezint ă un
instrument destinat antren ării și testării sistemului de recunoa ștere a vorbirii în limba român ă,
bazat pe modele Markov ascunse la nivel de fonem cu distribu ție gaussian ă și stări legate cu
ajutorul arborilor fonetici de decizie. Sistemul permite construirea într-o manier ă incremental ă
a unui sistem de recunoa ștere fără a fi nevoie de cunoa șterea detaliilor de implementare
specifice HTK sau MATLAB. Ini țial se construie ște un sistem de recunoa ștere bazat pe
modele independente de context (monofoni) plecând de la o baz ă de date care con ține semnal
vocal pentru unul sau mai mul ți vorbitori. Sistemul poate fi apoi testat pe o alt ă bază de date
în conformitate cu o aplica ție de recunoa ștere așa cum a fost descris în Capitolul 6. Atât
lărgimea fasciculului de c ăutare, cât și penalizarea erorilor de inser ție pot fi ajustate la
momentul test ării. Performan țele sistemului de recunoa ștere obținut sunt monitorizate pentru
a putea fi optimizate în func ție de reglarea diferi ților parametrii atât în faza de testare cât și în
faza de antrenare. Pornind de la monofoni, se pot genera și antrena modele dependente de
context (trifoni) prin aplicarea întreb ărilor fonetice contextuale specifice limbii române.
Pentru construc ția arborilor fonetici, pragul de decizie P aplicat la scindarea nodurilor poate
fi ajustat de c ătre utilizator. SRVC-LR permite de asemenea rafinarea sistemului prin
creșterea num ărului de mixturi gaussiene și reestimarea parametrilor sistemului atât la nivel
de monofoni cât și la nivel de trifoni.
• Modelarea dependen ței de context în limba român ă. Pentru sisteme de
recunoaștere de vocabular mediu și mare, la nivelul model ării acustice, unitatea optim ă este
fonemul. Îns ă, această unitate este puternic afectat ă de efectul de coarticula ție, astfel c ă deși
puține, modelele independente de context nu au consisten ță în realiz ările acustice asociate.
Așa cum a fost descris pe larg în Capitolul 3 modelarea dependen ței de context poate fi f ăcută
la nivel de fonem cu riscul cre șterii cu dou ă ordine de m ărime a num ărului de modele
acustice. Acestea sunt mult mai consistente dar majoritatea au prea pu ține apariții sau nu apar
deloc în bazele de date de antrenare, acest fapt conducând la o antrenabilitate sc ăzută și la
imposibilitatea recunoa șterii modelelor care nu apar în datele de antrenare (cazul trifonilor
nevăzuți). Legarea st ărilor modelelor pe baza similarit ății observa țiilor acustice prin metoda
arborilor fonetici de decizie cre ște semnificativ antrenabilitatea modelelor dependente de
context (trifoni) oferind o solu ție practic ă și eficientă în recunoa șterea trifonilor nev ăzuți.
Abordarea descendent ă (Top-down approach ) prezentat ă în Capitolul 3, a fost utilizat ă în
cadrul sistemelor de recunoa ștere construite (Capitolul 6) prin aplicarea întreb ărilor fonetice
specifice limbii române (Anexa C). Rezultatele experimentale au demonstrat o sc ădere
important ă a ratei de eroare la nivel de cuvânt prin modelarea dependen ței de context. Astfel,
pentru sistemul independent de vorbitor bazat pe datele din HUB1, rata de eroare a fost redus ă
de la 36% pentru modele independente de context, la valoarea de 14% pentru modele
dependente de context. Rafinarea sistemului prin cre șterea num ărului de mixturi gaussiene a
condus la sc ăderea ratei de eroare sub valoarea de 8%. Sistemul rezultat antrenat pe datele din
HUB1 a ob ținut rezultate foarte bune și la teste încruci șate. Astfel a fost testat pe frazele de
test din HUB2 unde rata de eroare a fost de aproximativ 9%.
• Reducerea resurselor de calcul necesare în faza de recunoa ștere. În
practică, timpul de recunoa ștere și memoria necesare sunt indicatori de performan ță la fel de
importanți ca și rata de recunoa ștere. Principalii algoritmi de c ăutare utiliza ți în procesul de
61recunoaștere au fost analiza ți în Capitolul 4, În faza de decodare a frazei de recunoscut,
tehnica de c ăutare folosit ă poate reduce resursele de calcul considerabil cu o degradare
minimă a ratei de recunoa ștere. La nivel experimental a fost utilizat ă căutarea fascicular ă
Viterbi sincron ă în timp, aceasta fiind una dintre cele mai eficiente metode de recunoa ștere
actuale. M ăsurarea experimental ă a timpului de recunoa ștere în func ție de lărgimea
fasciculului de c ăutare a condus la g ăsirea valorilor optime pentru acest parametru important
al recunoa șterii. De exemplu, pentru vocabularul de 3000 de cuvinte prezentat în interfa ța
vocală cu utilizatorul (Capitolul 6), timpul de calcul pentru o fraz ă de 2 secunde, f ără căutare
fascicular ă, depășește 3 minute pentru un sistem PIV@1,6GHz, în timp ce aceea și frază este
decodată în numai 2 secunde de c ătre același sistem de recunoa ștere cu un fascicul de c ăutare
de valoare 300.
• Creșterea robuste ții sistemelor de recunoa ștere a vorbirii . În practic ă,
condițiile acustice de lucru difer ă în general de condi țiile acustice în care au fost înregistrate
frazele de antrenare. Pentru ambele corpusuri HUB1 și HUB2, frazele rostite de vorbitori au
fost înregistra te în condi ții acustice speciale (absen ță reverbera ții, zgomot redus, aparatur ă de
înaltă fidelitate, etc.). Totu și este foarte probabil ca aceste condi ții să nu poată fi reproduse în
orice încăpere în care va fi testat sistemul de recunoa ștere. În consecin ță au fost analizate
tehnicile de compensare a distorsiunilor suferite de semnalul vocal în faza de testare. În Capitolul 5 au fost prezentate o serie de metode bazate atât pe îmbun ătățirea calit ății
semnalului vocal cât și pe modelarea acustic ă adecvată a zgomotului. Au fost testate la nivel
experimental pe sistemele de recunoa ștere construite pentru limba român ă două metode:
normalizarea prin medie cepstral ă (NMC) și antrenarea multipl ă (Capitolul 6). Antrenarea
multiplă poate fi util ă în special în cazul în care zgomotul are o distribu ție cunoscut ă și un
nivel într-o gam ă cunoscut ă. Normalizarea prin medie cepstral ă este eficient ă în perturba țiile
de tip convolutiv și are deci atât un efect de normalizare fa ță de microfonul utilizat cât și față
de vorbitori. Aproape toate sistemele propuse au beneficiat de aceast
ă tehnică simplă și
eficientă.
• Realizarea interfe ței vocale cu utilizatorul. Sistemul de recunoa ștere
antrenat poate fi testat și în timp real . Interfața vocală cu utilizatorul prezentat ă în Capitolul 6
reprezintă un program demonstrativ implementat în MATLAB și care face uz de structurile de
date asigurate de SRVC-LR și instrumentele de decodare HTK. Interfa ța permite reglarea
parametrilor detectorului de activitate vocal ă, selectarea unuia din cele trei dic ționare (10
cuvinte, 42 cuvinte și 3000 de cuvinte), selectarea tipului de vorbire (izolat / continuu),
reglarea parametrilor de decodare (l ărgimea fasciculului și penalizarea erorilor de inser ție),
vizualizarea textului recunoscut, a formei semnalului achizi ționat și a timpilor de procesare.
• Realizarea detectorului de activitate vocal ă. Realizarea interfe ței vocale care
permite recunoa șterea vorbirii în timp real a fost posibil ă prin implementarea unui algoritm pe
două niveluri de detec ție automat ă a vorbirii (Sec țiunea 2.1.2). Acesta a fost implementat în
întregime în MATLAB și permite adaptarea sistemului la condi ții ambientale noi precum și
reglajul sensibilit ății.
62BIBLIOGRAFIE
[Bah83] Bahl, L.R., F. Jelinek, and R. Mercer, A Maximum Likelihood Approach to Continuous
Speech Recognition , IEEE Trans. on Pattern Analysis and Machine Intelligence, pp. 179-
190, 1983.
[Bau72] Baum, L.E., An Inequality and Associated Maximisation Technique in Statistical
Estimation for Probabilist Functions of Markov Processes, Inequalities 3, pp. 1-8, 1972.
[Bur83] C. Burileanu, V. Teodorescu, G. Stolojanu, C. Radu, Sistem cu logic ă programat ă pentru
recunoașterea cuvintelor izolate , independent de vorbitor, Inteligen ța artificial ă și
robotica, Editura Academiei Române, Bucure ști, vol. 1, pp.266-274, 1983.
[Bur98] D. Burileanu, M. Sima, C. Burileanu, V. Croitoru, A Neuronal Network-Based Speaker-
Independent System for Word Recognition in Romanian Language , Text, Speech,
Dialogue – Proc. of the First Workshop on Text, Speech, Dialogue, pp.177-182, 1998.
[Bur03] Dragos Burileanu, Mihai Sima, Cristian Negrescu, and Victor Croitoru, Robust
Recognition of Small-Vocabulary Telephone-Quality Speech , Proceedings of the Second
Conference on Speech Technology and Human-Computer Dialogue (SpeD 2003),
Bucharest, Romania, April 2003.
[Dav80] Davis, S.B., Mermelstein, P., Comparison of Parametric Representations for
Monosyllabic Word Recognition in Continuously Spoken Sentences , IEEE Trans. on
ASSP, vol. 28, pp. 357-366, 1980.
[Del00] Deller, J.R., J.H.L. Hansen, and J.G. Proakis, Discrete-Time Processing of Speech
Signals , IEEE Press, 2000.
[Dud99] Duda, R.O., D.G. Stork, and P.E. Hart, Pattern Classification and Scene Analysis:
Pattern Classification , John Wiley & Sons, 1999.
[Dum04] Dumitru, O., Munteanu, D., Mihai, C., Embedded Baum-Welch Procedure Used for
Training HMMs with Unlabeled Training Data , IEEE® Conference
„Communications 2004” , pp. 215-220, 2004.
[Gav96a] I. Gav ăt, M. Zirra, Fuzzy models in Vowel Recognition for Romanian Language , Proc.
Fuzzy-IEEE'96, NewOrleans, pp. 1318-1326,1996.
[Gav96b] I. Gav ăt, M. Zirra, A Hybrid NN-HMM System for Connected Digit Recognition over
Telephone in Romanian Language , Proceedings of the Third IEEE Workshop on
Interactive Voice Technology for Telecommunications Applications IVTTA’96, pp. 37-
40, Basking Ridge, New Jersey, USA, 1996.
[Gav00] Gav ăt, I., et all , Elemente de Sinteza și Recunoa șterea Vorbirii , Ed. Printech, Bucure ști,
2000.
[Gau95] Gauvain, J.L., L. Lamel, and M. Adda-Decker, Developments in Continuous Speech
Dictation using the ARPA WSJ Task , Proc. of the IEEE Int. Conf. on Acoustics, Speech
and Signal Processing, pp. 65-68, 1995.
[Giu96a] Giurgiu,M., Rezultate privind Recunoa șterea Automata a Cuvintelor Pronun țate Izolat in
Limba Român ă, Proc. of. Awarness Day on Language Technology, Romanian Academy,
pag.76, 1996.
[Giu96b] Giurgiu M., Toderean G, Results on Speech Recognition using Artificial Neuronal
Networks and Constrained Clustering Segmentation , International Conference on
Intelligent Technologies in Human Related Sciences, ITHURS’96, Leon, Spain, 1996.
[Her94] Hermansky, H. and N. Morgan, RASTA Processing of Speech , IEEE Trans. on Speech and
Audio Processing, 2(4), pp. 578 – 589, 1994.
[Hon00] Hon, H.-W., Wang, K., Unified Frame and Segment Based Models for Automatic Speech
Recognition , IEEE Int. Conf. on Acoustic, Signal and Speech Processi ng, pp. 1017-1020,
2000.
63[Hua01] Huang, X.D., Acero, A., Hon, H.-W., Spoken Language Processing. A guide to Theory,
Algorithm and System Development , Prentice Hall, pp. 477-544, 2001.
[Hua93] Huang, X., Lee, K.F., On speaker-independent, speaker-dependent, and speaker-adaptive
speech recognition , Speech and Audio Proc essing, IEEE Transactions on ,Vol. 1(2) pp.
150 – 157, 1993.
[Hua96] Huang, X., et al., From Sphinx-II to Whisper – Make Speech Recognition Usable , in
Automatic Speech and Speaker Recognition, Kluwer Academic Publishers, 1996.
[Ion97] Mihaela Ioni ță, C. Burileanu, M. Ioni ță, DTW Algorithm with Associated Matrix for a
Passworded Access System , Emerging techniques for communication terminals
(ENSEEIHT), pp.265 -270, 1997.
[Jel80] Jelinek, F., Mercer, R., Interpolated estimation of markov sourceparameters from sparse
data, Pattern Recognition in Practice, E. S. Gels ema and L. N. Kanal, Eds., pp. 381-402,
1980.
[Jua98] Juang, B.H., Tsuhan, C., The Past, Present, and Future of Speech Processing , Signal
Processing Magazine, IEEE, Volume : 15, Issue: 3, pp. 24-48, 1998.
[Lip87] Lippmann, R.P., E.A. Martin, and D.P. Paul, Multi-Style Training for Robust Isolated-
Word Speech Recognition , Int. Conf. on Acoustics, Speech and Signal Processing, pp.
709-712, 1987.
[Mar13] Markov, A., An Example of Statistical Investigation in the Text of “Eugene Onyegin”,
Illustrating Coupling of Tests in Chains , Proc. of Academy of Sciences of St. Petersburg,
pp. 153-162, 1913.
[Mun03a] Munteanu D., Oancea, E., Continuous Speech Recognizer Using Token Passing
Algorithm , The 30th Session of International Conference, “Modern Technologies in
the 21st Century”, Bucharest, 2003.
[Mun03b] Munteanu, D., Search Algorithms Used for Speech Recognition, Research Report,
2003.
[Mun04a] Munteanu, D., Dumitru, O., Romanian Language Continuous Speech Recognition by
Context-Dependency Modeling , International Conference DOGS 2004, Sombor,
Serbia and Montenegro, pp. 9 – 12, Sep. 2004.
[Mun04b] Munteanu, D., Using Viterbi Beam Search in Continuous Speech Recognition ,
Military Technical Academy Magazine, No. 1, pp. 77-85, 2004.
[Mun04c] Munteanu, D., Oancea, E., Romanian Language Robust Continuous Speech
Recognition , Symposium of Electronics and Telecommunications ETc 2004,
Timișoara, 2004.
[Mun04d] Munteanu, D., Recognition process stability to external factors , Research Report,
2004.
[Mun05a] Munteanu, D., Speech User Interface for Romanian Language , ECAI 2005 –
Electronics, Computers and Ar tificial Intelligence, Pite ști, 2005.
[Mun05b] Munteanu, D., Voice Activity Detector Used for Automatic Speech Recognition , The
36th Int. Symp. of Military Equipment and Technologies Research Agency,
Bucharest, 2005.
[Mun05c] Munteanu, D., Increasing Speech Recognition Systems Robustness , Military
Technical Academy Magazine, 2005.
[Mun05d] Munteanu, D., Speech Recognition Methods Comparative Analysis , Research Report,
2005.
[Ney99] Ney, H. and S. Ortmanns, Dynamic Programming Search for Continuous Speech
Recognition , IEEE Signal Processing Magazine, 1999, pp. 64-83.
[Nil82] Nilsson, N.J., Principles of Artificial Intelligence , 1982, Berlin, GE, Springer Verlag.
[Nua01] The Nuance-powered Adacel MaxSim simulator training system , URL –
http://www.adacel.com/prodserv/maxsim.htm
64[Oan76] E. Oancea, Analiza și Sinteza vorbirii , Ed. Militara, 1976.
[Oan04a] Oancea E., Gav ăt, I., Dumitru, O., Munteanu, D., Improving the Accuracy of the
Continuous Speech Recognizers by the Use of Context Dependent Models , IEEE®
Conference „Communications 2004”, Bucharest, pp. 221-224, 2004.
[Oan04b] Oancea, E., Munteanu, D., Some Particularities of Speech Recognizers Building
Process , Proc. of ECIT 2004 – Third European Conference on Intelligent Systems
and Technologies, Ia și, 2004.
[Oan05] Oancea, E., Burileanu, C., Munteanu, D., Continuous Speech Recognition System
Improvement , The 3rd Conference on Speech Technology and Human – Computer
Dialog SpeD 2005, Cluj, pp. 81-91, 2005.
[Ode95] Odell JJ, The Use of Decision Trees with Context Sensitive Phoneme Modelling , Ph.D.
Thesis, Cambridge University Engineering Department, 1995.
[Ost96] Ostendorf, M., Digalakis, V.V., Kimball, O.A., From HMM's to Segment Models: a
Unified View of Stochastic Modeling for Speech Recognition , IEEE Trans. on Speech and
Audio Processing, 4(5), pp. 360-378, 1996.
[Phr04] PHRASELATOR , http://www.phraselator.com/.
[Rab93] Rabiner L., B.H. Juang, Fundamentals of Speech Recognition , Prentice Hall, 1993.
[SAM96] SAMPA – The machine-readable phonetic alphabet by SAMPA (Speech Assessment
Methods Phonetic Alphabet) at
http://www.phon.ucl.ac.uk/home/sampa/romanian.htm.
[Sch02] Schmidt, M., Andrea Superbeam ® Array Microphone Speech Recognition Performance
Using Microsoft Office XP , Andrea Audio Test Labs White Paper, 2002.
[Sim98] M. Sima, D. Burileanu, V. Croitoru, C. Burileanu, The Application of Neuronal Network
Paradigms in Speech Recognition for a Romanian Voice Dialing System , Proc. of
International Conference “Communications’98”, pp.233-238, 1998.
[Sim02] Sima, M., Contribuții privind utilizarea re țelelor neuronale în procesarea semnalelor în
comunica ții. Recunoa șterea independent ă de vorbitor a cuvintelor rostite izolat în limba
română, Teză de doctorat, Universitatea Politehnica Bucure ști, 2002.
[Sto84] Stolojan, G. , Podaru, V., Cetin ă, F., Prelucrarea numeric ă a semnalului vocal , Ed.
Militară, București, 1984.
[Șer04] Șerbănescu, A., Munteanu, D., Popescu F., Iana, G., Ivan, C., Prelucrarea numeric ă
a semnalelor , University of Pite ști Publ. House, 2004.
[Șut93] Șuteu, F., Șoșa, E., Dicționar ortografic al limbii române , Ed. ATOS & VESTALA,
1993.
[Teb95] Tebelskis, J., Speech Recognition Using Neuronal Networks , Ph.D. Thesis, Carnegie
Mellon University, 1995.
[Tod91] G. Toderean, M. Giurgiu, Problems of Analysis and Synthesis of Speech Signals ,
Scientific Bulletin of the Polytechnic Institute of Cluj-Napoca, Cluj-Napoca, vol. 33, pp.
45-50, 1991.
[Woo92] Woodland, P. C., Young, S. J., Benchmark DARPA RM Results with the HTK Portable
HMM Toolkit , Proceedings DARPA Continuous Speech Recognition Workshop, pp. 71-
76, 1992.
[You92] Young SJ, The General Use of Tying in Phoneme-Based HMMSpeech Recognizers , Proc
ICASSP, Vol 1, pp569-572, 1992.
[You94a] Young SJ, The HTK Hidden Markov Model Toolkit: Design and Philosophy , TR 152,
Cambridge University Engineering Dept, Speech Group, 1994.
[You02] Young, S.J., et all, The HTK Book, Revised for HTK ver. 3.2.1., Cambridge University
Engineering Dept. (CUED), 2002.
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Academia Tehnic ă Militară [609127] (ID: 609127)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
