<< Inapoi

Cuprins

Inainte >>

3.8 Sisteme de recunoastere a vorbirii

3.8.1 Caracteristici generale

Sistemele actuale de recunoastere a vorbirii se situeaza deocamdata în limite restrânse ale parametrilor caracteristici si dedicate unor aplicatii specifice. Din punct de vedere a dimensiunii vocabularului si al modului de vorbire, sistemele de recunoastere cu performante acceptabile, se împart în trei categorii principale.

•  sisteme cu vocabular mic (10 – 100 cuvinte)

•  sisteme cu vocabular mediu si mare si vorbire izolata (10 000 – 20 000 cuvinte)

•  sisteme cu vocabular mediu si vorbire conectata sau continua, restrictiva la un domeniu de aplicabilitate (1 000 - 5 000 cuvinte)

Cele mai multe sisteme realizate, apar­tin claselor sistemelor mici si mijlocii cu recunoasterea vorbirii izolate. Sistemele de recunoastere a vorbirii continue, în marea lor majoritate, exista doar în forma experimentala, în conditii de laborator. Chiar si sistemele utilizate în practica, cele pentru vorbirea izolata sau conectata, nu sunt destul de robuste la zgomotul mediului în care functioneaza si la variabilitatea vorbirii. Toate sistemele dau performante mai bune, daca numarul de utilizatori este mai redus si daca cei care folosesc sistemul sunt cei cu a caror voce s-a folosit pentru învatarea sistemului. Performantele se degradeaza semnificativ, daca vorbitorii se schimba sau daca sistemul este folosit cu alte cuvinte decât cu cele pentru care a fost antrenat.

Caracteristicile principale ale uni sistem de recunoastere automate a vorbirii, fara a aminti parametrii si metodele specifice prin care s-a implementat, sunt urmatoarele:

•  dimensiunea vocabularului, adica numarul de cuvinte capabil sa le recunoasca

•  monolocutor sau multilocutor (aici se poate preciza si sexul vorbitorilor)

•  vorbirea izolata sau continua

•  conditi de zgomot si robustetea sistemului

•  domeniul de aplicabilitate

•  timpul de operare, care poate fi în timp real, cu întîrziere sau off-line

•  procentajul de recunoastere

•  costul

Dimensiunea vocabularului . În mod normal, dificultatea recunoasterii vorbirii continue creste cu dimensiunea vocabularului. Cercetarile în domeniu au estimat, ca dificultatea de recunoastere creste logaritmic cu dimensiunea vocabularului. Memoria necesara si timpul de calcul, cresc si ele de obicei dupa aceasi regula. Cresterea memoriei necesare este cauzata si de complexitatea sistemului, care creste si ea, fiind necesara si memorarea mai multor parametri. Sistemele de recunoastere a vorbiri, din punct de vedere al dimensiunii vocabularului, se împart în trei categorii: sisteme cu vocabular mic, mediu si mare . Astfel sistemele cu vocabular mic se încadreaza în intervalul 10-99 cuvinte, cele de dimensiune medie în 100-999 cuvinte, iar cele mari cu dimensiune peste 1000 de cuvinte. Însa, aceste limite pot varia în functie de alte caracteristici ale sistemului, crescând în cazul vorbirii izolate. În cazul unui vocabular mic, sistemul poate fi foarte simplu, cu metode de recunoastere bazate numai pe informatie acustica, compararea rostirii putîndu-se face cu fiecare cuvînt din baza de date. Cu cît dimensiunea creste, sunt necesare metode mai complexe care sa tina caracteristicile sistemului în limite rezonabile. Aceste metode includ informatii si cunostinte lingvistice, constrîngeri ce elimina o parte a cuvintelor posibile candidate, nefiind necesara analiza acestora. Totodata, eficientizarea sitemului se poate face si la nivel acustic, prin trecerea la unitati de recunoastere mai mici, de la cuvinte la silabe sau la foneme.

