neuralne mreze prepoznavanje govora naslovna automatika rs
neuralne mreze prepoznavanje govora naslovna automatika rsPrepoznavanje govora je zadatak koji podrazumeva prepoznavanje obrazca na više nivoa, u kojem se ispituju i strukturišu zvučni signali u hijararhiju delova reči, reči, fraza i rečenica. Svaki nivo pruža dodatna privremena ograničenje, kao na primer: poznati izgovor reči ili pravilnu sekvencu reči. Ova hijararhija ograničenja nejbolje može da bude iskorišćena kombinacijom odluka na osnovu verovatnoće na nižem nivou i odlučivanjem samo na najvišem nivou.

 Govor je prirodni vid komunikacije za ljude. Mi učimo sve relavantne veštine za vreme ranog detinjsta, bez instrukcija i to nastavljamo da primenjujemo na našu govornu komunikaciju čitav naš život. Za nas to postaje tako prirodno da uopše nismo u stanju da realizujemo koliko je sam fenomen govora komplikovan. Čovekov vokalni trakt i artikulatori su biološki organi sa nelinearnim karakteristikama, čiji rad nije samo pod svesnom kontrolom, već na njega takođe utiču faktori u opsegu od pola, pa sve do emocionalnog stanja. Kao rezultat, vokalizacija može u širokoj meri da varira u smislu akcenta, izgovora, artikulacije, grubosti, unjkavosti, jačine, zapremine i brzine; takođe, za vreme prenosa, naš neregularni obrzac govora može dalje da bude poremećen pozadinskom bukom i ehom, kao i električnim karakteristikama (ukoliko se koriste telefoni ili elektronska oprema). Sve ove varijabilnosti izvora čine prepoznavanje govora, čak i samo generisanje govora, vrlo kompleksnim problemom.
 Šta čini ljude tako dobrim u prepoznavanju govora? Intrigantno, poznato je da je ljudski mozak ožičen drugačije nego računar; zapravo, on funkcioniše pod radikalno drugačijom paradigmom računanja. Dok konvencijonalni računar koristi vrlo brz i kompleksan centralni procesor sa eksplicitnim programskim instrukcijama i lokalno adresabilnom memorijom, nasuprot tome ljudski mozak koristi masivnu paralelnu kolekciju sporih i jednostavnih procesirajućih elemenata (neurona), gusto povezanih po težini (sinapse) čija snaga je modifikovana sa iskustvom, direktno podržavajući integraciju višestrukih ograničenja i pružajući distributivnu formu asocijativne memorije.

 Impresivna superiornost mozga u širokom spektru kognitivnih veština, uključujući prepoznavanje govora, je inspirisala istraživanje na polju nove paradigme računanja od 40-ih godina prošlog veka, na predpostavku da modeli koji podsećaju na mozak mogu da vode u performanse koje podsećaju na performanse mozga kada je reč o mnogim kompleksnim zadacima. Ova fascinantna oblast istraživanja je sada poznata kao konekcivizam ili nauka o veštačkim neuralnim mrežama.

 Koje je trenutno stanje veštine prepoznavanja govora? Ovo je komplikovano pitanje, zato što tačnost sistema zavisi od uslova pod kojima je isti razvijen. Pod dovoljno usmerenim uslovima skoro svaki sistem može da dostigne tačnost sličnu čovekovoj, ali je mnogo teže postići dobru tačnost pod opštim uslovima. Uslovi evaulacije i takođe tačnosti bilo kog sistema mogu da variraju po sledećim dimenzijama:

  • Veličina rečnika i zbunjivost. 

 Kao opšte pravilo, jednostavno je diskriminisati u okviru malog skupa reči, ali stopa greška raste prirodno kako veličina rečnika raste. Na primer, 10 cifara od “nula” do “devet” može da bude prepoznato suštinski savršeno, ali veličina rečnika od 200, 5000 ili 100000 može da ima stopu greška od 3%, 7% ili 45%. S druge strane, čak i mali rečnik može da bude problematičan za prepoznavanje ukoliko sadrži zbunjujće reči. Na primer, 26 slova engleskog alfabeta je vrlo teško diskriminisati zato što sadrže tako mnogo zbunjujućih reči (najnotornije, E-skup: “B, C, D, E, G, P, T, V, Z”); stopa greške od 8% se smatra dobrom za ovaj rečnik.

  • Zavisnost i nezavisnost od govornika.

 Po definiciji, sistem koji zavisi od govornika je predviđen da se koristi samo od strane jednog govornika, dok sistem nezavistan od govornika može da koristi bilo koji govornik. Nezavisnost od govornika je teška za postizanje zato što parametri sistema postaju povezani sa govornikom koji je obučen za rad sa tim sistemom i ovi parametri teže da budu viskoko specifični po pitanju govornika.

  • Izolovani, nekontinualni ili kontinualni govor.

 Izolovani govor znači jednu reč; nekontinualni govor znači čitave rečenice u kojima su reči veštački razdvojene tišinom; i kontinualni govor znači prirodno izgovorene rečenice. Izolovano i nekontinualno prepoznavanje govora je relativno jednostavno zato što se granice između reči lepo detektuju i reči teže da budu jasno izgovorene.

  • Zadatak i jezička ograničenja.

 Čak i sa fiksnim rečnikom, performanse će varirati sa prirodom ograničenja po pitanju sekvenci reči koje su dopuštene za vreme prepoznavanja. Neka ograničenja mogu biti zavisna od zadatka (na primer, neke primene mogu da odbace hipotezu „Jabuka je crvena“); druga ograničenja mogu da budu semantička (odbacujući „Jabuka je besna“), ili sinaktička (odbacujući „Crvena je jabuka ta“). Ograničenja su često predstavljena gramatičkim pravilima, koja idealno isfiltriraju nerazumene rečenice, tako da sistem za prepoznavanje govora evoluaira samo verodostojne rečenice. Gramatička pravila su obično rangirana prema njihovoj kompleksnosti, broju koji indicira gramatički faktor prosečnog grananja, kao što je broj reči koji može da prati bilo koju datu reč. Poteškoća zadatka je mnogo pouzdanije merena njenom komplikovanošću nego veličinom rečnika.

  • Čitani naspram spontanog govora.

 Sistem može biti razvijen i zasnovan na govoru koji je ili čitan iz pripremljenih skripti, ili izgovoren spontano. Spontani govor je daleko teži, zato što ima tendenciju da bude začinjen sa disfluentnostima kao što su „uh“ ili „um“, lažnim počecima, nepotpunim rečenicama, mucanjem, kašljem i smehom i, naravno, rečnik je praktično neograničen, tako da sistem mora da bude u stanju da upravlja inteligentno sa nepoznatim rečima.

  • Neprijateljski uslovi.

 Performanse sistema takođe mogu da budu degradirane čitavim spektrom neprijateljskih uslova. Ovo uključuje buku okruženja (na primer, buku u automobilu ili fabrici); akustičke distorzije (na primer, eho, akustiku prostorije); različite mikrofone (na primer, pričanje iz blizine, višesmernost ili telefon); ograničen frekventni propusni opseg (u telefonskom prenosu); i izmenjene načine pričanja (vikanje, kukanje, brzo pričanje, itd.).

 Sa ciljem da se razviju i uporede različiti sistemi koji funkcionišu pod dobro definisanim uslovima, veliki broj standardizovanih baza podataka je bio kreiran i svaka od njih ima neke posebne karakteristike. Na primer, jedna baza podataka koja je bila široko korišćena je DARPA Resource Management baza podataka – veliki rečnik (1000 reči), nezvisna od govornika, baza podataka sa kontinualnim govorom koja se sastoji od 4000 trening rečenica u domenu menadžmenta mornaričkih resursa, čitanja iz skripte i snimanja pod uslovima benignog okruženja; testiranje je obično izvršeno korišćenjem gramatičkih pravila kompleksnosti 60. Pod ovim kontrolisanim uslovima, stanje umetnosti performansi je oko 97% tačnosti prepoznavanja reči (ili manje za jednostavnije sisteme).

 Struktura standardnog sistema za prepoznavanje govora je ilustrovana na Slici 1.

