1
Schema generala de recunoastere
Parametrizarea
semnalului
Parametri
Segmentare
Clase fonetice
Antrenare Clasificare
Etapa de recunoaştere
Etapa de antrenare
Decizie
Model
Semnal vocal
recunoscut
3
Antrenare
• Antrenarea are ca scop realizarea modelelor printr un proces de
invatare automata.
• Se spune ca au fost invatate sau modelate datele daca exista o
structura pentru fiecare clasa de date (model Markov ascuns,
perceptron, etc.)
• Se pot modifica parametrii acestei structuri cu ajutorul datelor prin
antrenare, obtinand astfel modelul clasei respective
• Se poate verifica ca este modelata bine clasa prin testare, adica
modelul sa recunoasca bine clasa pentru care a fost antrenat si mai
putin bine alte clase interesante in procesul de invatare
(discriminativitate)
4
1.Tehnici statistice bazate pe modele
Markov ascunse (MMA)
a11 a22 a33
MMA cu observatii discrete
N – numărul de stări ascunse ale modelului (starea la momentul i
o notăm cu Si ) {i = 1, 2, …, N}
s1 s2 s3
a12 a23 M – numărul de simboluri observate în fiecare stare sau
dimensiunea alfabetului generat de model) 1 , 2 ,..., M
b1(o1) b1(o2) b2(o3) b2(o4) b3(o5)
A={ai,j} – matricea probabilitaţilor de tranziţie între stări
ai , j P [St j St 1 i ], 1 i, j N
ai , j în
0 cazul modelului ergodic.
o1 o2 o3 o4 o5
B={bj(k)} – matricea distribuţiei probabilităţii simbolurilor
observate
Modelul Bakis
b j (k ) P[ot k S t j ] 1 k M
aij 0, j i, Π={πi} – distribuţia stării iniţiale
0, i 1 i PMarkov
Modelul i N . astfel: λ=(A,B,Π),
[ S1 i ] λ se1notează
i stabilindu-se înainte şi parametrii N, M
1, i 1,
5
Problemele de bază ale modelelor
Markov ascunse (MMA)
6
Algoritmii Forward si Backward
P(O | ) P(O | S , ) P(S | ) s1 bs1 (o1 )a s1s2 bs2 (o2 )...a sT 1sT bsT (oT )
toateS s1,...sT
7
Algoritmul Forward (1)
Se consideră variabilele forward t (i ) definite astfel t (i) P(o1o2 ...ot , st i | )
Care este probabilitatea secvenţei parţiale de observaţii, o1o 2 ...ot şi starea i la momentul t,
dându-se modelul . Se poate calcula prin inducţie t (i )
1. Iniţializare
t (i ) i bi (o1 ), 1 i N
2. Inductie
N
t 1 ( j ) t (i)aij b j (ot 1 ), 1 t T 1; 1 j N
i 1
3. Final
q1 1j
N
P(O | ) T (i ) qj
i 1
qN
N j
t t+1
at (i ) a t1 ( j )
8
Algoritmul Forward (2)
qN
N j
t t+1
9
at (i ) a t1 ( j )
Algoritmul
Algoritmul Forward
Backward (1)
1. Initializare
t (i) 1, 1 i N
2. Inducţie
10
Algoritmul Backward (2)
q1
ai1
qi
a1N qN
t t+1
t (i ) t1 ( j )
11
Sonagraf
Algoritmul Viterbi (1)
Se doreste estimarea secventei optime de stări S ( s1 , s2 ,..., sT )
PO, st i |
t (i) P( st i | O, ) N
PO, st i |
i 1
P(O, st i | ) = t (i ) t (i )
.
t (i ) t (i )
t (i ) N
t (i ) t (i )
i 1
Aceasta abordare nu duce intotdeauna la secvente optimale valide. Solutia pentru evidarea
acestei situatii este data mai jos:
12
Algoritmul Viterbi (2)
Se defineste t (i ) care reprezintă cea mai mare probabilitate de-a lungul unei singure secvenţe
parţiale de stări pana la momentul t . Probabilitatile urmatoare se obtin prin recursie.
1. Initializare
1 (i) i bi (o1 ), 1 i N
1 (i) 0
2. Recursie
t ( j ) max t 1 (i )aij b j (ot ), 2 t T ; 1 j N
1 i N
t ( j ) arg max t 1 (i )aij , 2 t T ; 1 j N
1 i N
3. Final
P* max [ T (i )]
1 i N
sT* arg max T (i )
1 i N
4. Backtracking
st* t 1 (st*1 ), t T 1,T 2,...,1
13
Algoritmul Baum- Welch (1)
Cea de-a treia şi cea mai complicată problemă a modelelor Markov ascunse este aceea de a
determina o metodă de ajustare a parametrilor modelului pentru ca aceştia să satisfacă un anumit
criteriu de optimizare. Nu există o cale analitică de a face ca setul de parametri să maximizeze
probabilitatea secvenţei de observaţii. Totuşi, se poate alege modelul pentru care se maximizează
local utilizând o procedură iterativă, cum ar fii metoda Baum-Welch sau tehnici ale gradientului.
În continuare se prezintă prima procedură enunţată mai sus
Se defineste probabilitatea de a fi in starea i la momentul t si probabilitatea j la momentul t+1
t (i , j ) P(st i , st 1 j | O, )
Folosind variabilele forward şi backward, se poate scrie relatia de mai sus sub forma următoare:
t (i ) t1 ( j )
Setul de formule pentru reestimarea parametrilor pentru parametrii modelului Markov ascuns este
dat mai jos:
j 1 (i ) T 1
t ( i , j )
T
t (i )
t 1 t 1, ot k
a ij T 1 bj
t( i ) T
t 1 t (i )
t 1
Procesul de reestimare se opreste in momentul in care variatia parametrilor scade sub o anumita
limita impusa
15
Modele Markov continue
16
Modele dependente de context, trifoni
Modelele Markov ascunse s-au dovedit a fi o bază reală în modelarea secvenţelor spectrelor vorbirii.
Pentru captarea variaţiilor în spectrele reale (inter şi intra-vorbitor) este necesar să dispunem de un
număr mare de modele. De exemplu, pentru obţinerea unui rezultat bun într-un sistem MMA cu
densităţi continue, este necesar să folosim îmbinarea dintre distribuţiile Gaussiene şi modelele
(fonetice) dependente de context. Practic, apare o problemă a insuficienţei datelor din cauza
numărului mare de modele care rezultă. Mai mult, datele sunt răspândite inegal şi este nevoie de o
metoda care să echilibreze complexitatea modelelor cu disponibilitatea datelor.
Această problemă a insuficienţei datelor devine una acută atunci când se foloseşte un sistem care
incorporează dependenţa de context cross-word.
Pentru că există un număr mare de trifoni, sunt multe modele de luat în considerare şi un număr mare
dintre aceşti trifoni vor avea puţine contribuţii, sau chiar deloc, în datele de antrenare. Numărul total de
trifoni necesari pentru orice aplicaţie depinde de setul de sunete (foneme), de constrângerile
gramaticale şi lexicale.
De exemplu pentru limba română există 34 foneme care conduc la un număr de cca 40000 trifoni.
Metodele tradiţionale care tratează această problemă implică modele împărţite în diferite contexte
pentru a forma aşa-zişii “trifoni generalizaţi” şi pentru a utiliza tehnici de netezire a posteriori.
Împărţirea modelelor este limitată, contextul drept şi cel stâng neputând fi tratate independent, ceea
ce duce la utilizarea sub-optimală a datelor disponibile.
În mod similar, netezirea a posteriori este şi ea nesatisfăcătoare, întrucât modelele folosite pentru
netezirea trifonilor sunt bifoni şi monofoni, prea numerosi când se folosesc seturi mari de antrenare.
Metoda prezentată în continuare funcţionează pentru sisteme care au cuvinte cu trifoni interni şi
pentru care este posibil să găsim date pentru fiecare trifon. Aşa cum sunt prezentate şi în figurile
următoare, sistemele care folosesc trifoni ai cuvintelor încrucişate necesită date pentru un număr
mare de trifoni şi mulţi dintre aceştia vor fi “nevăzuţi” (invizibili) în datele de antrenare.
Noul sistem este bazat pe utilizarea arborilor de decizie fonetici, care sunt folosiţi pentru a determina
seturile echivalente contextual ale stărilor MMA. Pentru a lucra cu seturi mari de date de antrenare,
construirea arborilor este bazată numai pe statistici pentru fiecare stare a MMA şi nu se face referinţă
directă la datele originale.
17
Legarea starilor MMA
18
Arbori de decizie
19
Concluzii MMA
Avantajele MMA
• suport matematic foarte bun, existând algoritmi eficienţi de antrenare şi de
calcul al probabilităţii a posteriori;
• bună capacitate de învăţare, se pot adapta cu uşurinţă dinamicii temporale a
semnalului şi nu necesită proceduri de aliniere;
• posibilitatea de utilizare în sistemele expert.
Dezavantajele MMA
• necesitatea în practică a unor presupuneri asupra distribuţiei probabilităţilor
bj(k) de emisie a simbolurilor în starea j;
• Ignorarea corelaţiei între vectorii acustici succesivi;
• lipsa de discriminare între modele; modele antrenate pentru maxima potrivire
cu secventa de antrenare.
20
2. Modele neurale
Primul strat, de intrare, acţionează ca un buffer;
23
Hărţi fonetice folosind reţeaua
neuronală Kohonen
u u a o o o o i i
o o i
a a a o a
o o e e e
a e a o a
a a e e e
a e a a a
a a u u u
a i a a a
a a u u u
1 w2,j
x1 .
.
.
N wN+1,j
.
. F
.
. wk,j
1 wk+1,j
xk .
.
.
N wk+N,j
25
Reţeaua neuronală recurentă (RNN)
x1(t) x2(t) xN(t)
. . .
. . .
xN(t-1)
x2(t-1)
θ x1(t-1)
26
3. Modele hibride neuro-statistice
Funcţionarea sistemului de
recunoaştere prezintă două etape:
27
Recunoasterea cuvintelor rostite izolat
28
Recunoasterea cuvintelor rostite
izolat (cifre) cu MMA
29
Structura modelelor Markov ascunse
N = numărul de stări ale modelului = 5
M = numarul de simboluri
emise in fiecare stare = 7
ai , j Pqt j|qt 1 i , 1 i, j 5;
b j k P[ot v k | qt j ], 1 k 7
i P[q1 i ], 1 i 5
A, B,
30
Antrenarea modelelor Markov ascunse
(MMA) –(1)
1. Initializarea matricilor , A, B
i = 0.2 0.2 0.2 0.2 0.2 A B
i i
A
B
32
Sistemul hibrid de recunoştere a
cuvintelor rostite izolat
Datele de intrare sunt următoarele:
• dictionarul este alcatuit din V cuvinte care reprezinta comenzi vocale numerice si de deplasare:
zero, unu, doi, trei, patru, cinci, sase, sapte, opt, noua, start, stop, sus, jos, stânga, dreapta,
înainte, înapoi;
• pentru antrenare fiecare cuvânt are câte P variante obtinute pentru fiecare din cei R vorbitori;
• pentru test fiecare cuvânt este reprezentat de alte P variante obtinute de la aceeasi vorbitori
Arhitectura sistemului
• Sistemul hibrid propus cuprinde două elemente de bază:
• modelul Markov ascuns care modeleaza statistic vectorii acustici, adica secvenţele de observatii
obtinute prin prelucrarea semnalului vocal si care ajuta si la segmentarea datelor de intrare,
respectiv la supervizarea retelei de tip perceptron neliniar;
• reteaua de tip perceptron neliniar care este antrenata sa memoreze prin parametrii proprii
caracteristicile secventelor de observatii, sa emuleze de fapt modelul Markov ascuns asociat,
respectiv sa furnizeze probabilitatile a posteriori algoritmului Viterbi, pentru determinarea
probabilitatilor de potrivire cu modelul respectiv.
33
Functionarea sistemului hibrid
• etapa de antrenare în care sistemul îsi optimizeaza parametrii în vederea potrivirii cât mai bune cu
cele V cuvinte ale dictionarului;
• etapa de recunoastere în care sistemul calculeaza probabilitatile de potrivire cu modelele si
determina maximul dintre acestea; probabilitatea maxima corespunde modelului, respectiv cuvântului
câstigator.
34
Parametrii reestimati ai sistemului (1)
Pentru cuvantul “ZERO”
Parametrii modelului Markov:
35
Parametrii reestimati ai sistemului –(2)
36
Parametrii reestimati ai sistemului –(3)
37
Parametrii reestimati ai sistemului –(4)
38