Verificarea Vorbitorilor Folosind Retea Neurala de Tip Kohonen
VERIFICAREA VORBITORILOR FOLOSIND O
RETEA NEURALA DE TIP KOHONEN
1. INTRODUCERE
Prezentare generala
In zilele noastre prelucrarea semnalului vocal se regaseste in tot mai multe domenii de activitate cum ar fi: transmisiuni (pe canale telefonice, canale radio), inregistrari sonore, medicina (patologia laringelui), lingvistica (studierea limbilor straine) si nu in cele din urma in recunoasterea automata a vorbirii.
Prelucrarea semnalului vocal a aparut din necesitatea de comunicare pe distante tot mai mari si de inmagazinare a vocii.
Pornindu-se de la simpla amplificare mecanica print-o palnie (stramosul portavocii), din nevoia de a mari distanta si a micsora timpul in care se face comunicarea au aparut telefonia, radioul, etc.. Aparitia acestora a dus la o cercetare mai atenta a semnalului vocal, la gasirea unor metode noi de prelucrare a acestuia (prelucrare digitala a semnalelor) si implicit la aparitia unor domenii noi de aplicabilitate cum ar fi: studierea limbilor straine (traducere automata), recunoastera automata a vorbirii (recunoasterea mesajelor, recunoasterea vorbitorului).
Recunoasterea vorbirii a aparut o data cu aparitia necesitatii comunicarii
om – masina (robot, computer, sisteme de acces personalizat) si consta in extragerea informatiei corespunzatoare identificarii vorbitorului prin masurari efectuate asupra semnalului vocal. Ea s-a dezvoltat in doua directii: recunoasterea vorbitorului si cea a cuvintelor.
Sistemele de recunoastere a vorbitorului pot lucra in modul de identificare a vorbitorului sau in modul de verificare a identitatii vorbitorului.
Modul identificare a unui vorbitor necunoscut consta in analiza unei propozitii rostite de persoana necunoscuta si compararea ei cu modele ale unor vorbitori cunoscuti. Vorbitorul cunoscut este identificat cu cel al carui model seamana cel mai bine cu modelul de intrare.
Modul de verificare a identitatii vorbitorului consta in comparatia unei propozitii a necunoscutului cu modelul vorbitorului a carui identitate este reclamata. Daca asemanarea este suficienta, lucru aratat de atingerea unui prag de asemanare, atunci identitatea este verificata.
Obiectul lucrarii
Subiectul acestei lucrari il reprezinta verificarea automata a vorbitorului.
In tratarea lucrarii nu s-a luat in consideratie verificarea vorbitorului de catre ascultatori umani sau alte tehnici care necesita analize subiective cum ar fi examinarea si compararea spectogramelor de catre experti.
De asemenea s-a tinut cont de faptul ca pentru identificarea vorbitorului nu este necesara explicitarea unor modele lingvistice cum ar fi fonemele sau cuvintele, deoarece identitatea vorbitorului nu depinde de continutul lingvistic al pronuntiei test.
Fonemul este totusi considerat ca furnizor de informatie asupra unui aspect al vorbitorului si anume configuratia pronuntiei.
Anumite foneme pot corespunde de la o persoana la alta . Pentru a elimina impostorii si a avea un tablou cat mai exact al vorbitorului este necesara studierea unor foneme diferite.
In prima parte a lucrarii se prezinta problemele generale legate de sistemul de recunoasterea automata a vorbitorului cu functionare in modul verificare identitate pentru sistemele dependente de text. Sunt descrise apoi etapele parcurse in prelucrarea semnalului vocal, tehnicile de analiza folosite impreuna cu modelul de decizie si antrenare a sistemului . In incheiere s-au prezentat rezultatele experimentale si concluziile.
2. NOTIUNI GENERALE DESPRE VORBIRE
2.1. Mesajul vocal. Semnalul vocal
Mesajul vocal este rezultatul fluctuatiilor presiunii aerului, generate si apoi emise de catre aparatul fonator. Aceste fluctuatii constituie semnalul vocal.
Vibratiile aerului sunt detectate de catre aparatul auditiv (ureche, in cazul omului, microfon in cazul robotului) analizate si interpretate de creier sau de Unitatea Centrala de Prelucrare in cazul robotului.
Mesajul vocal e o suita de imagini auditive si de elemente minimale lipsite de sens, care asociate permit obtinerea unor elemente fonetice de nivel superior: silabe, cuvinte, fraze.
Semnalul vocal este insotit de o mare redundanta care permite acestuia sa reziste perturbatiilor mediului ambiant. Elementele redundante ale unui mesaj vocal maresc debitul informational al acestuia de circa 50-60 de ori.
Consideram un mesaj X, cu elementele componete simbolurile xi:
X=[x1, x2, …, xi, …,xl ].
Notam p(xi)=probabilitate de aparitie a simbolului xi in mesajul X. selectia acestui simbol aduce informatia:
[biti] .
Informatia medie asociata la producerea unui mesaj X este:
.
Intr-o vorbire normala sunt pronuntate in jur de 10 foneme/s . Rezulta ca informatia medie asociata mesajului rezultat va fi de 50-60 biti/s.
2.2. Mecanismul producerii vorbirii
Vorbirea este rezultatul actiunii coordonate a aparatelor respirator si masticator. Aceasta actiune se deruleaza sub conrolul sistemului nervos central care primeste in permanenta informatii prin retractiune auditiva.
Aerul expirat la trecerea prin laringe are presiunea modulata de catre corzile vocale care se inchid si se deschid periodic, permitand accesul aerului spre traiectul vocal.
In timpul expiratiei precum si in timpul vorbirii soptite sau al pronuntarii sunetelor nesonore, glota e in permanenta deschisa, neexistand modulatii produse de coardele vocale. In timpul pronuntarii sunetelor sonore coardele vocale oscileaza producand impulsuri periodice de presiune care excita conductul vocal .
Intensitatea semnalului emis este legata de presiunea aerului existenta in amonte de laringe, iar inaltimea sunetului este fixata de frecventa de vibratie a coardelor vocale, denumita frecventa fundamentala(F). Perioada corespunzatoare acestei frecvente,T, este numita pitch:
T=
Frecventa fundamentala depinde de masa coardelor vocale si de tensiunea acestora. Ea variaza de la o persoana la alta astfel:
80 – 200 Hz pentru o voce masculina
150 – 450 Hz pentru o voce feminina
200 – 600 Hz pentru o voce de copil.
Doua sunete de aceeasi intensitate si aceeasi inaltime se disting intre ele prin
amplitudinea armonicelor frecventei fundamentale.
Un sunet sonor este un semnal cvasiperiodic pentru care excitatia produsa de laringe si aplicata traiectului vocal este o succesiune de impulsuri periodice.
Traiectul vocal poate fi considerat o succesiune de cavitati rezonante conectate in cascada.
Datorita proprietatilor selective ale traiectului vocal, spectrul semnalului vocal sonor prezinta maxime numite formanti. Spectrul unui sunet contine armonici ale frecventei fundamentale deci este un spectru de linii.
O structura spectrala continand linii spectrale periodice se numeste structura de pitch.
Pentru caracterizarea in frecventa a unui semnal sonor este suficienta cunoastere primilor trei formanti.
Sunetele pot fi:
– fricative
– plozive.
Sunetele fricative rezulta prin trecerea aerului printr-o constrictie a traiectului vocal situata intr-un anumit punct al acestuia, in particular la nivelul buzelor si al dintilor. Ele sunt:
– sonore : p, s, etc.
– nesonore: v, z, etc.
Sunetele plozive sunt produse printr-o ocluzie momentana a conductului vocal intr-un punct dat, urmata de o deschidere brusca. Ele sunt :
– nesonore : p, t, etc.
– sonore : b, d, etc.
Un sunet nesonor nu prezinta structura periodica el putand fi considerat ca fiind produs de un zgomot alb, filtrat prin transmitanta partii din traiectul vocal situata intre constrictie si buze.
2.3. Proprietatile statistice ale semnalului vocal si analiza spectrala a semnalului vocal
Un semnal vocal este o realizare particulara a unui proces aleator nestationar. Ca urmare el poate fi caracterizat prin anumite proprietati statistice.
Proprietatile statistice medii trebuie estimate pe intervale de timp suficient de mari ( mai multe zeci de secunde) si mediate pe mai multi vorbitori (zeci si sute). Vom folosi o statistica pe termen lung. Daca semnalul este esantionat cu o frecventa ce verifica teorema lui Shannon, estimarea statistica se realizeza pe esantioanele sale.
Se defineste o statistica pe termen scurt estimata pe transe temporale de durata 10–30 ms in timpul carora semnalul vocal poate fi considerat cvasistationar. Proprietatile statistice sunt dependente de forma in domeniul timp a semnalului.
Principalele proprietati statistice evaluate pe termen lung/scurt sunt:
Densitatea de probabilitate
2. Valoare medie
Varianta
Rata trecerilor prin zero
Functia de autocorelatie
Functia de autocovariatie
Coeficient de autocorelatie
Densitatea spectrala de putere
Densitatea spectrala (de amplitudine).
Analiza spectrala se poate face prin :
– Transformata Fourier pe termen scurt
– Analiza cu set de filtre
– Analiza cu LPC (Liniar Predictor Coding) bazata pe codarea prin predictie liniara.
Sarcinile analizei spectrale sunt:
– Estimarea frecventei formantilor si a latimii de banda corespunzatoare fiecarui formant
– Estimarea frecventei fundamentale F.
2.4. Variabilitatea
Performantele recunoasterii automate a identitatii vorbitorului sunt afectate cel mai mult de variatiile caracteristicilor semnalului de la o proba la alta.
Variatiile pot aparea ca urmare a diferentelor dintre sesiunile de inregistrare, mediul de transmisie, voce si a variatiilor generate de vorbitor. Acestea din urma pot fi voluntare sau involuntare.
Aparatul vocal uman ar fi nefolositor daca nu s-ar putea exercita control asupra lui. Variatiile in semnalul vocal induse de un asemenea control pot schimba usor frecventa fundamentala si lungimea cuvintelor de la o proba la alta.
De asemenea este posibil ca vorbitorul sa schimbe pronuntia afectand astfel caracteristicile spectrale ale grupurilor de foneme.
O cale simpla de a afecta caracteristicile spectrale este de a varia efortul vocal de la o silaba la alta. Variatiile involuntare si cele voluntare au aceeasi importanta. Vorbitorii nu pot repeta identic un cuvant de mai multe ori. Este binecunoscut insa ca cuvintele rostite intr-o singura sesiune sunt mult mai corelate decat cele rostite in sesiuni diferite (Rosenburg, 1976). In plus, sunt tendinte de termen lung asociate cu schimbarile comportamentale si imbatranirea (Furui, 1974).
Este important ca un sistem se recunoastere automata a vorbitorului sa acomodeze modificarile naturale si pe cele asteptate din caracteristicile semnalului vocal corespunzator acestor tipuri de variatii.
Vorbitorii produc sunete “nevocale” cum ar fi zgomotul introdus de respiratie si cel al plescairii buzelor. Acestea trebuie de asemenea detectate si tolerate.
Mult mai dificil de tratat sunt variatiile spectrale si cele in frecventa fundamentala provenite din schimbarile psihice, emotionale sau cele patologice.
Patologii ale vorbitorului cum ar fi balbaielile si opintirile ce produc largi variatii de la o proba la alta sunt foarte greu de adaptat.
2.5. Aplicatii si modele de decizie
Aplicatiile practice induse de recunoasterea automata a vorbitorului includ investigatii penale, supraveghere, controlul accesului, etc.
In investigatiile penale cuvinte sau anumite esantioane luate din vocea unui vorbitor necunoscut sunt comparate cu amprentele vocale ale suspectilor pentru a se determina daca exista sau nu o similitudine. In acest tip de aplicatie nu este posibil sa se exercite control asupra textului sau asupra conditiilor de inregistrare sau de transmisie.
De asemenea nu este de asteptat ca vorbitorii vor fi cooperanti in pronuntarea fragmentelor sau cuvintelor necesare.
Recunosterea automata a vorbitorului nu este potrivta de obicei pentru acest gen de aplicatii ce implica un numar mare de parametri ce nu pot fi controlati.
Pentru acest tip de aplicatii s-au folosit asa numitele amprente vocale ( Kersat, 1962; Bolt et al.,1973;Tosi, 1979) care include examinarea de catre experti a spectogramelor cat si a fragmentelor de semnal.
O aplicatie mai potrivita pentru recunoasterea automata a vorbitorului este ce ce produc largi variatii de la o proba la alta sunt foarte greu de adaptat.
2.5. Aplicatii si modele de decizie
Aplicatiile practice induse de recunoasterea automata a vorbitorului includ investigatii penale, supraveghere, controlul accesului, etc.
In investigatiile penale cuvinte sau anumite esantioane luate din vocea unui vorbitor necunoscut sunt comparate cu amprentele vocale ale suspectilor pentru a se determina daca exista sau nu o similitudine. In acest tip de aplicatie nu este posibil sa se exercite control asupra textului sau asupra conditiilor de inregistrare sau de transmisie.
De asemenea nu este de asteptat ca vorbitorii vor fi cooperanti in pronuntarea fragmentelor sau cuvintelor necesare.
Recunosterea automata a vorbitorului nu este potrivta de obicei pentru acest gen de aplicatii ce implica un numar mare de parametri ce nu pot fi controlati.
Pentru acest tip de aplicatii s-au folosit asa numitele amprente vocale ( Kersat, 1962; Bolt et al.,1973;Tosi, 1979) care include examinarea de catre experti a spectogramelor cat si a fragmentelor de semnal.
O aplicatie mai potrivita pentru recunoasterea automata a vorbitorului este controlul accesului. In aplicatii de acest tip este de asteptat un anumit control asupra textului de test, conditiilor de inregistrare si transmisie. De asemenea este de asteptat ca in acest tip de aplicatie vorbitorii sa fie cooperanti, adica sa se conformeze instructiunilor si sa controleze variatia.
Cel mai des in acest tip de aplicatii utilizatorii pot fi rugati sa reclame o aumita identitate, dupa care sistemul de recunoastere a vorbitorului este setat sa lucreze in modul de verificare a vorbitorului.
Sistemele de recunoastere automata a vorbitorului pot opera in modul de verificare sau in modul de identificare.
In modul de identificare (fig.2.1), un esantion de semnal vocal de la un vorbitor necunoscut este comparat cu modelele cunoscute ale vorbitorilor. Vorbitorul necunoscut este identificat ca fiind persoana a carui model se potriveste cel mai bine semnalului de la intrare .
Fig.2.1Modul identificare Fig.2.2 Modul verificare
In modul de verificare si decizie (fig.2.2) identitatea reclamata poate fi a vorbitorului sau poate fi “fabricata”. Esantionul de semnal al vorbitorului necunoscut este comparata cu modelul a carui identitate a fost reclamata. Daca asemanarea este destul de buna, lucru aratat prin depasirea unui prag de asemanare, vorbitorul necunoscut este acceptat ca fiind cel reclamat.
Difernta fundamentala intre cele doua moduri de lucru consta in numarul de decizii posibile pe care le poate emite sistemul.
In modul de identificare numarul deciziilor emise de sistem este egal cu numarul posibililor vorbitori cunoscuti de sistem, pe cand in modul de verificare acesta este doi, negare sau acceptare a vorbitorului ca fiind persoana in cauza, indiferent de numarul vorbitorilor ce pot fi verificati de sistem.
In ambele cazuri poate fi folosit un prag de test aditional pentru a determina daca potrivirea este destul de buna, dupa care vorbitorul este acceptat sau respins.
CAP. 3 ETAPELE PARCURSE IN PRELUCRAREA SEMNALULUI SI CODAREA INFORMATIEI
3.1. Tehnica ferestruirii
Evidentierea unei secvente finite din semnal se face cu ajutorul unor functii pondere numite functii – fereastra, sau mai scurt ferestre. Aplicarea ferestrelor are consecinte importante asupra rezultatelor prelucrarii deoarece se obtin rezultate diferite pentru diverse expresii ale functiei de pondere.
3.1.1. Fereastra Hamming
Fereastra Hamming permite anularea mai pronuntata a lobilor laterali.
Se considera fereastra data de:
, (1)
cu transformata Fourier discreta:
. (2)
Anularea perfecta a primului lob lateral la are loc pentru =25/46.
Daca se aproximeaza la 0.54, zeroul se produce la , obtinandu-se o atenuare buna pentru lobul lateral. Pentru aceasta valoare a lui fereastra se numeste Hamming si are expresia:
(3)
Fereastra translatata va fi:
3.2. Transformata Fourier si analiza Fourier de timp scurt
Spectrul semnalului vocal reflecta atat proprietatile tractului vocal cat si ale semnalului excitatie. Transformata Fourier standard constituie o metoda adecvata pentru semnale periodice, tranzitorii sau aleatoare stationare si nu este aplicabila direct la reprezentarea semnalului vocal ale carui proprietati se schimba pregnant in timp. Propritatile semnalului vocal cum ar fi energia, trecerile prin zero, corelatia, se pot insa considera invariabile pe intervale scurte de timp de ordinul a 10 – 30 ms. Din aceasta cauza se foloseste principiul analizei de timp scurt.
Se defineste transformata Fourier dependenta de timp cu relatia:
(1)
in care x(m) reprezinta semnalul vocal esantionat, iar w(n-m) este o secventa fereastra ce determina segmentul din semnalul de intrare care este analizat in momentul fixat de indice n.
Schimband indicele de sumare cu transformarea (n-m) -> m, relatia devine:
(2)
in care (3)
Daca se considera n fix, constituie tocmai transformata Fourier a secventei w(n-m)x(m), m(-,). In cazul in care se considera frecventa fixa, relatiile (1) si (3) sunt de fapt niste convolutii, reprezentarea Fourier constituind o filtrare liniara.
Deoarece , pentru n fix, transformata Fourier pe timp scurt, , , constituie o transfomata obisnuita, inseamna ca secventa de intrare se poate obtine prin aplicarea transformarii inverse. Se poate scrie:
(4)
Pentru n=m relatia de mai sus devine :
) (5)
Astfel cu conditia w(0)0, secvnta x(n) se poate determina exact daca se cunoaste, pentru toate valorile lui dintr-o perioada.
Prin atribuirea de valori diferite indicelui n se deplaseaza fereastra de-a lungul formei de unda a semnalului.
Din relatia (2) se observa ca pentru fiecare valoare a lui , reprezinta convolutia secventei w(n) cu secventa produs .
Daca se noteaza cu transformata Fourier a lui x(n), (are o valoare fixa) prin modulatia cu se obtine spectrul . Astfel componenta spectrala la frecventa este deplasata in origine (frecventa zero).
Fie transformata Fourier a secventei fereastra. Se poate scrie:
. (6)
Prin urmare daca filtrul exprimat prin relatia de mai sus este un filtru trece jos cu o banda ingusta, iesirea sa va depinde de .
Daca fereastra w(n) are o durata finita atunci secventa x(n) se poate reface cu ajutorul transformatei Fourier de timp scurt.
Pentru implementarea corecta a sistemelor de analiza de timp scurt se impune esantionarea corecta a spectrului, in timp si in frecventa astfel evitandu-se erorile de spectru transpus.
Deoarece este o functie periodica de perioada , este necesara numai esantionarea pe un interval de lungime . Stabilirea setului de frecvente la care se impune specificarea valorii lui se face utilizand interpretarea transformatei pe timp scurt ca o transformare Fourier obisnuita ( n fix).
Cum transformata Fourier inversa a lui este semnalul x(m)w(n-m) si acesta are durata finita de esantioane, rezulta conditia:
(7)
Pe de alta parte potrivit analizei de timp scurt ca o filtrare liniara, se impune esantionarea lui cu o frecventa de doua ori mai mare decat largimea de banda,
B[Hz], a ferestrei de analiza.
Tinand seama de ambele conditii prezentate mai sus rezulta ca frecventa de esantionare pentru este:
esantioane/secunda. (8)
3.2.1. Transformata Fourier discreta a unui semnal periodic x(n), definit pe intervalul 0n (N-1), este data de relatia:
(9) unde
si coeficientii spectrali x(k) sunt evaluati pentru 0n (N-1).
Transformata inversa care ne ofera posibilitatea de a recupera semnalul din spectru este data de relatia:
(10)
unde valorile lui x(n) sunt evaluate pentru 0n (N-1).
Daca folosim ecuatia (9) pentru a calcula valorile aditionale ale lui x(k) in afara intervalului specificat , vom observa ca ele formeaza un spectru periodic. Analog incercand calcularea de valori aditionale ale lui x(n) folosind formula inversa obtinem o versiune periodica a semnalului.
Se pune problema lungimii ferestrei pe care se aplica transformata pentru a obtine o reprezentare in frecventa cu o rezolutie buna pentru un volum de calcul rezonabil.
Spectrul continuu al unui semnal de durata T0 secunde poate fi complet reprezentat prin esantioane uniform distribuite in frecventa, ele nefiind mai departate de 1/ T0 Hz.
Pentru secventa de durata finita, TFD este un procedeu util pentru evaluarea transformatei Fourier a secventei intr-un set de L frecvente echidistante pe cercul unitate, unde L>> N, permitand obtinerea unei rezolutii in frecventa oricat de buna se doreste.
Fie secventa finita x(n), n=0,1,2, …, N-1, avand transformata Fourier continua:
(11)
Daca este calculata la frecventele l=0,1…,L-1, se obtine:
(12)
Definind secventa de lungime L (L>N) ca:
si efectuand TFD in L puncte pentru aceasta secventa, rezulta:
(13)
Deoarece , nN, relatia (13) poate fi scrisa ca:
(14)
Comparand (13) si (14) rezulta:
,k=0,1,2…,L-1.
Prin urmare, prin extinderea lungimii secventei de esantioane de valoare zero, se poate obtine rezolutia dorita la calculul transformatei Fourier a secventei, intr-un numar de puncte echidistante pe cercul unitate. Aceasta metoda simpla este una dintre cele mai folositoare tehnici de analiza spectrala a secventelor de durata finita.
3.2.2. Calculul transformatei Fourier discrete
Cel mai evident mod de calcul este implementarea directa a relatiilor de definitie.
(15) unde
si pentru transformata inversa avem:
(16) Deoarece formulele difera foarte putin intre ele ( un factor de scara 1/N si un semn schimbat), ne vom concentra aupra TFD.
Presupunem ca semnalul x(n) este real, atunci partile reale si imaginare ale spectrului vor fi date de relatiile:
(17)
si
Aceste ecuatii pot fi rescrise in termeni de modul si faza dupa cum urmeaza:
si
Ecuatiile pentru calculul partii imaginare si reale a lui X(k) necesita inmultiri, dar multe din acestea sunt redundante. De fapt ecuatiile sunt periodice, in domeniul a N valori discrete. De aceea aceleasi sunt calculate de multe ori dupa cum variaza k si n. Variatia este mai pronuntata atunci cand x(n) are o lungime mai mare. Din acest motiv au fost dezvoltati algoritmi care reduc numarul de operatii, cunoscuti sub numele de algoritmi de transformare Fourier rapida (TFR).
In continuare va fi prezentat unul dintre cei mai folositi algoritmi TFR, punand in evidenta avantajele si deficentele pentru programare si implementare.
Decimare in timp
Unul din algoritmii TFR cei mai cunoscuti este denumit decimare in timp. Operatia de decimare consta in reordonarea unei secvente, in conformitate cu o anumita regula. Se presupune ca N este o putere a lui 2. Prima etapa in obtinerea algoritmului de decimare in timp consta in separarea sumei din relatia (17) in doua sume, una pentru valori pare si cealalta pentru valorile impare ale lui n: (18)
Se poate arata ca , m,lZ. Indicele N arata periodicitatea operatorului , element cheie in obtinerea algoritmului TFR. Se observa ca : (19)
Avand in vedere aceasta, expresia TFD in N puncte, pentru secventa x(n) din (18), poate fi adusa la forma:
sau
(20)
unde si sunt transformatele in N/2 puncte ale secventelor , respectiv . Deoarece X(k) este definita in intervalul 0n(N-1), iar si pentru 0n(N/2-1), este necesar sa se stabileasca o regula de interpretare a relatiei (20) pentru valorile kN/2.
Deoarece , relatia (20) este echivalenta cu:
(21)
Presupunand ca si sunt deja cunoscute pentru k=0,1,…, N/2-1, calculul TFD in N puncte cu ajutorul relatiei (20) necesita N adunari de numere complexe. Termenul este calculat o singura data pentru fiecare k, astfel ca sunt necesare doar N/2 inmultiri complexe.
O a doua etapa a algoritmului necesita calculul TFD in N/2 puncte pentru si ,prin combinarea de TFD in N/4 puncte:
n=0,1,…,N/4-1.
Inlocuind in relatia (11) pe N cu N/2 rezulta:
(22)
Transformata se calculeaza similar. Folosind acelasi rationament ca in cazul realatiei (22), rezulta ca pentru toate valorile lui sunt necesare N/2 adunari si N/4 inmultiri de numere complexe. Prin urmare calculul lui si necesita N adunari si N/2 inmultiri de numere complexe, la fel ca in cazul primei etape. Procesul de reducere continua pana cand se ajunge la un TFD intr-un singur punct care reprezina punctul cautat. Parcurgand procedura stabilita, treapta cu treapta, numarul TFD ce trebuie stabilit se dubleaza, iar numarul punctelor pentru fiecare TFD scade de 2 ori. Prin urmare la fiecare etapa sunt necesare N adunari complexe si N/2 inmultiri complexe. Deoarece N este o putere a lui 2, numarul total de trepte care trebuie parcurse este , ceea ce face ca numarul total al adunarilor complexe sa fie , iar cel al inmultirilor .
In fig. 3.1 este prezentata realizarea unei TFD in 8 puncte. Din figura se observa ca in nodurile de iesire ale grafului se afla valorile esantioanelor X(k) in ordine naturala, in timp ce secventa esantioanelor initiale de intrare, x(n), apare intr-o ordine permutata. Aceasta ordine este denumita ordinea inversa bitilor, deoarece poate fi obtinuta din reprezentarea binara a valorilor zecimale corespunzatoare. Acest procedeu permite ordonarea esantioanelor de intrare pentru orice valoare a lui N, putere a lui 2, pentru a calcula coeficietii TFD, in ordine naturala.
Fig. 3.1 Graful complet pentru calculul TFD cu N=8
De remarcat la acest graf este felul in care sunt conectate in noduri diferitele ramuri precum si transmitantele acestora. Modul in care sunt aranjate nodurile nu are nici o importanta atata timp cat intre ele se mentin aceleasi conexiuni, iar valoarea lor ramane constanta.
Fig. 3.2 Fluturele generalizat al TFR
Pentru ca am spus ca N este o putere a lui doi , din descompunerea binara a lui N rezulta ca numarul starilor intermediare prin caractere pana la efectuarea transformarii este evident r, unde .
Numarul de retele fluture continute in fiecare coloana este unde p =1,2,…..,r, iar multiplicitatea retelei dintr-o coloana de rang p apartinand unui graf in puncte este .
Rezolutia in frecventa a transformatei este data de realatia unde:
fe este frecventa de esantionare, N= numarul de puncte al transformatei.
Cresterea rezolutiei reprezentarii se obtine prin marirea duratei intervalului de analiza, fie prin marirea perioadei de esantionare, fie prin marirea numarului de esantioane, sau prin ambele moduri.
Fig. 3.3 Sistemul de analiza
Sistemul folosit in analiza semnalului vocal este prezentat in fig. 3.3 Semnalul din punctul A este obtinut prin convolutia discreta a sursei de excitatie si functiei de transfer a traiectului vocal. Apoi transformata Fourier calculata folosind metoda TFR (decimare in timp) este aplicata semnalului din punctul A obtinandu-se in punctul B produsul transformatelor Fourier ale functiei de excitatie si ponderii traiectului vocal. Folosind codarea perceptiva Mel, obtinem in C parametrii dinamici (coeficientii spectrali) ai semnalului transformatelor Fourier ale excitatiei si raspunsului traiectului vocal.
3.3. Codarea perceptiva
Vectorul caracteristic trebuie sa contina informatii referitoare la sursa semnalului vocal. De aceea, dupa efectuarea TFD pe semnalul selectat informatia trebuie codata.
Este bine stiut ca sistemul auditiv analizeaza sunetele receptate in componente de frecventa. Bazata pe frecventa, urechea este capabila sa auda un sunet in prezenta altor sunete de frecvente diferite. Selectivitatea in frecventa detine un rol important in multe aspecte ce privesc perceptia auditiva si a fost in centrul atentiei cercetatorilor in domeniu. Decenii de studiu au clarificat si simplificat modul in care analiza in frecventa este dusa la indeplinire de sistemul auditiv. Multi cercetatori sugereaza o abordare bazata pe modelul perceptiei sunetului de catre urechea umana (scara Bark sau Mel). In aceasta lucrare s-a folosit scara Mel care modeleaza benzile critice din interiorul cohleei.
Perceptia umana a sunetului, pentru tonuri pure sau pentru semnale vorbite, nu poate fi aproximata de o scara liniara de masura. In urma cercetarilor s-a ajuns la solutia definirii subiective a inaltimii sunetului sau a tonurilor pure. Astfel pentru fiecare ton cu o frecventa f, masurata in Hz, o anumita valoare a inaltimii sunetului este masurata pe scara Mel. Ca punct de referinta, valoarea unui ton cu frecventa de 1 kHz deasupra pragului perceptiv, este definita ca 1000 MEL (fig. 3.4).
2700 Mel
fig. 3.4
5500Hz
In figura este reprezentata functia Mel (ca o functie de logaritm din frecventa). Se observa o oarecare liniaritate a functiei pâna in jurul frecventei de 1000Hz.
Relatiile de conversie intre scara Mel si frecventa sunt date mai jos:
respectiv (24 )
Conversiile pe scara Mel pot fi aplicate fie in domeniul timp (sau quefrency) sau in domeniul de frecventa.S-a ales domeniul frecventa ceea ce inseamna ca frecventele Fi sunt alese egal distantate pe scara Mel.
Aleg Fmin=100, Fmax=5500 Hz frecventele intre care avem 64 filtre trece banda (aceste limite cât si numarul de filtre sunt setabile iin functie de rezolutia dorita, caracteristica in frecventa amicrofonului cu care se face achizitia semnalului si nu in ultimul rând in functie de semnalul analizat).
Se observa ca este conservata informatia referitoare la sursa de excitatie si aceea referitoare la parametrii traiectului vocal. In cazul codarii perceptive rezolutia este mult mai buna, iar spectrul este relativ insensibil la prezenta zgomotului.
In general, s-a descoperit ca perceptia unei anumite frecvente de catre auditori este influentata de energia din banda critica de frecventa, in jurul acelei frecvente. Astfel, spectrul Mel este simulat folosind un banc de filtre repartizate uniform in banda de frecventa in functie de caracteristicile scarii Mel (energia fiecarui filtru trece banda aproximeaza spectrul modificat).
Descriem mai jos algoritmul de codare perceptiva Mel:
Date de proiectare:
Intervalul de frecventa = i100……5500s,
Frecventa limita jos, F= 100Hz– f (Mel)= 1000 log(0,1 )=lim1
Frecventa limita sus, F=5500Hz–f(Mel)=1000 log(5,5)=lim2
Frecventa filtre: Nr. Filtre
Scara perceptiva folosita: Mel
F= 1000log
Numarul de puncte FFT: N=1024 (Luam N=512 puncte corespunzator intervalului (0….5500Hz).
Fa wav-ului: f=10100Hz
f(Hz)=fN=19,72
f(Mel)=(lim2-lim1)(Numarul filtre+1)
Trebuie sa calculam centrele si benzile filtrelor suprapuse. Pasii algoritmului de codare perceptiva sunt:
1. F(Hz)–F(Mel)
F(Hz)–F(Mel)
Numarul de benzi egal departate pe scara Mel este: (Nr. Filtre+1)
Latimea unei benzi pe scara Mel este:
k=indicile benzii;
Vrem sa obtinem capetele filtrului i in frecventa,
Vrem sa obtinem ecuatia pentru partea ascendenta/descendenta a filtrului i.
Vrem sa obtinem energia pe banda ascendenta/descendenta.
7.1
7.2 Asociem o frecventa punctului “j” cu formula
Vrem sa obtinem intervalul lui j pentru care:
7.4Calculam energia pe banda ascendenta (A=amplitudinea FFT pentru
punctul j).
begin
7.3 Vrem sa obtinem intervalul lui j pentru care:
7.4 Calculam energia pe banda descendenta.
begin
Calculam energia totala pe cele doua pante.
STOP
Repeta pentru urmatorul i, calculele incepând cu pasul 5.i=1: Nr filtre
CAP. 4 RETEAUA NEURONALA DE TIP KOHONEN
4.1 Conceptul de autoorganizare
In 1980 au inceput sa fie cercetate si utilizate retele neuronale capabile de “autoinvatare” prin organizarea elementelor de procesare (memorii) intr-o anumita structura topologica in functie de datele de invatare. Aceste noi structuri se antreneaza nesupervizat (asa numitele “self-organising feature maps”- SOFM).
Conceptul de autoorganizare se refera la capacitatea unui sistem (in cazul nostru, reteaua neuronala) de a descoperi si invata stuctura datelor de intrare, chiar in cazul inexistentei vreunei informatii despre structura respectiva.
4.2 Motivatii pentru folosirea retelei neurale de tip Kohonen
Din punct de vedere biologic auto-organizaea este pe deplin motivata, ea fiind un principiu de baza al fiziologiei cailor senzoriale audio vizuale umane. De exemplu, in contextul auditiv s-au pus in evidenta hartile tonotopice, in care ordinea spatiala a activarii celulare corespundecu inaltimea (frecventa acustica) a sunetelor percepute.
Pe baza acesrui principiu al ordonarii datelor de intrare in diferiti centrii ai scoartei cerebrale Teuvo Kohonen a introdus si dezvoltat teoria hartilor cu auto-organizare (SOM), care, in esenta sunt retele neuronale cu invatare nesupervizata si cu iesiri continue (kohon, 1988).
4.3 Reteaua Kohonen
Aceasta retea se caracterizeaza prin faptul ca: celulele vecine din cadrul retelei comunica intre ele prin interactiuni mutuale laterale, transformandu-se in detectori specifici ai diferitelor clase de forme aplicate la intrarea retelei, relizandu-se astfel o antrenare a retelei in functie de scopul urmarit; foloseste o invatare competitiva nesupervizata.
4.3.1. Principiile ce stau la baza retelei neuronale SOM:
un singur neuron sau un grup de neuroni in cadrul retelei dau raspuns activ la aplicarea unui semnal de intrare. Localizarea acestui raspuns, in procesul de antrenare tinde sa se asocieze cu anumite caracteristici ale semnalului de intrare.
coordonatele spatiale ale neuronului in sistemul de referinta al retelei respectiva corespunzatoare unui domeniu particular al semnalelor de intrare.
la iesire conteaza prezenta sau absenta unui raspuns cu localizarea respectiva in cadrul retelei si nu functia de transfer intrare – iesire a retelei ca in cazul celorlaltor retele neuronale.
Principiul invatariii competitive este principiul celui mai apropiat prototip.
Invatarea competitva:
Pentru vector de intrare unde t este indexul iteratiei .
setul de vectori de referinta (vectori pondere) in cazul retelei se compara vectorii de intrare cu vectori de referinta. Acest lucru poate fi facut in doua moduri:
prin calculul distantei intre
prin calculul unui coeficient de potrivire
Se spune ca vectorul este vectorul castigator al competitiei. Se rafineaza vectorul in sensul reducerii distantei sau mariri coeficientului de potrivire.
In cadrul procesului toti neuronii functioneaza independent de ordinea de asociere ale acestora la diferite domenii ale intrarii fiind mai mult sau mai putin aleatoare si e puternic dependenta de .
Astfel se contureaza doua principii de baza:
principiul competitiei: pentru un anumit vector de intrare se determina neuronul castigator ca fiind neuronul cu cea mai buna potrivire;
principiul vecinatatii: se rafineaza atat vectorul pondere asociat neuronului castigator cat si ponderile asociate neuronilor vecini, creandu-se astfel o coeziune de neuroni (vectori similari reprezinta vecini ai neuronului).
4.3.2. Structura retelei
Reteaua neuronala Kohonen este formata din doua straturi de neuroni:
stratul de intrare format din neuronii virtuali ce multiplexeaza intrarile la iesire;
stratul de iesire, singurul cu rol in prelucrarea informatiei.
Prezentam in figura de mai jos o retea rectangulara:
Stratul de neuroni
de iesire iesiri YM-1
W
. . . .
Strat
virtual de
X1 X2 X3 . . . . Xn-1 intrare
Vector de intrare
Fig.1 Retea Kohonen
Arhitectura retelei nu este impusa. Forma retelei este data de dispunerea neuronilor de iesire.
Avem urmatoarele topologii:
retea liniara
retea circulara
retea toroidala
Apare o simetrie a vecinatatilor ce creeaza o simetrie a clasificarilor.
Modelul propus consta intr-o retea dreptunghiulara de neuroni in care excitatia se prezinta in acelasi timp la toti neuronii dintr-un rand.
Fiecare neuron “i” memoreaza “legaturile” cu vecinii sai prin intermediul ponderilor:
iar la activare propaga in retea o excitatie de forma:
Iesirea neuronului i este
4.3.3. Instruirea retelei
Algoritmul de instruie al lui Kohonen creeaza un cuantificator vectorial prin ajustarea ponderilor conexiunilor dintre nodurile de intrare si cele de iesire, asezate in reteaua bidimensionala sau liniara si puternic interconectate.
Dupa prezentarea unui numar suficient de vectori de intrare, ponderile retelei vor evidentia CLUSTERI ce partajeaza spatiul intrarilor, astel incat functia de densitate punctuala a centrelor vectorilor formati tinde sa aproximeze functia densitate de probabilitate a vectorilor de intrare. In plus nodurile vecine topologic actioneaza la intrari asemanatoare, fiind astfel ordonate natural.
Se aplica la intrarea retelei un set de vectori:
unde
Fig.Alocarea ponderilor
Definim vectorul de ponderi:
si setul de vectori de pondere
Competitia se refera la calculul distantelor:
Neuronul castigator este cel mai apropiat de vectorul de intrare:
4.3.4. Rafinarea ponderilor
Particularitatea instruirii retelelor cu auto–organizarea consta in aceea ca actualizarea ponderilor are loc doar pentru nodurile de iesire situate intr-o anumita vecinatate Vj(t) a nodului, numita impropiu vecinatatea circulara
Fig. Evolutia vecinatatii neuronului
Vecinatatea V(t) este centrata pe nodul de iesire a carui distanta d este minima. In acest mod se modeleaza interactiunea laterala locala a sistemelor biologice. Marimea vecinatatii scade in timp, pana atinge dimensiunea unui singur nod.
Indexul ”t” se poate modifica fie cu schimbarea vectorului la intare, fie cu “epoca” (iteratia se schimba dupa terminarea setului de vectori de intrare).
Vecinatatea poate fi data si analitic.
t
R – raza vecinatatii
Raza zero se atinge cand neuronul ramane singur.
Raza vecinatatii notata R poate fi variabila in timp, fiind cu valoare mai mare la inceputul rafinarii astfel incat vecinatatea sa acopere toata reteaua, dupa care este scazuta monoton in timp prin modificarea latimii functiei de activare.
Vecinatatea de dimensiuni mari, initial corespunde unei rezolutii spatiale scazute in cadrul procesului de invatare, dupa care aceasta rezolutie creste prin scaderea dimensiunii vecinatatii, fiind posibil sa se ajunga in final la o vecinatate formata dintr-un singur neuron, neuron , in care caz procesul se reduce la o invatare competitiva simpla.
Algoritmul de instruire al retelei
Initializarea:
-se aleg ponderile
-se aleg
se da grafic sau analitic.
Se aplica vectorul de intrare
Se calculeaza
Se determina astfel incat
Se rafineaza ponderile ale neuronului unde cu relatia
unde rata de invatare:
STOP.
Decizia se ia – dupa ce s-a parcurs un numar intreg de epoci – numarul se impune.
– dupa ce ponderiile nu se mai modifica:
adica
sau
Harta trasaturilor a lui Kohonen, in varianta de baza este foarte populara dtorita simplitati algoritmului actualizarii liniare a ponderilor (ceea ce o face eficienta computational), pecum si aplicari la un numar relativ mare de probleme de clasificare nesupervizate.
CAP.5 BAZA DE DATE
Pentru a obtine baza de date utilizata in scopulestimarii parametrilor doriti
am folosit sistemul "AudioRack". Cu acest sistem sunetele pot fi inregistrate si stocate pe disc. Componentele hardware ale sistemului sunt programabile si pot fi
adaptate la dezvoltari ulterioare ale software-ului.
4.1. Descrierea sistemului
Sistemul "AudioRack" consta dintr-un circuit audio special, un microfon, un
difuzor intern si drivere software speciale care lucreaza cu Microsoft Windows 95.
Componentele hardware :
Circuitul audio indeplineste doua functii de baza.: conversia A/D în timpul
inregistrarii si conversia D/A in timpul redarii.
Componentele software:
În cadrul interfetei grafice Windows 95 au fost prevazute o serie de programe suport pentru a permite programelor dezvoltate sub aceastã interfata sa foloseasca aplicatiile care utilizeaza sunetele.
Aplicatia "Sound Record" poate fi folosita pentru a executa editarea fisierelor de sunet. Pe durata executiei fisierului sonor, în partea centrala a casetei este afisata forma semanalului sonor la fel ca un osciloscop.
4.2 Achizitionarea si prelucrarea semnalului vocal
Semnalul audio este achizitionat la o frecventa de 16kHz si cuantizat pe 8
biti. Baza de date include un numar de 5 utilizatori fiecare avand ca template-uri un set de cuvinte (fraza cheie) inregistrate anteiror.
Un utilizator poate accesa sistemul numai pe baza acestor cuvinte cheie fata de care se face comparatia de catre reteaua neurala. Datele de test (semnalul audio de intrare) sunt analizate cu ajutorul unei ferestre de 30 ms deplasate cu un pas de 10 ms. Spectrul semnalului de intrare este prelucrat cu un banc de 64 filtre perceptive in banda de frecventa 100Hz-5,5KHz.
CONCLUZII:
Am dorit sa fac un sistem de verificare a vorbitorului cu parola (numele). O aplicatie potrivita pentru acest modul este controlul accesului. In aplicatii de acest tip este de asteptat un anumit control asupra textului de test, conditiilor de inregistrare si transmisie. De asemenea este de asteptat ca in acest tip de aplicatie vorbitorii sa fie cooperanti, adica sa se conformeze instructiunilor si sa controleze variatia.
Nu este cea mai buna metoda pentru ca fiind parola unica, ea se poate depasi prin simpla inregistrare. Dar tot ce s-a dorit a fost realizarea unui studiu.
S-au folosit in baza de date cuvinte parola de la 5 persoane.
Analiza este mult complicata de nestationaritatea semnalului vocal.
Distributia raspunsurilor la iesirea retelei Kohonen este foarte variata ceea ce arata diversitatea indivizilor. Exista clase care se intrepatrund si de aceea alegerea valorii pragului de decizie este foarte importanta. Clasa initiala a fost rostita de mine si in functie de ea am ales pragul.
Rezultatele sunt bune si posibilitatile de imbunatatire ar fi marirea lotului de antrenare si modificarea extragerii parametrilor. O alta alternativa de crestere a eficientei este sa se faca o discriminare mai buna in frecventa (adica sa am numar mai mare de benzi).
Bibliografie:
[1].Speech Recognition, Academic Press New York, San Francisco, London, 1975 Edited by D. Raj Reddy
[2]. Fundamentals of Speech Recognition, Rabiner Lr, Biing – Hwang Juang, Pretince Hall 1993 by AT&T
[3] Retele Neuronale Teorie si Aplicatii, D.Dumitrescu, Hariton Costin, Teora 1996
[4] Prelucrarea Numerica a Semnalului Vocal, G. Stolojanu, V. Podaru, F. Cetina, Ed. Militara Bucuresti 1984
[5] Spectum Distance Measures for Speech Recognition K. Shikano, F. Itakura
[6] Compresia semnalului vocal de calitate telefonica utilizind prelucrarea homomorfica, Inge Gavat, Matei Zira, Valentin Enescu articol
[7] A. Combined Self- Organizing Feature Map Huang and Kuh IEEE Transaction on Signal Processing Magazine November 1992 Volume 40 Number 11 Pag. 2651-2657
[8] Robust Speaker Reconigtion Ravi P. Ramachandran IEEE Signal Processing Magazine September 1966 Pag. 58-71
[9] Time Frequency Analysis and Auditory Modelin for Automatic Recognition of Speech James W. Pitton, Kuansan Wang and Biing-Hwang Juang Proceedings of the IEEE September 1996 Vol. 84 No. 9 Pag. 1196-1215
[10] Teoria Recunoasterii Formelor Neagoe V., Stanasila O., Editura Academiei Romane, 1992.
[11] Retele neuronale, Gavril Toderan, Mircea Costeiu, Mircea Giurgiu, Editura Microinformatica, Cluj-Napoca1994
[12] Recunoastera formelor si inteligenta artificiala, Curs, V. Neagoe, 1998
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Verificarea Vorbitorilor Folosind Retea Neurala de Tip Kohonen (ID: 149228)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