struktura standardnog prepoznavanja govora auromatika rs

Slika 1. Struktura standardnog sistema za prepoznavanje govora

  • Neizvežbani govor. Govor je tipično uzorkovn na visokoj frekvenciji, na primer 16 KHz preko mikrofona ili 8 KHz preko telefona. Ovo daje prinos sekvence amplitudne vrednosti tokom vremena.
  • Analiza signala. Neizvežbani govor bi trebao na početku da bude transformisan i kompresovan, sa ciljem da se pojednostavi procesiranje podsekvenci. Mnoge tehnike analize signala su dostupne što može da izvuče korisne karakteristike i kompresuje podatke sa faktorom 10 bez gubitka važnih informacija. Među najpopularnijima su:
  1. Furijeova analiza (FFT) daje prinos diskretnih frekvencija tokom vremena, koje mogu da budu interpretirane vizuelno. Frekvencije su obično distribuirane koristeći Mel scale, koji je linearan u niskom opsegu, ali i logaritamski u visokom opsegu, što odgovara fiziološkim karakteristikama ljudskog uha.
  2. Perceptivna linearna predikcija (PLP) je takođe fiziološki motivisana, ali daje prinos koeficijentima koji ne mogu da budu interpretirani vizuelno.
  3. Linearno prediktivno kodiranje (LPC) donosi koeficijente linearnih jednačina koje mogu da približe skoriju istoriju vrednosti neizvežbanog govora.
  4. Kepstralova analiza izračunava inverznu Furijerovu transformaciju logaritma spektra snage signala.
 U praksi postoji mala razlika po pitanju toga koja je tehnika korišćena. Potom, procedure koa što je analiza linearnog diskriminanta (Linear Discriminant Analysis – LDA) mogu opciono biti primenjene na dalje redukovanje dimenzonalnosti bilo koje reprezentacije i usporavanje koeficijenata. Prikaz LDA analize govora je dat na Slici 2.