Monolocutor sau multilocutor . În cazul sistemelor monolocutor, o singura persoana este folosita pentru a antrena, testa si utiliza sistemul. Daca acelasi sistem însa, este antrenat de catre mai multi vorbitori, plaja de variabilitate a vocii se extinde, însa numarul de unitati de referinta ramînînd constant, performantele de recunoastere se degradeaza fata de cazul monolocutor. De asemenea performantele sistemului vor scadea daca utilizatorii sistemului nu fac parte din cei ce au fost folositi la antrenarea sistemului. Important este si sexul persoanelor care au antreneaza respectiv utilizeaza sistemul datorita diferentelor de caracteristici între cele doua sexe în ce priveste vorbirea.

Vorbire izolata sau continua . Sistemele de recunoastere a vorbirii izolate (RVI) recunosc rostiri discrete ale cuvintelor, adica cu pauze semnificative dintre cuvinte, dupa fiecare rostire avînd loc o determinare a extremitatilor cuvântului, dupa care are loc procesul de recunoastere. Precizia determinarii limitelelor cuvîntului are o influenta importanta asupra reusitei de recunoastere. Daca dimensiunea vocabularului creste, pentru eficientizarea sistemului, se poate trece la recunoasterea unitatilor sub-cuvinte, introducînd în structura sistemului nivele de recunoastere suplimentare, bazate pe lexica limbajului. În cazul sistemelor de recunoastere a vorbirii continue (RVC), acesta trebuie sa recunoasca cuvintele rostite în mod natural, fluent, fara nici o constrîngere. Sistemul trebuie sa fie capabil sa treaca peste problema necunoasterii frontierelor cuvintelor, a coarticulatiilor si a întrepatrunderii cuvintelor, fara pauze între ele. În acest caz, este aproape inevitabila folosirea unitatilor sub-cuvînt ca si unitati primare de recunoscut, si introducerea de cunostinte lingvistice în structura sistemului de recunoastere. Un astfel de sistem depinde de limba în care se utilizeaza, deoarece constrîngerile lingvistice difera de la o limba la alta, pe cînd la sisteme de recunoastere a cuvintelor izolate, fara nivele lingvistice, limba nu are nici o influenta asupra structurii si regulilor sistemului.

Exista o alta metoda de recunoastere a vorbirii, numita recunoasterea vorbirii conectate . Aceasta este o metoda între cele doua metode amintite, cea izolata si cea continua, din punctul de vedere a metodelor de recunoastere necesare a fi implementate. Si în acest caz, cuvintele sunt rostite în mod fluent, însa este nevoie de o cooperare mai buna din partea vorbitorului. Cuvintele sunt recunoscute ca unitati de baza, dupa care se folosesc reguli de succesiune a cuvintelor, pentru a discerne între succesiuni valide sau invalide de cuvinte recunoscute, asemanator unui sistem de RVC.

Conditii de mediu si zgomot . Robustetea sistemului de recunoastere depinde si de capaciatea de a recunoaste cuvintele în conditii mai severe. Prezenta zgomotului în semnalul achizitionat degradeaza performantele sistemului, introducînd perturbatii nedorite în caracteristica spectrala a semnalului vocal. Protectia sistemului la zgomot se face prin filtrare sau alte metode mai complexe. Cînd se prezinta performantele unui sistem de recunoastere a vorbirii, se precizeaza si conditiile de mediu în care s-au determinat performantele prezentate, care de obicei sunt: conditii de laborator, conditii de oficiu cu zgomot de fond uman sau de alta natura, conditii de semnal telefonic sau zgomot de trafic urban

3.8.2 Structura generala si functionarea unui sistem de recunoastere a vorbirii

Recunoasterea vorbirii este un proces foarte complex, continând diverse blocuri constructive complexe.


Fig. 3.9 Structura generala a unui sistem de recunoastere a vorbirii [Balázs 1998]

Sistemul este compus din doua parti componente principale. Prima componenta este una fizica, echipament electronic, care are rolul de a transforma sunetul (vibratiile acustice) în semnal electric si adaptarea acestuia la intrarea blocului urmator. Traductorul acustico-electric reprezinta microfonul, a carei iesire este conectata la intrarea unui amplificator cu o caracteristica spectrala de tip filtru trece jos. Aceasta caracteristica are rolul de a elimina perturbatiilor de înalta frecventa si a efectului de alyazing ce ar putea aparea la conversia analog-numerica. Cerintele esentiale ale acestui bloc sunt: microfon de calitate mediu-buna, amplificare cu zgomot redus si la nivel optim pentru intrarea în convertorul analog-numeric, amplificare liniara, fara deformarea formei de semnal original, caracteristica cît mai uniforma în banda de trecere. Limitarea spectrului semnalului vocal se poate face la 4-8 kHz. Conversia analog-numerica poate fi între 8-16 biti, frecventa de esantionare putând varia între 8-16 kHz, codare PCM.

