Rezumat teza - Facultatea de Electronica, Telecomunicatii si ...
Rezumat teza - Facultatea de Electronica, Telecomunicatii si ...
Rezumat teza - Facultatea de Electronica, Telecomunicatii si ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
# $ % # $& ' % ( )* * + ( ) $ %*,& #- $ . /<br />
%) ' ( / 0 % 0<br />
* 1 " # 20<br />
( 3 4<br />
,) / 0 % 0 * 1 "<br />
# 20( 3 4<br />
0 % * 1 " %<br />
, 4<br />
0 % ! 0 * 1 " 5% 6<br />
!"<br />
0 % "#$ % * 1 " # 20<br />
( 3 4<br />
# 20( 3 7889
) ! !<br />
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'<br />
'& ( &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&)<br />
: : $ *& $# *$& ;( ( *& ) #*( $' ) < ), ) =<br />
: 7 , # < & . ><br />
: = )?$( .$) $ . ><br />
*& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&+<br />
7 : #$)$# ) # ;( ( *& % ><br />
7 7 #$)$# ) # ;( ( *& ) #< (+- @<br />
7 = # # (+ &# % )$& @<br />
!<br />
"<br />
#<br />
$ %<br />
% $ # %<br />
& $ ' %<br />
( ) * # &<br />
7 > # # (+ # % )$& %) #+ & ( $)- A<br />
+ (<br />
) , $ (<br />
7 @ # (#&*. :8<br />
)& , &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'-<br />
= : & $) < $ #*( :8<br />
# # - .<br />
/ ' 0 # # ) .<br />
) # # ) .<br />
# # - .<br />
+& ( , &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'.<br />
> : ) + & ( *) ($& $) # $& :B<br />
%<br />
> 7 % )# % ) (*& *& )$ :B<br />
) &<br />
> = ) + & ( *) ($& #* ;( C). ) ;( % :9<br />
> > ) + & ( *) ($& ) #*) ( 78<br />
> @ ) .*& $ D% ) ( $& ,+ (* % ( )* #&$ #$) $ ( & ) 7:<br />
/ . . 1 )!2! .<br />
/ . . "2# 2"<br />
> E # (#&*. 7A<br />
/& ( , &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&*0<br />
@ : %*) & & (?< # 79<br />
@ 7 & & (?< # $ # F(0?)$ G 79<br />
:
$ / H " !"<br />
7<br />
# 3<br />
# . 3<br />
# 3<br />
@ = ( . ) $ %) ,$, & -+ & ) % ( )* & & (?< # =8<br />
# * - 4 3<br />
5 6 "<br />
7 6 8<br />
@ > )<br />
2<br />
*# ) $<br />
/<br />
/<br />
& & ) & (?< # ==<br />
/ . .<br />
/ .<br />
/ .<br />
/ . *<br />
% / . .<br />
& # 6 .<br />
@ @ & & (?<<br />
#<br />
# $ $% < ==<br />
# . 4<br />
@ E <br />
/<br />
*<br />
2<br />
@ B *( & I $) D ( % ( )* &$) $ & (?< #- =@<br />
% $# 9 !,# 6 $ # ! , # " -<br />
% !/2,# 6 "4 !/2, # " -<br />
% :,# "<br />
@ A #$) $ & & ) & (?< # ;( ) $ *&$)%$0 =@<br />
@ 9 %) %) # $) $ # )%* *) & ) ' $%& #$+ $ % ( )* &$) $ & (?< #- =E<br />
@ :8 ) .*& $ D% ) ( $& ,+ (* % ( )* &$) $ & (?< #- =B<br />
3 / . ; !4 - : %<br />
3 / . ! &<br />
3 / . ; $ / ; (<br />
@ :: # (#&*. >8<br />
1& 2 3 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&+-<br />
3 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&+*
) ! !<br />
Tema tezei <strong>de</strong> doctorat, Contribu ii la recunoa terea vorbirii continue i la procesarea limbajului<br />
natural se încadreaz în domeniul prelucr rii i recunoa terii semnalului vocal. Datorit complexit ii ei,<br />
tema este conex i cu alte domenii precum prelucrarea limbajului natural, recunoa terea formelor, re ele<br />
neuronale artificiale, teoria informa iei, calculul probabilistic, mo<strong>de</strong>larea statistic i matematic .<br />
Recunoa terea vorbirii continue pune unele probleme suplimentare dat fiind faptul c prin termenul<br />
continuu se în elege i c vorbirea este natural . Astfel vorbitorului nu i se pun constrângeri i cuvintele<br />
<strong>de</strong>vin legate între ele i foarte greu separabile. Prin alte cuvinte, nu se poate preciza un<strong>de</strong> se termin un<br />
cuvânt i un<strong>de</strong> începe cel lalt, <strong>de</strong>oarece între ele nu exist <strong>de</strong> cele mai multe ori pauze, ele fiind<br />
coarticulate. Mo<strong>de</strong>larea acestui tip <strong>de</strong> vorbire <strong>de</strong>vine i mai dificil atunci când vorbim <strong>de</strong> un dic ionar<br />
mare <strong>de</strong> cuvinte ce trebuie recunoscute sau când dorim s cre m un <strong>si</strong>stem in<strong>de</strong>pen<strong>de</strong>nt <strong>de</strong> vorbitor. Când<br />
vorbim <strong>de</strong> vocabular mare, ne gândim la un dic ionar <strong>de</strong> peste 10.000 <strong>de</strong> cuvinte.<br />
Conform stadiului actual al cunoa terii în domeniu, exist dou abord ri diferite pentru rezolvarea<br />
recunoa terii vorbirii.<br />
Prima metod este recunoa terea statistic a vorbirii prin care se dore te mo<strong>de</strong>larea unit ilor<br />
lingvistice (foneme, <strong>si</strong>labe, cuvinte) utilizând mo<strong>de</strong>lele Markov ascunse [64, 93, 94, 95, 111]. Aceast<br />
metod este cea mai popular i mai larg r spândit .<br />
Cealalt direc ie dore te s utilizeze cuno tin ele din domeniul re elelor neuronale artificiale i se<br />
nume te abordarea conexionist [18, 22, 84, 112, 115].<br />
Exist totodat i o a treia abordare care dore te s rezolve problema recunoa terii folo<strong>si</strong>nd ambele<br />
tehnici, numit metoda hibrid <strong>de</strong> recunoa tere a vorbirii [18]. În aceast a treia categorie se înscrie i<br />
tema prezentei teze <strong>de</strong> doctorat, <strong>de</strong>oarece trateaz ambele abord ri: re elele neuronale pentru mo<strong>de</strong>larea<br />
acustic i mo<strong>de</strong>lele Markov pentru mo<strong>de</strong>larea lingvistic .<br />
Un <strong>si</strong>stem statistic <strong>de</strong> recunoa tere a vorbirii poate fi <strong>de</strong>scris matematic dup cum urmeaz [13, 18,<br />
60, 64, 65]: având la dispozi ie un set <strong>de</strong> vectori acustici { 1, 2 ,..., n}<br />
a a a A = dup stagiul <strong>de</strong> extragere a<br />
caracteristicilor semnalului vocal, c ut m cea mai probabil secven <strong>de</strong> unit i lingvistice<br />
{ , ,..., } w w w W = .<br />
* 1 2 m<br />
W*<br />
= argmax{<br />
P(<br />
W | A)}<br />
Ecua ia 1.1 poate fi transcris conform reguli lui Bayes dup cum urmeaz :<br />
W*<br />
= arg max{<br />
P(<br />
A | W ) ⋅ P(<br />
W )}<br />
w<br />
w<br />
Ec. 1.1<br />
Ec. 1.2<br />
În ecua ia 1.2 probabilitatea condi ionat P(A|W) reprezint mo<strong>de</strong>lul acustic al <strong>si</strong>stemului, iar<br />
probabilitatea P(W) reprezint mo<strong>de</strong>lul lingvistic al <strong>si</strong>stemului.<br />
Re elele neuronale sunt utilizate în ultimii ani cu succes pentru recunoa terea formelor. Majoritatea<br />
re elelor neuronale folo<strong>si</strong>te pentru recunoa terea formelor pot cla<strong>si</strong>fica <strong>si</strong>mbolurile <strong>de</strong> la intrare<br />
separându-le prin suprafe e <strong>de</strong> <strong>de</strong>cizie neliniare complexe. Singura lor <strong>de</strong>ficien este nece<strong>si</strong>tatea unui set<br />
<strong>de</strong> antrenare <strong>de</strong> dimen<strong>si</strong>uni mari, format din perechi intrare – ie ire. Exist i re ele cu autoorganizare care<br />
pot fi antrenate nesupervizat. O astfel <strong>de</strong> problem este i cla<strong>si</strong>ficarea fonemelor pe baza caracteristicilor<br />
extrase din semnalul vocal. Cele mai populare abord ri sunt cele care utilizeaz coeficien i Mel cepstrali -<br />
MFCC (Mel Frequency Cepstral Coefficients) sau coeficien i perceptuali <strong>de</strong> predic ie liniar - PLPC<br />
(Perceptual Linear Prediction Coefficients) [60, 73, 111].<br />
Mo<strong>de</strong>lul lingvistic este un element important al oric rui <strong>si</strong>stem <strong>de</strong> recunoa tere a vorbirii continue. El<br />
îmbun t e te semnificativ performan ele <strong>si</strong>stemului restric ionând unele combina ii <strong>de</strong> unit i lingvistice<br />
care nu sunt po<strong>si</strong>bile sau oricum nu ar avea sens. Restric ionarea introdus înseamn o reducere a<br />
spa iului <strong>de</strong> c utare a solu iilor. Mo<strong>de</strong>lele lingvistice înglobeaz informa ii a priori însu ite în prealabil pe<br />
baza unor colec ii mari <strong>de</strong> texte <strong>de</strong> antrenare numite corpusuri. Cel mai <strong>de</strong>s utilizat mo<strong>de</strong>l lingvistic este<br />
cel statistic atât pentru <strong>si</strong>mplitatea implement rii cât i pentru rezultatele bune ob inute [10, 38, 64, 65,<br />
102, 53]. Acest tip <strong>de</strong> mo<strong>de</strong>le lingvistice se bazeaz pe mo<strong>de</strong>lele Markov ascunse i datorit acestui fapt<br />
pot fi integrate cu u urin în <strong>si</strong>stemele statistice <strong>de</strong> recunoa tere a vorbirii.<br />
Exist diferite unelte disponibile în scopuri <strong>de</strong> cercetare care rezolv anumite probleme dintr-un<br />
<strong>si</strong>stem automat <strong>de</strong> recunoa tere a vorbirii, cum ar fi: HTK Toolkit [117], CMU-SLM Toolkit [109], SRI-<br />
LM [107], LVCSR engine Julius [67] sau motoarele <strong>de</strong> recunoa tere a vorbirii continue <strong>de</strong>zvoltate <strong>de</strong><br />
CMU Sphinx Group [108]. Putem aminti i dou unelte Matlab: VoiceBox Toolbox [113] i HMM<br />
=
$ / H " !"<br />
Toolbox [58], primul con ine diferite func ii pentru preprocesarea i extragerea caracteristicilor<br />
semnalului vocal iar cel <strong>de</strong> al doilea implementeaz mo<strong>de</strong>lele Markov ascunse i con ine func ii pentru<br />
antrenarea i evaluarea acestora.<br />
Obiectivul principal al tezei este s aduc contribu ii în domeniul recunoa terii vorbirii continue i a<br />
prelucr rii limbajului natural. Contribu iile se înscriu în trei direc ii <strong>de</strong> cercetare principale:<br />
• prelucrarea semnalului vocal având ca obiectiv extragerea caracteristicilor Mel cepstrali i a<br />
parametrilor <strong>de</strong>lta i accelera ie din vorbirea continu ;<br />
• mo<strong>de</strong>larea acustic prin cla<strong>si</strong>ficarea fonemelor din vorbirea continu utilizând diferite tipuri <strong>de</strong><br />
re ele neuronale artificiale;<br />
• preprocesarea corpusurilor <strong>de</strong> texte i mo<strong>de</strong>larea lingvistic atât pentru limba englez cât i<br />
pentru limba român .<br />
Teza este organizat pe 6 capitole divizate la rândul lor în subcapitole: Introducere, Caracteristicile<br />
semnalului vocal, Recunoa terea statistic a vorbirii, Mo<strong>de</strong>larea acustic , Mo<strong>de</strong>larea lingvistic i<br />
Concluzii finale. În afar <strong>de</strong> cele ase capitole <strong>teza</strong> cuprin<strong>de</strong> i un rezumat, liste <strong>de</strong> tabele i figuri,<br />
bibliografie i anexe. Fiecare capitol se încheie cu rezultatele experimentale ob inute i concluziile<br />
aferente.<br />
Primul capitol reprezint o introducere în domeniul recunoa terii vorbirii. Acest capitol realizeaz<br />
plasarea tezei în domeniu precum i trecerea în revist a stadiul actual al cercet rilor în domeniu. Tot aici<br />
sunt prezentate obiectivele tezei precum i organizarea tezei pe capitole.<br />
Cel <strong>de</strong> al doilea capitol prezint caracteristicile din domeniul timp i frecven a semnalului vocal i<br />
<strong>de</strong>scrie modul <strong>de</strong> calcul a caracteristicilor Mel cepstrali i a caracteristicilor perceptuali <strong>de</strong> predic ie<br />
liniar .<br />
Capitolul trei prezint mo<strong>de</strong>lele Markov ascunse care stau la baza <strong>si</strong>stemelor <strong>de</strong> recunoa tere statistice<br />
a vorbirii. Sunt <strong>de</strong>scrise cele trei probleme fundamentale care trebuie rezolvate în cazul mo<strong>de</strong>lelor<br />
Markov: antrenarea, evaluarea i <strong>de</strong>codarea precum i algoritmii consacra i cum ar fi algoritmul <strong>de</strong><br />
înaintare i <strong>de</strong> revenire, algoritmul Viterbi i algoritmul <strong>de</strong> <strong>de</strong>codare cu stiv A * .<br />
Capitolul patru cuprin<strong>de</strong> prezentarea structurilor <strong>de</strong> re ele neuronale artificiale utilizate pentru<br />
cla<strong>si</strong>ficarea fonemelor în ve<strong>de</strong>rea mo<strong>de</strong>l rii acustice, începând cu re elele <strong>de</strong> tip perceptron multistrat,<br />
re ele cu întârzieri temporale pân la re elele recurente.<br />
Capitolul cinci este <strong>de</strong>dicat mo<strong>de</strong>l rii lingvistice. Sunt <strong>de</strong>scrise tipurile <strong>de</strong> mo<strong>de</strong>le lingvistice i sunt<br />
prezentate <strong>de</strong>taliat mo<strong>de</strong>lele lingvistice statistice (n-gram): unigram, bigram i trigram. Tot în acest<br />
capitol sunt tratate meto<strong>de</strong>le <strong>de</strong> netezire a probabilit ilor precum i meto<strong>de</strong>le <strong>de</strong> reducere a mo<strong>de</strong>lelor<br />
lingvistice. Acest capitol trateaz i meto<strong>de</strong>le <strong>de</strong> evaluare a mo<strong>de</strong>lelor lingvistice prin introducerea<br />
no iunii <strong>de</strong> perplexitate.<br />
În încheierea tezei sunt prezentate concluziile finale i contribu iile proprii dup care urmeaz<br />
enumerarea reperelor bibliografice utilizate în cursul redact rii tezei. Anexele cuprind codurile <strong>de</strong><br />
transcriere fonetic SAMPA i codurile <strong>de</strong> transcriere fonetic ARPABET precum i lucr ri în extenso,<br />
din domeniul tezei <strong>de</strong> doctorat, publicate în reviste <strong>de</strong> interes na ional in<strong>de</strong>xate CNCSIS i în baze <strong>de</strong> date<br />
interna ionale.<br />
Num rul <strong>de</strong> treceri prin zero este un parametru <strong>si</strong>mplu <strong>de</strong> calculat i <strong>de</strong>osebit <strong>de</strong> important al<br />
semnalului vocal. De cele mai multe ori se folose te împreun cu energia semnalului vocal pentru <strong>de</strong>tec ia<br />
vorbire-lini te respectiv pentru <strong>de</strong>tec ia sonor - nesonor.<br />
Expre<strong>si</strong>a matematic a num rului <strong>de</strong> treceri prin zero este conform [60, 73]:<br />
N −11<br />
− sgn( xn+<br />
1)<br />
⋅ sgn( xn<br />
)<br />
ZCR =<br />
n=<br />
0 2<br />
Ec. 2.1<br />
>
) ! !<br />
Energia semnalului reflect varia ia în timp a amplitudinii semnalului vocal. Se utilizeaz atât pentru<br />
<strong>de</strong>terminarea secven elor sonore respectiv nesonore, cât i pentru <strong>de</strong>tec ia lini te – vorbire împreun cu<br />
num rul <strong>de</strong> treceri prin zero.<br />
Formula pentru calculul puterii pentru un semnal vocal s(t), este [60, 73]:<br />
∞<br />
2<br />
E = s ( t)<br />
dt<br />
−∞<br />
Ec. 2.2<br />
De cele mai multe ori îns avem <strong>de</strong> a face cu un semnal e antionat, i calcul m valoarea energiei pe<br />
un termen scurt, <strong>de</strong>terminat <strong>de</strong> fereastra <strong>de</strong> analiz :<br />
E<br />
k<br />
=<br />
k<br />
n=<br />
1<br />
2<br />
x ( n)<br />
Ec. 2.3<br />
un<strong>de</strong> x(n) reprezint e antioanele semnalului vocal dup ferestruire:<br />
x( n)<br />
= s(<br />
n)<br />
⋅ w(<br />
n)<br />
Ec. 2.4<br />
# " !<br />
! "<br />
Avansând un pas în complexitatea termenilor, frecven a fundamental este o parte important a<br />
<strong>de</strong>zvolt rii recunoa terii semnalului vocal. Este legat în mod direct <strong>de</strong> abilitatea noastr <strong>de</strong> a diferen ia<br />
frecven e în un<strong>de</strong>le sonore. Abilitatea noastr <strong>de</strong> a diferen ia frecven ele pare s respecte o regul<br />
logaritmic . Exist patru tipuri <strong>de</strong> algoritmi sau meto<strong>de</strong> utilizate pe scar larg în prezent pentru calculul<br />
frecven ei fundamentale.<br />
Unul dintre primele meto<strong>de</strong> ap rute, este <strong>de</strong> a m sura periodicit ile din semnalul vocal, i pe urm<br />
alegerea unei frecven e din cele g <strong>si</strong>te drept frecven fundamental . Acest algoritm poart <strong>de</strong>numirea<br />
Gold - Rabiner dup cei doi cercet tori care l-au implementat pentru prima oar . Pân în momentul <strong>de</strong><br />
fa este un algoritm foarte popular datorit <strong>si</strong>mplit ii în implementare, îns nu d rezultate<br />
satisf c toare.<br />
Un alt tip <strong>de</strong> algoritm este cel <strong>de</strong>zvoltat <strong>de</strong> N.S.A. (National Security Agency). Acest algoritm se<br />
bazeaz pe func ia AMDF (Average Magnitu<strong>de</strong> Difference Function). Aceast func ie are proprietatea, c<br />
prezint minime distan ate exact cu perioada fundamental T0 a semnalului vocal. Expre<strong>si</strong>a matematic cu<br />
care se calculeaz aceast func ie este [73]:<br />
N<br />
AMDF ( m)<br />
= x − x<br />
Ec. 2.5<br />
k = 1<br />
O a treia clas <strong>de</strong> meto<strong>de</strong> se bazeaz pe conceptele program rii dinamice. S-a <strong>de</strong>monstrat, c aceste<br />
meto<strong>de</strong> ofer cele mai bune performan e într-un larg domeniu al mediului în care se face recunoa terea,<br />
inclu<strong>si</strong>v mediile zgomotoase. Aceste meto<strong>de</strong> calculeaz mai multe corela ii i modific ri spectrale ale<br />
semnalului vocal calculând o frecven fundamental optim pentru semnal.<br />
Cea <strong>de</strong> a patra metod este bazat pe analiza cepstral , dat fiind faptul, c cepstrumul unui semnal<br />
vocal reflect periodicitatea acelui semnal. În cepstrum se poate ve<strong>de</strong>a, c maximele sunt distan ate exact<br />
cu valoarea T0, perioada fundamental . În cazul în care nu g <strong>si</strong>m maxime distan ate periodic, por iunea <strong>de</strong><br />
semnal analizat este o por iune <strong>de</strong> semnal vocal nesonor.<br />
! " $<br />
Coeficien ii Mel cepstrali sunt coeficien ii cei mai <strong>de</strong>s utiliza i i care dau cele mai bune rezultate în<br />
<strong>si</strong>stemele automate <strong>de</strong> recunoa tere a vorbirii [60]. Exist o serie <strong>de</strong> abord ri în literatura <strong>de</strong> specialitate<br />
pentru extragerea acestor caracteristici, toate având ca elemente comune mai mul i pa i, conform Fig. 2.1.<br />
k<br />
k + m<br />
@
$ / H " !"<br />
E<br />
%<br />
Fig. 2.1. Extragerea caracteristicilor Mel cepstrali<br />
Preprocesarea a<strong>si</strong>gur amplitudine i<strong>de</strong>ntic în cazul semnalelor <strong>de</strong> frecven e diferite. Pentru realizarea<br />
acestui lucru folo<strong>si</strong>m un filtru FIR (Finite Impulse Response) <strong>de</strong> ordinul I, cu func ia <strong>de</strong> transfer:<br />
−1<br />
H ( z)<br />
= 1−<br />
a ⋅ z cu 0 ≤ a ≤1<br />
Ec. 2.6<br />
Exprimat în domeniul timp, preprocesarea se poate efectua cu formula din Ec. 2.7:<br />
x '( n)<br />
= x(<br />
n)<br />
− a ⋅ x(<br />
n −1)<br />
Ec. 2.7<br />
Constanta <strong>de</strong> preprocesare a ia valori apropiate <strong>de</strong> 1 ( a ∈[<br />
0,<br />
95;<br />
0,<br />
97]<br />
).<br />
Dup preprocesare semnalul vocal este împ r it pe cadre <strong>de</strong> lungime 10 - 30 ms cu o suprapunere <strong>de</strong><br />
15 - 50%. Pe aceste cadre semnalul vocal poate fi con<strong>si</strong><strong>de</strong>rat cva<strong>si</strong>sta ionar. Extragerea caracteristicilor se<br />
realizeaz pentru fiecare cadru în parte.<br />
#<br />
Principalul rol al unei ferestre <strong>de</strong> e antionare este eliminarea efectelor fenomenului Gibbs, care<br />
rezult din trunchierea seriilor infinite. Ferestruirea const în înmul irea unui cadru a semnalului vocal cu<br />
o func ie fereastra. Fereastra cea mai <strong>de</strong>s utilizat este fereastra Hamming. Fereastra Hamming are la baz<br />
func ia [17, 79]:<br />
2πn<br />
n = 0,..., N −1<br />
0,<br />
54 − 0,<br />
46cos<br />
w(<br />
n)<br />
=<br />
N −1<br />
Ec. 2.8<br />
& ' ! #<br />
0<br />
altfel<br />
Pasul urm tor const în efectuarea transformatei Fourier rapi<strong>de</strong> în cazul fiec rei ferestre:<br />
X ( e<br />
t<br />
= − N 1<br />
jω<br />
)<br />
n=<br />
0<br />
x ( n)<br />
⋅ e<br />
t<br />
− jωn<br />
Ec. 2.9<br />
Transformata Fourier este metoda standard <strong>de</strong> analiz spectral . Complexitatea algoritmului sca<strong>de</strong><br />
semnificativ, dac utiliz m transformata Fourier discret . Dac con<strong>si</strong><strong>de</strong>r m valorile ω echidistante, <strong>de</strong> ex.<br />
ω = 2πk<br />
/ N , formula <strong>de</strong> calcul <strong>de</strong>vine:<br />
t<br />
t<br />
j2πk<br />
/ N<br />
X ( k)<br />
= X ( e ) k=0,… ,N-1 Ec. 2.10<br />
p<br />
Dac num rul e antioanelor N se alege ca putere a lui 2 ( N = 2 , un<strong>de</strong> p este un num r natural),<br />
complexitatea algoritmului sca<strong>de</strong> i va fi <strong>de</strong> ordinul Nlog(N) folo<strong>si</strong>nd transformata Fourier Rapid .<br />
( # $<br />
O aproximare bun a procesului <strong>de</strong> analiz din <strong>si</strong>stemul auditiv uman este reprezentat <strong>de</strong> filtrarea pe<br />
scal Mel. Formula <strong>de</strong> calcul pentru trecerea <strong>de</strong> la Hz la Mel este conform [60]:<br />
f<br />
frecventa _ mel = 1125⋅<br />
ln( 1 + )<br />
Ec. 2.11<br />
700<br />
Scala Mel este o scal logaritmic dup valoarea <strong>de</strong> 1 kHz, iar pân în jurul valorii <strong>de</strong> 1 kHz,<br />
tin<strong>de</strong> s fie liniar . Conform [13] filtrarea Mel se realizeaz prin calculul pentru fiecare cadru a<br />
convolu iei dintre semnalul vocal i filtrul Mel corespunz tor. Folo<strong>si</strong>m 24 <strong>de</strong> filtre Mel dintre
) ! !<br />
care primele 10 au l ime egal i sunt uniform distribuite între 0 i 1 kHz, iar celelalte 14 au<br />
l ime ( ∆ m ) variabil , care cre te dup urm toarea rela ie:<br />
∆ m = 1, 2 × ∆ m−1<br />
Ec. 2.12<br />
Pentru calculul frecven elor centrale se folose te rela ia:<br />
b b + ∆<br />
Ec. 2.13<br />
m = m−1<br />
m<br />
Avantajul acestei meto<strong>de</strong> este c nu nece<strong>si</strong>t calcule foarte multe. Filtrele triunghiulare U ∆ (k)<br />
pot fi<br />
m<br />
calculate conform rela iei:<br />
k < ∆ m →1<br />
− k / ∆ m<br />
U ∆ ( k)<br />
=<br />
Ec. 2.14<br />
m<br />
k ≥ ∆ → 0<br />
O formul alternativ pentru calculul filtrelor triunghiulare este prezentat în Ec. 2.15.<br />
H m<br />
[ k]<br />
=<br />
0,<br />
k < f[<br />
m−1]<br />
2(<br />
k − f[<br />
m−1])<br />
, f[<br />
m−1]<br />
≤ k ≤ f[<br />
m]<br />
( f[<br />
m+<br />
1]<br />
− f[<br />
m−1])(<br />
f[<br />
m]<br />
− f[<br />
m−1])<br />
2(<br />
f[<br />
m+<br />
1]<br />
−k)<br />
, f[<br />
m]<br />
≤ k ≤ f[<br />
m+<br />
1]<br />
( f[<br />
m+<br />
1]<br />
− f[<br />
m−1])(<br />
f[<br />
m+<br />
1]<br />
− f[<br />
m])<br />
0,<br />
k > f[<br />
m+<br />
1]<br />
m<br />
Ec. 2.15<br />
Utilizând aceast rela ie filtrele triunghiulare vor avea amplitudine <strong>de</strong>scresc toare odat cu<br />
ordinul filtrului, a a cum sunt prezentate în Fig. 2.2.<br />
Fig. 2.2. R spunsul în frecven a filtrelor Mel [43] Fig. 2.3. Bancul <strong>de</strong> filtre triunghiulare [13]<br />
Structura filtrelor Mel este prezentat în Fig. 2.3, iar ie irea filtrului m se calculeaz astfel:<br />
) !<br />
bm<br />
+ ∆m<br />
Y ( m)<br />
= X ( k)<br />
U ( k + b )<br />
Ec. 2.16<br />
t<br />
k = bm<br />
−∆<br />
m<br />
Pasul urm tor reprezint calculul energiei unei ferestre folo<strong>si</strong>nd rela ia:<br />
E =<br />
* ! " $<br />
n<br />
lg(<br />
i=<br />
1<br />
y(<br />
i)<br />
2<br />
)<br />
t<br />
∆m<br />
m<br />
Ec. 2.17<br />
Calculul coeficien ilor cepstrali se realizeaz utilizând transformata co<strong>si</strong>nus discret (DCT) în locul<br />
transformatei Fourier inverse din con<strong>si</strong><strong>de</strong>rente <strong>de</strong> reducere a volumului <strong>de</strong> calcul pentru valorile ob inute<br />
la ie irile filtrelor Mel. Astfel ob inem 24 <strong>de</strong> coeficien i Mel cepstrali din care în mod obi nuit utiliz m 13<br />
pentru recunoa tere.<br />
M<br />
( m)<br />
1 π<br />
yt<br />
( k)<br />
= log{<br />
Yt<br />
( m)<br />
} ⋅ cos k m − , k = 0,…,L Ec. 2.18<br />
m=<br />
1<br />
2 M<br />
+ ! " "<br />
Pentru calculul coeficien ilor <strong>de</strong>lta i <strong>de</strong>lta-<strong>de</strong>lta se con<strong>si</strong><strong>de</strong>r doar primii 13 coeficien i cepstrali,<br />
astfel ob inându-se câte 39 coeficien i pentru fiecare fereastr <strong>de</strong> analiz . Coeficien ii <strong>de</strong>lta i <strong>de</strong>lta-<strong>de</strong>lta<br />
(accelera ie) se calculeaz ca diferen e temporale <strong>de</strong> ordinul întâi i doi ale coeficien ilor cepstrali cu<br />
rela ia:<br />
B
$ / H " !"<br />
A<br />
i−1<br />
i−1<br />
{ y } = ∆ { y } − ∆ { y }, ∆ { y t}<br />
= yt<br />
0<br />
i<br />
∆ t<br />
t+<br />
1<br />
t−1<br />
, - . ! " $<br />
Ec. 2.19<br />
Pentru extragerea caracteristicilor am <strong>de</strong>zvoltat o aplica ie proprie prezentat în lucr rile [35, 42-43]<br />
utilizând platforma Matlab, care pe lâng extragerea caracteristicilor, permite configurarea parametrilor<br />
necesari pentru extragere cum ar fi dimen<strong>si</strong>unea cadrelor, procentul <strong>de</strong> suprapunere a cadrelor, tipul<br />
ferestrei <strong>de</strong> analiz , num rul filtrelor Mel i num rul coeficien ilor extra i.<br />
Aplica ia construie te i salveaz vectorii acustici <strong>de</strong> diferite tipuri: cu sau f r parametrii dinamici<br />
(<strong>de</strong>lta), cu sau f r context. Aplica ia construie te seturi <strong>de</strong> antrenare care con in vectorii acustici i ie irea<br />
dorit extras din fi ierele <strong>de</strong> segmentare ale vorbirii. Aceste seturi pot fi utilizate pentru antrenarea<br />
mo<strong>de</strong>lului acustic a <strong>si</strong>stemului <strong>de</strong> recunoa tere a semnalului vocal.<br />
Structura aplica iei este prezentat în Fig. 2.6 iar interfa a grafic în Fig. 2.5.<br />
Fig. 2.4. Diagrama <strong>de</strong> activit i a aplica iei <strong>de</strong> extragere<br />
a caracteristicilor Mel cepstrali utilizând HTK Toolkit<br />
Fig. 2.6. Diagrama <strong>de</strong> activit i a aplica iei proprii<br />
pentru extragerea parametrilor<br />
Fig. 2.5. Interfa a grafic a aplica iei pentru extragerea<br />
caracteristicilor Mel cepstrali<br />
Aplica ia a fost testat folo<strong>si</strong>nd bazele <strong>de</strong> date TIMIT [110] i OASIS Numbers [81] i rezultatele<br />
ob inute au fost confruntate cu cele ob inute cu HTK Toolkit urmând s fie utilizate pentru cla<strong>si</strong>ficarea<br />
fonemelor din cele dou baze <strong>de</strong> date.<br />
Pentru validarea coeficien ilor, am realizat o interfa pentru extragerea parametrilor utilizând<br />
HTK Toolkit. Diagrama <strong>de</strong> activit i pentru aceast aplica ie este prezentat în Fig. 2.4. Pentru<br />
compara ie ambele aplica ii au fost parametrizate i<strong>de</strong>ntic i s-au extras coeficien ii Mel cepstrali i<br />
coeficien ii dinamici pentru bazele <strong>de</strong> date OASIS Numbers i TIMIT.
) ! !<br />
Ambele aplica ii citesc un fi ier <strong>de</strong> configurare care stocheaz o list cu calea <strong>de</strong> acces i <strong>de</strong>numirile<br />
fi ierelor pentru care se dore te extragerea caracteristicilor, se seteaz parametri i se efectueaz<br />
extragerea i salvarea coeficien ilor. Totodat se extrage i codul fonemului corespunz tor cadrului<br />
analizat pe baza fi ierelor <strong>de</strong> segmentare i a dic ionarului <strong>de</strong> foneme a bazei <strong>de</strong> date i se salveaz<br />
împreun cu vectorii acustici.<br />
& ! " "<br />
Acest tip <strong>de</strong> analiz reprezint un instrument <strong>de</strong>osebit <strong>de</strong> puternic pentru analiza semnalului vocal.<br />
Este numit i mo<strong>de</strong>lare autoregre<strong>si</strong>v . Este o metod <strong>si</strong>mpl i rapid pentru estimarea principalilor<br />
parametrii ai semnalului vocal. Denumirea din literatura <strong>de</strong> specialitate în limba englez este LPCC<br />
(Linear Prediction Coding Cepstral Coefficients).<br />
Fig. 2.7. Principiul analizei LPC<br />
I<strong>de</strong>ea meto<strong>de</strong>i <strong>de</strong> analiz are la baz corela ia care exist între e antioanele succe<strong>si</strong>ve ale semnalului.<br />
Astfel s-a observat, c e antionul curent poate fi exprimat (aproximat) printr-o combina ie liniar a<br />
e antioanelor anterioare. Minimizând eroarea <strong>de</strong> aproximare pe un interval finit, se poate <strong>de</strong>termina un set<br />
<strong>de</strong> coeficien i numi i coeficien i <strong>de</strong> predic ie. În imaginea <strong>de</strong> mai sus este reprezentat un semnal vocal<br />
reprezint e antionul prezis sau estimat, iar t este eroarea<br />
<strong>de</strong> predic ie, care se poate exprima prin urm toarea formul matematic [88]:<br />
~<br />
ε t = xt − xt<br />
Ec. 2.20<br />
Dac formula <strong>de</strong> predic ie (polinomul predictor) este:<br />
e antionat. xt reprezint e antionul curent, x t<br />
~<br />
x = −<br />
α ⋅ x<br />
t<br />
i t−i<br />
i=<br />
1<br />
un<strong>de</strong> i – sunt coeficien ii <strong>de</strong> predic ie iar xt-i – sunt e antioanele anterioare<br />
Formula pentru eroarea <strong>de</strong> predic ie va <strong>de</strong>veni:<br />
~<br />
p<br />
p<br />
i=<br />
1<br />
t−i<br />
Ec. 2.21<br />
ε = x + α ⋅ x<br />
Ec. 2.22<br />
t<br />
t<br />
Algoritmul poate fi utilizat doar dup ce sunt <strong>de</strong>termina i to i coeficien ii <strong>de</strong> predic ie. Calculele necesare<br />
sunt prezentate pe larg în tez în capitolul:<br />
& / ! " "<br />
& - 0%<br />
Stabilirea filtrului <strong>de</strong> predic ie se face luând în con<strong>si</strong><strong>de</strong>ra ie urm toarele aspecte:<br />
• filtrul nu este stabil, dac fereastra <strong>de</strong> analiz este prea mic sau dac num rul coeficien ilor <strong>de</strong><br />
predic ie (p) este prea mic;<br />
1<br />
H ( z)<br />
=<br />
A(<br />
z)<br />
i<br />
Ec. 2.23<br />
• stabilitatea filtrului este garantat dac r d cinile numitorului A(z) sunt în cercul unitar;<br />
• dac avem un ordin <strong>de</strong> predic ie p, prea mic, se pierd informa ii i predic ia este incorect ( mare).<br />
Dac ordinul <strong>de</strong> predic ie p este mare, cre te num rul <strong>de</strong> calcule, cre te memoria necesar pentru<br />
stocarea e antioanelor prece<strong>de</strong>nte. Astfel ordinul <strong>de</strong> predic ie se alege în func ie <strong>de</strong> frecven a <strong>de</strong><br />
e antionare, conform urm toarei rela ii:<br />
p > f e [ kHz]<br />
+ 2(max<br />
4)<br />
Ec. 2.24<br />
9
$ / H " !"<br />
:8<br />
(<br />
Parametrii semnalului vocal se împart în dou mari grupe: caracteristici în domeniul timp i<br />
caracteristici în domeniul frecven .<br />
Parametri din domeniul timp se calculeaz mai u or i mai rapid, îns nu sunt suficient <strong>de</strong> puternici<br />
pentru a putea fi utiliza i <strong>si</strong>nguri în <strong>si</strong>stemele <strong>de</strong> recunoa tere a vorbirii. Ele îns pot îmbun t i<br />
performan ele acestor <strong>si</strong>steme. Num rul <strong>de</strong> treceri prin zero i energia semnalului vocal sunt parametri cei<br />
mai importan i în domeniul timp. Caracteristicile din domeniul frecven sunt mai puternici i pot fi<br />
utiliza i cu succes în <strong>si</strong>stemele <strong>de</strong> recunoa tere a vorbirii.<br />
Coeficien ii Mel cepstrali împreun cu parametri <strong>de</strong>lta i accelera ie sunt combina ia cea mai <strong>de</strong>s<br />
utilizat i dau rezultatele cele mai bune în recunoa terea vorbirii. Majoritatea <strong>si</strong>stemelor actuale folosesc<br />
13 coeficien i Mel cepstrali împreun cu parametri <strong>de</strong>lta i accelera ie.<br />
1<br />
Recunoa terea statistic a vorbirii are la baz mo<strong>de</strong>lele Markov ascunse. De fapt <strong>si</strong>stemul <strong>de</strong><br />
recunoa tere const în mai multe mo<strong>de</strong>le Markov ascunse înglobate i înl n uite între ele: mo<strong>de</strong>le acustice<br />
– pentru recunoa terea unit ilor lingvistice, mo<strong>de</strong>le lingvistice – pentru evaluarea probabilit ii a priori a<br />
succe<strong>si</strong>unii unit ilor lingvistice.<br />
Un <strong>si</strong>stem <strong>de</strong> recunoa tere a vorbirii poate fi <strong>de</strong>scris ca în Fig. 3.1.<br />
Fig. 3.1. Arhitectura unui <strong>si</strong>stem <strong>de</strong> recunoa tere a vorbirii<br />
Mo<strong>de</strong>lul matematic al unui asemenea <strong>si</strong>stem statistic poate fi formulat astfel: având dup prelucrarea<br />
i extragerea parametrilor semnalului vocal un set <strong>de</strong> vectori acustici: { 1, 2 ,..., n}<br />
a a a A = c ut m secven a<br />
<strong>de</strong> cuvinte cea mai probabil { , ,..., } w w w W = .<br />
* 1 2 m<br />
W*<br />
= argmax{<br />
P(<br />
W | A)}<br />
Folo<strong>si</strong>nd regula lui Bayes pentru probabilit i condi ionate, ecua ia 4.1. <strong>de</strong>vine:<br />
P(<br />
A | W ) ⋅ P(<br />
W )<br />
W*<br />
= arg max{<br />
}<br />
w P(<br />
A)<br />
tiind c probabilitatea P(A) este constant , ea nu influen eaz maximul:<br />
W*<br />
= arg max{<br />
P(<br />
A | W ) ⋅ P(<br />
W )}<br />
În ecua ia 3.3 avem P(A|W) - mo<strong>de</strong>lul acustic i P(W) – mo<strong>de</strong>lul lingvistic.<br />
$ $ 2<br />
w<br />
w<br />
Ec. 3.1<br />
Ec. 3.2<br />
Ec. 3.3<br />
Mo<strong>de</strong>lul Markov ascuns (MMA) este un mo<strong>de</strong>l probabilistic <strong>de</strong>s utilizat care duce la rezultate<br />
încurajatoare în domeniul recunoa terii vorbirii. Descrierea teoretic a mo<strong>de</strong>lului a fost dat <strong>de</strong> Baum în<br />
1967, dar aplica iile în domeniul recunoa terii semnalului vocal au ap rut numai începând din 1975 i<br />
sunt legate <strong>de</strong> numele lui Baker i Jelinek [65, 93, 94].<br />
Semnalul vocal poate fi con<strong>si</strong><strong>de</strong>rat sta ionar pe segmente <strong>de</strong> 10 – 20 ms [70, 73]. Folo<strong>si</strong>nd aceast<br />
proprietate, vorbirea poate fi mo<strong>de</strong>lat printr-un proces probabilistic <strong>de</strong>scris <strong>de</strong> un automat secven ial cu<br />
st ri finite care trece <strong>de</strong> la o stare la alta în mod instantaneu conform probabilit ilor <strong>de</strong> tranzi ie. Fiecare<br />
stare are asociat ca ie ire un alt proces probabilistic care <strong>de</strong>scrie probabilitatea <strong>de</strong> apari ie a unui vector<br />
<strong>de</strong> caracteristici.<br />
Astfel un MMA con ine <strong>de</strong> fapt dou procese stohastice:<br />
• secven a <strong>de</strong> st ri (states) X a mo<strong>de</strong>lului care con ine informa ii privind structura temporal a vorbirii;
) ! !<br />
• setul <strong>de</strong> ie iri sau <strong>si</strong>mboluri <strong>de</strong> observa ii (observations) O ale st rilor care mo<strong>de</strong>leaz caracterul<br />
sta ionar al vorbirii;<br />
Mo<strong>de</strong>lul se nume te ascuns, <strong>de</strong>oarece secven a <strong>de</strong> st ri X nu este observabil în mod direct.<br />
Fig. 3.2. Exemplu <strong>de</strong> mo<strong>de</strong>l Markov ascuns [117]<br />
Fig. 3.2 reprezint un exemplu <strong>de</strong> astfel <strong>de</strong> mo<strong>de</strong>l.<br />
Tranzi iile <strong>de</strong> la o stare la alta a mo<strong>de</strong>lului sunt guvernate <strong>de</strong> probabilit ile <strong>de</strong> tranzi ie ai,j, grupate în<br />
a a numita matrice a probabilit ilor <strong>de</strong> tranzi ie:<br />
a a ... a<br />
A =<br />
a<br />
...<br />
11<br />
21<br />
a<br />
12<br />
22<br />
... a<br />
1S<br />
2S<br />
Ec. 3.4<br />
a S1a<br />
S2 ... a SS<br />
Cu ai,j = P(i|j) am notat probabilitatea ca mo<strong>de</strong>lul s treac din starea j în starea i. A adar tranzi ia <strong>de</strong><br />
la un moment <strong>de</strong> timp nu este condi ionat <strong>de</strong>cât <strong>de</strong> starea anterioar , nu i <strong>de</strong> secven a <strong>de</strong> st ri anterioare,<br />
acesta fiind un proces Markov <strong>de</strong> ordinul I.<br />
Într-un MMA folo<strong>si</strong>t pentru recunoa terea vorbirii <strong>de</strong> obicei nu sunt permise <strong>de</strong>cât tranzi iile din<br />
stânga spre dreapta i tranzi iile dintr-o stare în ea îns i. Pentru a mo<strong>de</strong>la eficient caracterul temporal al<br />
vorbirii, toate probabilit ile ai,j un<strong>de</strong> j > i, sunt nule. O asemenea structur este <strong>de</strong>numit mo<strong>de</strong>l Markov<br />
stânga-dreapta. Toate probabilit ile care sunt între dou st ri care nu sunt legate cu arce sunt <strong>de</strong><br />
asemenea nule.<br />
Pentru MMA din figura <strong>de</strong> mai sus putem <strong>de</strong>fini vectorul probabilit ilor <strong>de</strong> stare care con ine<br />
probabilit ile ca mo<strong>de</strong>lul s fie într-o anumit stare la un moment dat <strong>de</strong> timp t.<br />
P x = q<br />
P<br />
.<br />
S(<br />
t ) =<br />
.<br />
.<br />
P<br />
( t 1 )<br />
( x = q )<br />
t<br />
( x = q )<br />
t<br />
2<br />
S<br />
Ec. 3.5<br />
Vectorul probabilit ilor <strong>de</strong> stare poate fi calculat cu rela ia recurent :<br />
S(t) = A S(t-1) Ec. 3.6<br />
Dac S(1) = , vectorul <strong>de</strong> probabilit i ale st rii ini iale, se poate ar ta c :<br />
S(t) = A t-1<br />
Ec. 3.7<br />
Simbolurile <strong>de</strong> observa ie O reprezint <strong>de</strong> fapt vectorii <strong>de</strong> caracteristici extra i din semnalul<br />
vocal pentru fiecare cadru.<br />
O = (o1, o2, ... , oT) Ec. 3.8<br />
Probabilitatea <strong>de</strong> apari ie este dat <strong>de</strong> func ia <strong>de</strong>n<strong>si</strong>tate <strong>de</strong> probabilitate, prescurtat cu pdf.<br />
Un MMA poate reprezenta o unitate lingvistic : un fonem, un cuvânt sau o propozi ie, uneori chiar o<br />
întreag fraz . Unitatea lingvistic utilizat pentru recunoa terea vorbirii continue este fonemul. Ea st la<br />
baza vorbirii. Orice cuvânt poate fi format prin concatenarea fonemelor i orice propozi ie sau fraz poate<br />
fi construit prin în irarea cuvintelor. Formarea cuvintelor din foneme este constrâns <strong>de</strong> lexic, iar<br />
formarea propozi iilor din cuvinte este supervizat <strong>de</strong> reguli gramaticale.<br />
::
$ / H " !"<br />
:7<br />
Fig. 3.3. Mo<strong>de</strong>larea succe<strong>si</strong>v a fonemelor, a cuvintelor i a propozi iilor<br />
Într-un asemenea <strong>si</strong>stem, în care avem mai multe mo<strong>de</strong>le Markov, câte unul pentru fiecare unitate<br />
lingvistic , probabilitatea condi ionat ca o secven <strong>de</strong> observa ie O s fie generat <strong>de</strong> un anumit mo<strong>de</strong>l<br />
M care trece prin secven a <strong>de</strong> st ri X se poate calcula relativ <strong>si</strong>mplu, înmul ind probabilit ile <strong>de</strong> tranzi ie<br />
aij i probabilit ile <strong>de</strong> apari ie a unui <strong>si</strong>mbol bi(ok). Pentru mo<strong>de</strong>lul din Fig. 3.2 avem:<br />
P(O, X|M) = a12b2(o1)a22b2(o2)a23b3(o3)a34b4(o4)a44b4(o5)a45b5(o6) Ec. 3.9<br />
Într-un MMA îns secven a <strong>de</strong> st ri X nu este cunoscut , pentru a calcula probabilitatea condi ionat ,<br />
ca secven a <strong>de</strong> <strong>si</strong>mboluri <strong>de</strong> observa ie O s fie generat <strong>de</strong> mo<strong>de</strong>lul M, trebuie s însum m probabilit ile<br />
pentru toate secven ele <strong>de</strong> st ri po<strong>si</strong>bile din mo<strong>de</strong>l:<br />
P ( O / M ) = ax(<br />
F ) x(<br />
1)<br />
∏bx( t )( ot<br />
) ax(<br />
t ) x(<br />
t+<br />
1)<br />
Ec. 3.10<br />
Pentru a putea fi utilizate pentru recunoa terea vorbirii, trebuie rezolvate trei probleme importante în<br />
cazul MMA:<br />
• problema antren rii mo<strong>de</strong>lului – adic date fiind un num r suficient <strong>de</strong> mare din fiecare unitate <strong>de</strong><br />
vorbire segmentate i etichetate corespunz tor, s calcul m elementele matricei probabilit ilor <strong>de</strong><br />
tranzi ie dintre st ri (A), s afl m func ia <strong>de</strong>n<strong>si</strong>tate <strong>de</strong> probabilitate a observa iilor (pdf)<br />
probabilit ile <strong>de</strong> stare ini iale ( );<br />
i<br />
• problema recunoa terii - adic având un MMA antrenat, cum afl m probabilitatea ca acel MMA s fi<br />
produs o anumit secven <strong>de</strong> observa ii;<br />
• Problema evalu rii: fiind dat un mo<strong>de</strong>l<br />
)?<br />
i o secven <strong>de</strong> observa ii X, care este probabilitatea P(X/<br />
$ $ 2 "<br />
Acest caz reprezint un MMA <strong>si</strong>mplificat prin faptul, c setului <strong>de</strong> observa ii i se impun anumite<br />
constrângeri: observa iile nu pot lua <strong>de</strong>cât un num r finit <strong>de</strong> valori discrete. Astfel observa iile ap rute în<br />
mod natural sunt repartizate în setul <strong>de</strong> observa ii permise prin metoda cuantiz rii vectoriale [73].<br />
Elementele setului <strong>de</strong> observa ii discrete formeaz alfabetul. Elementele alfabetului nu mai trebuie s fie<br />
vectori <strong>de</strong> caracteristici. Pentru aceste <strong>si</strong>mboluri <strong>de</strong> observa ie discrete, func ia <strong>de</strong>n<strong>si</strong>tate <strong>de</strong> probabilitate<br />
<strong>de</strong>vine o func ie discret dac o reprezent m pe axa numerelor reale. Pentru a rezolva problema<br />
recunoa terii, trebuie s cunoa tem doar probabilitatea <strong>de</strong> apari ie a <strong>si</strong>mbolurilor pentru fiecare stare a<br />
mo<strong>de</strong>lului. Aceste probabilit i se numesc probabilit i <strong>de</strong> observa ie:<br />
bi(ok) = P(ok|i) Ec. 3.11<br />
La fel ca i probabilit ile <strong>de</strong> tranzi ie, i aceste probabilit i pot fi grupate înmatricea probabilit ilor<br />
<strong>de</strong> observa ie.<br />
b o b o ... b o<br />
B =<br />
b<br />
1<br />
2<br />
...<br />
( 1 ) 1(<br />
2 ) 1(<br />
K )<br />
( o ) b ( o ) ... b ( o )<br />
1<br />
K<br />
( o ) b ( o ) ... b ( o )<br />
bS<br />
1 S 2 S K<br />
Putem <strong>de</strong>fini i vectorul probabilit ilor <strong>de</strong> observa ie care con ine probabilit ile <strong>de</strong> apari ie a unui<br />
anumit <strong>si</strong>mbol <strong>de</strong> observa ie la un anumit moment <strong>de</strong> timp t:<br />
P o = 1<br />
P(<br />
t ) =<br />
P<br />
P<br />
2<br />
2<br />
( t )<br />
( ot<br />
= 2)<br />
( o = K )<br />
t<br />
2<br />
Ec. 3.12<br />
Ec. 3.13<br />
Vectorul probabilit ilor <strong>de</strong> observa ie se poate calcula utilizând rela iile:<br />
P(t) = B S(t) Ec. 3.14<br />
P(t) = B A t-1<br />
Ec. 3.15<br />
În final putem scrie forma matematic a unui MMA cu observa ii discrete, înlocuind în Ecua ia 3.11<br />
func ia <strong>de</strong>n<strong>si</strong>tate <strong>de</strong> probabilitate a <strong>si</strong>mbolurilor <strong>de</strong> observa ie pdf cu matricea probabilit ilor <strong>de</strong><br />
observa ie B:<br />
Md = {S, , A, B} Ec. 3.16
1 3 $ $ - "<br />
) ! !<br />
În cazul recunoa terii, pentru fiecare unitate lingvistic se con<strong>si</strong><strong>de</strong>r c avem un MMA gata antrenat,<br />
adic se cunosc parametri A, B i , i dorim s afl m care unitate lingvistic anume reprezint o anumit<br />
secven <strong>de</strong> observa ie. Acest lucru este <strong>de</strong> fapt <strong>de</strong>terminarea probabilit ii <strong>de</strong> producere a secven ei <strong>de</strong><br />
observa ie <strong>de</strong> c tre fiecare mo<strong>de</strong>l (P(O/M)) i alegerea mo<strong>de</strong>lului pentru care probabilitatea este maxim .<br />
Modul cel mai <strong>si</strong>mplu pentru <strong>de</strong>terminarea acestei probabilit i este s enumer m toate secven ele <strong>de</strong><br />
st ri po<strong>si</strong>bile din mo<strong>de</strong>l. Lungimea lor trebuie s fie T, la fel ca i secven a <strong>de</strong> observa ie (O = o1, o2 , ...,<br />
oT). Probabilitatea unei asemenea st ri q = q1, q2 ,..., qT este:<br />
P(<br />
q / M ) = q q1a<br />
q q aq<br />
q ... a<br />
q − q<br />
= q ∏ a<br />
Ec. 3.17<br />
1 1 2 2 3 1 1 q −1q<br />
Probabilitatea secven ei <strong>de</strong> observa ie O cu secven a <strong>de</strong> st ri q dat se poate scrie:<br />
P<br />
T<br />
∏<br />
( O q, M ) = P(<br />
o / q , ) = bq ( o )<br />
i=<br />
1<br />
t<br />
t<br />
T<br />
T<br />
∏<br />
i=<br />
1<br />
i<br />
T<br />
/ Ec. 3.18<br />
Astfel probabilitatea condi ionat ca cele dou evenimente O i q s se în<strong>de</strong>plineasc <strong>si</strong>multan se<br />
ob ine prin înmul irea celor dou probabilit i:<br />
P ( O, q / M ) = P(<br />
O / q, ) P(<br />
q / M )<br />
Ec. 3.19<br />
Probabilitatea c utat se ob ine prin însumarea pentru toate secven ele <strong>de</strong> st ri po<strong>si</strong>bile a probabilit ii<br />
condi ionate <strong>de</strong> mai sus:<br />
P O / M = P O / q, P q / M<br />
Ec. 3.20<br />
( ) ( ) ( )<br />
q<br />
Pentru rezolvarea acestei probleme exist mai multe abord ri mai bune din punctul <strong>de</strong> ve<strong>de</strong>re al<br />
complexit ii calculelor.<br />
Pentru <strong>de</strong>scrierea algoritmului <strong>de</strong> înaintare, introducem dou nota ii care duc la <strong>si</strong>mplificarea<br />
formulelor <strong>de</strong> calcul. Primul termen, t(i) reprezint probabilitatea <strong>de</strong> înaintare, adic probabilitatea ca<br />
MMA s ajung în starea i, la momentul <strong>de</strong> timp t, dup ce a generat secven a <strong>de</strong> observa ii par iale Ot(o1,<br />
o2, ... ot), i se nume te secven a <strong>de</strong> probabilitate <strong>de</strong> înaintare. Similar <strong>de</strong>finim i o secven <strong>de</strong><br />
probabilitate <strong>de</strong> revenire (backward): t+1(i), care reprezint probabilitatea ca MMA s p r seasc starea i<br />
la momentul <strong>de</strong> timp t+1 i s ajung într-o stare final permis .<br />
Fig. 3.4. Probabilitatea <strong>de</strong> înaintare i <strong>de</strong> revenire<br />
Aceste probabilit i sunt reprezentate foarte sugestiv în Fig. 3.4.<br />
Algoritmul <strong>de</strong> înaintare ne d <strong>de</strong> fapt modalitatea <strong>de</strong> calcul a probabilit ii t(i) prin itera ie.<br />
Pentru calculul probabilit ii <strong>de</strong> înaintare (forward) t(i) avem urm torii pa i:<br />
= i ⋅ b o 1<br />
Ec. 3.21<br />
•<br />
•<br />
Ini ializarea: 1(<br />
i) Itera ia: + 1 ( j) = [<br />
( ) i ( ( ) )<br />
t ( i)<br />
aij<br />
] b j ( o(<br />
t + 1)<br />
)<br />
• Terminarea: ( O M ) = ( i)<br />
t Ec. 3.22<br />
P T<br />
/ Ec. 3.23<br />
În mod asem n tor algoritmului <strong>de</strong> înaintare putem <strong>de</strong>zvolta un alt algoritm care porne te <strong>de</strong> la un<br />
moment <strong>de</strong> timp t+1 pân la T. Am <strong>de</strong>finit probabilitatea <strong>de</strong> revenire: t+1(i), iar algoritmul <strong>de</strong> revenire ne<br />
d formulele <strong>de</strong> calcul pentru probabilitatea <strong>de</strong> revenire t+1(i).<br />
• Ini ializarea: T ( i)<br />
= 1<br />
Ec. 3.24<br />
i<br />
T<br />
i=<br />
1<br />
i<br />
i<br />
:=
$ / H " !"<br />
:><br />
• Itera ia: t(<br />
i)<br />
= a b ( o ) ( j)<br />
N<br />
j= 1<br />
ij<br />
j<br />
t+<br />
t+<br />
1<br />
1 Ec. 3.25<br />
Algoritmul Viterbi va c uta calea optim (secven a <strong>de</strong> st ri optim ) prin graful <strong>de</strong> st ri i tranzi ii.<br />
Probabilitatea condi ionat ca secven a <strong>de</strong> <strong>si</strong>mboluri <strong>de</strong> observa ie O s fie generat <strong>de</strong> mo<strong>de</strong>lul M va fi<br />
dat <strong>de</strong> probabilitatea condi ionat ca secven a <strong>de</strong> observa ie O s fie generat <strong>de</strong> mo<strong>de</strong>lul M atunci când<br />
el trece prin cea mai probabil secven <strong>de</strong> stare X.<br />
Prin g <strong>si</strong>rea secven ei <strong>de</strong> st ri optime algoritmul Viterbi va realiza implicit i o aliniere a secven ei <strong>de</strong><br />
observa ii <strong>de</strong>oarece vom ti c rei st ri îi apar ine fiecare <strong>si</strong>mbol <strong>de</strong> observa ie.<br />
Înainte <strong>de</strong> prezentarea algoritmului, <strong>de</strong>finim dou variabile utilizate în continuare:<br />
• t(i) – probabilitatea cea mai mare a unei c i dintre toate c ile ce converg în starea <strong>si</strong> la un<br />
moment <strong>de</strong> timp t:<br />
t(i) = max x1, x2, ... xt-1 [P(x1, x2, ... xt=<strong>si</strong>; o1, o2, ... , ot|M)] Ec. 3.26<br />
• n(i) – variabil ce p streaz starea anterioar a c ii cu probabilitatea t(i):<br />
n(i) = argmaxx1, x2, ... xt-1[P(x1, x2, ... xt=<strong>si</strong>; o1, o2, ... , ot|M)] Ec. 3.27<br />
Vom calcula la fiecare moment <strong>de</strong> timp t, pe rând pentru toate st rile po<strong>si</strong>bile, toate c ile ce converg<br />
în respectiva stare, reprezentat <strong>de</strong> un nod pe graful <strong>de</strong> st ri i tranzi ii, dar vom p stra doar un <strong>si</strong>ngur<br />
câ tig tor i anume pe cel cu probabilitatea cea mai mare. P str m valoarea acestei probabilit i în<br />
variabila t(i) i salv m starea anterioar în variabila n(i). Repet m acest pas pân ajungem la momentul<br />
<strong>de</strong> timp T final. Pe lâng aceast recur<strong>si</strong>e, algoritmul mai are o parte <strong>de</strong> ini ializare, care calculeaz 1(i)<br />
pentru fiecare stare i = 1..S a mo<strong>de</strong>lului pe baza probabilit ilor <strong>de</strong> stare ini iale , <strong>si</strong> o parte <strong>de</strong> terminare<br />
care calculeaz starea final cea mai probabil împreun cu probabilitatea c ii optime ata ate: xT x i<br />
P x (X|M). Ultima etap este cea <strong>de</strong> g <strong>si</strong>re prin backtracking a secven ei <strong>de</strong> st ri optime X x .<br />
Fig. 3.5. Graful <strong>de</strong> st ri i tranzi ii a unui MMA<br />
În continuare prezent m formulele <strong>de</strong> calcul pentru cele patru etape ale algoritmului:<br />
= i ⋅ b o , ( ) 0 = i , pentru i = 1 .. S Ec. 3.28<br />
• Ini ializare: 1(<br />
i) ( ) i ( 1)<br />
1<br />
• Recur<strong>si</strong>e: t ( j) = max[<br />
t−1<br />
( i)<br />
⋅ aij<br />
] bj<br />
( xt<br />
)<br />
t ( ) = argmax t ( i)<br />
x<br />
• Terminare: P ( X / M ) = max[<br />
T ( i)<br />
]<br />
x<br />
= argmax[<br />
( i)<br />
]<br />
[ a ]<br />
j ⋅<br />
x T<br />
x x x x x<br />
• Backtracking: X = ( x1<br />
, x2<br />
, ... , xt<br />
, ... , xT<br />
)<br />
x<br />
x<br />
cu rela ia = ( x )<br />
−1 ij , pentru t = 2 .. T i j = 1 .. S Ec. 3.29<br />
T , pentru i = 1 .. S Ec. 3.30<br />
xt t+<br />
t+<br />
1<br />
1 pentru t = T-1 .. 1 Ec. 3.31<br />
Având secven a <strong>de</strong> st ri optime, nu mai suntem nevoi i s efectu m toate calculele <strong>de</strong> la algoritmul <strong>de</strong><br />
înaintare sau <strong>de</strong> revenire, ci doar s evalu m formula probabilit ii secven ei <strong>de</strong> observa ie cu o secven<br />
<strong>de</strong> st ri dat .
) ! !<br />
!<br />
Pentru a putea prezenta func ionarea<br />
algoritmului con<strong>si</strong><strong>de</strong>r m, un arbore care<br />
con ine toate secven ele <strong>de</strong> cuvinte<br />
po<strong>si</strong>bile dintr-o limb . C utare va avea<br />
loc în acest graf, pornind <strong>de</strong> la un nod <strong>de</strong><br />
început (START). Fiecare cale po<strong>si</strong>bil<br />
prin graf reprezint o propozi ie corect<br />
gramatical din limba respectiv [44]. Fig.<br />
3.6 prezint un astfel <strong>de</strong> graf cu secven e<br />
<strong>de</strong> cuvinte care formeaz propozi ii<br />
gramatical corecte în limba englez . Întrun<br />
asemenea graf toate arcele au asociate<br />
câte o pon<strong>de</strong>re ce reprezint<br />
probabilitatea condi ionat ca un cuvânt<br />
Fig. 3.6. Graf <strong>si</strong>mplificat pentru secven ele <strong>de</strong> cuvinte <strong>de</strong> la cap tul arcului s<br />
po<strong>si</strong>bile din limba englez [65]<br />
urmeze dup secven a <strong>de</strong> cuvinte <strong>de</strong> la începutul arcului. Pe lâng aceste probabilit i, conform<br />
algoritmului <strong>de</strong> înaintare fiec rui cuvânt (nod) din graf, i se asociaz înc o probabilitate, aceea <strong>de</strong> a<br />
produce o anumit parte din secven a observat .<br />
Algoritmul A * trebuie s g seasc secven a <strong>de</strong> cuvinte (calea prin graf) care are probabilitatea cea mai<br />
mare, un<strong>de</strong> probabilitatea c ii prin graf se calculeaz însumând produsul dintre probabilitatea condi ionat<br />
ca un cuvânt <strong>de</strong> la cap tul arcului s urmeze dup secven a <strong>de</strong> cuvinte <strong>de</strong> la începutul arcului cu<br />
probabilitatea <strong>de</strong> a produce o anumit parte din secven a observat pentru fiecare nod prin care trece<br />
calea. În fiecare moment algoritmul p streaz într-o coad a priorit ilor secven ele par iale <strong>de</strong>scoperite,<br />
asociindu-se fiec rui element din coad câte un scor. La urm torul pas se scoate din coada <strong>de</strong> priorit i<br />
elementul care are scorul cel mai mare. Astfel algoritmul alege iterativ cea mai probabil secven<br />
par ial , calculeaz probabilit ile pentru toate continu rile po<strong>si</strong>bile i le introduce în coada <strong>de</strong> priorit i<br />
împreun cu scorurile aferente.<br />
- $ $ - "<br />
Antrenarea unui MMA se realizeaz cu ajutorul algoritmului <strong>de</strong> reestimare Baum - Welch, numit i<br />
algoritmul forward - backward. Antrenarea este necesar pentru ca parametrii mo<strong>de</strong>lului s corespund<br />
fonemului sau cuvântului reprezentat. Nu exist o metod analitic pentru aflarea acestor parametrii,<br />
algoritmul <strong>de</strong> reestimare Baum - Welch fiind un algoritm iterativ cu care ob inem un maxim local pentru<br />
probabilitatea P(O|M).<br />
Pentru <strong>de</strong>scrierea acestui algoritm se <strong>de</strong>fine te probabilitatea ca mo<strong>de</strong>lul dat s se afle la momentul <strong>de</strong><br />
timp t în starea i, iar în momentul <strong>de</strong> timp t+1 în starea j.<br />
( ) ( )<br />
( qt<br />
= i, qt<br />
+ 1=<br />
j,O / M )<br />
t i, j = P qt<br />
= i, qt<br />
+ 1 = j / O, M = P<br />
Ec. 3.32<br />
P(<br />
O / M )<br />
Folo<strong>si</strong>nd probabilitatea <strong>de</strong> înaintare i <strong>de</strong> revenire (i,j) <strong>de</strong>vine:<br />
t ( i)<br />
aijb<br />
j ( ot+<br />
1)<br />
t+<br />
1(<br />
j)<br />
t ( i)<br />
aijb<br />
j ( ot+<br />
1)<br />
t+<br />
1(<br />
j)<br />
( i, j)<br />
=<br />
=<br />
Ec. 3.33<br />
N N<br />
P(<br />
O / M )<br />
i a b o j<br />
i=<br />
1 j= 1<br />
Probabilitatea ca la momentul <strong>de</strong> timp t mo<strong>de</strong>lul s se afle în starea i va fi:<br />
t<br />
N<br />
( i)<br />
= ( i, j)<br />
j= 1<br />
Însumând i pe axa timpului, ob inem:<br />
T −1<br />
• ( )<br />
t=<br />
1<br />
T −1<br />
• ( j)<br />
t=<br />
1<br />
t<br />
t<br />
t<br />
t<br />
( ) ( ) ( )<br />
i - num rul estimat al tranzi iilor din starea i (în secven a <strong>de</strong> observa ii)<br />
i, - num rul estimat al tranzi iilor din starea i în starea j<br />
Utilizând aceste dou valori, se poate <strong>de</strong>zvolta un algoritm <strong>de</strong> reestimare iterativ a<br />
ij<br />
j<br />
t+<br />
1<br />
t+<br />
1<br />
Ec. 3.34<br />
:@
$ / H " !"<br />
parametrului unui mo<strong>de</strong>l Markov astfel încât folo<strong>si</strong>nd mo<strong>de</strong>lul nou, probabilitatea P(O/M) s creasc pân<br />
într-un anumit punct.<br />
a , b k<br />
M , A,<br />
B .<br />
:E<br />
Parametrii , ij j ( )<br />
= ( j)<br />
a<br />
ij<br />
=<br />
T −1<br />
j sunt parametrii reestima i care vor forma noul mo<strong>de</strong>l ( )<br />
j 1<br />
t<br />
t=<br />
1<br />
T −1<br />
t=<br />
1<br />
( i, j)<br />
t<br />
( i)<br />
Ec. 3.35<br />
Ec. 3.36<br />
& $ $ 2 "<br />
( k )<br />
b j = T<br />
t=<br />
1<br />
T<br />
t<br />
( j)<br />
( j)<br />
t<br />
t=<br />
1 forsymbolv k<br />
Ec. 3.37<br />
De cele mai multe ori <strong>si</strong>mbolurile <strong>de</strong> observa ie nu sunt <strong>si</strong>mboluri discrete a a cum am presupus pân<br />
la acest capitol. În asemenea <strong>si</strong>tua ii nu se pot utiliza func ii <strong>de</strong> <strong>de</strong>n<strong>si</strong>tate <strong>de</strong> probabilitate discrete, a a cum<br />
am con<strong>si</strong><strong>de</strong>rat probabilit ile bj(k).<br />
O metod pentru utilizarea mo<strong>de</strong>lelor Markov discrete este s discretiz m func iile continue în<br />
observa ii discrete prin metoda cuantiz rii vectoriale.<br />
O alternativ este folo<strong>si</strong>rea mo<strong>de</strong>lelor Markov continue, cu func ia <strong>de</strong>n<strong>si</strong>tate <strong>de</strong> probabilitate continu .<br />
Pentru aceasta trebuie s alegem cu grij func ia <strong>de</strong>n<strong>si</strong>tate <strong>de</strong> probabilitate, pentru a putea fi reestimat în<br />
procesul <strong>de</strong> antrenare.<br />
În mo<strong>de</strong>lele Markov continui cele mai <strong>de</strong>s utilizate func ii pentru <strong>de</strong>n<strong>si</strong>tatea <strong>de</strong> probabilitate sunt<br />
mixturile finite <strong>de</strong> forma:<br />
M<br />
b jk jk jk<br />
k=<br />
1<br />
( o)<br />
= c N ( o, , U ) , pentru j=<br />
1..N<br />
j Ec. 3.38<br />
În formula <strong>de</strong> mai sus, o este vectorul <strong>de</strong> observa ie mo<strong>de</strong>lat, cjk este coeficientul mixturii k în starea j,<br />
iar N este o func ie <strong>de</strong> distribu ie. Func ia <strong>de</strong> distribu ie utilizat cel mai frecvent este func ia <strong>de</strong><br />
distribu ie Gaus<strong>si</strong>an cu nota iile:<br />
• jk – media distribu iei;<br />
• Ujk – matricea <strong>de</strong> covarian .<br />
Coeficien ii mixturii (cjk) trebuie s satisfac condi ia:<br />
M<br />
k=<br />
1<br />
jk = 1, pentruj = 1..N,<br />
ic > 0<br />
Ec. 3.39<br />
c jk<br />
Se poate <strong>de</strong>monstra c orice func ie <strong>de</strong> distribu ie finit i continu poate fi aproximat cu o mixtur<br />
<strong>de</strong> tipul celui prezentat în ecua ia 3.38. A adar mixtura Gaus<strong>si</strong>an este format din însumarea pon<strong>de</strong>rat a<br />
mai multor func ii <strong>de</strong> distribu ie Gaus<strong>si</strong>ene <strong>de</strong> forma:<br />
1<br />
1<br />
T −1<br />
N(<br />
o, jk , U jk ) =<br />
exp − ( o − jk ) U jk ( o − jk ) Ec. 3.40<br />
d⏐<br />
1⏐<br />
2<br />
( 2 ) 2⏐U<br />
jk 2⏐<br />
Matricea <strong>de</strong> covarian fiind matrice diagonal (Ujk = 0 pentru j k), dac not m elementele <strong>de</strong> pe<br />
diagonala principal 2 ki, expre<strong>si</strong>a se poate rescrie:<br />
N<br />
( o, , U )<br />
jk<br />
jk<br />
=<br />
∏<br />
⏐<br />
⏐<br />
d<br />
2<br />
1 o j − kj<br />
exp −<br />
2 2<br />
j= 1 ( 2 ki ) 2 kj<br />
Ec. 3.41<br />
Se poate <strong>de</strong>monstra, c pentru o mixtur Gaus<strong>si</strong>an <strong>de</strong> forma rela iei 3.38, aleas ca func ie <strong>de</strong>n<strong>si</strong>tate<br />
<strong>de</strong> probabilitate, formulele <strong>de</strong> reestimare a coeficien ilor mixturii sunt:<br />
T ( j, k )<br />
c = T M<br />
t= t<br />
jk<br />
T<br />
Ec. 3.42<br />
t ( j, k )( ot<br />
−<br />
1<br />
t=<br />
1<br />
=<br />
jk )( ot<br />
− jk ) '<br />
Ec. 3.44<br />
T<br />
t<br />
t= 1k= 1<br />
( j, k )<br />
− ν t ( j,<br />
k)<br />
⋅o(<br />
t)<br />
t=<br />
1 µ jk =<br />
Ec. 3.43<br />
T<br />
ν ( j,<br />
k)<br />
t<br />
t=<br />
1<br />
U jk<br />
T<br />
t=<br />
1<br />
( j, k )
( j, k ) = ( j)<br />
t<br />
t<br />
N<br />
j= t<br />
1<br />
( j)<br />
( j)<br />
( j)<br />
t<br />
M<br />
c<br />
jk<br />
c<br />
N<br />
jm<br />
m=<br />
1<br />
( ot<br />
, jk , U jk )<br />
( o , , U )<br />
N<br />
t<br />
jk<br />
) ! !<br />
jk<br />
Ec. 3.45<br />
În ecua iile 4.42 – 4.45 am introdus nota iile: c jk - coeficien ii reestima i ai mixturilor; µ jk - valoarea<br />
medie a mixturii Gaus<strong>si</strong>ene reestimat ; U jk - matricea <strong>de</strong> covarian reestimat .<br />
& $<br />
& 1 " !<br />
Re elele neuronale artificiale nu sunt capabile înc <strong>de</strong> <strong>si</strong>ne st t tor s realizeze recunoa terea vorbirii<br />
continue, dar împreun cu mo<strong>de</strong>lele Markov ascunse pot constitui <strong>si</strong>steme hibrid <strong>de</strong> recunoa tere a<br />
vorbirii care ofer rezultate con<strong>si</strong><strong>de</strong>rabile [29].<br />
Principalele tipuri <strong>de</strong> re elele neuronale utilizate pentru estimarea probabilit ii fonemelor sunt<br />
re elele perceptron multistrat, re elele cu întârziere în timp, re elele neuronale cu autoorganizare, re ele<br />
LSTM (Long Short Term Memory) i re elele neuronale recurente [18, 22, 96, 98, 112, 116].<br />
& !<br />
Neuronul artificial construit în principiu dup neuronul biologic reprezint elementul <strong>de</strong> procesare a<br />
re elelor neuronale artificiale, fie ele <strong>de</strong> orice tip sau configura ie. Toate re elele neuronale sunt construite<br />
din mai multe asemenea elemente <strong>de</strong> procesare – numite i perceptroni – interconectate între le.<br />
" #<br />
Un neuron artificial este un element <strong>de</strong> procesare adaptiv, adic î i poate modifica pon<strong>de</strong>rile i<br />
eventual pragul <strong>de</strong> activare în func ie <strong>de</strong> intr ri, <strong>de</strong> ie ire i <strong>de</strong> r spunsul dorit pentru fiecare vector <strong>de</strong><br />
intrare. Acest proces se nume te procesul <strong>de</strong> înv are supervizat. Regula general <strong>de</strong> înv are, care este <strong>de</strong><br />
fapt legea <strong>de</strong> actualizare a pon<strong>de</strong>rilor poate fi scris sub forma:<br />
W ( t + 1)<br />
= S(<br />
W ( t)<br />
, X ( t)<br />
, T ( t)<br />
) X ( t)<br />
Ec. 4.1<br />
Un<strong>de</strong>:<br />
• W(t+1) reprezint pon<strong>de</strong>rile neuronului dup pasul t+1 <strong>de</strong> antrenare;<br />
• este rata <strong>de</strong> înv are sau constanta <strong>de</strong> înv are (learning rate);<br />
• T(t) este ie irea dorit a neuronului artificial;<br />
• S este semnalul <strong>de</strong> înv are.<br />
Dac nu exist r spuns dorit, pon<strong>de</strong>rile se modific în func ie <strong>de</strong> intr ri i <strong>de</strong> ie ire. În acest caz<br />
vorbim <strong>de</strong> procesul <strong>de</strong> înv are nesupervizat. În acest caz re eaua tin<strong>de</strong> s cla<strong>si</strong>fice secven ele <strong>de</strong> intrare<br />
într-un num r finit <strong>de</strong> clase pe baza asem n rilor <strong>de</strong>tectate.<br />
Procesul <strong>de</strong> înv are este <strong>de</strong>seori întâlnit în literatura <strong>de</strong> specialitate sub <strong>de</strong>numirea <strong>de</strong> antrenare [30,<br />
31]. Principalele reguli <strong>de</strong> înv are a neuronilor se ob in prin particularizarea regulii generale <strong>de</strong> înv are<br />
i sunt prezentate în tez în capitolele ce urmeaz .<br />
& %<br />
" #<br />
" # $<br />
Pornind <strong>de</strong> la perceptronul cu un <strong>si</strong>gur strat, s-a <strong>de</strong>zvoltat perceptronul multistrat, r mânând valabil<br />
rela ia conform c reia un perceptron multistrat cu L straturi are <strong>de</strong> fapt L+1 straturi, primul strat fiind<br />
stratul <strong>de</strong> intrare (input layer) iar ultimul strat fiind stratul <strong>de</strong> ie ire (output layer). Celelalte L-1 straturi se<br />
numesc straturi ascunse (hid<strong>de</strong>n layer).<br />
Fiecare strat sau nivel este alc tuit dintr-un num r <strong>de</strong> neuroni artificiali i în cazul general fiecare<br />
neuron dintr-un strat k are o conexiune cu fiecare neuron din stratul urm tor k+1. O astfel <strong>de</strong> structur <strong>de</strong><br />
re ea neuronal se nume te perceptron multistrat complet conectat, i este prezentat în figura <strong>de</strong> mai jos.<br />
−<br />
:B
$ / H " !"<br />
:A<br />
Fig. 4.1. Perceptronul multistrat<br />
La stabilirea dimen<strong>si</strong>unii re elei utilizate pentru recunoa tere se ine cont <strong>de</strong> urm toarele lucruri:<br />
• nivelele <strong>de</strong> intrare trebuie s con in atâtea unit i <strong>de</strong> procesare, câte date <strong>de</strong> intrare avem (adic<br />
nivelul <strong>de</strong> intrare corespun<strong>de</strong> cu dimen<strong>si</strong>unea vectorului <strong>de</strong> intrare - n);<br />
• num rul unit ilor <strong>de</strong> ie ire m este stabilit <strong>de</strong> num rul <strong>de</strong> foneme ce se doresc cla<strong>si</strong>ficate;<br />
• num rul unit ilor din stratul ascuns se stabile te astfel încât re eaua s fie suficient <strong>de</strong> complex<br />
pentru a putea rezolva problema dat , dar nu mai mult <strong>de</strong>cât este necesar. O po<strong>si</strong>bilitate <strong>de</strong> a alege<br />
num rul unit ilor din nivelul ascuns (h) pentru o re ea cu n intr ri i m ie iri este dat <strong>de</strong> formula:<br />
h = nm . Aceast alegere nu este întot<strong>de</strong>auna cea optim , ea este doar informativ . Num rul<br />
neuronilor din stratul ascuns poate fi ales prin încerc ri, luându-se ca valoare <strong>de</strong> pornire valoarea h<br />
dat mai sus.<br />
Fig. 4.2. Perceptron multistrat utilizat pentru cla<strong>si</strong>ficarea fonemelor<br />
Alegerea arhitecturii nu este o problem <strong>si</strong>mpl , întrucât pentru aceia i problem pot exista mai multe<br />
arhitecturi care permit rezolvarea ei. Durata procesului <strong>de</strong> înv are îns este <strong>de</strong>pen<strong>de</strong>nt <strong>de</strong> complexitatea<br />
re elei, astfel încât întot<strong>de</strong>auna trebuie aleas arhitectura cu complexitatea cea mai mic . Complexitatea<br />
re elei neuronale este dat <strong>de</strong> num rul <strong>de</strong> pon<strong>de</strong>ri. În <strong>si</strong>stemele <strong>de</strong> recunoa tere a vorbirii, mai exact<br />
pentru cla<strong>si</strong>ficarea fonemelor complexitatea re elelor neuronale utilizate fie ele <strong>de</strong> tip perceptron<br />
multistrat sau <strong>de</strong> tip recurent este în jur <strong>de</strong> 100.000 - 200.000. Num rul intr rilor pentru un perceptron<br />
multistrat utilizat pentru cla<strong>si</strong>ficarea i estimarea probabilit ii fonemelor fereastr cu fereastr , este dat<br />
<strong>de</strong> dimen<strong>si</strong>unea vectorului <strong>de</strong> caracteristici aplicat la intrare. Acesta este în cele mai multe cazuri: 3 x 13<br />
= 39 (în cazul folo<strong>si</strong>rii coeficien ilor MFCC, i a diferen elor temporale <strong>de</strong> ordin I i II a acestora). Pentru<br />
a introduce i contextul în care se afl o anumit fereastr , se mai introduc câte 4-5 ferestre din stânga i<br />
din dreapta ferestrei <strong>de</strong> analiz actual, rezultând astfel în total 9 sau 11 ferestre <strong>de</strong> analiz , ceea ce<br />
înseamn un num r <strong>de</strong> 351 sau 429 intr ri pentru re ea.<br />
& -<br />
Înv area presupune adaptarea re elei la problema <strong>de</strong> rezolvat prin utilizarea informa iilor <strong>de</strong> care<br />
dispunem <strong>de</strong>spre problem . Cea mai r spândit metod este adaptarea pon<strong>de</strong>rilor conexiunilor re elei. În<br />
acest caz avem fixat o arhitectur i r mân <strong>de</strong> stabilit doar pon<strong>de</strong>rile conexiunilor. Aceste pon<strong>de</strong>ri dintre<br />
dou straturi pot fi grupate într-o matrice, numit matricea pon<strong>de</strong>rilor:
W<br />
k<br />
=<br />
w<br />
w<br />
...<br />
w<br />
11<br />
21<br />
n1<br />
w<br />
w<br />
w<br />
12<br />
22<br />
n2<br />
... w<br />
... w<br />
... w<br />
1m<br />
2m<br />
nm<br />
, k<br />
= 1..K<br />
) ! !<br />
Ec. 4.2<br />
Algoritmul se nume te back propagation of error i are la baz principiul minimiz rii erorii medii<br />
p tratice dintre ie irea re elei neuronale i ie irea dorit a acestuia.<br />
Pentru antrenare avem nevoie <strong>de</strong> o mul ime <strong>de</strong> antrenare, adic <strong>de</strong> perechi <strong>de</strong> vectori <strong>de</strong> intrare i <strong>de</strong><br />
ie ire {(X 1 , T 1 )(X 2 , T 2 ) ... (X L , T L )}.<br />
Eroarea medie a întregii re ele este:<br />
l l l l<br />
În ecua iile 4.4, Y ( y , y , ... y )<br />
E<br />
E<br />
L<br />
1, 2, K 1<br />
1, 2, K<br />
( W W ... W ) = E ( W W ... W )<br />
l<br />
L<br />
l=<br />
1<br />
N<br />
1, 2, K 1 l l<br />
( W W ... W ) = ( T − y )<br />
2<br />
i=<br />
1<br />
l<br />
i<br />
i<br />
2<br />
Ec. 4.3<br />
Ec. 4.4<br />
1 2 M reprezint ie irea re elei pentru intrarea X l , iar T este ie irea dorit<br />
pentru intrarea X l , dat în secven a <strong>de</strong> antrenare.<br />
Scopul procesului <strong>de</strong> antrenare este <strong>de</strong>terminarea setului <strong>de</strong> pon<strong>de</strong>ri W care minimizeaz func ia <strong>de</strong><br />
eroare E.<br />
Din punctul <strong>de</strong> ve<strong>de</strong>re al aplic rii formulelor <strong>de</strong> ajustare a pon<strong>de</strong>rilor în raport cu parcurgerea<br />
mul imii <strong>de</strong> antrenare, se pot <strong>de</strong>osebi dou variante ale algoritmului back propagation [30, 31, 118]:<br />
• parcurgerea serial (on-line training);<br />
• parcurgerea pe blocuri (off-line training).<br />
& 1 " 4<br />
Pe parcursul timpului s-au încercat diferite meto<strong>de</strong> <strong>de</strong> îmbun t ire a performan elor MLP în<br />
domeniul recunoa terii vorbirii continue. Problema cea mai mare se datoreaz caracterului temporal al<br />
vorbirii. Problema apare datorit faptului, c unei foneme îi corespund o serie <strong>de</strong> vectori acustici, nu doar<br />
unul <strong>si</strong>ngur. Re elele perceptron multistrat nu sunt foarte potrivite pentru rezolvarea acestei probleme,<br />
îns cu anumite îmbun t iri aduse structurii re elei, se pot <strong>de</strong>zvolta re ele mai potrivite.<br />
Fig. 4.3. MLP cu linii <strong>de</strong> întârziere [18]<br />
Prima metod ar fi utilizarea MLP cu memorie tampon (buffer) la intrare. Totodat ar trebui s se<br />
introduc linii <strong>de</strong> întârziere pentru vectorii <strong>de</strong> caracteristici consecutivi.<br />
Acest mo<strong>de</strong>l <strong>de</strong> re ea neuronal a fost <strong>de</strong>zvoltat ulterior i a <strong>de</strong>venit mo<strong>de</strong>lul cunoscut sub<br />
<strong>de</strong>numirea <strong>de</strong> re ele neuronale cu întârziere în timp (Time Delayed Neural Network.<br />
RN cu întârziere pot combina în calcul efectele ultimilor N+1 vectori spectrali sau pot avea întârzieri<br />
“negative”, adic s ia în calcul vectorii spectrali atât în întârziere cât i în avans (contextul din dreapta i<br />
din stânga a vectorului spectral curent).<br />
Pentru antrenarea re elei neuronale cu întârziere în timp se utilizeaz metoda backpropagation,<br />
:9
$ / H " !"<br />
la fel ca i în cazul perceptronului multistrat. Mai întâi se aplic un vector <strong>de</strong> intrare, se calculeaz<br />
ie irea i apoi în func ie <strong>de</strong> ie irea dorit se calculeaz eroarea. Pon<strong>de</strong>rile se ajusteaz prin medierea<br />
valorilor pentru fiecare fereastr în parte. Astfel o etap <strong>de</strong> instruire se con<strong>si</strong><strong>de</strong>r încheiat doar atunci când<br />
fereastra a baleiat complet componentele spectrale <strong>de</strong> la intrare.<br />
78<br />
& & 1 "<br />
Re elele neuronale recurente sunt structuri <strong>de</strong> re ele neuronale care au o bucl în construc ia lor. Acest<br />
lucru înseamn , c ori ie irea, ori unul dintre straturile ascunse sunt conectate înapoi la intrarea re elei.<br />
Aceste bucle schimb direc ia <strong>de</strong> parcurgere a re elelor astfel încât direc ia <strong>de</strong> propagare a informa iilor<br />
nu este numai <strong>de</strong> la intrare spre ie ire ci i în sens invers (bidirec ional). Bucla se realizeaz prin<br />
introducerea unui nivel intermediar, care memoreaz con inutul stratului ascuns i îl reintroduce apoi la<br />
intrarea nivelului ascuns.<br />
Arhitectura re elelor neuronale recurente este prezentat în Fig. 4.4. Dup cum se ve<strong>de</strong> i în figur ,<br />
nivelul <strong>de</strong> intrare este <strong>de</strong> fapt compus din intr rile propriuzise ale re elei precum i din elementele<br />
memorate <strong>de</strong> stratul intermediar, care ac ioneaz ca o intrare suplimentar a re elei.<br />
Aceste re ele pot mo<strong>de</strong>la cu succes caracterul temporal al vorbirii, <strong>de</strong>oarece <strong>de</strong>cizia luat la ie ire este<br />
influen at atât <strong>de</strong> intrarea actual a re elei cât i <strong>de</strong> starea anterioar a re elei reintrodus <strong>de</strong> nivelul<br />
intermediar. Astfel ie irea nivelului ascuns influen eaz valorile <strong>de</strong> ie ire din urm toarea secven <strong>de</strong> timp<br />
prin intermediul nivelului intermediar.<br />
Fig. 4.4. Re ea neuronal recurent<br />
Fig. 4.5. Re ea recurent cu bucl <strong>de</strong> reac ie între ie ire i intrare [18]<br />
Antrenarea acestor re ele se realizeaz cu ajutorul algoritmului backpropagation trough time, un<br />
algoritm <strong>de</strong>rivat din algoritmul <strong>de</strong> antrenare al perceptronului multistrat. Dezavantajul algoritmului const<br />
în nece<strong>si</strong>tatea mare <strong>de</strong> resurse <strong>de</strong> calcul, <strong>de</strong>oarece atât pon<strong>de</strong>rile re elei cât i pon<strong>de</strong>rile stratului<br />
intermediar trebuie ajustate <strong>de</strong> mai multe ori, fiindc ie irea re elei nu este constant ci variabil în timp.<br />
O alt arhitectur <strong>de</strong> re ea recurent este cea care realizeaz bucla <strong>de</strong> reac ie <strong>de</strong> la ie irea re elei spre<br />
intrare. O astfel <strong>de</strong> arhitectur este prezentat în Fig. 4.5.
) ! !<br />
& ( 1 . " ! !<br />
În acest capitol, sunt prezentate câteva experimente <strong>de</strong> cla<strong>si</strong>ficare a fonemelor din vorbirea continu ,<br />
utilizând re ele neuronale <strong>de</strong> tip perceptron multistrat, re ele neuronale cu întârzieri în timp i re ele<br />
neuronale recurente. Pentru antrenarea i testarea aplica iei software am folo<strong>si</strong>t dou baze <strong>de</strong> date: TIMIT<br />
[110], i OASIS Numbers [81].<br />
Re elele neuronale cu care am încercat cla<strong>si</strong>ficarea pot fi cla<strong>si</strong>ficate în dou categorii:<br />
• re ele neuronale statice;<br />
• re ele neuronale dinamice.<br />
Re elele statice nu au întârzieri temporale i nu con in bucle <strong>de</strong> reac ie, ie irile fiind calculate în mod<br />
direct din intr ri prin conexiuni unidirec ionale (dinspre intr ri spre ie iri).<br />
În cazul re elelor dinamice ie irile <strong>de</strong>pind nu doar <strong>de</strong> intrarea re elei ci i <strong>de</strong> intr rile anterioare, <strong>de</strong><br />
ie iri sau <strong>de</strong> anumite st ri ale re elelor. Aceste re ele pot fi cla<strong>si</strong>ficate în continuare în alte dou categorii:<br />
cele care con in doar conexiuni unidirec ionale i cele care con in bucle <strong>de</strong> reac ie.<br />
Am realizat mai multe teste <strong>de</strong> cla<strong>si</strong>ficare a fonemelor utilizând diferite configura ii <strong>de</strong> re ele<br />
neuronale artificiale i diferite seturi <strong>de</strong> antrenare ale acestora.<br />
Pentru teste am folo<strong>si</strong>t 13 coeficien i Mel cepstrali i diferen ele lor temporale <strong>de</strong> ordinul I i II<br />
(parametri <strong>de</strong>lta i <strong>de</strong>lta-<strong>de</strong>lta) precum i în unele experimente am folo<strong>si</strong>t informa ii contextuale.<br />
Coeficien ii au fost extra i i vectorii <strong>de</strong> caracteristici au fost construi i cu aplica iile prezentate în<br />
Capitolul 2. Parametri <strong>de</strong> configurare a extractorului <strong>de</strong> caracteristici au fost seta i dup cum urmeaz :<br />
coeficientul <strong>de</strong> preprocesare a = 0,95, dimen<strong>si</strong>unea cadrului 256 <strong>de</strong> e antioane, procentul <strong>de</strong> suprapunere<br />
a cadrelor 25%.<br />
Aplica ia pentru antrenarea i testarea re elelor neuronale artificiale a fost realizat pe platforma<br />
Matlab a firmei Mathworks.<br />
Fig. 4.7. Interfa a grafic a aplica iei pentru crearea,<br />
antrenarea i testarea re elelor neuronale<br />
Fig. 4.6. Diagrama <strong>de</strong> activit i a aplica iei pentru<br />
cla<strong>si</strong>ficarea fonemelor<br />
Aplica ia porne te cu setarea parametrilor re elei i cu alegerea setului <strong>de</strong> antrenare i <strong>de</strong> testare dorit.<br />
Se verific dac re eaua dorit exist sau nu. Dac nu exist , aceasta este creat iar dac exist , se încarc .<br />
Se trece la o epoc <strong>de</strong> adaptare a pon<strong>de</strong>rilor conform func iei <strong>de</strong> adaptare aleas i la testarea re elei. Pasul<br />
urm tor const în salvarea rezultatelor test rii precum i a re elei antrenate. În final se repet pa ii pân la<br />
atingerea num rului <strong>de</strong> epoci <strong>de</strong> antrenare dorit.<br />
7:
$ / H " !"<br />
77<br />
& ( 1 " -<br />
Baza <strong>de</strong> date OASIS Numbers este o baz <strong>de</strong> date cu vorbire continu , <strong>de</strong> dimen<strong>si</strong>uni reduse,<br />
înregistrat în condi ii <strong>de</strong> birou. A fost realizat pentru antrenarea i testarea <strong>si</strong>stemelor <strong>de</strong> recunoa tere a<br />
numerelor in<strong>de</strong>pen<strong>de</strong>nt <strong>de</strong> vorbitor în anul 2002 [81]. Baza <strong>de</strong> date con ine 26 <strong>de</strong> cifre i numere scurte<br />
rostite <strong>de</strong> 66 <strong>de</strong> vorbitori <strong>de</strong> câte dou ori. Pe lâng acestea s-au mai înregistrat i 20 <strong>de</strong> numere lungi.<br />
Alegerea vorbitorilor s-a f cut în mod omogen, astfel încât în total avem 62 <strong>de</strong> vorbitori b rba i i 49 <strong>de</strong><br />
femei. Cu ajutorul cifrelor i a numerelor scurte putem crea prin concatenare rostirea oric rui num r între<br />
0 i 999 999 999. Toate rostirile cifrelor i a numerelor scurte sunt segmentate i adnotate manual. Aceste<br />
rostiri pot fi <strong>de</strong>ci utilizate pentru antrenarea <strong>si</strong>stemelor <strong>de</strong> recunoa tere. Restul bazei <strong>de</strong> date poate fi<br />
utilizat pentru testare. Înregistr rile s-au efectuat cu 5 microfoane diferite, fi ierele fiind stocate într-o<br />
structur <strong>de</strong> directoare pe baza microfonului utilizat i a vorbitorului.<br />
Dezvoltatorii bazei <strong>de</strong> date recomand un set <strong>de</strong> antrenare i unul <strong>de</strong> testare sub forma unor fi iere<br />
text ce con in c ile <strong>de</strong> acces i <strong>de</strong>numirile fi ierelor. Pentru experimente am utilizat aceste seturi <strong>de</strong><br />
antrenare i testare, pentru a putea compara rezultatele ob inute cu cele din literatur . Setul <strong>de</strong> antrenare<br />
con ine rostirile scurte a 13 vorbitori b rba i, 6 femei i 1 copil. Setul <strong>de</strong> test con ine 6 vorbitori: 3 femei<br />
i 3 b rba i diferi i <strong>de</strong> cei folo<strong>si</strong> i pentru antrenare. Rostirile <strong>de</strong> antrenare i <strong>de</strong> test au fost înregistrate cu<br />
acela i microfon.<br />
E + ‘d’ z r h A: o m 0 i n - ’ts ’t v<br />
e: u: s u ’k -: 2: l o: l: J j 2 i: ~ X<br />
Tabelul 4.1. Cele 32 <strong>de</strong> foneme din baza <strong>de</strong> date OASIS Numbers<br />
Dic ionarul <strong>de</strong> foneme a bazei <strong>de</strong> date con ine un num r <strong>de</strong> 32 <strong>de</strong> foneme marcate conform<br />
standardului SAMPA (Speech Assessment Methods Phonetic Alphabet) pe baza IPA (International<br />
Phonetic Alphabet). Cele 32 <strong>de</strong> foneme sunt prezentate în Tabelul 4.1.<br />
% & '( #<br />
Structura re elelor <strong>de</strong> tip perceptron multistrat utilizate pentru primele experimente <strong>de</strong> cla<strong>si</strong>ficare este<br />
prezentat în Fig. 4.8.<br />
Fig. 4.8. Arhitectura perceptronului multistrat pentru cla<strong>si</strong>ficarea fonemelor f r informa ii <strong>de</strong> context<br />
Pentru experimentele f r informa ii<br />
<strong>de</strong> context vectorii acustici <strong>de</strong> la intrarea<br />
re elei con in 13 coeficien ii Mel cepstrali<br />
extra i dintr-un cadru <strong>de</strong> vorbire precum<br />
i 13 coeficien i <strong>de</strong>lta i 13 coeficien i <strong>de</strong><br />
accelera ie calcula i pe baza acestora.<br />
Astfel pentru cei 39 <strong>de</strong> coeficien i avem<br />
39 <strong>de</strong> intr ri în re ea. Stratul <strong>de</strong> ie ire<br />
con ine 32 <strong>de</strong> neuroni, câte unul pentru<br />
fiecare fonem din dic ionarul bazei <strong>de</strong><br />
date. Num rul <strong>de</strong> neuroni din stratul<br />
ascuns poate fi ajustat. Tabelele <strong>de</strong> mai<br />
jos cuprind rezultatele cla<strong>si</strong>fic rii<br />
realizate cu trei re ele neuronale: prima<br />
cu 64 neuroni în stratul ascuns, cel <strong>de</strong> al<br />
doilea cu 128 neuroni, iar al treilea cu 256 neuroni în nivelul<br />
ascuns.<br />
Fig. 4.9. Evolu ia rezultatelor <strong>de</strong> cla<strong>si</strong>ficare ob inute<br />
În cel <strong>de</strong> al doilea experiment am introdus informa ii <strong>de</strong> context, adic pentru fiecare cadru <strong>de</strong> vorbire<br />
am luat în con<strong>si</strong><strong>de</strong>rare i cadrele vecine. Re eaua astfel construit a avut 9 x 39 = 351 intr ri <strong>de</strong>oarece am<br />
folo<strong>si</strong>t în total 9 cadre: cadrul actual împreun cu 4 cadre vecine din stânga i 4 cadre vecine din dreapta<br />
acestuia. Arhitectura re elei astfel construite este prezentat în Fig. 4.8. Num rul ie irilor a r mas 32<br />
exact ca la experimentele anterioare iar num rul neuronilor din stratul ascuns a fost crescut la 512. Dup
) ! !<br />
cum se ve<strong>de</strong> i din figur , am folo<strong>si</strong>t func ii <strong>de</strong> transfer <strong>si</strong>gmoi<strong>de</strong> bipolare pentru neuronii din stratul<br />
ascuns i func ii <strong>si</strong>gmoi<strong>de</strong> unipolare pentru stratul <strong>de</strong> ie ire. Re eaua a fost adaptat 450 <strong>de</strong> epoci cu<br />
func ia <strong>de</strong> antrenare incremental secven ial (sequential or<strong>de</strong>r incremental training function) [30, 31] i<br />
am folo<strong>si</strong>t pentru oprirea adapt rii criteriul <strong>de</strong> supraantrenare <strong>de</strong>scris în [18].<br />
Fig. 4.10. Arhitectura re elei pentru recunoa terea fonemelor utilizând informa ii <strong>de</strong> context [35]<br />
Rezultatele ob inute sunt prezentate în tabelele 4.5 i 4.6.<br />
&<br />
4<br />
#<br />
:8 78 =8 >8 @8 E8 B8 A8 98 :88<br />
4 # " 5# 67 8 B8 :B B: 9E B= >7 B> B= B@ 7@ B@ EA BE :: BE >E BE B7 BE 9B<br />
Tabelul 4.2. Rezultatele <strong>de</strong> cla<strong>si</strong>ficare ob inute cu 64 <strong>de</strong> neuroni în stratul ascuns<br />
&<br />
4<br />
#<br />
:8 78 =8 >8 @8 E8 B8 A8 98 :88<br />
4 # " 5# 67 8 B: 89 B= 8@ B> 8A B> 99 B@ A8 BE :E BE @E BE 9> BB 7E BB @><br />
& #<br />
4<br />
Tabelul 4.3. Rezultatele <strong>de</strong> cla<strong>si</strong>ficare ob inute cu 128 <strong>de</strong> neuroni în stratul ascuns<br />
:8 78 =8 >8 @8 E8 B8 A8 98 :88<br />
4 # " 5# 67 8 B: @B B= 97 B@ =: B@ :9 BE A> BB 7> BB @A BB 9: BA =: BA @9<br />
Tabelul 4.4. Rezultatele <strong>de</strong> cla<strong>si</strong>ficare ob inute cu 256 <strong>de</strong> neuroni în stratul ascuns<br />
Fig. 4.11. Evolu ia ratei <strong>de</strong> cla<strong>si</strong>ficare pentru baza <strong>de</strong> date<br />
OASIS Numbers [43]<br />
& #<br />
# 4 9<br />
4 # " 5# 67 8<br />
:: EB B><br />
@8 B> 8E<br />
:88 BA 77<br />
:@8 B9 E9<br />
788 A: E=<br />
7@8 A7 9=<br />
=88 A= >A<br />
=@8 A= BB<br />
>@8 A> 7@<br />
Tabelul 4.5. Rezultatele cla<strong>si</strong>fic rii fonemelor<br />
folo<strong>si</strong>nd informa ii <strong>de</strong> context [43]<br />
Dup cum se poate ve<strong>de</strong>a din tabelul 4.6, utilizarea informa iilor <strong>de</strong> context duce la cre terea<br />
semnificativ (aproximativ 5%) a ratei <strong>de</strong> cla<strong>si</strong>ficare a fonemelor.<br />
3 ! ! : 4 4<br />
#<br />
# 4 9<br />
# " 5#<br />
" 5#:<br />
% ; 4<br />
7E7@ B9 @A @=E<br />
J =:7 E> >7 :::<br />
K 797 EB :7 9E<br />
! BE@ B@ A7 :A@<br />
=77 @= >7 :@8<br />
9:A A7 B9 :@A<br />
$/ 9@= >E 7B @:7<br />
@E: B> E9 :>7<br />
7=
$ / H " !"<br />
7><br />
7@9 @@ E ::@<br />
:8@= BB 7: 7>8<br />
@97 EA @A :AE<br />
:=7> @8 EA E@=<br />
0 :7@7 B7 >> =>@<br />
" EA8 B> B: :B7<br />
@7@ EE EB :B@<br />
1 >97 E7 E :A><br />
/ 9:= E@ @ =:@<br />
/ 79= 98 >> 7A<br />
" B=A BB : :E9<br />
7=E A8 8A >B<br />
H 79@ A@ >7 >=<br />
0/ 7=B :A @B :9=<br />
7/ 77A B8 E: EB<br />
>== 7> 9> =7@<br />
/ :99 E7 A: B><br />
/ :>B >= @> A=<br />
:7@ >= 7 B:<br />
2 :7A E> A> >@<br />
7 =>@ B@ =E A@<br />
/ =79 9: >9 7A<br />
L :9:97 9A >B 79=<br />
D 8 8 8<br />
Tabelul 4.6. Rezultatele cla<strong>si</strong>fic rii pe foneme [43]<br />
% & '( #<br />
În continuare pentru cre terea performan elor mo<strong>de</strong>lului acustic am realizat experimente i cu re ele<br />
neuronale dinamice.<br />
Prima structur <strong>de</strong> re ea dinamic utilizat a fost re eaua cu linii <strong>de</strong> întârziere temporale amplasate în<br />
stratul <strong>de</strong> intrare (Focused time-<strong>de</strong>lay neural network - FTDNN). Aceast re ea este o extin<strong>de</strong>re a re elelor<br />
<strong>de</strong> tip perceptron multistrat statice, având elemente dinamice doar la intrare. Fig. 4.12 prezint arhitectura<br />
acestui tip <strong>de</strong> re ea în forma utilizat pentru cla<strong>si</strong>ficare.<br />
Cele 39 <strong>de</strong> intr ri corespund coeficien ilor Mel cepstrali respectiv <strong>de</strong>lta i <strong>de</strong>lta - <strong>de</strong>lta. Cele 32 <strong>de</strong><br />
ie iri ale re elei corespund fonemelor din dic ionarul <strong>de</strong> foneme a bazei <strong>de</strong> date. Func ia <strong>de</strong> transfer<br />
utilizat pentru nivelul ascuns este func ia <strong>si</strong>gmoid unipolar iar pentru ie ire s-a folo<strong>si</strong>t func ia softmax<br />
care este asem n toare func iei <strong>si</strong>gmoid unipolar , poate lua valori între 0 i 1 i are impus<br />
constrângerea ca suma ie irilor s fie egal cu 1, pentru a putea fi con<strong>si</strong><strong>de</strong>rate valori <strong>de</strong> probabilit i.<br />
Fig. 4.12. Arhitectura re elei neuronale FTDNN [40]<br />
La intrarea re elei introducem vectorii caracteristici pentru cadrul curent respectiv <strong>de</strong> la 4 la 8 cadre<br />
vecine <strong>de</strong> context prin intermediul liniilor <strong>de</strong> întârziere (TDL – Time Delay Line) care<br />
poate introduce o <strong>de</strong>calare d = 0, 1, 2, 3, ... , 8 pa i.<br />
Astfel re eaua FTDNN 39 x 9 x 128 cu 4 linii <strong>de</strong> întârziere (d = 0 : 4) are un num r <strong>de</strong> 39 x 5 x 128 =<br />
24 960 pon<strong>de</strong>ri la intrare (Input Weights) i 128 x 32 = 4 096 pon<strong>de</strong>ri între stratul ascuns i cel <strong>de</strong> ie ire<br />
(Layer Weights), num rul total al pon<strong>de</strong>rilor fiind <strong>de</strong> 29 056.<br />
Cel <strong>de</strong> al doilea tip <strong>de</strong> re ea dinamic testat poart <strong>de</strong>numirea <strong>de</strong> re ea cu întârzieri temporale cu linii<br />
<strong>de</strong> întârziere distribuite în fiecare nivel <strong>de</strong> re ea (Distributed time-<strong>de</strong>lay neural network<br />
- DTDNN). Arhitectura re elei DTDNN este prezentat în Fig. 4.13.
Fig. 4.13. Arhitectura re elei neuronale DTDNN [41]<br />
) ! !<br />
Dac la intrare aplic m acela i num r <strong>de</strong> linii <strong>de</strong> întârziere ca i în cazul FTDNN (d 1 = 4 : 8), în<br />
stratul ascuns avem mai pu ine linii <strong>de</strong> întârziere (d 2 = 3 : 5). O astfel <strong>de</strong> re ea cu 128 neuroni în stratul<br />
ascuns i cu 4 linii <strong>de</strong> întârziere la intrare i 3 linii <strong>de</strong> întârziere în stratul ascuns are 39 x 5 x 128 = 24 960<br />
pon<strong>de</strong>ri <strong>de</strong> intrare (IW) i 128 x 4 x 32 = 16 384 pon<strong>de</strong>ri între stratul <strong>de</strong> intrare i cel <strong>de</strong> ie ire (LW),<br />
num rul total <strong>de</strong> pon<strong>de</strong>ri fiind <strong>de</strong> 41 344.<br />
Cel <strong>de</strong> al treilea tip <strong>de</strong> re ea dinamic testat este re eaua neuronal recurent care are o leg tur <strong>de</strong><br />
revenire între nivelul ascuns i nivelul <strong>de</strong> intrare printr-o linie <strong>de</strong> întârziere (Layer-Recurrent Network -<br />
LRNN). Acest tip <strong>de</strong> re ea este o <strong>de</strong>zvoltare a re elelor neuronale introduse <strong>de</strong> Elman [31]. Pe când re eaua<br />
Elman are doar dou nivele i func iile <strong>de</strong> transfer pentru stratul ascuns i cel <strong>de</strong> ie ire erau fixate ca fiind<br />
func ia <strong>si</strong>gmoid bipolar i func ia liniar , pentru o re ea LRNN putem avea o arhitectur cu mai multe<br />
straturi, fiecare strat ascuns poate avea o leg tur cu stratul anterior i func iile <strong>de</strong> transfer pot fi alese<br />
dup nece<strong>si</strong>t i.<br />
Pentru experimente am folo<strong>si</strong>t re eaua prezentat în Fig. 4.14 cu func ie <strong>de</strong> transfer <strong>si</strong>gmoid<br />
unipolar pentru nivelul ascuns i func ie <strong>de</strong> transfer softmax pentru ie ire.<br />
Fig. 4.14. Arhitectura re elei neuronale LRNN [41]<br />
Rezultatele cla<strong>si</strong>fic rii cu cele 3 tipuri <strong>de</strong> re ele dinamice sunt prezentate în Tabelul 4.7, Tabelul 4.8,<br />
i Tabelul 4.9.<br />
# # 4 9<br />
4 # " 5#<br />
:8 @A :7<br />
78 EE >B<br />
=8 EA ::<br />
>8 E9 7=<br />
@8 B8 :E<br />
E8 B: :=<br />
B8 B7 8A<br />
A8 B= 8:<br />
98 B> 9><br />
:88 B> E@<br />
Tabelul 4.7. Rezultatele cla<strong>si</strong>fic rii<br />
ob inute cu re eaua FTDNN<br />
# # 4 9<br />
4 # " 5#<br />
:8 @9 :7<br />
78 EB BB<br />
=8 E9 9><br />
>8 B: >7<br />
@8 B7 AB<br />
E8 B= 9E<br />
B8 B@ 87<br />
A8 BE :E<br />
98 BE 9A<br />
:88 BB B7<br />
Tabelul 4.8. Rezultatele cla<strong>si</strong>fic rii<br />
ob inute cu re eaua DTDNN<br />
& ( 1 " ' $ '<br />
# # 4 9<br />
4 # " 5#<br />
:8 E> AE<br />
78 E9 >B<br />
=8 B: 9><br />
>8 B> =9<br />
@8 BE :7<br />
E8 BB E@<br />
B8 BA >=<br />
A8 B9 7@<br />
98 A8 :=<br />
:88 A8 AB<br />
Tabelul 4.9. Rezultatele cla<strong>si</strong>fic rii<br />
ob inute cu re eaua LRNN<br />
Baza <strong>de</strong> date TIMIT con ine 61 <strong>de</strong> foneme codate conform alfabetului fonetic ARPABET – vezi<br />
7@
$ / H " !"<br />
Anexa B. În testele efectuate am încercat s cla<strong>si</strong>fic m toate cele 61 foneme din baza <strong>de</strong> date TIMIT.<br />
Lista fonemelor din dic ionarul bazei <strong>de</strong> date TIMIT este prezentat în Tabelul 4.10.<br />
M " N 1 N aa r kcl k s uw eng<br />
O gcl g w epi q ao l axr ow n m tcl<br />
O N ay dh hh z pcl ax th bcl b ux f<br />
1 P 3 N ch uh pau jh nx ax-h zh em<br />
Tabelul 4.10. Lista fonemelor din dic ionarul bazei <strong>de</strong> date TIMIT<br />
Baza <strong>de</strong> date este împ r it în dou p r i: setul <strong>de</strong> antrenare i cel <strong>de</strong> testare i con ine în totalitate<br />
rostirile a 630 <strong>de</strong> vorbitori grupa i pe baz <strong>de</strong> dialect în 8 clase. Fiecare vorbitor roste te 10 propozi ii.<br />
Prima re eaua neuronal folo<strong>si</strong>t pentru cla<strong>si</strong>ficare a fost <strong>de</strong> tip perceptron multistrat cu un strat <strong>de</strong><br />
intrare, un strat ascuns i un strat <strong>de</strong> ie ire. Pentru aceast structur am modificat num rul <strong>de</strong> neuroni din<br />
stratul ascuns.<br />
Am realizat i un al doilea test cu o re ea cu dou straturi ascunse, folo<strong>si</strong>nd i informa ii <strong>de</strong> context,<br />
m rind num rul <strong>de</strong> intr ri astfel încât la intrarea re elei am prezentat pe lâng vectorul <strong>de</strong> caracteristici<br />
curent, patru cadre <strong>de</strong> context din stânga i 4 cadre <strong>de</strong> context din dreapta cadrului curent.<br />
Rezultatele au fost încurajatoare doar la cel <strong>de</strong> al treilea experiment, când am folo<strong>si</strong>t o re ea suficient<br />
<strong>de</strong> mare cu un nivel ascuns având peste 1 000 <strong>de</strong> elemente <strong>de</strong> procesare.<br />
Arhitecturile cu care am realizat<br />
testele au fost:<br />
• 39 x 64 x 61;<br />
• 39 x 128 x 61;<br />
• 39 x 256 x 61;<br />
• 351 x 128 x 64 x 61;<br />
• 351 x 1024 x 61.<br />
Primele trei re ele testate au avut un<br />
num r <strong>de</strong> 39 intr ri. În cazul acestor<br />
re ele nu am folo<strong>si</strong>t informa ii <strong>de</strong> context.<br />
Intr rile re elei au fost cei 39 <strong>de</strong><br />
coeficien i extra i dintr-un cadru <strong>de</strong><br />
vorbire.<br />
7E<br />
Fig. 4.15. Rezultatele cla<strong>si</strong>fic rii pentru baza <strong>de</strong> date TIMIT, f r<br />
informa ii <strong>de</strong> context<br />
Baza <strong>de</strong> date TIMIT con ine o serie <strong>de</strong> seturi <strong>de</strong> antrenare i testare recomandate. Pentru acest test am<br />
utilizat setul <strong>de</strong> antrenare <strong>de</strong>numit TRAIN_SUMMIT i pentru evaluare setul <strong>de</strong> test TEST_CORE. Setul<br />
<strong>de</strong> antrenare TRAIN_SUMMIT.TXT con ine rostirile a 50 <strong>de</strong> vorbitori dintre care 18 b rba i i 32 <strong>de</strong><br />
femei acoperind toate cele 8 grupe <strong>de</strong> dialect. În setul <strong>de</strong> evaluare TEST_CORE avem rostirile a 24 <strong>de</strong><br />
vorbitori: 8 b rba i i 16 femei (câte un b rbat i 2 femei din fiecare dintre cele 8 grupe <strong>de</strong> dialect).<br />
Rezultatele experimentale sunt prezentate în Fig. 4.15 i în urm toarele tabele.<br />
& # 4<br />
:8 78 =8 >8 @8 E8 B8 A8 98 :88<br />
4: # " 5# 67 8 79 >9 == => =@ BB =B 7A =A 7@ =9 8> =9 E> >8 8B >8 >8 >8 E><br />
Tabelul 4.11. Rezultatele <strong>de</strong> cla<strong>si</strong>ficare pentru baza <strong>de</strong> date TIMIT în cazul re elei cu 64 <strong>de</strong> neuroni în stratul ascuns<br />
& # 4 :8 78 =8 >8 @8 E8 B8 A8 98 :88<br />
4: # " 5# 67 8 =: @8 =@ :@ =B :> =A E@ =9 >A >8 :E >8 @A >: >> >: 98 >7 7E<br />
Tabelul 4.12. Rezultatele <strong>de</strong> cla<strong>si</strong>ficare pentru baza <strong>de</strong> date TIMIT în cazul re elei cu 128 <strong>de</strong> neuroni în stratul<br />
ascuns<br />
& # 4 :8 78 =8 >8 @8 E8 B8 A8 98 :88<br />
4: # " 5# 67 8 == 89 =E 9@ =A 9: >8 :@ >8 A@ >: == >: B> >: 99 >7 == >7 EA<br />
Tabelul 4.13. Rezultatele <strong>de</strong> cla<strong>si</strong>ficare pentru baza <strong>de</strong> date TIMIT în cazul re elei cu 256 <strong>de</strong> neuroni în stratul<br />
ascuns
) ! !<br />
Ultimele dou re ele testate au avut câte 9 x 39 = 351 intr ri, <strong>de</strong>oarece am folo<strong>si</strong>t pe lâng fereastra <strong>de</strong><br />
analiz curent i informa ii <strong>de</strong> context prin introducerea a 4 ferestre <strong>de</strong> context din stânga i 4 ferestre <strong>de</strong><br />
context din dreapta ferestrei <strong>de</strong> analiz curente. Procesul <strong>de</strong> antrenare a unui astfel <strong>de</strong> <strong>si</strong>stem este foarte<br />
lent <strong>de</strong>oarece num rul pon<strong>de</strong>rilor cre te semnificativ. Structurile celor dou re ele <strong>de</strong> tip perceptron<br />
multistrat utilizate în experimente sunt prezentate în Fig. 4.16 i Fig. 4.17. În ambele re ele testate, am<br />
folo<strong>si</strong>t func ii <strong>de</strong> transfer <strong>si</strong>gmoi<strong>de</strong> bipolare (tan<strong>si</strong>g) pentru neuronii din stratul ascuns i func ii <strong>de</strong><br />
transfer <strong>si</strong>gmoi<strong>de</strong> unipolare (log<strong>si</strong>g) pentru neuronii din stratul <strong>de</strong> ie ire. Func ia <strong>de</strong> antrenare folo<strong>si</strong>t a<br />
fost trains – o func ie <strong>de</strong> antrenare cu parcurgere prin blocuri bazat pe algoritmul backpropagation of<br />
error. Aceast metod d cele mai bune rezultate i timpii <strong>de</strong> antrenare cei mai scur i pentru problemele<br />
<strong>de</strong> recunoa tere a formelor cu un set mare <strong>de</strong> antrenament [30, 31].<br />
Fig. 4.16. Arhitectura re elei MLP 351x128x64x61<br />
Fig. 4.17. Arhitectura re elei MLP 351x1024x61<br />
Pentru ambele teste am folo<strong>si</strong>t partea <strong>de</strong>numit CORE (miez) a bazei <strong>de</strong> date TIMIT.<br />
Tabelul 4.14 prezint ratele <strong>de</strong> recunoa tere în procente a celor 61 foneme din dic ionarul TIMIT,<br />
folo<strong>si</strong>nd ca intrare 9 x 39 coeficien i mel cepstrali i <strong>de</strong>lta. Am testat re eaua întot<strong>de</strong>auna atât cu<br />
secven ele <strong>de</strong> antrenare cât i cu secven ele <strong>de</strong> test. Rezultatele ob inute pe secven ele <strong>de</strong> antrenare au fost<br />
mai bune <strong>de</strong>cât rezultatele ob inute pe datele <strong>de</strong> testare, ceea ce este normal, dat fiind faptul c pentru a<br />
realiza recunoa terea datelor <strong>de</strong> test re eaua trebuie s generalizeze din secven ele <strong>de</strong> antrenament. Totu i<br />
am realizat testarea pe ambele seturi <strong>de</strong> date pentru a ve<strong>de</strong>a dac re eaua nu este supraantrenat .<br />
În tabelul rezultatelor am inclus i parametrul <strong>de</strong> performan a re elei. Acest parametru a sc zut<br />
continuu odat cu cre terea num rului <strong>de</strong> epoci <strong>de</strong> antrenament dup o curb aproximativ exponen ial .<br />
#<br />
# 4 9 5 ! <<br />
4 ! 4 # " 5# 67 8 < => '- ) #<br />
# 4 9 5 ! <<br />
? 4 ! 4 # " 5# 67 8 <<br />
:8 7: 788@ 8 8:@B : :E EBEB 8 8:E@>>9<br />
@8 7E AB 8 8:>@8> :8 7E E:A= 8 8:>B:=E<br />
:88 79 B=8@ 8 8:=BB9@ @8 => 9AE9 8 8:79@A8<br />
:@8 == E>9= 8 8:=7:: :88 =A =>BA 8 8::A77=<br />
788 => @>== 8 8:7A:E: :@8 >7 >7:7 8 8:8ABA9<br />
7@8 =B 9A>A 8 8:7==>= 788 >@ A>9= 8 8:87>87<br />
=88 =9 >89A 8 8:7::8: 7@8 >E A@BE 8 889B87E<br />
=@8 >: >EEB 8 8::B:9= 7E8 >B >E7@ 8 889A::A<br />
Tabelul 4.14. Rezultatele ob inute cu re eaua MLP Tabelul 4.15. Rezultatele ob inute cu re eaua MLP<br />
351x128x64x61<br />
351x1024x61<br />
În cel <strong>de</strong> al doilea experiment am utilizat o re ea cu mai multe pon<strong>de</strong>ri (1024 <strong>de</strong> neuroni în nivelul<br />
ascuns). Aceast re ea este asem n toare cu cel <strong>de</strong>scris în [18]. De aceast dat am antrenat re eaua pân<br />
am ajuns la rezultate comparativ egale cu cele ob inute cu re eaua mai mic . Rezultatele sunt prezentate în<br />
Tabelul 4.15. Curba <strong>de</strong> evolu ie a performan ei re elei este reprezentat grafic în Fig. 4.18.<br />
Un al treilea test a fost realizat pe o parte mai mic a bazei <strong>de</strong> date TIMIT i anume doar pe datele <strong>de</strong><br />
antrenament i <strong>de</strong> test din directorul DR1. Men ion m, c datele <strong>de</strong> antrenament i <strong>de</strong> test din baza <strong>de</strong> date<br />
TIMIT sunt grupate pe 8 asemenea directoare. Astfel putem spune cu aproxima ie, c am utilizat<br />
aproximativ 1/8 din baza <strong>de</strong> date i am folo<strong>si</strong>t vorbitori ai unui <strong>si</strong>ngur dialect. Rezultatele ob inute sunt<br />
7B
$ / H " !"<br />
mai bune pentru acest experiment, <strong>de</strong>oarece datele <strong>de</strong> cla<strong>si</strong>ficat i secven ele <strong>de</strong> antrenare sunt<br />
semnificativ mai pu ine. Ratele <strong>de</strong> cla<strong>si</strong>ficare a fonemelor sunt prezentate în Tabelul 4.16.<br />
Fig. 4.18. Evolu ia parametrului <strong>de</strong> performan pe parcursul<br />
procesului <strong>de</strong> antrenare pentru re eaua MLP 351x1024x61<br />
7A<br />
& )<br />
#<br />
4<br />
4 ! 4 # ;4 67 8<br />
=8 =@ 9<br />
@8 =9 7=<br />
:88 >= ==<br />
Tabelul 4.16. Rata <strong>de</strong> recunoa tere pentru DR1<br />
din baza <strong>de</strong> date TIMIT<br />
Rezultatele ob inute pentru baza <strong>de</strong> date TIMIT sunt mai slabe <strong>de</strong>cât cele raportate în literatura <strong>de</strong><br />
specialitate. Explica ia poate fi dat pe <strong>de</strong> o parte prin faptul c <strong>si</strong>stemele recent <strong>de</strong>zvoltate folosesc re ele<br />
neuronale recurente i pe <strong>de</strong> alt parte <strong>si</strong>stemele cu care facem compara ia sunt implementate pe sta ii<br />
<strong>de</strong>dicate sau mult mai puternice <strong>de</strong>cât un PC, oferind po<strong>si</strong>bilitatea antren rii pe parcursul a mai multor<br />
epoci. Unele lucr ri prezint recunoa terea fonemelor pe grupe <strong>de</strong> foneme (<strong>de</strong> exemplu 39 <strong>de</strong> grupe <strong>de</strong><br />
foneme în locul celor 61 foneme) ceea ce cre te la rândul ei rata <strong>de</strong> recunoa tere.<br />
Arhitectura CNN (Concurrent Neural Network) prezentat în [21, 22], ar putea fi utilizat pentru<br />
cla<strong>si</strong>ficarea fonemelor pe categorii. Aceast metod ar reduce con<strong>si</strong><strong>de</strong>rabil num rul neuronilor din nivelul<br />
ascuns, ar sc <strong>de</strong>a i num rul ie irilor re elei precum i num rul secven elor <strong>de</strong> antrenare. Astfel am putea<br />
ajunge la timpi <strong>de</strong> antrenare mai mici. De exemplu s-ar putea con<strong>si</strong><strong>de</strong>ra dou clase distincte: cea a<br />
vocalelor i cea a consoanelor. Elementele celor dou clase se pot distinge cu u urin folo<strong>si</strong>nd meto<strong>de</strong><br />
bazate pe energia semnalului i pe num rul <strong>de</strong> treceri prin zero [73, 111]. Am putea pe urm s antren m<br />
dou re ele MLP diferite, una pentru recunoa terea vocalelor, cealalt pentru recunoa terea consoanelor.<br />
Antrenarea celor dou re ele se poate realiza în paralel pe dou sta ii <strong>de</strong> calcul. Printr-un asemenea <strong>si</strong>stem<br />
se pot atinge acelea i rate <strong>de</strong> recunoa tere, îns cu dou re ele mult mai <strong>si</strong>mple, cu mai pu ine pon<strong>de</strong>ri.<br />
Dac realiz m recunoa terea pe grupe <strong>de</strong> foneme (vocale, consoane sau chiar cele 39 <strong>de</strong> grupe<br />
prezentate în documenta ia TIMIT) utilizând re elele neuronale competitive, durata procesului <strong>de</strong><br />
antrenare sca<strong>de</strong> i putem antrena pe mai multe sta ii <strong>de</strong> lucru mai multe re ele neuronale în paralel.<br />
Testele realizate pe doar o parte a bazei <strong>de</strong> date TIMIT <strong>de</strong>monstreaz , c o re ea i<strong>de</strong>ntic mai bine<br />
antrenat ar duce la rezultate mai bune.<br />
Rezultatele prezentate în acest capitol (mai ales cele ob inute pentru baza <strong>de</strong> date OASIS Numbers)<br />
sunt suficient <strong>de</strong> bune pentru a concluziona, c <strong>si</strong>stemul nostru pentru cla<strong>si</strong>ficarea fonemelor poate fi<br />
utilizat ca mo<strong>de</strong>l acustic al unui <strong>si</strong>stem hibrid <strong>de</strong> recunoa tere a vorbirii continue.<br />
Pentru cla<strong>si</strong>ficarea fonemelor arhitectura cea mai potrivit este re eaua cu un <strong>si</strong>ngur strat ascuns cu<br />
neuroni având func ia <strong>de</strong> transfer <strong>si</strong>gmoid unipolar . Introducerea func iei <strong>de</strong> transfer softmax pentru<br />
neuronii din stratul <strong>de</strong> ie ire ne ofer la ie ire valori <strong>de</strong> probabilit i, dar cre te timpul <strong>de</strong> antrenare.<br />
Func ia <strong>de</strong> antrenare cea mai potrivit din con<strong>si</strong><strong>de</strong>rente <strong>de</strong> vitez i necesar <strong>de</strong> memorie este trainbfg.<br />
Func ia trainrp are cele mai mici cerin e <strong>de</strong> memorie, îns procesul <strong>de</strong> antrenare are durat mai mare.<br />
Func ia trainlm ofer durata <strong>de</strong> antrenare cea mai scurt îns necesarul <strong>de</strong> memorie este mai mare <strong>de</strong>cât în<br />
cazul func iei trainbfg.<br />
Rezultatele confirm faptul, c re elele dinamice sunt mai puternice <strong>de</strong>cât cele statice în problema<br />
cla<strong>si</strong>fic rii fonemelor. Utilizarea re elelor cu întârzieri temporale în locul perceptronului multistrat duce la<br />
cre terea ratei <strong>de</strong> cla<strong>si</strong>ficare dar are ca <strong>de</strong>zavantaj cre terea timpilor <strong>de</strong> antrenare. Re elele recurente<br />
<strong>de</strong>p esc atât perceptronul multistrat cât i re elele cu întârzieri temporale.<br />
Utilizarea informa iilor <strong>de</strong> context duce la cre terea semnificativ a ratei <strong>de</strong> cla<strong>si</strong>ficare dar cre te<br />
num rul <strong>de</strong> intr ri a re elelor statice sau a num rului <strong>de</strong> linii <strong>de</strong> întârziere pentru re elele cu întârzieri<br />
temporale ceea ce duce în mod direct la cre terea num rului <strong>de</strong> pon<strong>de</strong>ri a re elelor i implicit la timpi <strong>de</strong><br />
antrenare mai mari.<br />
În compara ie cu alte <strong>si</strong>steme <strong>de</strong> mo<strong>de</strong>lare acustic realizate cu mo<strong>de</strong>le <strong>de</strong> mixturi Gaus<strong>si</strong>ene<br />
(Gaus<strong>si</strong>an Mixture Mo<strong>de</strong>ls - GMM) [2], <strong>si</strong>stemul cu re ele neuronale ofer rezultate mai bune. Tabelul<br />
prezint <strong>si</strong>ntetic cele mai bune valori <strong>de</strong> cla<strong>si</strong>ficare ob inute cu diferite tipuri <strong>de</strong> re ele neuronale artificiale<br />
folo<strong>si</strong>nd sau nu informa ii <strong>de</strong> context i rezultatele ob inute folo<strong>si</strong>nd metoda mixturilor Gaus<strong>si</strong>ene cu<br />
num r diferit <strong>de</strong> mixturi i cadre pentru baza <strong>de</strong> date OASIS Numbers.
) ! !<br />
( ! ! 4 : 4 # " 5# 67 8<br />
? :E O : E= =E<br />
? :E O = B8 >><br />
? :E O @ B> 8=<br />
(( =9O:7AO=7 > Q R ! 1 B> E@<br />
? :E O B BE :8<br />
&% =9OE>O=7 : BE 9B<br />
? :E O 9 BB =E<br />
&% =9O:7AO=7 : BB @><br />
(( =9O:7AO=7 > Q R ! 1<br />
BB B7<br />
= Q R ! 1 " "<br />
&% =9O7@EO=7 : BA @9<br />
&)(( =9OO:7AO=7 : A8 AB<br />
&% =@:O@:7O=7 9 A> 7@<br />
Tabelul 4.17. Compara ia rezultatelor <strong>de</strong> cla<strong>si</strong>ficare cu rezultatele ob inute prin metoda mixturilor Gaus<strong>si</strong>ene<br />
( $<br />
Mo<strong>de</strong>lul lingvistic este un element <strong>de</strong>osebit <strong>de</strong> important al oric rui <strong>si</strong>stem <strong>de</strong> recunoa tere a vorbirii<br />
continue. El îmbun t e te semnificativ performan ele <strong>si</strong>stemului restric ionând unele combina ii <strong>de</strong><br />
cuvinte care oricum nu ar avea sens. Restric ionarea introdus înseamn <strong>de</strong> fapt o reducere a spa iului <strong>de</strong><br />
c utare a solu iilor. Mo<strong>de</strong>lele lingvistice înglobeaz informa ii a priori însu ite în prealabil pe baza unor<br />
colec ii mari <strong>de</strong> texte <strong>de</strong> antrenare.<br />
( '<br />
Mo<strong>de</strong>lele lingvistice pot fi realizate diferit, utilizând diferite unelte matematice. În general ele pot fi<br />
împ r ite în urm toarele categorii:<br />
• Mo<strong>de</strong>le uniforme;<br />
• Mo<strong>de</strong>le lingvistice cu automate secven iale cu st ri finite;<br />
• Mo<strong>de</strong>le lingvistice gramaticale;<br />
• Mo<strong>de</strong>le lingvistice gramaticale statistice;<br />
• Mo<strong>de</strong>le statistice.<br />
( $ 5 6 7<br />
Acest tip <strong>de</strong> mo<strong>de</strong>le lingvistice încearc s estimeze probabilitatea <strong>de</strong> apari ie a urm torului cuvânt pe<br />
baza secven ei <strong>de</strong> n-1 cuvinte anterioare.<br />
Problema cre rii unui mo<strong>de</strong>l lingvistic statistic se poate <strong>de</strong>finii astfel: având la dispozi ie un<br />
vocabular V i o colec ie <strong>de</strong> texte <strong>de</strong> antrenare V * cât mai mare (în mod i<strong>de</strong>al infinit), trebuie s g <strong>si</strong>m din<br />
colec ia <strong>de</strong> texte <strong>de</strong> antrenare (V * ) un set <strong>de</strong> probabilit i p(wi) corespunz tor fiec rui cuvânt wi din<br />
vocabularul V, astfel încât ele s satisfac condi iile generale pentru o distribu ie <strong>de</strong> probabilitate:<br />
p(<br />
w ) = 1<br />
Ec. 5.1<br />
i<br />
wi∈V<br />
p( wi<br />
) ≥ 0,<br />
∀wi<br />
∈V<br />
Ec. 5.2<br />
Astfel va trebui s calcul m probabilitatea p ( w1<br />
) a unei secven e <strong>de</strong> cuvinte w 1 = ( w1,<br />
w2,...,<br />
wn<br />
) .<br />
Dezvoltând expre<strong>si</strong>a în probabilit i condi ionate, conform regulii lan ului <strong>de</strong> probabilit i, vom avea:<br />
n<br />
2<br />
n−1<br />
p ( w ) = p(<br />
w ) ⋅ p(<br />
w | w ) ⋅ p(<br />
w | w ) ⋅...<br />
⋅ p(<br />
w | w )<br />
1<br />
n<br />
1<br />
1<br />
p(<br />
w ) = p(<br />
w )<br />
n<br />
2 1<br />
n<br />
1 ⋅∏<br />
k = 2<br />
p(<br />
w<br />
k<br />
3<br />
| w<br />
1<br />
k −1<br />
1<br />
)<br />
n<br />
1<br />
n<br />
Ec. 5.3<br />
Istoria cuvântului poate fi redus la n-1 cuvinte.<br />
k−1<br />
k−1<br />
P(<br />
wk<br />
| w1<br />
) ≈ P(<br />
wk<br />
| wk−n+<br />
1)<br />
Ec. 5.4<br />
Aceast prezump ie face parte dintr-o clas <strong>de</strong> mo<strong>de</strong>le probabilistice care afirm , c putem estima<br />
probabilitatea unui eveniment viitor pe baza a câtorva evenimente din trecut. Acest mo<strong>de</strong>l se potrive te<br />
foarte bine i în cazul vorbirii, <strong>de</strong>oarece cuvântul pe care îl rostim nu <strong>de</strong>pin<strong>de</strong> <strong>de</strong> toate cuvintele rostite<br />
anterior. O <strong>de</strong>pen<strong>de</strong>n puternic se poate observa în cadrul aceleia i propozi ii sau fraze.<br />
79
$ / H " !"<br />
Valoarea n a mo<strong>de</strong>lelor n-gram se alege <strong>de</strong> obicei 1, 2, sau 3, rezultând astfel mo<strong>de</strong>lele: unigram,<br />
bigram i trigram.<br />
=8<br />
( $<br />
Pentru mo<strong>de</strong>lul unigram se folose te prezump ia c toate cuvintele sunt in<strong>de</strong>pen<strong>de</strong>nte.<br />
k−1<br />
P( wk<br />
| w1<br />
) ≈ P(<br />
wk<br />
)<br />
Ec. 5.5<br />
Dac înlocuim în ecua ia 5.5, rezult rela ia <strong>de</strong> calcul a probabilit ilor pentru mo<strong>de</strong>lul lingvistic<br />
unigram:<br />
n<br />
1<br />
p(<br />
w ) =<br />
n<br />
∏<br />
k = 1<br />
p(<br />
w )<br />
k<br />
Ec. 5.6<br />
Probabilitatea fiec rui cuvânt p(wk) se poate exprima prin frecven a relativ a respectivului cuvânt în<br />
colec ia <strong>de</strong> texte <strong>de</strong> antrenare V * :<br />
nk<br />
p wk<br />
N<br />
= ) (<br />
Ec. 5.7<br />
În rela ia <strong>de</strong> mai sus nk – este num rul <strong>de</strong> apari ii al cuvântului wk, iar N este num rul total <strong>de</strong> cuvinte<br />
din setul <strong>de</strong> antrenare.<br />
( $<br />
În cazul mo<strong>de</strong>lului bigram se con<strong>si</strong><strong>de</strong>r , c orice cuvânt <strong>de</strong>pin<strong>de</strong> doar <strong>de</strong> cuvântul care îl prece<strong>de</strong>.<br />
Astfel istoria cuvântului are lungimea unu.<br />
k−1<br />
P(<br />
wk<br />
| w1<br />
) ≈ P(<br />
wk<br />
| wk<br />
−1)<br />
Ec. 5.8<br />
Înlocuind prezump ia în Ecua ia 5.5, ob inem formula <strong>de</strong> calcul pentru mo<strong>de</strong>lul lingvistic bigram:<br />
n<br />
1<br />
p(<br />
w ) = p(<br />
w ) ⋅<br />
1<br />
n<br />
∏<br />
k = 2<br />
p(<br />
w<br />
k<br />
| w<br />
k −1<br />
)<br />
Ec. 5.9<br />
Pentru evaluarea probabilit ilor condi ionate <strong>de</strong> forma ( k | k −1)<br />
w w p , folo<strong>si</strong>m metoda MLE<br />
(Maximum Likelihood Estimation), num rând apari iile secven elor ( k 1, k ) w w − - notat cu .( k 1, k ) w w Nr − -<br />
i a secven elor ce încep cu cuvântul wk-1 – notat cu .( 1, ) w w Nr k − .<br />
Nr.(<br />
wk−1<br />
, wk<br />
)<br />
p(<br />
wk<br />
| wk<br />
− 1)<br />
= Ec. 5.10<br />
Nr.(<br />
w , w)<br />
.( −1,<br />
)<br />
( | −1) .( )<br />
≈<br />
Nr wk<br />
wk<br />
p wk<br />
wk<br />
Ec. 5.11<br />
Nr w<br />
( $<br />
k−1<br />
În cazul mo<strong>de</strong>lului trigram pentru evaluarea probabilit ii unui cuvânt se iau în con<strong>si</strong><strong>de</strong>rare dou<br />
cuvinte prece<strong>de</strong>nte. Prezump ia Markov utilizat în cazul mo<strong>de</strong>lului trigram poate fi scris :<br />
k−1<br />
k−1<br />
P(<br />
wk<br />
| w1<br />
) ≈ P(<br />
wk<br />
| wk<br />
−1,<br />
wk−2<br />
) = P(<br />
wk<br />
| wk<br />
−2<br />
)<br />
Ec. 5.12<br />
Înlocuind din nou în Ecua ia 5.5, ob inem rela ia <strong>de</strong> calcul a probabilit ilor dat <strong>de</strong> mo<strong>de</strong>lul trigram:<br />
n<br />
1<br />
p(<br />
w ) = p(<br />
w ) ⋅ p(<br />
w | w ) ⋅<br />
1<br />
2<br />
1<br />
n<br />
∏<br />
k = 3<br />
p(<br />
w<br />
k<br />
| w<br />
k −1<br />
, w<br />
k −2<br />
)<br />
k−1<br />
Ec. 5.13<br />
Pentru evaluarea probabilit ilor condi ionate putem folo<strong>si</strong> rela iile date <strong>de</strong> mo<strong>de</strong>lul bigram precum i:<br />
Nr.(<br />
wk−2<br />
, wk−1<br />
, wk<br />
)<br />
p(<br />
wk<br />
| wk−1<br />
, wk−2<br />
) ≈<br />
Ec. 5.14<br />
Nr.(<br />
w , w )<br />
( "<br />
( $ . 2 8<br />
Este metoda cea mai <strong>si</strong>mpl folo<strong>si</strong>t pentru estimarea probabilit ilor. I<strong>de</strong>ea const în calculul<br />
frecven ei <strong>de</strong> apari ie relative pentru fiecare cuvânt:<br />
k−2<br />
k−1
) ! !<br />
n<br />
FMLE =<br />
Ec. 5.15<br />
N<br />
Metoda va da valoarea <strong>de</strong> probabilitate exact cu condi ia ca textul pe care se realizeaz estimarea s<br />
fie <strong>de</strong> lungime infinit . Datorit faptului c în realitate nu putem avea astfel <strong>de</strong> colec ii <strong>de</strong> texte imense i<br />
în colec iile existente sunt multe cuvinte sau combina ii <strong>de</strong> cuvinte care nici nu apar, acest estimator este<br />
inutilizabil.<br />
(<br />
Netezirea prin adunare are la baz i<strong>de</strong>ea <strong>de</strong> a m ri cu o valoare f toate numerele <strong>de</strong> apari ie a<br />
cuvintelor. Astfel cuvintele neîntâlnite în setul <strong>de</strong> antrenare vor avea num rul <strong>de</strong> apari ie m rit cu f i<br />
probabilitatea <strong>de</strong> apari ie diferit <strong>de</strong> zero:<br />
f<br />
P( X ) =<br />
Ec. 5.16<br />
Xnou N + f ⋅V<br />
Formula <strong>de</strong> calcul general pentru netezirea prin adunare va fi conform legii lui Lidstone:<br />
n + f<br />
P(<br />
X ) =<br />
Ec. 5.17<br />
N + f ⋅V<br />
( 9 6 '<br />
Estimatorul Good - Turing provine din biologie i a fost utilizat pentru estimarea speciilor dintr-un<br />
habitat pe baza observa iilor f cute pe teren. Exist mai multe alternative pentru alegerea func iei <strong>de</strong><br />
estimare, dar ecua ia general poate fi scris sub forma:<br />
r *<br />
E(<br />
N r+<br />
1)<br />
P ( X ) = un<strong>de</strong>,<br />
r*<br />
= ( r + 1)<br />
⋅<br />
Ec. 5.18<br />
N<br />
E(<br />
Nr<br />
)<br />
În ecua ia 5.18:<br />
• r este num rul <strong>de</strong> apari ie al cuvântului X;<br />
• Nr este num rul <strong>de</strong> cuvinte care apar exact <strong>de</strong> r-ori în textul <strong>de</strong> antrenare;<br />
• N este num rul total <strong>de</strong> cuvinte din textul <strong>de</strong> antrenare;<br />
• E este o func ie <strong>de</strong> estimare pentru Nr în cazul unui text <strong>de</strong> antrenare infinit<br />
• r* este num rul <strong>de</strong> apari ii ajustat.<br />
Estimatorul Good - Turing furnizeaz o valoare sumat total <strong>de</strong> probabilitate a evenimentelor<br />
observate mai mic <strong>de</strong>cât unu.<br />
P(<br />
X ) < 1<br />
Ec. 5.19<br />
Xobservat<br />
Valoarea <strong>de</strong> probabilitate r mas pân la unu, se aloc evenimentelor noi (neobservate în setul <strong>de</strong><br />
antrenare). Aceast valoare <strong>de</strong>pin<strong>de</strong> <strong>de</strong> func ia E() aleas . Cea mai <strong>si</strong>mpl alegere a func iei E() este astfel<br />
încât:<br />
E(<br />
n + 1)<br />
n E(<br />
1)<br />
= ⋅ ( 1−<br />
)<br />
Ec. 5.20<br />
E(<br />
n)<br />
n + 1 N<br />
În acest caz, probabilitatea dat <strong>de</strong> estimatorul Good - Turing va fi:<br />
r * r + 1 E(<br />
Nr<br />
+ 1)<br />
r + 1 r E(<br />
1)<br />
P(<br />
X ) = = ⋅ = ⋅ ⋅(<br />
1−<br />
) =<br />
N N E(<br />
Nr<br />
) N r + 1 N<br />
Însumând valorile probabilit ilor evenimentelor observate ob inem:<br />
r E(<br />
1)<br />
E(<br />
1)<br />
P(<br />
X ) = ( 1−<br />
) = 1−<br />
Xobservat Xobservat N N N<br />
Valoarea <strong>de</strong> probabilitate alocat evenimentelor noi va fi:<br />
E(<br />
1)<br />
Pevenimentn ou =<br />
N<br />
( &<br />
r<br />
N<br />
( 1<br />
−<br />
E(<br />
1)<br />
)<br />
N<br />
Ec. 5.21<br />
Ec. 5.22<br />
Ec. 5.23<br />
Metoda <strong>de</strong> netezire prin revenire, numit în literatura <strong>de</strong> specialitate backoff, a fost introdus <strong>de</strong> Katz<br />
(<strong>de</strong> aici <strong>si</strong> numele <strong>de</strong> netezire Katz) [66].<br />
=:
$ / H " !"<br />
Conform i<strong>de</strong>ii lui Katz, frecven a relativ este un estimator bun al probabilit ilor dac num rul <strong>de</strong><br />
apari ii pentru o secven n-gram este suficient <strong>de</strong> mare. Pragul stabilit <strong>de</strong> Katz este K 6.<br />
Secven ele n-gram al c ror num r <strong>de</strong> apari ie este diferit <strong>de</strong> zero, dar mai mic <strong>de</strong>cât pragul K, sunt<br />
netezite conform estimatorului Good – Turing pentru a salva valori <strong>de</strong> probabilitate pentru secven ele<br />
neîntâlnite în textul <strong>de</strong> antrenare. Dac num rul <strong>de</strong> apari ie este zero, aproxim m probabilitatea <strong>de</strong><br />
apari ie folo<strong>si</strong>nd mo<strong>de</strong>lul imediat inferior: (n-1) - gram. În cazul în care i aici întâlnim valori nule ale<br />
apari iilor, continu m proce<strong>de</strong>ul <strong>de</strong> revenire pân ajungem la un mo<strong>de</strong>l inferior care con ine un num r <strong>de</strong><br />
apari ie diferit <strong>de</strong> zero. În final pentru mo<strong>de</strong>lul unigram frecven a relativ f(w)>0, pentru oricare w∈V.<br />
Pentru un mo<strong>de</strong>l trigram rela iile recur<strong>si</strong>ve pentru netezirea prin revenire vor fi:<br />
=7<br />
^<br />
f ( w | w , w ),<br />
p( w3<br />
| w1,<br />
w2<br />
) = α ⋅QT<br />
( w3<br />
| w1,<br />
w<br />
^<br />
p 3 2<br />
T<br />
3<br />
1<br />
f ( w<br />
2<br />
2<br />
)<br />
altfel,<br />
| w<br />
( w | w ) = α ⋅Q<br />
( w | w )<br />
3<br />
3<br />
2<br />
2<br />
)<br />
dac<br />
dac<br />
altfel,<br />
^<br />
nr.(<br />
w , w , w ) ≥ K<br />
1<br />
0 < nr.(<br />
w , w , w ) < K<br />
β ⋅ p(<br />
w3<br />
| w2)<br />
dac<br />
dac<br />
β ⋅ f ( w )<br />
2<br />
nr.(<br />
w , w ) ≥ L<br />
1<br />
0 < nr.(<br />
w , w ) < L<br />
3<br />
2<br />
3<br />
2<br />
3<br />
2<br />
3<br />
3<br />
Ec. 5.24<br />
Ec. 5.25<br />
PT<br />
( w1,<br />
w2<br />
, w3<br />
)<br />
Estimatorul Good - Turing QT<br />
= precizeaz ce valoare <strong>de</strong> probabilitate se aloc<br />
f ( w1,<br />
w2<br />
)<br />
pentru secven ele neîntâlnite (prin diminuarea probabilit ilor secven elor întâlnite) în setul <strong>de</strong> antrenare<br />
iar revenirea la mo<strong>de</strong>lul inferior stabile te cum se împarte aceast probabilitate între secven ele cu<br />
probabilitate <strong>de</strong> apari ie zero. Pentru ca QT s satisfac propriet ile unei probabilit i se introduce<br />
factorul <strong>de</strong> scalare .<br />
( ( : 6 ;<br />
Netezirea introdus <strong>de</strong> Kneser i Ney se nume te i netezire absolut <strong>de</strong>oarece se bazeaz pe metoda<br />
sc <strong>de</strong>rii absolute. Sc <strong>de</strong>rea absolut înseamn <strong>de</strong> fapt, c se sca<strong>de</strong> o valoare constant d din fiecare num r<br />
<strong>de</strong> apari ie a secven elor n-gram mai mare <strong>de</strong>cât zero.<br />
c(<br />
wi−1w<br />
i ) − d<br />
, dac c(<br />
wi−1wi<br />
) > 0<br />
Pabsolut<br />
( wi<br />
| wi−2<br />
wi−1<br />
) = c(<br />
wi−1<br />
)<br />
Ec. 5.26<br />
α(w<br />
) ⋅ P ( w )<br />
Revenirea propus <strong>de</strong> Kneser i Ney nu se va baza pe mo<strong>de</strong>lul n-gram inferior ca la revenirea Katz, ci<br />
pe i<strong>de</strong>ea <strong>de</strong> a num ra contextele diferite în care apare un cuvânt. Cu cât un cuvânt apare în mai multe<br />
contexte diferite, cu atât este mai probabil s apar în contexte noi, neîntâlnite. I<strong>de</strong>ea duce la rezultate mai<br />
bune <strong>de</strong>cât cele ob inute cu revenirea formulat <strong>de</strong> Katz.<br />
| { wi−1<br />
: c(<br />
wi−1wi<br />
) > 0}<br />
|<br />
Pcontinuati<br />
on ( wi<br />
) =<br />
Ec. 5.27<br />
| w : c(<br />
w w ) > 0 |<br />
P<br />
KN<br />
( w | w<br />
i<br />
i−1<br />
) =<br />
wi<br />
i−1<br />
i−1<br />
c(<br />
wi−1w<br />
i ) − d<br />
, dac<br />
c(<br />
wi−1<br />
)<br />
altfel,<br />
α(w<br />
) ⋅ P<br />
i<br />
i<br />
c(<br />
w<br />
continuation<br />
i−1<br />
i<br />
( w )<br />
absolut<br />
w ) > 0<br />
i<br />
i<br />
i<br />
Ec. 5.28<br />
În practic forma interpolat a netezirii Kneser - Ney d rezultate mai bune. Forma interpolat este:<br />
c(<br />
wi−1w<br />
i ) − d<br />
PKN ( wi<br />
wi−1<br />
) =<br />
+ λPcontinuation<br />
( wi<br />
)<br />
Ec. 5.29<br />
c(<br />
w )<br />
( )<br />
În aplica iile practice se utilizeaz rar probabilit ile date <strong>de</strong> doar un <strong>si</strong>ngur mo<strong>de</strong>l N-gram, în schimb<br />
se folose te o interpolare a mo<strong>de</strong>lelor unigram, bigram i trigram printr-o însumare pon<strong>de</strong>rat . Metoda<br />
interpol rii este o alternativ viabil la netezirea prin revenire. Rezultatul interpol rii va fi un mo<strong>de</strong>l cu<br />
probabilit ile netezite conform celor trei mo<strong>de</strong>le componente. Fiecare mo<strong>de</strong>l va interveni în formarea<br />
mo<strong>de</strong>lului nou cu o pon<strong>de</strong>re ( 1, 2 i 3).<br />
^<br />
p( wn<br />
| wn−<br />
1w<br />
n−2<br />
) = λ 1 p(<br />
wn<br />
| wn−1w<br />
n−2<br />
) + λ2<br />
p(<br />
wn<br />
| wn−1<br />
) + λ3<br />
p(<br />
w<br />
Valorile 1, 2 i 3 trebuie s satisfac urm toarele constrângeri:<br />
i−1<br />
n<br />
)<br />
Ec. 5.30
3<br />
i=<br />
1<br />
λ = 1 Ec. 5.31<br />
i<br />
) ! !<br />
λ ≥ 0,<br />
i = 1..<br />
3 Ec. 5.32<br />
Problema ce trebuie solu ionat este estimarea valorilor i. O metod <strong>de</strong> calcul po<strong>si</strong>bil este <strong>de</strong> a<br />
re ine o parte din textul <strong>de</strong> antrenare i <strong>de</strong> a estima parametrii i din acest set numit set <strong>de</strong> validare.<br />
Astfel 1, 2, 3 trebuie astfel ale i încât s maximizeze ecua ia:<br />
L(<br />
λ , λ , λ ) =<br />
1<br />
2<br />
3<br />
w1<br />
, w2<br />
, w3∈V<br />
Nr.(<br />
w , w , w ) ⋅ log( p(<br />
w | w , w ))<br />
Pentru rezolvarea acestei ecua ii exist mai multe meto<strong>de</strong> <strong>de</strong>scrise în tez .<br />
( & 1<br />
1<br />
2<br />
3<br />
^<br />
i<br />
3<br />
1<br />
2<br />
Ec. 5.33<br />
Mo<strong>de</strong>lele lingvistice pentru <strong>si</strong>steme <strong>de</strong> recunoa tere a vorbirii continue cu dic ionar mare trebuie<br />
estimate pe baza unor texte <strong>de</strong> antrenare <strong>de</strong> dimen<strong>si</strong>uni mari (sute <strong>de</strong> milioane <strong>de</strong> cuvinte). Mo<strong>de</strong>lele<br />
rezultate sunt comparabile cu dimen<strong>si</strong>unea textului <strong>de</strong> antrenare. Pentru a putea fi folo<strong>si</strong>te eficient, este<br />
necesar reducerea, mic orarea sau compre<strong>si</strong>a mo<strong>de</strong>lelor <strong>de</strong>numit în literatura <strong>de</strong> specialitate n-gram<br />
pruning.<br />
Teza con ine <strong>de</strong>scrierea mai multor meto<strong>de</strong> <strong>de</strong> reducere a mo<strong>de</strong>lelor lingvistice în subcapitolele ce<br />
urmeaz .<br />
( & 1<br />
( & 1 ! "<br />
( & 1<br />
( & & 1<br />
( & ( 1<br />
( & ) 1 .<br />
( & * 1 "<br />
( & + $ 6<br />
( ( $<br />
Mo<strong>de</strong>lele n-gram sunt mo<strong>de</strong>le lingvistice statice <strong>de</strong>oarece iau în con<strong>si</strong><strong>de</strong>rare la estimarea probabilit ii<br />
cuvântului urm tor doar cele n-1 cuvinte prece<strong>de</strong>nte din setul <strong>de</strong> antrenare. Un mo<strong>de</strong>l trigram <strong>de</strong> exemplu<br />
folose te o istorie <strong>de</strong> doar dou cuvinte pentru evaluarea probabilit ii urm torului cuvânt. Mo<strong>de</strong>lele<br />
lingvistice adaptive încearc s îmbun t easc performan ele prin folo<strong>si</strong>rea <strong>de</strong>pen<strong>de</strong>n elor din text pe<br />
termene mai lungi. Din aceast cauz , mo<strong>de</strong>lele lingvistice adaptive se mai numesc i mo<strong>de</strong>le dinamice.<br />
Mo<strong>de</strong>lele lingvistice statice prezint un <strong>de</strong>zavantaj mare: ele estimeaz acelea i probabilit i pentru<br />
cuvintele urm toare indiferent <strong>de</strong> context, <strong>de</strong> tema <strong>de</strong> discu ie sau <strong>de</strong> cuvintele din istoria mai în<strong>de</strong>lungat<br />
a vorbirii.<br />
( ( $<br />
Mo<strong>de</strong>lele lingvistice cu memorie înglobeaz informa ii din istoria pe termen lung a apari iei<br />
secven elor <strong>de</strong> cuvinte dintr-un document. Înglobarea informa iei se realizeaz prin metoda interpol rii<br />
liniare a mai multor mo<strong>de</strong>le lingvistice.<br />
Un mo<strong>de</strong>l trigram ob inut prin interpolarea liniar a probabilit ilor calculate pe baza frecven elor <strong>de</strong><br />
apari ie a mo<strong>de</strong>lelor unigram, bigram i trigram este un mo<strong>de</strong>l lingvistic static ce d rezultate<br />
satisf c toare în <strong>si</strong>stemele <strong>de</strong> recunoa tere a vorbirii. Mo<strong>de</strong>lul static poate fi exprimat:<br />
ps (w n+<br />
1 | w n , w n-1<br />
)<br />
Pe lâng acesta, se <strong>de</strong>zvolt i un mo<strong>de</strong>l dinamic:<br />
Ec. 5.34<br />
p d (w n+<br />
1 | w n , w n-1<br />
)<br />
Ec. 5.35<br />
Mo<strong>de</strong>lul dinamic const în estimarea frecven elor <strong>de</strong> apari ie a mo<strong>de</strong>lelor unigram, bigram i trigram<br />
pentru o fereastr ce con ine ultimele n cuvinte din istorie, <strong>de</strong> asemenea netezite prin interpolare liniar .<br />
Pentru a ob ine un mo<strong>de</strong>l lingvistic adaptiv, interpol m mo<strong>de</strong>lul static cu cel dinamic ob inând<br />
mo<strong>de</strong>lul lingvistic cu memorie:<br />
p w | w , w ) λ p ( w | w , w ) + ( 1−<br />
λ ) p ( w | w , w ) Ec. 5.36<br />
( n+<br />
1 n n−1<br />
= c d n+<br />
1 n n−1<br />
c s n+<br />
1 n n−1<br />
==
$ / H " !"<br />
=><br />
( ( $ 8<br />
Ca i mo<strong>de</strong>lele lingvistice cu memorie i acest tip <strong>de</strong> mo<strong>de</strong>l înglobeaz informa ii din istoria textului,<br />
îns ia în con<strong>si</strong><strong>de</strong>rare doar cuvintele rare (cele care au probabilitatea <strong>de</strong> apari ie sub un anumit prag).<br />
Pentru a extrage informa iile din istorie se folosesc a a numitele perechi <strong>de</strong> cuvinte legate numite i<br />
perechi tr gaci – int . Dac dou cuvinte a i b sunt semantic bine corelate (exist o leg tur puternic<br />
între ele), acestea formeaz o pereche a b (a fiind tr gaciul iar b inta). Dac apare în memorie cuvântul<br />
tr gaci a, mo<strong>de</strong>lul va estima o valoare <strong>de</strong> probabilitate ridicat atât pentru cuvântul a cât i pentru<br />
cuvântul int b.<br />
Perechile <strong>de</strong> cuvinte a b se afl folo<strong>si</strong>nd informa ia mutual medie evaluat pe un set mare <strong>de</strong> texte<br />
<strong>de</strong> antrenare.<br />
p(<br />
a,<br />
b)<br />
I(<br />
a;<br />
b)<br />
= p(<br />
a,<br />
b)<br />
log<br />
Ec. 5.37<br />
ab p(<br />
a)<br />
p(<br />
b)<br />
Fig. 5.1. Mo<strong>de</strong>lul lingvistic bazat pe perechi <strong>de</strong> cuvinte tr gaci – int [68]<br />
Informa iile cele mai <strong>de</strong> folos sunt con inute în a a numitele perechi self triggers, adic apari ia unui<br />
cuvânt atrage dup <strong>si</strong>ne reapari ia aceluia i cuvânt (în unele cazuri aceia i r d cin <strong>de</strong> cuvânt).<br />
Unele mo<strong>de</strong>le iau în con<strong>si</strong><strong>de</strong>rare doar perechile ce apar în aceia i propozi ie (in sentence triggers)<br />
spunând c acestea ar fi cele mai relevante.<br />
( )<br />
Evaluarea mo<strong>de</strong>lelor lingvistice se poate realiza prin mai multe meto<strong>de</strong>:<br />
• testarea într-un <strong>si</strong>stem <strong>de</strong> recunoa tere a vorbirii;<br />
• generarea aleatoare a propozi iilor pe baza estim rilor f cute <strong>de</strong> mo<strong>de</strong>lul lingvistic;<br />
• rearanjarea cuvintelor din fraze pe baza probabilit ilor calculate <strong>de</strong> mo<strong>de</strong>lul lingvistic;<br />
• meto<strong>de</strong> provenite din teoria informa iei.<br />
Metoda cea mai important ce provine din teoria informa iei este perplexitatea. Cu ajutorul<br />
perplexit ii putem evalua atât calitatea mo<strong>de</strong>lelor lingvistice, cât i dificultatea recunoa terii vorbirii<br />
pentru un anumit <strong>si</strong>stem <strong>de</strong> recunoa tere i o baz <strong>de</strong> date <strong>de</strong> vorbire aleas . Pentru a putea <strong>de</strong>fini<br />
perplexitatea, avem nevoie s <strong>de</strong>finim entropia unei variabile aleatoare.<br />
( )<br />
Pentru o variabil aleatoare X={x1, x2, …xN}, valoarea entropiei se poate calcula cu rela ia:<br />
H X ) = − p(<br />
x)<br />
⋅ log p(<br />
x)<br />
( 2<br />
x∈X<br />
Ec. 5.38<br />
Entropia este m sura informa iei con inute într-un ML i reprezint <strong>de</strong> fapt cât <strong>de</strong> apropiat este un<br />
anumit mo<strong>de</strong>l <strong>de</strong> limba pe care o mo<strong>de</strong>leaz . Unitatea <strong>de</strong> m sur pentru entropie este bitul.<br />
( ) 1<br />
Pentru calculul perplexit ii se utilizeaz o valoare numit rata entropiei ce reprezint valoarea<br />
entropiei împ r it la num rul <strong>de</strong> cuvinte din vocabular (N):<br />
1 n 1<br />
n<br />
n<br />
H(<br />
w1<br />
) = − p(<br />
w1<br />
) ⋅ log2<br />
p(<br />
w1<br />
)<br />
Ec. 5.39<br />
N N w∈V<br />
n<br />
Cu toate c probabilit ile p w ) nu se pot calcula pentru o limb dat , ele pot fi aproximate prin<br />
n<br />
( 1<br />
calculul probabilit ilor p * ( w1<br />
) dintr-o colec ie mare <strong>de</strong> texte folo<strong>si</strong>nd un mo<strong>de</strong>l lingvistic statistic.<br />
Valoarea astfel estimat a ratei entropiei se nume te logprob (LP).
( ) % .<br />
LP = −<br />
1<br />
log<br />
N<br />
2<br />
n<br />
1<br />
p * ( w<br />
)<br />
) ! !<br />
Ec. 5.40<br />
Având <strong>de</strong>finit valoarea logprob, putem <strong>de</strong>fini i perplexitatea unui mo<strong>de</strong>l lingvistic:<br />
LP<br />
PP = 2<br />
Ec. 5.41<br />
Perplexitatea mo<strong>de</strong>lelor unigram, bigram i trigram pot fi calculate dup cum urmeaz :<br />
• Unigram:<br />
PP = [<br />
n<br />
∏<br />
k=<br />
1<br />
p(<br />
w ) ]<br />
• Bigram: = ⋅∏<br />
k=<br />
w p PP [ ( 1 )<br />
• Trigram:<br />
( ) & ! "<br />
PP = [ p(<br />
w ) ⋅ p(<br />
w<br />
1<br />
k<br />
n<br />
2<br />
1<br />
−<br />
N<br />
w p(<br />
2<br />
k k−<br />
w | 1<br />
| w ) ⋅<br />
1<br />
n<br />
∏<br />
k=<br />
2<br />
)]<br />
1<br />
−<br />
N<br />
p(<br />
w<br />
k<br />
| w<br />
Informa ia mutual este o m sur cantitativ a volumului <strong>de</strong> informa ie furnizat <strong>de</strong> o variabil<br />
aleatoare (X) <strong>de</strong>spre o alt variabil (Y ). Echivalent, informa ia mutual poate fi <strong>de</strong>finit ca reducerea<br />
entropiei variabilei aleatoare Y atunci când variabila X este cunoscut .<br />
I(<br />
X : Y ) = H ( Y ) − H ( Y | X ) =<br />
= −<br />
( * < != .<br />
p(<br />
y)<br />
⋅ log p(<br />
y)<br />
+<br />
k−1<br />
, w<br />
k−2<br />
) ]<br />
p(<br />
x)<br />
y x y<br />
I(<br />
X : Y)<br />
=<br />
xy<br />
1<br />
−<br />
N<br />
p(<br />
x,<br />
y)<br />
p(<br />
x,<br />
y)<br />
log<br />
p(<br />
x)<br />
p(<br />
y)<br />
p(<br />
y | x)<br />
log p(<br />
y | x)<br />
Ec. 5.42<br />
În ultimii ani au ap rut mai multe încerc ri <strong>de</strong> implementare practic a unor programe software<br />
pentru mo<strong>de</strong>larea lingvistic . Sistemele mo<strong>de</strong>rne <strong>de</strong> recunoa tere a vorbirii cu un dic ionar mare nici nu<br />
pot fi imaginate f r aceast component .<br />
Unele implement ri sunt in<strong>de</strong>pen<strong>de</strong>nte <strong>de</strong> <strong>si</strong>stem i sunt puse la dispozi ia cercet torilor pentru<br />
testare. În tez sunt prezentate <strong>si</strong>ntetic trei aplica ii software pentru mo<strong>de</strong>larea lingvistic , dup cum<br />
urmeaz în urm toarele capitole:<br />
( * $ < 0$ 6 $ 0 $ ' 2<br />
( * 1 0$ 6 '8 1 0 $ ' 2<br />
( * >0$ '<br />
( + ! -1%-6$ '<br />
Mo<strong>de</strong>lele n-gram odat construite trebuie stocate pentru utilizarea ulterioar în <strong>si</strong>stemele <strong>de</strong><br />
recunoa tere a vorbirii. Cel mai r spândit mod <strong>de</strong> stocare este cel în format: ARPA-MIT. Mo<strong>de</strong>lul con ine<br />
dou p r i: antetul respectiv corpul care con ine <strong>de</strong>fini ia propriuzis .<br />
Formatul general al unui mo<strong>de</strong>l lingvistic în formatul ARPA-MIT este <strong>de</strong>scris astfel [117]:<br />
= [ { } ]<br />
\data\<br />
<br />
<br />
\end\<br />
= { }<br />
Antetul <strong>de</strong>scrie con inutul fi ierului. Prima valoare <strong>de</strong> tip întreg reprezint ordinul mo<strong>de</strong>lului, iar cel<br />
<strong>de</strong> al doilea num rul <strong>de</strong> secven e n-gram stocate în mo<strong>de</strong>l.<br />
= { ngram = }<br />
Corpul unui mo<strong>de</strong>l lingvistic în formatul ARPA-MIT are urm toarea <strong>si</strong>ntax [117]:<br />
= { } <br />
= \-grams:<br />
=@
$ / H " !"<br />
=E<br />
{ }<br />
= \-grams:<br />
{ }<br />
= { } <br />
= { }<br />
( , % "<br />
Crearea mo<strong>de</strong>lelor lingvistice trebuie realizat în concordan cu domeniul vorbirii ce urmeaz a fi<br />
recunoscut. Pentru a atinge performan e bune domeniul textelor pe baza c rora se genereaz mo<strong>de</strong>lul<br />
lingvistic trebuie s coincid cu domeniul vorbiri <strong>de</strong> recunoscut. A<strong>de</strong>sea colectarea unui volum suficient<br />
<strong>de</strong> mare <strong>de</strong> texte <strong>de</strong> antrenare pentru un domeniu nou este o problem dificil . Pentru limbile <strong>de</strong> circula ie<br />
interna ional i în special pentru limba englez exist <strong>de</strong>stul <strong>de</strong> multe corpusuri lingvistice puse la<br />
dispozi ie <strong>de</strong> Linguistics Data Consortium [70]. Pentru limba român corpusurile puse la dispozi ie gratuit<br />
[1] sunt prea pu ine pentru a acoperii o mare varietate <strong>de</strong> domenii. În acela i timp textele disponibile în<br />
format electronic nu sunt normalizate.<br />
Colectarea unui volum mare <strong>de</strong> texte prin intermediul Internetului este o po<strong>si</strong>bil alternativ , îns în<br />
acest caz textele colectate trebuie prelucrate înainte <strong>de</strong> utilizare, <strong>de</strong>oarece acestea con in o serie <strong>de</strong> tag-uri<br />
HTML sau CSS, secven e <strong>de</strong> cod JavaScript etc. Preprocesarea textelor se nume te condi ionare (text<br />
conditioning) sau normalizare (text normalization) în literatura <strong>de</strong> specialitate.<br />
Textul scris difer foarte mult <strong>de</strong> vorbire. De exemplu într-un text scris apar numere, abrevieri,<br />
acronime, semne <strong>de</strong> punctua ie i o serie <strong>de</strong> alte cuvinte a c ror rostire difer <strong>de</strong> forma scris . Acestea<br />
sunt numite: non-standard words (NSW) i trebuie transformate în forma în care ele sunt rostite. Semnele<br />
<strong>de</strong> punctua ie trebuie eliminate.<br />
Linguistic Data Consortium ofer un set <strong>de</strong> instrumente software rudimentare pentru preprocesarea<br />
textelor. O alternativ la acestea o reprezint NSW tools [86]. NSW Tools ofer po<strong>si</strong>bilitatea convertirii<br />
numerelor în cuvinte i înlocuirea abrevierilor cu forma lor prezentat în tabele. NSW Tools func ioneaz<br />
in<strong>de</strong>pen<strong>de</strong>nt <strong>de</strong> domeniul textelor, în raport cu LDC Tools care sunt specializate pe domeniul tirilor<br />
economice [86].<br />
Pentru limba român procesul <strong>de</strong> normalizare este mai dificil <strong>de</strong>cât pentru limba englez , din cauza<br />
caracterelor diacritice.<br />
Sistemul propriu execut urm toarele opera ii elementare pentru condi ionarea textelor:<br />
• elimin tag-urile HTML;<br />
• elimin tag-urile CSS;<br />
• segmenteaz textul pe baza punctua iei marcând op ional cu i începutul, respectiv<br />
sfâr itul unei propozi ii;<br />
• segmenteaz textul l sând doar câte o fraz pe rând;<br />
• elimin semnele <strong>de</strong> punctua ie;<br />
• converte te numerele în cuvinte în forma lor rostit ;<br />
• converte te textul op ional în caractere mici sau mari;<br />
• elimin rândurile goale;<br />
• elimin spa iile redundante.<br />
C utarea textelor pentru un anumit domeniu se realizeaz pe baza unor cuvinte cheie care reprezint<br />
intr rile aplica iei i sunt citite dintr-un fi ier <strong>de</strong> configurare creat anterior. Pentru c ut rile <strong>de</strong> con inut pe<br />
Internet am utilizat Google AJAX Search API [54] care returneaz pentru fiecare cuvânt cheie cele mai<br />
potrivite 3 URL - uri sub forma unor obiecte JSON (JavaScript Object Notation) [62]. Con inutul<br />
paginilor WEB specificate sunt <strong>de</strong>sc rcate i salvate în format text dup care se trece la procesul <strong>de</strong><br />
normalizare <strong>de</strong>scris mai înainte. Aplica ia <strong>de</strong> c utare i <strong>de</strong>sc rcare a con inutului, precum i a<br />
preproces rii textelor a fost <strong>de</strong>zvoltat folo<strong>si</strong>nd platforma Java EE.<br />
Aplica ia pentru mo<strong>de</strong>larea lingvistic ofer po<strong>si</strong>bilitatea <strong>de</strong>:<br />
• a selecta fi ierul <strong>de</strong> înv are;<br />
• a genera fi ierul <strong>de</strong> dic ionar;<br />
• a genera mo<strong>de</strong>lele n-gram (unigram, bigram i trigram) în fi iere separate conform formatului<br />
ARPA - MIT;<br />
• a calcula valoarea FOF (frecven ele relative <strong>de</strong> apari ii) pentru mo<strong>de</strong>lele n-gram generate;<br />
• a efectua netezirea probabilit ilor utilizând una dintre urm toarele meto<strong>de</strong>:<br />
o netezirea Laplace;<br />
o netezirea Witten - Bell;
) ! !<br />
o netezirea prin revenire (Katz) utilizând estimatorul Good - Turing;<br />
• a evalua mo<strong>de</strong>lele lingvistice create prin calcularea perplexit ii.<br />
Fig. 5.2. Schema bloc a aplica iei proprii pentru<br />
mo<strong>de</strong>larea lingvistic<br />
Fig. 5.3. Interfa a grafic a aplica iei proprii<br />
pentru mo<strong>de</strong>larea lingvistic<br />
Aplica ia a fost implementat în limbajul C++, sub platforma Microsoft Visual Studio 2005<br />
Profes<strong>si</strong>onal Edition. Pentru implementarea interfe ei grafice am folo<strong>si</strong>t pachetul <strong>de</strong> func ii MFC<br />
(Microsoft Foundation Classes) ver<strong>si</strong>unea 8.0.<br />
Programul con ine patru clase mai importante:<br />
• Dictionary - Con ine implement rile func iilor legate <strong>de</strong> creare a dic ionarului;<br />
• Gram - Con ine implement rile func iilor legate <strong>de</strong> crearea fi ierelor care con in mo<strong>de</strong>lele n-gram<br />
în format ARPA - MIT;<br />
• Fof - Con ine implement rile func iilor legate <strong>de</strong> crearea fi ierului care con ine valorile FOF ale<br />
mo<strong>de</strong>lelor generate;<br />
• Lm - Con ine implement rile func iilor legate <strong>de</strong> crearea mo<strong>de</strong>lului lingvistic, con ine meto<strong>de</strong>le<br />
<strong>de</strong> netezire i metoda pentru calculul perplexit ii unui mo<strong>de</strong>l lingvistic;<br />
Schema bloc a aplica iei este prezentat în Fig. 5.2 iar interfa a aplica iei în Fig. 5.3.<br />
( ? 1 . "<br />
( ? 1 " 4 8 2 ><br />
Baza <strong>de</strong> date Sherlock Holmes [117] este o colec ie <strong>de</strong> texte <strong>de</strong> dimen<strong>si</strong>uni mici în compara ie cu<br />
colec iile <strong>de</strong> texte utilizate pentru recunoa terea vorbirii continue cu dic ionar mare acce<strong>si</strong>bil împreun<br />
cu modulul HLMTools din cadrul HTK Toolkit. Con ine 50 <strong>de</strong> povestiri <strong>de</strong>spre celebrul Sherlock<br />
Holmes, scrise <strong>de</strong> Arthur Conan Doyle. Fiecare povestire este stocat într-un fi ier <strong>de</strong> tip text. Fi ierele<br />
sunt împ r ite în dou directoare: train i test folo<strong>si</strong>te pentru antrenarea respectiv evaluarea mo<strong>de</strong>lului<br />
lingvistic. Pentru antrenare sunt folo<strong>si</strong>te 49 <strong>de</strong> povestiri din cele 50, r mânând o povestire pentru testarea<br />
mo<strong>de</strong>lului. Textele sunt preprocesate, fiecare fi ier con inând câte o fraz pe fiecare rând, frazele fiind<br />
<strong>de</strong>limitate cu marcatorii: i . Din text sunt eliminate semnele <strong>de</strong> punctua ie.<br />
HTK Toolkit furnizeaz i un dic ionar <strong>de</strong> 5 000 <strong>de</strong> cuvinte pe baza c ruia se pot crea mo<strong>de</strong>lele<br />
lingvistice. Cu toate c pentru un <strong>si</strong>stem real <strong>de</strong> recunoa tere a vorbirii continue este necesar un dic ionar<br />
mult ai mare (<strong>de</strong> aproximativ 60 000 <strong>de</strong> cuvinte), dat fiind dimen<strong>si</strong>unea mic a bazei <strong>de</strong> date, acest<br />
dic ionar este suficient în acest caz.<br />
Folo<strong>si</strong>nd uneltele oferite <strong>de</strong> HTK Toolkit am generat mo<strong>de</strong>lele unigram, bigram i trigram pentru<br />
aceast colec ie <strong>de</strong> texte. Num rul secven elor unigram a fost 5 001: cele 5 000 <strong>de</strong> cuvinte din dic ionar<br />
plus cuvântul !UNK (unknown) care a fost <strong>si</strong>mbolul pentru cuvintele din afara dic ionarului. Num rul<br />
=B
$ / H " !"<br />
secven elor bigram a fost: 49 014 iar cel al secven elor trigram 60 314. Pentru mo<strong>de</strong>lele bigram i trigram<br />
am folo<strong>si</strong>t metoda <strong>de</strong> revenire Katz.<br />
Textul <strong>de</strong> evaluare folo<strong>si</strong>t con ine 556 <strong>de</strong> fraze i un num r total <strong>de</strong> 10 408 cuvinte. Num rul<br />
cuvintelor din afara vocabularului a fost <strong>de</strong> 665 ceea ce reprezint o rat <strong>de</strong> 6,75%.<br />
> 4 4 4 @ "<br />
* >8: B= 9:AB<br />
, :=: AB A@AA<br />
::= 7> A:7B<br />
Tabelul 5.1. Perplexitatea mo<strong>de</strong>lelor unigram, bigram i trigram pentru corpusul Sherlock Holmes [36]<br />
În final am evaluat perplexitatea celor trei mo<strong>de</strong>le pe textul <strong>de</strong> testare pentru a putea face o<br />
compara ie între ele. Rezultatele ob inute sunt prezentate în tabelul <strong>de</strong> mai sus.<br />
=A<br />
( ? 1 " !<br />
Baza <strong>de</strong> date Susane a fost <strong>de</strong>zvoltat la Univer<strong>si</strong>ty of Sussex în Anglia. Ver<strong>si</strong>unea 5 a bazei <strong>de</strong> date a<br />
fost lansat în anul 2001. Colec ia este adnotat gramatical, având pe fiecare rând un <strong>si</strong>ngur cuvânt înso it<br />
<strong>de</strong> un i<strong>de</strong>ntificator i <strong>de</strong> adnot rile specifice. Textele sunt grupate în 64 <strong>de</strong> fi iere, fiecare con inând peste<br />
2 000 <strong>de</strong> cuvinte. Textele provin din colec ia Brown Corpus i sunt grupate în patru categorii: reportaje<br />
din pres , literatur , texte tiin ifice, romane <strong>de</strong> aventur . Fiecare categorie con ine 16 fi iere notate cu: A<br />
(pres ), G (literatur ), J (lucr ri tiin ifice) i N (aventur ).<br />
Pentru a putea crea mo<strong>de</strong>le lingvistice, i a putea fi evaluate, textele din colec ia Susane trebuie<br />
împ r ite în dou categorii: texte <strong>de</strong> antrenare respectiv texte <strong>de</strong> testare. Pentru primul experiment vom<br />
crea patru mo<strong>de</strong>le lingvistice distincte, câte un mo<strong>de</strong>l pentru fiecare gen <strong>de</strong> text. Astfel cele 16 texte din<br />
fiecare categorie vor fi împ r ite astfel: primele 15 vor constitui setul <strong>de</strong> antrenare, iar ultimul text va fi<br />
textul <strong>de</strong> testare al mo<strong>de</strong>lului lingvistic.<br />
Pentru crearea mo<strong>de</strong>lelor lingvistice am folo<strong>si</strong>t pachetul propriu <strong>de</strong> programe prezentat în Capitolul<br />
5.9. Pentru ca acest corpus s poat fi utilizat, este necesar eliminarea adnot rilor din texte, astfel încât<br />
s avem fi ierele <strong>de</strong> formatul celor din baza <strong>de</strong> date Sherlock Holmes: câte o propozi ie pe un rând,<br />
<strong>de</strong>limitat cu marcatorii i . Totodat trebuie eliminate i semnele <strong>de</strong> punctua ie.<br />
Pentru crearea mo<strong>de</strong>lului tip texte <strong>de</strong> pres (A), am creat un dic ionar <strong>de</strong> 5 001 <strong>de</strong> cuvinte, luând în<br />
con<strong>si</strong><strong>de</strong>rare primele 5 000 <strong>de</strong> cuvinte pe baza frecven elor <strong>de</strong> apari ie din textele <strong>de</strong> antrenare. În totalitate<br />
textele <strong>de</strong> antrenare con in 33 175 cuvinte, dintre care unele se repet .<br />
În final am generat mo<strong>de</strong>lele unigram, bigram i trigram pentru aceast colec ie <strong>de</strong> texte. Pentru<br />
mo<strong>de</strong>lele bigram i trigram am folo<strong>si</strong>t metoda <strong>de</strong> revenire Katz cu estimatorul Good - Turing ca i la<br />
textele Sherlock Holmes. Textul <strong>de</strong> evaluare folo<strong>si</strong>t con ine 85 <strong>de</strong> fraze i un num r total <strong>de</strong> 2 226<br />
cuvinte. Num rul cuvintelor din afara vocabularului a fost <strong>de</strong> 505 ceea ce reprezint o rat <strong>de</strong> 23,59% f r<br />
a lua în calcul <strong>si</strong>mbolurile <strong>de</strong> început i <strong>de</strong> sfâr it <strong>de</strong> propozi ie: i . În final am evaluat<br />
perplexitatea celor trei mo<strong>de</strong>le pe textul <strong>de</strong> testare pentru a putea face o compara ie între ele. Rezultatele<br />
ob inute sunt prezentate în tabelele <strong>de</strong> mai jos.<br />
Cel <strong>de</strong> al doilea mo<strong>de</strong>l creat pe baza textelor din baza <strong>de</strong> date Susane, a fost cel pentru textele <strong>de</strong> tip G<br />
(literatur ). Pentru antrenarea mo<strong>de</strong>lului am folo<strong>si</strong>t 33 866 cuvinte, iar pentru testare un text cu 78 <strong>de</strong><br />
propozi ii având în total 2 232 cuvinte. Am creat <strong>de</strong> asemenea mo<strong>de</strong>lele unigram, bigram i trigram (cu<br />
metoda <strong>de</strong> revenire Katz i estimatorul Good - Turing). Rezultatele ob inute sunt prezentate în tabelele <strong>de</strong><br />
mai jos. Num rul cuvintelor din afara vocabularului a fost <strong>de</strong> 394 ceea ce reprezint o rat <strong>de</strong> 18,29% f r<br />
a lua în calcul <strong>si</strong>mbolurile <strong>de</strong> început i sfâr it <strong>de</strong> propozi ie: i .<br />
Mo<strong>de</strong>lul creat pentru textele <strong>de</strong> antrenare provenite din lucr ri tiin ifice (<strong>de</strong> tip J) a fost antrenat pe<br />
un set <strong>de</strong> antrenare <strong>de</strong> 33 373 cuvinte i testat pe un text cu 62 <strong>de</strong> fraze având 2164 cuvinte, rata<br />
cuvintelor din afara vocabularului fiind <strong>de</strong> 20,98% (acest procent însemnând un num r <strong>de</strong> 441 cuvinte).<br />
Rezultatele perplexit ii pentru cele trei mo<strong>de</strong>le (unigram, bigram i trigram cu revenire Katz) sunt<br />
prezentate în Tabelul 5.4.<br />
Cel <strong>de</strong> al patrulea mo<strong>de</strong>l adaptat pentru textele <strong>de</strong> tip N a fost antrenat cu un set <strong>de</strong> antrenare <strong>de</strong> 34<br />
845 cuvinte i testat cu un text cu 103 fraze având în total 2 230 cuvinte. Num rul cuvintelor din afara<br />
vocabularului pentru textul <strong>de</strong> testare a fost <strong>de</strong> 267 cuvinte ceea ce înseamn 12,55%. Rezultatele ob inute<br />
în acest experiment din nou pentru cele trei mo<strong>de</strong>le (unigram, bigram i trigram cu revenire Katz i<br />
estimator Good - Turing) sunt prezentate în Tabelul 5.5.
4 4 4 @ "<br />
* @7@ A@ :E:@<br />
, =EA 8B :77B<br />
=BE 7> 9@9<br />
Tabelul 5.2. Perplexitatea mo<strong>de</strong>lelor unigram, bigram i<br />
trigram pentru colec ia <strong>de</strong> texte <strong>de</strong> tip A din baza <strong>de</strong> date<br />
Susane [38]<br />
> 4 4 4 @ "<br />
* @7@ E: :BE8<br />
, >8= >A :>7B<br />
>89 A: ::A8<br />
Tabelul 5.3. Perplexitatea mo<strong>de</strong>lelor unigram, bigram i<br />
trigram pentru colec ia <strong>de</strong> texte <strong>de</strong> tip G din baza <strong>de</strong> date<br />
Susane [38]<br />
) ! !<br />
> 4 4 4 @ "<br />
* @@9 B> :E=B<br />
, =9B =B :7BB<br />
>:9 @7 :8::<br />
Tabelul 5.4. Perplexitatea mo<strong>de</strong>lelor unigram, bigram i<br />
trigram pentru colec ia <strong>de</strong> texte <strong>de</strong> tip J din baza <strong>de</strong> date<br />
Susane [38]<br />
> 4 4 4 @ "<br />
* >:8 B :A=E<br />
, 7E8 @7 :E:7<br />
7E: >A :>>A<br />
Tabelul 5.5. Perplexitatea mo<strong>de</strong>lelor unigram, bigram i<br />
trigram pentru colec ia <strong>de</strong> texte <strong>de</strong> tip N din baza <strong>de</strong> date<br />
Susane [38]<br />
În cazul celor patru mo<strong>de</strong>le cea mai mic perplexitate s-a ob inut folo<strong>si</strong>nd mo<strong>de</strong>lul bigram. Mo<strong>de</strong>lul<br />
trigram nu a putut <strong>de</strong>p i performan ele mo<strong>de</strong>lului bigram datorit faptului c datele din textele <strong>de</strong><br />
antrenare nu sunt suficiente.<br />
În ultimul experiment am încercat s cre m un mo<strong>de</strong>l mai mare pentru întreaga baz <strong>de</strong> date Susane.<br />
Astfel am antrenat mo<strong>de</strong>lul în totalitate cu 135 259 cuvinte din 6 259 propozi ii. Dintre acestea 15 444 au<br />
fost cuvinte diferite. Am încercat s gener m trei mo<strong>de</strong>le diferite pe baza unor dic ionare <strong>de</strong> 5 000, 10 000<br />
respectiv 15 000 cuvinte. Dic ionarul <strong>de</strong> 5 000 cuvinte este util pentru a putea compara acest mo<strong>de</strong>l cu<br />
mo<strong>de</strong>lele adaptate la genul textelor. Mo<strong>de</strong>lul construit pe baza dic ionarului <strong>de</strong> 10 000 <strong>de</strong> cuvinte este<br />
relevant, <strong>de</strong>oarece aproximativ 10 000 <strong>de</strong> cuvinte apar <strong>de</strong> cel pu in dou ori în textele <strong>de</strong> antrenare.<br />
Ultimul mo<strong>de</strong>l a fost construit pe baza unui dic ionar <strong>de</strong> 15 000 cuvinte care inclu<strong>de</strong> aproape toate<br />
cuvintele existente în textele <strong>de</strong> antrenare.<br />
Testarea s-a realizat cu câte un text din fiecare tip. Setul <strong>de</strong> testare a con inut 8 855 cuvinte în 328<br />
fraze. Rezultatele ob inute sunt <strong>si</strong>ntetizate în Tabelul 5.6.<br />
( #< > 4 4 ! : # 4<br />
4 # 4<br />
4<br />
5 # A<br />
5 # A<br />
@ "<br />
@888<br />
*<br />
,<br />
E7@ 8=<br />
=@@ E><br />
:>8: :E >E<br />
B:7E<br />
@9@B<br />
=@7 B @8BA<br />
:8888<br />
*<br />
,<br />
A:@ @=<br />
>BE E><br />
9A@ :: @@<br />
B@>7<br />
EEB=<br />
>B8 E7 @9A><br />
* 9=E 77<br />
BB@=<br />
:@888 , @@8 7E BB> 9 8A<br />
B8E@<br />
@>@ E7 E@87<br />
Tabelul 5.6. Perplexitatea mo<strong>de</strong>lelor unigram, bigram i trigram pentru întreaga colec ie <strong>de</strong> texte Susane, utilizând<br />
dic ionare <strong>de</strong> diferite dimen<strong>si</strong>uni [38]<br />
( ? 1 " 4 " 1 4<br />
Constitu ia României este un corpus <strong>de</strong> dimen<strong>si</strong>uni reduse. Domeniul corpusului se înscrie strict în<br />
domeniul dreptului i a legisla iei, astfel c mo<strong>de</strong>lele generate pe baza acestui corpus vor fi potrivite strict<br />
la acest domeniu restrâns.<br />
Corpusul con ine un num r <strong>de</strong> 9 936 cuvinte care sunt grupate în 718 propozi ii. Dintre acestea am<br />
re inut aproximativ 10% pentru testarea mo<strong>de</strong>lelor. Restul corpusului a fost utilizat pentru antrenarea<br />
mo<strong>de</strong>lelor. Am calculat frecven ele <strong>de</strong> apari ie pentru mo<strong>de</strong>lele unigram, bigram, trigram i fourgram cu<br />
toate c dimen<strong>si</strong>unea corpusului nu ne permite s cre m mo<strong>de</strong>le trigram i fourgram performante.<br />
Dimen<strong>si</strong>unea dic ionarului este <strong>de</strong> 1 928 cuvinte dintre care 963 apar <strong>de</strong> mai multe ori.<br />
În primul test am folo<strong>si</strong>t doar cele 963 cuvinte care apar <strong>de</strong> mai multe ori în corpus ca dic ionar, pe<br />
celelalte mapându-le într-o clas <strong>de</strong> cuvinte necunoscute. Am generat apoi mo<strong>de</strong>lele unigram, bigram i<br />
trigram folo<strong>si</strong>nd metoda <strong>de</strong> revenire Katz i estimatorul Good - Turing pentru realocarea masei <strong>de</strong><br />
probabilit i pentru secven ele neîntâlnite. Am evaluat în final mo<strong>de</strong>lele create calculând perplexitatea lor.<br />
Valorile <strong>de</strong> perplexit i ob inute sunt prezentate în Tabelul 5.7.<br />
=9
$ / H " !"<br />
> 4 4<br />
* @@9 B><br />
, =9B =B<br />
>:9 @7<br />
Tabelul 5.7. Valorile perplexit ilor ob inute pentru<br />
mo<strong>de</strong>lele create pe baza corpusului Constitu ia României<br />
>8<br />
folo<strong>si</strong>nd un dic ionar <strong>de</strong> 963 <strong>de</strong> cuvinte [39]<br />
> 4 4<br />
* @89 E><br />
, ==7 7><br />
>:9 7=<br />
Tabelul 5.8. Valorile perplexit ilor ob inute pentru<br />
mo<strong>de</strong>lele create pe baza corpusului Constitu ia României<br />
folo<strong>si</strong>nd un dic ionar <strong>de</strong> 626 <strong>de</strong> cuvinte [39]<br />
În cel <strong>de</strong> al doilea test am luat în con<strong>si</strong><strong>de</strong>rare la crearea dic ionarului doar acele cuvinte din corpus<br />
care au num rul <strong>de</strong> apari ii mai mare <strong>de</strong>cât 2. Dic ionarul astfel construit con ine 626 cuvinte restul<br />
cuvintelor fiind mapate în clasa cuvintelor necunoscute. Dup generarea mo<strong>de</strong>lelor lingvistice i testarea<br />
lor, am ob inut rezultatele prezentate în Tabelul 5.8.<br />
(<br />
Din rezultatele ob inute se poate observa, c odat cu cre terea num rului <strong>de</strong> cuvinte din dic ionar,<br />
cre te i perplexitatea, adic dificultatea <strong>de</strong> a mo<strong>de</strong>la textul, iar mo<strong>de</strong>lul rezultat are calit i mai slabe.<br />
A adar mo<strong>de</strong>lele reduse, prin <strong>si</strong>mpla eliminare a cuvintelor din dic ionar al c ror num r <strong>de</strong> apari ie nu<br />
atinge un anumit prag, sunt mai <strong>si</strong>mple i dau rezultate mai bune. Cuvintele din dic ionar care apar o<br />
<strong>si</strong>ngur dat nu îmbun t esc performan ele mo<strong>de</strong>lului, din contr ele duc la cre terea perplexit ii, <strong>de</strong>ci<br />
trebuie eliminate din mo<strong>de</strong>l. Mo<strong>de</strong>lele reduse prin eliminarea cuvintelor cu num rul <strong>de</strong> apari ie mai mic<br />
<strong>de</strong>cât o valoare <strong>de</strong> prag sunt mai <strong>si</strong>mple i <strong>de</strong> obicei prezint acelea i valori <strong>de</strong> perplexitate. Valoarea <strong>de</strong><br />
prag se poate <strong>de</strong>termina experimental.<br />
Mo<strong>de</strong>lele trigram surclaseaz mo<strong>de</strong>lele bigram, doar când setul <strong>de</strong> antrenare este suficient <strong>de</strong> mare. În<br />
concluzie mo<strong>de</strong>lele n-gram trebuie astfel alese astfel încât datele <strong>de</strong> antrenare s fie suficiente pentru<br />
mo<strong>de</strong>lul ales. Pentru corpusuri <strong>de</strong> dimen<strong>si</strong>uni mici se poate utiliza cu succes mo<strong>de</strong>lul bigram<br />
Perplexitatea atins folo<strong>si</strong>nd aplica ia proprie întrece valorile reportate în literatura <strong>de</strong> specialitate<br />
pentru mo<strong>de</strong>lele create pe baza textelor <strong>de</strong> tip N din corpusul Susanne (vezi [92]).<br />
Putem observa totodat , c verbul „a fi” este foarte <strong>de</strong>s întâlnit iar apari ia cuvântului „dreptul”<br />
printre primele 15 cuvinte cu cele mai multe apari ii nu este <strong>de</strong>loc o surpriz inând cont <strong>de</strong> domeniul<br />
textului.<br />
Pe viitor dorim s îmbun t im aplica ia <strong>de</strong> preprocesare a textelor pentru limba Român prin<br />
restaurarea caracterelor diacritice. Totodat dorim s test m aplica ia pe o colec ie <strong>de</strong> texte <strong>de</strong> dimen<strong>si</strong>uni<br />
mai mari format din articole <strong>de</strong> ziare Române ti.<br />
O alt po<strong>si</strong>bil direc ie <strong>de</strong> <strong>de</strong>zvoltare ar fi implementarea unor meto<strong>de</strong> mai performante <strong>de</strong> netezire a<br />
probabilit ilor mo<strong>de</strong>lelor lingvistice cum ar fi algoritmul propus <strong>de</strong> Kneser i Ney [24, 64-65, 102].<br />
Folo<strong>si</strong>nd aplica ia Java <strong>de</strong> culegere i <strong>de</strong> preprocesare <strong>de</strong> texte <strong>de</strong>zvoltat , dorim s realiz m o<br />
colec ie mare <strong>de</strong> texte în limba Român separat pe diferite domenii i s trecem la urm toarea faz : cea<br />
<strong>de</strong> adnotare a textelor.<br />
) !<br />
Obiectivul prezentei teze a fost s aduc contribu ii în domeniul recunoa terii automate a vorbirii<br />
continue i a prelucr rii limbajului natural. Contribu iile la domeniile sus men ionate s-au materializat în<br />
trei direc ii <strong>de</strong> cercetare principale:<br />
• prelucrarea semnalului vocal i extragerea caracteristicilor utiliza i pentru recunoa tere:<br />
coeficien ii Mel cepstrali i a parametrilor dinamici <strong>de</strong>lta i accelera ie din vorbirea continu ;<br />
• mo<strong>de</strong>larea acustic prin cla<strong>si</strong>ficarea fonemelor din vorbirea continu din limba englez i<br />
maghiar utilizând diferite tipuri <strong>de</strong> re ele neuronale artificiale;<br />
• preprocesarea i normalizarea corpusurilor <strong>de</strong> texte i mo<strong>de</strong>larea lingvistic atât pentru limba<br />
englez cât i pentru limba român .<br />
Cele trei domenii <strong>de</strong> cercetare men ionate se încadreaz în domeniul recunoa terii statistice a vorbirii<br />
continue, fiecare dintre ele reprezentând câte un modul al unui astfel <strong>de</strong> <strong>si</strong>stem statistic <strong>de</strong> recunoa tere.<br />
Lucr rile proprii publicate în reviste <strong>de</strong> specialitate sau în volumele unor conferin e na ionale sau<br />
interna ionale, se înscriu în aceste trei domenii <strong>de</strong> cercetare.<br />
Lucr ri reprezentative pentru prelucrarea semnalului vocal i extragerea caracteristicilor sunt:<br />
• Domokos J., Phoneme clas<strong>si</strong>fication u<strong>si</strong>ng MLP, raport cercetare, Institutul <strong>de</strong> Cercetare al<br />
Funda iei Sapientia, 2006.<br />
• Domokos J., To<strong>de</strong>rean G., Frame-by-frame phoneme clas<strong>si</strong>fication u<strong>si</strong>ng MLP, Inter-ing<br />
Scientific Conference, ISSN 1843-780X, pp. VI-1-1 - VI-1-6, Tîrgu Mure , Romania, 2007.
) ! !<br />
Lucr rile semnificative pentru cea <strong>de</strong> a doua direc ie <strong>de</strong> cercetare, cea <strong>de</strong> cla<strong>si</strong>ficare a fonemelor sunt<br />
urm toarele:<br />
• Domokos J., To<strong>de</strong>rean G., Frame by Frame Phoneme Clas<strong>si</strong>fication u<strong>si</strong>ng MLP, Acta Tehnica<br />
Napocen<strong>si</strong>s Electronics and Telecommunications;<br />
• Domokos J., To<strong>de</strong>rean G., Continuous speech phoneme recognition u<strong>si</strong>ng dynamic neural<br />
networks, Proceedings of the 12th International Conference on Applied Mathematics and<br />
Computer Science, B i oara, România, 2008;<br />
• Domokos J., To<strong>de</strong>rean G., Continuous speech phoneme recognition u<strong>si</strong>ng dynamic artificial<br />
neural networks, Automation, computers, applied mathematics.<br />
Lucr rile reprezentative pentru domeniul prelucr rii limbajului natural i a mo<strong>de</strong>l rii lingvistice sunt:<br />
• Domokos J., To<strong>de</strong>rean G., Buza O., Statistical Language mo<strong>de</strong>ling on Susanne corpus,<br />
Proceedings of the 7 th International Conference COMMUNICATIONS, Bucure ti, România,<br />
2008.<br />
• DOMOKOS József, TODEREAN Gavril, Text conditioning and statistical language mo<strong>de</strong>ling<br />
aspects for Romanian language, 1 st International Conference on Recent Achievements in<br />
Mechatronics, Automation, Computer Science and Robotics MACRo2009, 2009.<br />
• DOMOKOS József, TODEREAN Gavril, Text conditioning and statistical language mo<strong>de</strong>ling<br />
aspects for Romanian language, Acta Univer<strong>si</strong>tatis Sapientiae, Electrical and Mechanical<br />
Engineering;<br />
• Domokos J., To<strong>de</strong>rean G., Buza O., Text conditioning and statistical language mo<strong>de</strong>ling for<br />
Romanian language, Proceedings of the 5 th Conference Speech and Human-Computer-Dialogue<br />
SpeD, 2009.<br />
Pe lâng lucr rile publicate, autorul a fost conduc tor a dou proiecte <strong>de</strong> cercetare i membru la un<br />
contract <strong>de</strong> cercetare în domeniile men ionate:<br />
• Contribu ii la recunoa terea robust a vorbirii continue - Institutul Programelor <strong>de</strong> Cercetare al<br />
Funda iei Sapientia – conduc tor;<br />
• Mo<strong>de</strong>lare lingvistic (Nyelvi mo<strong>de</strong>lezés) - Funda ia EUROTRANS – conduc tor;<br />
• Dezvoltarea i implementarea unor meto<strong>de</strong> tolerante la erori pentru recunoa terea vorbirii<br />
(Hibat r beszédfelismeré<strong>si</strong> módszerek kidolgozása és gyakorlati megvalósítása) - Institutul<br />
Programelor <strong>de</strong> Cercetare al Funda iei Sapientia – membru;<br />
Contribu iile proprii sunt rezumate în cele ce urmeaz :<br />
• Proiectarea i <strong>de</strong>zvoltarea aplica iei cu parametri configurabili pentru extragerea coeficien ilor<br />
Mel cepstrali precum i a diferen elor temporale <strong>de</strong> ordinul 1 i 2 (parametri <strong>de</strong>lta i accelera ie<br />
sau <strong>de</strong>lta - <strong>de</strong>lta) – MFCC Extraction;<br />
• Dezvoltarea aplica iei pentru crearea, configurarea, antrenarea i testarea re elelor neuronale în<br />
ve<strong>de</strong>rea cla<strong>si</strong>fic rii fonemelor. Aplica ia permite utilizarea atât a re elelor neuronale statice cât i<br />
a celor dinamice;<br />
• Experimente realizate pentru cla<strong>si</strong>ficarea fonemelor utilizând diferite tipuri <strong>de</strong> re ele neuronale<br />
statice i dinamice: MLP (Multi Layer Perceptron), FTDN (Focused Time Delayed Neural<br />
Network), DTDN (Distributed Time Delayed Neural Network) i LRNN (Layer Recurrent Neural<br />
Network) pentru dou baze <strong>de</strong> date <strong>de</strong> vorbire continu : TIMIT i OASIS Numbers;<br />
• Dezvoltarea aplica iei Java pentru culegerea colec iilor <strong>de</strong> texte prin intermediul Internetului;<br />
• Proiectarea i <strong>de</strong>zvoltarea aplica iei pentru preprocesarea i normalizarea corpusurilor lingvistice,<br />
care ofer po<strong>si</strong>bilitatea <strong>de</strong> a:<br />
o elimina tag-urile HTML i CSS din textele culese <strong>de</strong> pe Internet;<br />
o segmenta textul la nivel <strong>de</strong> fraz i cuvânt pe baza punctua iei;<br />
o elimina semnele <strong>de</strong> punctua ie;<br />
o efectua conver<strong>si</strong>a numerelor în cuvinte în forma lor rostit ;<br />
o elimina spa iile redundante sau rândurile goale din text;<br />
• Dezvoltarea aplica iei pentru generarea i evaluarea pe baza perplexit ii a diferitelor tipuri <strong>de</strong><br />
mo<strong>de</strong>le lingvistice statistice;<br />
• Crearea mo<strong>de</strong>lelor lingvistice unigram, bigram i trigram pentru limba englez folo<strong>si</strong>nd corpusul<br />
Sherlock Holmes i Susane;<br />
• Crearea mo<strong>de</strong>lelor lingvistice pentru limba român utilizând corpusul Constitu ia României.<br />
>:
$ / H " !"<br />
@ !<br />
1. Aca<strong>de</strong>mia Român , Institutul <strong>de</strong> cercet ri pentru Inteligen Artificial : http://www.racai.ro.<br />
2. Antal M., Contribu ii la recunoa terea vorbirii i a vorbitorului, tez <strong>de</strong> doctorat, Univer<strong>si</strong>tatea Tehnic din<br />
Cluj-Napoca, <strong>Facultatea</strong> <strong>de</strong> Electronic , Telecomunica ii i Tehnologia Informa iei, 2006.<br />
3. Antal M., G. To<strong>de</strong>rean, Phoneme Clas<strong>si</strong>fication U<strong>si</strong>ng Two-Level Clas<strong>si</strong>fication Scheme, Proceedings of the 3 rd<br />
Conference of Speech Technology and Human-Computer - Dialog, pp. 231-238, Cluj-Napoca, Romania, May<br />
13-15, 2005.<br />
4. Antal M., G. To<strong>de</strong>rean, Phonetic Analy<strong>si</strong>s of GMM-based Speaker Mo<strong>de</strong>ls, Biometric Authentication<br />
Workshop, pp. 235-240, Cluj-Napoca, Romania, May 26-27, 2005.<br />
5. Antal M., Phoneme Recognition for ASR, Proceedings of the 6 th IEEE International Conference<br />
COMMUNICATIONS, pp. 123-126, Bucharest, Romania, June 8-10, 2006.<br />
6. Antal M., Phonetic Speaker Recognition, Proceedings of the 7 th IEEE International Conference<br />
COMMUNICATIONS, pp. 67-72, Bucharest, Romania, June 5–7, 2008.<br />
7. Antal M., To<strong>de</strong>rean G., Speaker Recognition and broad Phonetic Groups, Proceedings of the 24 th IASTED<br />
International Multi-Conference On Signal Proces<strong>si</strong>ng, Pattern Recognition, and Applications, pp. 155-159,<br />
Innsbruck, Austria, February 15-17, 2006.<br />
8. Aracon C., T., An exten<strong>si</strong>on to the trigger language mo<strong>de</strong>l based on a probabilistic thesaurus and document<br />
clusters for automatic speech recognition, PhD the<strong>si</strong>s, School of Information Science, Japan Advanced Institute<br />
of Science and Technology, 2003.<br />
9. Bao O., H., T., Knowledge discovery and data mining techniques and practice, Strengths, 2000.<br />
10. Barzilay R., Collins M., Advanced Natural Language Proces<strong>si</strong>ng, MIT Opencourseware, 2005.<br />
11. Bazzi I., Glass J. R., Mo<strong>de</strong>ling out-of-vocabulary words for robust speech recognition, Technical report, MIT,<br />
2003.<br />
12. Bazzi I., Mo<strong>de</strong>ling out-of-vocabulary words for robust speech recognition, PhD The<strong>si</strong>s, MIT, 2002.<br />
13. Becchetti C., Ricotti L. P., Speech recognition. Theory and C++ implementations, John Wiley & sons, 1999.<br />
14. Berwick R., C., Natural Language and the Computer Representation of Knowledge, MIT Opencourseware,<br />
2003.<br />
15. Blankertz B., Purwins H., Obermayer K., Constant Q profiles for tracking modulations in audio data,<br />
International Computer Mu<strong>si</strong>c Conference, pp. 407-410, La Habana, Cuba, 2001.<br />
16. Blejan A., Aplica ii IVR vocale actuale avansate, revista <strong>Electronica</strong> Azi, nr. 17, Octombrie, 2001.<br />
17. Bol<strong>de</strong>a M., Recunoa terea automat a vorbirii - Îndrum tor <strong>de</strong> laborator, Univer<strong>si</strong>tatea "Politehnica"<br />
Timi oara, 1998.<br />
18. Bourlard H., Morgan N., Connectionist speech recognition. A Hybrid Approach, Kluwer Aca<strong>de</strong>mic Publishers,<br />
1994.<br />
19. British National Corpus: http://www.natcorp.ox.ac.uk/<br />
20. Buza O., To<strong>de</strong>rean G., Domokos J., Bodó Á., Zs., Voice Synthe<strong>si</strong>s Application based on Syllable<br />
Concatenation, Proceedings of IEEE International Conference on Automation, Quality and Testing, Robotics,<br />
AQTR 2008 - Theta 16, pp. 473-478, Cluj-Napoca, Romania, May 22-25, 2008.<br />
21. Ca aron A., Vowel Recognition u<strong>si</strong>ng Concurrent Neural Networks, 8 th International Conference on<br />
Optimization of Electrical and Electronic Equipment - OPTIM, Poiana Bra ov, Romania, May 16-18, 2002.<br />
22. Ca aron A., Re ele neurale pentru recunoa terea vorbirii, Tez <strong>de</strong> doctorat, Univer<strong>si</strong>tatea Tran<strong>si</strong>lvania Bra ov,<br />
2003.<br />
23. Ceau u A., tef nescu D., Resurse i instrumente lingvistice <strong>de</strong>zvoltate la ICIA, ConsILR - 2005 - Atelier<br />
interna ional <strong>de</strong> Resurse Lingvistice Române ti i Instrumente pentru Prelucrarea Limbii Române, Ia i,<br />
Romania, 3 Noiembrie, 2005.<br />
24. Chen S., Goodman J., An Empirical Study of Smoothing Techniques for Language Mo<strong>de</strong>ling, Harvard Computer<br />
Science Technical report TR-10-98, 1998.<br />
25. Clarkson P.R., Rosenfeld R., Statistical Language Mo<strong>de</strong>ling U<strong>si</strong>ng the CMU-Cambridge Toolkit, Proceedings<br />
of ESCA - Eurospeech, pp. 2207-2210, Rho<strong>de</strong>s, Greece, September 22-25, 1997.<br />
26. Corneliu O. D., Gavat I., Neural and Statistical Mo<strong>de</strong>ls for Speech Recognition, Procedings of IEEE, EURASIP<br />
Conference on Speech Technology and Human - Computer Dialog – SpeD 2007, Ia i, May 10-12, 2007.<br />
27. Dale R., Moisl H., Somers H., Handbook of natural language proces<strong>si</strong>ng, Marcell Dekker Inc., 2000.<br />
28. Della Pietra S., Della Pietra V., Mercer R. L., Roukos S., Adaptive language mo<strong>de</strong>ling u<strong>si</strong>ng minimum<br />
discriminant estimation, Proceedings of the ARPA Workshop on Human Language Technology, pp. 108 – 113,<br />
Princeton, New Jersey, March 6-8, 1993.<br />
29. Deller J. R., Hansen J. H. L., Proakis J. G., Discrete – time proces<strong>si</strong>ng of speech <strong>si</strong>gnals, IEEE Press, 2000.<br />
30. Demuth H., Beale M., Hagan M., Neural Network Toolbox TM 6. Users gui<strong>de</strong>, Math Work Inc., 2008.<br />
31. Demuth H., Beale M., Neural Network Toolbox TM 5. For Use with MATLAB®, Math Work Inc., 2005.<br />
32. Deng L., O'Shaughnessy D., Speech proces<strong>si</strong>ng: a dynamic and optimization-oriented approach, Marcell<br />
Dekker Inc., 2003.<br />
>7
) ! !<br />
33. Diaconescu S., Dumitra cu I., Complex Natural Language Proces<strong>si</strong>ng System Architecture, Procedings of<br />
IEEE, EURASIP Conference on Speech Technology and Human - Computer Dialog – SpeD 2007, Ia i, May<br />
10-12, 2007.<br />
34. Domokos J., Algoritmi i meto<strong>de</strong> pentru recunoa terea vorbirii continue, referat doctorat, <strong>Facultatea</strong> <strong>de</strong><br />
Electronic i Telecomunica ii, Univer<strong>si</strong>tatea Tehnic din Cluj-Napoca, 2006.<br />
35. Domokos J., Phoneme clas<strong>si</strong>fication u<strong>si</strong>ng MLP, raport cercetare, Institutul <strong>de</strong> Cercetare al Funda iei Sapientia,<br />
2006.<br />
36. Domokos J., Rezultate ob inute în recunoa terea continu a vorbirii, referat doctorat, Univer<strong>si</strong>tatea Tehnic din<br />
Cluj-Napoca, <strong>Facultatea</strong> <strong>de</strong> Electronic i Telecomunica ii, 2007.<br />
37. Domokos J., Stadiul actual în domeniul recunoa terii semnalului vocal, referat doctorat, Univer<strong>si</strong>tatea Tehnic<br />
din Cluj-Napoca, <strong>Facultatea</strong> <strong>de</strong> Electronic i Telecomunica ii, 2003.<br />
38. Domokos J., To<strong>de</strong>rean G., Buza O., Statistical Language mo<strong>de</strong>ling on Susanne corpus, Proceedings of the 7 th<br />
IEEE International Conference COMMUNICATIONS, ISBN: 978-606-521-008-0, pp. 69-72, Bucharest,<br />
Romania, June 5-7, 2008.<br />
39. Domokos J., To<strong>de</strong>rean G., Buza O., Text conditioning and statistical language mo<strong>de</strong>ling for Romanian<br />
language, From Speech Proces<strong>si</strong>ng to Spoken Language Technology. Proceedings of the 5 th IEEE, EURASIP<br />
Conference Speech and Human-Computer Dialogue – SpeD 2009, pp. 161-168, Constan a, Romania, June 18-<br />
19, 2009.<br />
40. Domokos J., To<strong>de</strong>rean G., Continuous speech phoneme recognition u<strong>si</strong>ng dynamic neural networks,<br />
Proceedings of the 12 th International Conference on Applied Mathematics and Computer Science – Theodor<br />
Anghelu seminar, pp. 14-15, Bai oara, Romania, September 10-13, 2008.<br />
41. Domokos J., To<strong>de</strong>rean G., Continuous speech phoneme recognition u<strong>si</strong>ng dynamic artificial neural networks,<br />
Automation, computers, applied mathematics, ISSN: 1221-437X, Volume 17, pp. 5-11, no. 1/2008.<br />
42. Domokos J., To<strong>de</strong>rean G., Frame by Frame Phoneme Clas<strong>si</strong>fication u<strong>si</strong>ng MLP, Acta Tehnica Napocen<strong>si</strong>s<br />
Electronics and Telecommunications, ISSN: 1221-6542, pp. 15-18, Volume 48, 4/2007.<br />
43. Domokos J., To<strong>de</strong>rean G., Frame-by-frame phoneme clas<strong>si</strong>fication u<strong>si</strong>ng MLP, Proceedings of Inter-ing<br />
Scientific Conference with international participation, ISSN 1843-780X, pp. VI-1-1 - VI-1-6, Tîrgu Mure ,<br />
Romania, November 15-16, 2007.<br />
44. Domokos J., To<strong>de</strong>rean G., Text conditioning and statistical language mo<strong>de</strong>ling aspects for Romanian language,<br />
1 st International Conference on Recent Achievements in Mechatronics, Automation, Computer Science and<br />
Robotics MACRo, Tîrgu-Mure , Romania, March 20-21, 2009.<br />
45. Domokos J., To<strong>de</strong>rean G., Text conditioning and statistical language mo<strong>de</strong>ling aspects for Romanian language,<br />
Acta Univer<strong>si</strong>tatis Sapientiae, Electrical and Mechanical Engineering, pp. 187-197, Vol. 1, 2009.<br />
46. Dumitru O. C., Gavat I., Continuous speech recognition system based on statistical mo<strong>de</strong>ling, IEEE<br />
International Workshop Trends and Recent Achievements in Information Technology, pp. 66 – 69, Cluj-<br />
Napoca, Romania, 2002.<br />
47. Francis W. N., Kucera H., Manual of Information. To accompany A Standard Corpus of Present-Day Edited<br />
American English, for use with Digital Computers, Brown Univer<strong>si</strong>ty, Department of Linguistics, 1964,<br />
Revised 1971, Revised and Amplified 1979.<br />
48. Furui S., Digital speech proces<strong>si</strong>ng, synthe<strong>si</strong>s and recognition, Marcell Dekker Inc., 2001.<br />
49. Furui S., Sondhi M., M., Advances in speech <strong>si</strong>gnal proces<strong>si</strong>ng, Marcell Dekker Inc., 1991.<br />
50. Gao J., Lee K.-F., Distribution-based pruning of backoff language mo<strong>de</strong>ls, Proceedings of the 38 th Annual<br />
Meeting of the Association for Computational Linguistics, pp. 579-588, Hong Kong, October 1-8, 2000.<br />
51. Gao J., Zhang M ., Improving Language Mo<strong>de</strong>l Size Reduction u<strong>si</strong>ng Better Pruning Criteria, Proceedings of<br />
the 40 th Annual Meeting of the Association for Computational Linguistics, pp. 176-182, Phila<strong>de</strong>lphia,<br />
Pennsylvania, USA, July 07-12, 2002.<br />
52. Giurgiu M., Contributions to the automatic recognition of words in the Romanian language, Tez <strong>de</strong> doctorat,<br />
Univer<strong>si</strong>tatea Tehnic din Cluj-Napoca, <strong>Facultatea</strong> <strong>de</strong> Electronic i Telecomunica ii, 1996.<br />
53. Goodman J., Gao J., Language mo<strong>de</strong>l <strong>si</strong>ze reduction by pruning and clustering, International Conference on<br />
Spoken Language Proces<strong>si</strong>ng, pp. 579-588, Beijing, China, October 16-20, 2000.<br />
54. Google AJAX Search API: http://co<strong>de</strong>.google.com/apis/ajaxsearch/<br />
55. Graves, A., Schmidthuber, J., Framewise phoneme clas<strong>si</strong>fication with bidirectional LSTM networks,<br />
Proceedings of IEEE, International Joint Conference on Neural Networks, pp. 2047-2052, vol. 4, Montréal,<br />
Québec, Canada, July 31-August 4, 2005.<br />
56. Hampshire J. B., Waibel A., A novel objective function for improved phoneme recognition u<strong>si</strong>ng time <strong>de</strong>layed<br />
neural networks, IEEE Transactions on Neural Networks, pp. 216-228, vol. I, no. 2, 1990.<br />
57. Henke J., Statistical Inference: n-gram Mo<strong>de</strong>ls over Sparse Data, Presentation on TDM Seminar, Berkeley<br />
Univer<strong>si</strong>ty of California, 2007.<br />
58. Hid<strong>de</strong>n Markov Mo<strong>de</strong>l (HMM) Toolbox for Matlab<br />
http://www.cs.ubc.ca/~murphyk/Software/HMM/hmm.html<br />
59. Hou J., Rabiner L., Dusan S., On the Use of Time-Delay Neural Networks for Highly Accurate Clas<strong>si</strong>fication of<br />
Stop Consonants, Interspeech - Eurospeech Conference, pp. 1929-1932, Antwerp, Belgium, August 27-31,<br />
2007.<br />
>=
$ / H " !"<br />
60. Huang X., Acero A., Hon H., Spoken Language Proces<strong>si</strong>ng. A Gui<strong>de</strong> to Theory, Algorithm & System<br />
Development, Prentice Hall, 2001.<br />
61. Human Language Technology Group webpage, Univer<strong>si</strong>ty of Szeged, http://www.inf.uszeged.hu/projectdirs/hlt/in<strong>de</strong>x.html<br />
62. JavaScript Object Notation: http://www.json.org/<br />
63. Jelinek F., Merialdo B., Roukos S., Strauss M., A Dynamic Language Mo<strong>de</strong>l for Speech Recognition,<br />
Proceedings of the 4 th DARPA Workshop on Speech and Natural Language, pp. 293 - 295, Pacific Grove,<br />
California, USA, February 19-22, 1991.<br />
64. Jelinek F., Statistical Methods for speech recognition, The MIT Press, 2001.<br />
65. Jurafsky D., Martin J. H., Speech and language proces<strong>si</strong>ng. An introduction to Natural language Proces<strong>si</strong>ng,<br />
Computational Linguistics and Speech Recognition, Prentice Hall, 2000.<br />
66. Katz, S. M., Estimation of probabilities from sparse data for other language component of a speech recognizer,<br />
IEEE transactions on Acoustics, Speech and Signal Proces<strong>si</strong>ng, pp. 400-401, September 1987.<br />
67. Large vocabulary continuous speech recognition engine Julius homepage:<br />
http://julius.sourceforge.jp/en_in<strong>de</strong>x.php<br />
68. Lau R., Adaptive statistical language mo<strong>de</strong>ling, MSc. the<strong>si</strong>s, MIT, 1994.<br />
69. Lau R., Subword Lexical Mo<strong>de</strong>ling for Speech Recognition, PhD. the<strong>si</strong>s, MIT, 1998.<br />
70. Linguistic Data Consortium: http://www.ldc.upenn.edu/<br />
71. Lupu E., Contributions to speaker recognition, Tez <strong>de</strong> doctorat, Univer<strong>si</strong>tatea Tehnic din Cluj-Napoca,<br />
<strong>Facultatea</strong> <strong>de</strong> Electronic i Telecomunica ii, 1996.<br />
72. Lupu E., Pop G. P., Krainics E., Low-complexity system for speaker verification, Acta Tehnica Napocen<strong>si</strong>s, pp.<br />
43-50, Vol. 45, nr. 1/2004.<br />
73. Lupu E., Pop G. P., Prelucrarea numeric a semnalului vocal. Vol. I – Elemente <strong>de</strong> analiz i recunoa tere, Ed.<br />
Risoprint, Cluj-Napoca, 2004.<br />
74. Lupu E., Varga M., Pop G. P., Speaker verification u<strong>si</strong>ng TESPAR Neural Network Method, IEEE International<br />
Workshop on Trends and Recent Achievements in Information Technology, pp. 164-167, Cluj-Napoca,<br />
Romania, May 16-18, 2002.<br />
75. Makamura M., Tsuda K., Aoe J-I., A New Approach to Phoneme Recognition by Phoneme Filter Neural<br />
Networks, Information Sciences: an International Journal, pp. 109-119, Vol. 90, Issue 1-4, 1996.<br />
76. Manning C. D., Schütze H., Foundations of statistical natural language proces<strong>si</strong>ng, MIT Press, 1999.<br />
77. McAllester D., Schapire R. E., On the Convergence Rate of Good-Turing Estimators, Proceedings of 13 th<br />
Computational Learning Theory, pp. 1-6, Palo Alto, California, USA, June 28 - July 1, 2000.<br />
78. Mesaros A., Cercet ri privind elaborarea unui mo<strong>de</strong>l pentru caracterizarea timbrului semnalelor muzicale,<br />
Tez <strong>de</strong> doctorat, Univer<strong>si</strong>tatea Tehnic din Cluj-Napoca, <strong>Facultatea</strong> <strong>de</strong> Electronic i Telecomunica ii, 2007.<br />
79. Mesaros A., Proiect <strong>de</strong> diplom , Univer<strong>si</strong>tatea Tehnic din Cluj-Napoca, <strong>Facultatea</strong> <strong>de</strong> Electronic i<br />
Telecomunica ii, 2001.<br />
80. Mesaros A., Proiect <strong>de</strong> diserta ie, Univer<strong>si</strong>tatea Tehnic din Cluj-Napoca, <strong>Facultatea</strong> <strong>de</strong> Electronic i<br />
Telecomunica ii, 2002.<br />
81. MTA-SZTE, Mesterséges Intelligencia Tanszéki Kutatócsoport, OASIS Numbers adatbázis, 2002.<br />
82. Munteanu C., Penn G., Baecker R., Web-Based Language Mo<strong>de</strong>ling for Automatic Lecture Transcription,<br />
Interspeech - Eurospeech Conference, Antwerp, Belgium, August 27-31, 2007.<br />
83. Naforni I., Câmpeanu A., Isar A., Semnale, circuite i <strong>si</strong>steme, Partea 1, Univer<strong>si</strong>tatea “Politehnica”<br />
Timi oara, 1995.<br />
84. Nakamura M., Maruyama K., Kawabata T., Shikano K., Neural network approach to word category prediction<br />
for English texts, Proceedings of the 13 th Conference on Computational Linguistics, pp. 213-218, Hel<strong>si</strong>nki,<br />
Finland, August 20-25, 1990.<br />
85. Nelleke O., P. <strong>de</strong> Haan, eds., Corpus-Based Research into Language - SUSANNE: a Domesday Book of English<br />
grammar by Geoffrey Sampson, Rodopi, 1994.<br />
86. Paul, D., B., Baker, J., M., The <strong>de</strong><strong>si</strong>gn for the wall street journal-based CSR corpus, Workshop on Speech and<br />
Natural Language Proceedings, pp. 357 – 362, New York, USA, February 23-26, 1992.<br />
87. Penn Treebank: http://www.cis.upenn.edu/~treebank/<br />
88. Picone J., Signal mo<strong>de</strong>ling techniques in speech recognition, Proceedings of the IEEE, pp. 1215-1247, Vol. 81,<br />
No. 9, September, 1993.<br />
89. Polikar R., The wavelet tutorial, Rowan Univer<strong>si</strong>ty of Engineering,<br />
http://users.rowan.edu/~polikar/WAVELETS/WTtutorial, 2001.<br />
90. Poo G.-S., Large vocabulary Mandarin Final recognition based on Two-Level Time-Delay Neural Networks<br />
(TLTDNN), Speech Communication pp. 17-24, no. 1, Vol. 22, 1997.<br />
91. Pop G. P., Lupu E., Speaker verification u<strong>si</strong>ng vector quantization, IEEE International Workshop Trends and<br />
Recent Achievements in Information Theory, pp. 160-163, Cluj-Napoca, Romania, May 16-18, 2002.<br />
92. Quiniou S., Anquetil E., Carbonnel S., Statistical Language Mo<strong>de</strong>ls for On-line Handwritten Sentence<br />
Recognition, Proceedings of 8 th International Conference on Document Analy<strong>si</strong>s and Recognition, pp. 516 –<br />
520, Vol. I, Seoul, Korea, August 31- September 1, 2005.<br />
93. Rabiner L. R., Juang B.H., Fundamentals of speech recognition, Prentice Hall, 1993.<br />
>>
) ! !<br />
94. Rabiner, L. R., A Tutorial on Hid<strong>de</strong>n Markov Mo<strong>de</strong>ls and Selected Applications in Speech Recognition,<br />
Proceedings of the IEEE, vol.77, no. 2, pp. 257-285, 1989.<br />
95. Resch B., (modified by Rank E., and Rank C.), Hid<strong>de</strong>n Markov Mo<strong>de</strong>ls - A Tutorial for the Course<br />
Computational Intelligence, http://www.igi.tugraz.at/lehre/CI, 2009.<br />
96. Reynolds T. J., Antoniou A. C., Experiments in speech recognition u<strong>si</strong>ng a modular MLP architecture for<br />
acoustic mo<strong>de</strong>ling, Information Sciences pp. 39–54, nr. 156, 2003.<br />
97. Robinson, T., An application of recurrent nets for phone probability estimation, IEEE Transactions on Neural<br />
Networks, pp. 298-305, Vol. 5, Issue 2, March,1994.<br />
98. Robinson, T., Fall<strong>si</strong><strong>de</strong> F., Phoneme recognition from TIMIT database u<strong>si</strong>ng recurrent error propagation<br />
networks, Technical report, 1990.<br />
99. Robinson, T., Several improvements to a recurrent error propagation network phone recognition system,<br />
Technical report 1991.<br />
100. Rosenfeld R., A Maximum Entropy Approach to Adaptive Statistical Language Mo<strong>de</strong>ling, Computer, Speech<br />
and Language, pp. 187-228, Vol 10, 1996.<br />
101. Rosenfeld R., Carbonell J., Rudnycky A., Adaptive Statistical Language Mo<strong>de</strong>ling: A Maximum Entropy<br />
Approach, PhD the<strong>si</strong>s, School of Computer Science, Carnegie Mellon Univer<strong>si</strong>ty, 1994.<br />
102. Rosenfeld R., Two <strong>de</strong>ca<strong>de</strong>s of statistical language mo<strong>de</strong>ling: where do we go from here?, Proceedings of the<br />
IEEE, pp. 1270-1278 Volume 88, Issue 8, 2000.<br />
103. Sampson G., The SUSANNE Corpus: Documentation, Release 5, 2000.08.11,<br />
http://www.grsampson.net/SueDoc.html, School of Cognitive & Computing Sciences Univer<strong>si</strong>ty of Sussex<br />
Falmer, 2001.<br />
104. Schwarm, S., Ostendorf, M., Text normalization with varied data sources for conversational speech language<br />
mo<strong>de</strong>ling, IEEE International Conference on Acoustics, Speech, and Signal Proces<strong>si</strong>ng, pp. 789 – 792, Vol. 1,<br />
Orlando, Florida, USA, May 13 - 17, 2002.<br />
105. Schwenk H., Gauvain J.-L., U<strong>si</strong>ng neural network language mo<strong>de</strong>ls for LVCSR, Proceedings of Rich<br />
Transcriptions Workshop, Palisa<strong>de</strong>s, New York, USA, December 10, 2004.<br />
106. Siivola V., Building compact language mo<strong>de</strong>ls incrementally, Second Baltic Conference on Human Language<br />
Technologies, Tallinn, Estonia, April 4 - 5, 2005.<br />
107. Stolcke A., Entropy based Pruning of Backoff Language Mo<strong>de</strong>ls, Proceedings of DARPA Broadcast News<br />
Transcription and Un<strong>de</strong>rstanding Workshop, pp. 270-274, Lansdowne, VA, February, 1998.<br />
108. The CMU Sphinx Group Open Source Speech Recognition Engines:<br />
http://cmusphinx.sourceforge.net/html/cmusphinx.php<br />
109. The CMU Statistical Language Mo<strong>de</strong>ling (SLM) Toolkit: http://www.speech.cs.cmu.edu/SLM_info.html<br />
110. TIMIT Suggested Training/Test Subdivi<strong>si</strong>on, 1990.<br />
111. To<strong>de</strong>rean G., C runtu A., Meto<strong>de</strong> <strong>de</strong> recunoa tere a vorbirii, Editura Risoprint, 2005.<br />
112. To<strong>de</strong>rean G., Costeiu M., Giurgiu M., Re ele neuronale artificiale, Editura Albastr , Cluj-Napoca, 1995.<br />
113. VOICEBOX: Speech Proces<strong>si</strong>ng Toolbox for MATLAB,<br />
http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html<br />
114. Waibel A., Hanazawa T., Hinton G., Shikano K., Lang K., J., Phoneme recognition u<strong>si</strong>ng time-<strong>de</strong>lay neural<br />
networks, IEEE Transactions on Acoustics, Speech and Signal Proces<strong>si</strong>ng, pp. 328-339, Vol. 37, Issue 3, 1989.<br />
115. Wei X., Rudnicky A., Can Artificial Neural Networks Learn Language Mo<strong>de</strong>ls? International Conference on<br />
Statistical Language Proces<strong>si</strong>ng, pp. M1-13, Beijing, China, 2000.<br />
116. Yan T. K., Speaker adaptive phoneme recognition u<strong>si</strong>ng time <strong>de</strong>lay neural networks, M.Sc. the<strong>si</strong>s, National<br />
Univer<strong>si</strong>ty of Singapore, 2000.<br />
117. Young S., Evermann G., Gales M., Hain T., Kershaw D., Moore G., O<strong>de</strong>ll J., Ollason D., Povey D., Valtchev<br />
V., Woodland P., The HTK Book, Cambridge Univer<strong>si</strong>ty Engineering Department, 2005.<br />
118. Zaharie D., Curs re ele neuronale, Univer<strong>si</strong>tatea <strong>de</strong> Vest Timi oara, <strong>Facultatea</strong> <strong>de</strong> Matematic i Informatic ,<br />
http://www.math.uvt.ro/zaharie/, 2003.<br />
119. Zheng F., Song Z., Li L., Yu W., Wu W., The distance measure for line spectrum pairs applied to speech<br />
recognition, Proceedings of 5 th International Conference On Spoken Language Proces<strong>si</strong>ng - ICSLP, pp. 1123-<br />
1126, Sydney, Australia, November 30 - December 4, 1998.<br />
>@