LDA analiza govora automatika rs
Slika 2. Prikaz LDA analize govora

 
  • Govorni okviri. Rezultat analize signala je sekvena govornih okvira, čiji je interval obično oko 10 msec, sa oko 16 koeficijenata po okviru. Ovi okviri mogu biti predstavljeni pomoću svojih sopstevih prvih i/ili drugih izvoda, pružajući eksplicitnu informaciju o dinamici govora – ovo tipično vodi u unapređene performanse. Govorni okviri se koriste za akustičku analizu.
  • Akustički modeli. Sa ciljem da se analiziraju govorni okviri za njihove akustičke sadržaje, potreban je skup akustičkih modela. Postoji mnogo vrsta akustičkih modela, koji variraju u smislu reprezentacije, granualnosti, zavisnosti od konteksta, itd.
akusticni modeli automatika rs
 
Slika 3. Prikaz akustičnih modela: reprezentacija reči „cat“
 
 Akustički modeli: šablon i reprezentacija stanja za reč „cat“ („mačka“).

 Slika 3 prikazuje dve popularne reprezentacije za akustičke modele. Najjednostavniji je šablon, koji je čisto uskladišteni uzorak jedinice govora koja treba da se modeluje, na primer, snimanjem reči. Nepoznata reč može biti prepoznata jednostavnim poređenjem sa svim poznatim šablonima i pronalaženjem najpribližijeg spoja. Šabloni imaju dve glavne manjkavosti: (1) oni ne mogu da modelujuakustičke promene, osim na grubi način tako što pridružuju višestruke šablone svakoj reči; i (2) u praksi oni su ograničeni na modele čitavog sveta, zato što je teško snimiti ili segmentovati uzorak koji je kraći od reči – tako da su šabloni korisni samo u malim sistemima koji mogu da obezbede luksuz korišćenja modela čitavog sveta. Mnogo fleksibilnija reprezentacija, korišćena u većim sistemima, je zasnovana na istreniranim akustičkim modelima ili stanjima. U ovom pristupu, svaka reč je modelovana u vidu sekvence istreniranog stanja i svako stanje indicira zvuk koji može da se čuje u tom segmentu reči koristeći raspodelu verovatnoće duž akustičkog prostora. Raspodela verovatnoće može da bude modelovana pomoću parametara, pretpostavljajući da postoji jednostavan oblik (na primer, Gusova raspodela) i onda pokušati pronaći parametre koji je opisuju; ili neparametarski predstavljajući raspodelu direktno pomoću histograma ili koristeći neuralnu mrežu.

 U daljem tekstu će biti objašnjen algoritam dinamičkog vremenskog savijanja, koji predstavlja jedan od najstarijih i najvažnijih algoritama pri prepoznavanju govora.

 Najjednostavniji način da se prepozna uzorak izolovane reči je da se on poredi sa velikim brojem uskladištenih šablona reči i da je na osnovu toga odredi koji je „najbolji pogodak“. Ovaj način je komplikovan zbog čitavog niza faktora. Prvo, različiti uzorci će imati različita trajanja. Ovaj problem može biti eliminisan jednostavnom noramlizacijom šablona i nepoznatog govora, tako da svi oni dobiju jednako trajanje. Međutim, drugi problem je to da brzina govora ne mora da bude konstantna duž reči. Drugim rečima, optimalno ravnanje između šablona i uzorka govora može da bude nelinearno. Dinamičko vremensko savijanje je efikasan metod za pronalaženje optimalnog nelinearnog ravnanja.

 Dinamičko vremensko savijanje je primer opšte klase algoritama koji je poznat kao dinamičko programiranje. Njegova vremenska i prostorna kompleksnost su samo linearni u trajanju uzorka govora i veličine rečnika. Prikaz dinamičkog vremenskog savijanja je dat na Slici 4.

dinamicko vremensko pakovanje automatika rs