A doua componenta principala a sistemului este o componenta logica, reprezentata de un sistem numeric de calcul. Un exemplu de un astfel de sistem este un calculator personal, echipat cu o placa de sunet. Placa de sunet reprezinta prima componenta, care este fixa si nemodificabila. A doua componenta reprezinta un program care se executa pe calculator, implementând toate prelucrarile necesare.

La iesirea blocului de conversie analog-numerica, exista un flux de date constant, reprezentând semnalul vocal codat digital, prin esantioanele sale, exprimate ca si numere binare. Daca consideram frecventa de esantionare de 10 kHz, si rezolutia de 16 biti, atunci avem un flux de date de 20 000 de octeti/secunda, secvential. Recunoasterea vorbirii nu se poate face pe baza formei de unda a semnalului vocal, deoarece aceasta este o combinatie liniara si neliniara de diverse efecte, utile si redundante, inseparabile în domeniul temporal, cum ar fi zgomotul, variatia amplitudini, a fazei, componente armonice nedorite, etc. Parametrii ce reprezinta mai bine vorbirea sunt cei spectrali, deoarece ei contin informatii relative la sistemul fonator al vorbitorului si dinamica acestuia si sunt separabili. Din acest motiv, majoritatea metodelor de extragere a parametrilor, analizeaza semnalul vocal din punct de vedere a spectrului de amplitudine al acestuia.

Pentru atenuarea componentelor spectrale de frecventa înalta de origine vocalica, datorita mediului de propagare a semnalului acustic, în primul rînd, semnalul vocal se trece printr-un filtru cu caracteristica trece-sus implementat digital, proces numit preaccentuare .

Cadrul de semnal vocal se prezinta la intrarea blocului de extragere a parametrilor. În acest bloc se determina parametrii cât mai reprezentativi ai semnalului vocal, pe baza esantioanelor. Astfel de parametrii sunt:

Energia – da informatii asupra amplitudinii medii a semnalului vocal. Poate fi utilizata pentru determinarea originii vocalice sau nevocalice ale sunetelor, determinarea extremitatilor unitatilor acustice, variatia energiei da informatii relative la momentul variatiilor fonetice.

Numarul trecerilor prin zero – se utilizeaza pentru masurarea grosiera a continutului în frecventa a semnalului vocal. Da informatii suplimentare, lânga energie despre extremitatile unitatilor acustice.

Frecventa fundamentala – reprezinta frecventa de rezonanta a corzilor vocale. Din punct de vedere a recunoasterii vorbirii, se poate neglija acest parametru, deoarece ea varieaza de la o persoana la alta, dar ramâne constanta pentru aceeasi persoana.

Spectrul de energie sau de amplitudine – reprezinta imaginea în frecventa a semnalului vocal. Forma spectrului este rezultatul combinarii efectului semnalului vocal excitatie si a functiei de transfer a semnalului vocal. Ea prezinta maxime ale anvelopei spectrale în jurul componentelor formantilor, si o variatie rapida, datorita semnalului de excitatie. Deoarece memorarea fiecarei componente de frecventa, în numar de N/2 , este ineficienta, se pot determina niste benzi reprezentative repartizate pe domeniul spectral si calcularea amplitudinii medii pe banda respectiva. Numarul de P benzi se poate alege între 10-16, ele fiind mai aglomerate si de latime mai mica la frecvente joase si mai rasfirate si mai largi, la frecvente înalte. Metoda utilizata de determinare a spectrului de amplitudine este Transformata Fourier Rapida (FFT).

Analiza liniar predictiva – urmareste determinarea parametrilor unui filtru care modeleaza efectul de atenuare selectiva si dinamica de catre tractul vocal al semnalului excitatie. Prin aceasta metoda se face abstractie de semnalul excitatie, astfel spectrul filtrului rezultat va fi fara variatii bruste prezente în spectrul de amplitudine a semnalului vocal. Parametrii determinati, în numar de P , pot fi furnizati direct la iesire, sau se pot determina amplitudinea sau energia spectrala medie din P benzi reprezentative.

Analiza cepstrala – este o analiza speciala, prin care efectul compus al excitatiei si al functiei de transfer a tractului vocal se separa cu o eficienta mai buna, ca în cazul analizei spectrale sau liniar predictive.

Blocul final al sistemului este blocul de recunoastere. Structura acestuia variaza foarte mult, în functie de metoda de recunoastere utilizata. Exista doua categorii principale de metode de recunoastere: recunoasterea bazata pe referinte si recunoasterea bazata pe modele .

Prima metoda este folosita exclusiv la recunoasterea cuvintelor pronuntate izolat sau conectate. În acest caz, pentru fiecare cuvînt ce se doreste a fi recunoscut, se alege un sir de vectori reprezentanti rezultati dintr-o rostire de referinta a cuvintelor respective, si se memoreaza în dictionar sub aceasta forma. Pentru a nu include în aceste reprezentari, vectori rezultati din semnal vocal din afara cuvîntului, extremitatile cuvintelor referinta trebuiesc determinate cu precizie, care se poate face manual sau automat, prin determinarea primului si a ultimului cadru a fiecarui cuvînt. Recunoasterea se face prin achizitionarea cuvîntului de recunoscut, aplicarea acelorasi prelucrari ca la cuvintele referinta, rezultând sirul de vectori reprezentanti. În continuare, se ia fiecare referinta din biblioteca, si se calculeaza distanta dintre acestea si cuvîntul de intrare. Distanta se obtine prin acumularea distantei dintre vectorii celor doua cuvinte de-a lungul axei temporale, comparatia facându-se între vectorii corespunzatori acelorasi foneme presupuse ale cuvintelor. Aceasta metoda de comparatie se numeste metoda de aliniere temporala sau Dinamic Time Wrapping ( DTW ). Distanta de cautare a cadrelor asemanatoare se limiteaza, pentru ca alinierea sa nu poata fi deviata pe o cale gresita. Daca cuvântul de referinta si cel de intrare reprezinta acelasi cuvânt, având o variatie de lungime rezonabila, alinierea temporala se face cu succes. Decizia de recunoastere se face pe baza distantei minime dintre cuvântul de intrare si toate cuvintele referinta. Daca distanta minima este mai mare decât o valoare limita, se ia decizia de cuvânt necunoscut. Deoarece parametrii cuvintelor sunt memorate sub forma “cruda”, astfel de sisteme de obicei sunt monolocutor. Daca se doreste recunoasterea mai multor locutori, este necesara introducerea în dictionar a unei referinte pentru fiecare cuvânt de la fiecare locutor. [Curatelli 1999]

O alta metoda de recunoastere, mai evoluata si cu performante superioare, este recunoasterea pe baza de modele. În aceasta abordare, fenomenul de producere a vorbirii este asociat cu evolutia în timp a unui automat cu stari finite, care trece în stari succesive, sincronizat de tactul de simbol, si la fiecare tranzitie emitând un simbol, care se observa si se înregistreaza. O astfel de modelare a vorbirii se poate face la fiecare nivel de recunoastere, prin stabilirea corespondentei starilor, a tranzitiilor si a simbolurilor corespunzatoare procesului modelat. Astfel de modele pot fi definite pentru foneme, cuvinte sau propozitii. Un model de acest tip este Modelul Markov Ascuns (MMA) sau Hidden Markov Model (HMM) . Numarul de stari si a simbolurilor unui astfel de model sunt limitate. Numarul de stari ai modelului se determina prin corespondenta dintre numarul de “evenimente stationare” din fenomenul modelat. Astfel, daca se modeleaza un cuvânt, numarul de stari al modelului va fi identic cu numarul de foneme si al pauzelor dintre acestea. Numarul de simboluri se alege în functie de numarul de simboluri posibile a fi observate la fiecare tact de simbol. În cazul fonemelor, se alege cel putin numarul fonemelor existente în limba respectiva.

<< Inapoi

Cuprins

Inainte >>