Slika 4. Prikaz dinamičkog vremenskog savijanja
 
 Postoje mnoge varijacije algoritma dinamičkog vremenskog savijanja. Na primer, uobičajeno je da variraju ograničenja lokalne putanje u smislu nagiba ½ ili 1, ili težine prnosa na različite načine ili primene druge vrste ograničenja nagiba. Kada se koriste stanja, vertikalni prenosi obično nisu dozvoljeni i obično je cilj da se minimizira kumulativni rezultat.

 Zato što je prpoznavanje govora u osnovi problem prepoznavanja obrazca i zato što su neuralne mreže dobre u prepoznavanju obrazca, mnogi raniji istraživači su primenjivali neuralne mreže u prepoznavanju govora. Najraniji pokušaji su uključivali visoko pojednostavljene zadatke, kao što su klasifikacija govornih segmenata u smislu glasovnih i neglesovnih ili nosnih, friktivnih i praskavih. Uspeh u ovim eksperimentima je ohrabrio istraživače da pređu na klasifikaciju fonoma – ovaj zadatak je postao odskočna daska za neuralne mreže jer je brzo postizao rezultate svetske klase.

 Postoje dva osnovna pristupa u klasifikaciji govora korišćenjem neuralnih mreža: statički i dinamički, kao što je prikazano na Slici 5.

staticki i dinamicki pristupi automatika rs

Slika 5. Statički i dimamički pristup klasifikaciji
 
 U statičkoj klasifikaciji, neuralna mreža vidi sve ulaze govora od jednom i donosi pojedinačnu odluku. Nasuprot tome, u dinamičkoj klasifikaciji, neuralna mreža vidi samo mali prozor govora i ovaj prozor menja ulazni govor dok mreža čini seriju lokalnih odluka koje moraju da se integrišu u globalnu odluku kasnije. Statička klasifikacija funkcioniše dobro kod prepoznavanja fonoma, ali daje slabe rezulate na nivou reči ili rečenica, dok dinamička klasifikacija tu funkcioniše mnogo bolje.
 
 Klasifikacija fonema može da bude izvedena sa velikom tačnošću, bilo da se koristi statički ili dinamički pristup. U daljem tekstu sledi pregled tipičnih eksperimenata koji koriste svaki od navedenih pristupa.

 Jednostavan, ali elegantan eksperiment je izveden od strane Huang-a & Lippmann-a (1988), koji su demonstrirali da neuralna mreža može da formira kompleksne površine odluka iz podataka vezanih za govor. Oni su primenili višeslojnu percepciju sa samo 2 ulaza, 50 skrivenih jedinica i 10 izlaza. Posle 50.000 iteracija treninga, mreža je proizvela regione odluke koji su prikazani na Slici 6. Ovi regioni odluke su skoro optimalni i ponovo sklapaju regione odluke koji bi inače bili nacrtani ručno, što vodi u tačnost klasifikacije koja može da se poredi sa više konvencionalnih algoritama, kao što su k-najbliži sused ili Gausova klasifikacija.

regioni odlucivanja neuralne mreze automatika rs

Slika 6. Regioni odlučivanja formirani od strane 2-slojne percepcije
 
 U mnogo složenijim eksperimentima, Elman i Zipser (1987) su trenirali mrežu da klasifikuje vokale /a,i,u/ i suglasnike /b,d,g/ kako bi se oni javili u iskazima ba,bi,bu; da,di,du; and ga,gi,gu. Njihov ulaz mreže se sastojao od 16 spektralnih koeficijenata duž 20 okvira; ovo je bilo vođeno u skriveni sloj sa između 2 i 6 jedinica, koji je dalje vodio do 3 izlaza za klasifikaciju vokala i suglasnika. Ova mreža je dostigla nivo greške od svega 0.5% za samoglasnike i 5.0% za suglasnike.

 Među najsloženijim zadacima klasifikacije je tako zvani E-skup, odnosno pravljenje razlike između ritmičkih engleskih slova “B, C, D, E, G, P, T, V, Z”. Burr (1988) je primenio statičku mrežu za ovaj zadatak i dobio vrlo dobar rezulat. Njegova mreža je koristila ulazni prozor od 20 spektralnih okvira, automatski ekstraktujući iz svih iskaza i koristeći energetsku informaciju. Ovi ulazi su vodili direktno do 9 izlaza reprezentujući slova E-skupa. Mreža je trenirana i testirana koristeći 180 simbola od jednog govornika. Sa povećanjem broja testiranih uzoraka i povećanjem efikasnosti i drugih karakteristika, tačnost prepoznavanja je postajala gotovo savršena.

 Tekst je preuzet sa sajta: www.learnartificialneuralnetworks.com, obrađen i prilagođen srpskom jeziku.

POSTAVI ODGOVOR

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.